Commit graph

  • e1691d5c82 rebuild rpo after fold Quentin Carbonneaux 2016-04-09 18:41:30 -04:00
  • c691b4df12 did I loose my c? Quentin Carbonneaux 2016-04-09 18:39:39 -04:00
  • abe45f1ab0 enable constant folding Quentin Carbonneaux 2016-04-09 14:32:07 -04:00
  • d8770d112b fix wrong assertion in fold Quentin Carbonneaux 2016-04-09 14:31:42 -04:00
  • 71e6fa0b30 oops, forgot to patch phi arguments Quentin Carbonneaux 2016-04-09 14:31:23 -04:00
  • a8fc696052 more debug tweaks in fold Quentin Carbonneaux 2016-04-09 14:22:25 -04:00
  • 1e0f18e908 add a proper block deletion routine Quentin Carbonneaux 2016-04-09 14:21:56 -04:00
  • 081360df6a nicer debug info Quentin Carbonneaux 2016-04-09 09:38:20 -04:00
  • 717524d4a3 quickly hack fold rewriting Quentin Carbonneaux 2016-04-09 09:32:22 -04:00
  • 206a0e55ba avoid gcc warning in emit Quentin Carbonneaux 2016-04-08 09:47:00 -04:00
  • 15cee065a5 simplify a buggy test Quentin Carbonneaux 2016-04-08 09:40:07 -04:00
  • a7fb69fd78 prevent gcc warning in rega Quentin Carbonneaux 2016-04-08 08:33:52 -04:00
  • 238bc89271 fix loop header detection bug in spill Quentin Carbonneaux 2016-04-08 08:33:37 -04:00
  • 8c92b12485 use union for punning in emit Quentin Carbonneaux 2016-04-08 08:31:25 -04:00
  • 554ba694ab use cast in czero() Quentin Carbonneaux 2016-04-07 20:31:33 -04:00
  • 9294295bb5 inline latmerge() (cross fingers) Quentin Carbonneaux 2016-04-07 14:48:21 -04:00
  • 03083f653d adjustments in sccp Quentin Carbonneaux 2016-04-07 14:20:47 -04:00
  • f2b2256ebe add a canfold field to opdesc Quentin Carbonneaux 2016-04-07 14:20:12 -04:00
  • ebcc123e4d add boring folding code Quentin Carbonneaux 2016-04-07 13:08:31 -04:00
  • 45f3493777 start work on constant propagation Quentin Carbonneaux 2016-04-06 20:59:07 -04:00
  • f2f9e156ca default to gnu gas format Quentin Carbonneaux 2016-04-05 17:47:42 -04:00
  • 865964706f use bsiter() for better performance Quentin Carbonneaux 2016-04-05 15:15:10 -04:00
  • f6bd53d2ad speedup bscount() Quentin Carbonneaux 2016-04-05 15:01:51 -04:00
  • 7d37d0a7a4 yay, support freebsd Quentin Carbonneaux 2016-04-05 14:08:04 -04:00
  • 7b3f0f8424 fat il! Quentin Carbonneaux 2016-04-04 14:55:28 -04:00
  • 74562a93de reorder instructions Quentin Carbonneaux 2016-04-04 14:45:49 -04:00
  • f71206500c cosmetics in sysv abi Quentin Carbonneaux 2016-04-04 11:34:26 -04:00
  • 62c275fc75 remove old selpar() code Quentin Carbonneaux 2016-04-04 10:44:30 -04:00
  • 5371a70266 fix alignment code in selpar() Quentin Carbonneaux 2016-04-03 22:01:58 -04:00
  • ecb2fe88dc rewrite of selpar() for factoring Quentin Carbonneaux 2016-04-03 21:47:37 -04:00
  • ba2e93b124 typo in readme Quentin Carbonneaux 2016-04-01 16:53:45 -04:00
  • b086225897 don't try to keep use counts in abi() Quentin Carbonneaux 2016-04-01 16:15:03 -04:00
  • d14e885325 cheap massive performance gain on brainfuck Quentin Carbonneaux 2016-04-01 10:51:06 -04:00
  • e7825e70d5 tradeoff the type of bsiter() Quentin Carbonneaux 2016-04-01 10:41:53 -04:00
  • 6a2c880543 use bsiter in critical loop Quentin Carbonneaux 2016-04-01 10:06:58 -04:00
  • bb0dc28eb8 add huge mandelbrot brainfuck example Quentin Carbonneaux 2016-04-01 09:57:14 -04:00
  • b28cedba99 add big test file for qbe Quentin Carbonneaux 2016-04-01 09:52:37 -04:00
  • 23c55ceb91 respect the order of the passes Quentin Carbonneaux 2016-03-31 17:18:33 -04:00
  • 0a81036fa2 move abi code in a new file Quentin Carbonneaux 2016-03-31 17:17:09 -04:00
  • 729aa97b79 cleanup error handling Quentin Carbonneaux 2016-03-30 12:04:43 -04:00
  • beec05cd3b do not echo compilation commands if verbose Quentin Carbonneaux 2016-03-29 21:50:58 -04:00
  • fbbd2252aa typos in il.txt, thanks Robert Ransom Quentin Carbonneaux 2016-03-29 17:35:37 -04:00
  • 3ea138853d get more entropy in callgen.ml Quentin Carbonneaux 2016-03-29 09:06:55 -04:00
  • e4da265b50 make block labels per-function Quentin Carbonneaux 2016-03-28 15:35:40 -04:00
  • b75cb8388f new layout, put LICENSE in root Quentin Carbonneaux 2016-03-28 12:53:53 -04:00
  • 1b4943eb1f implement export control Quentin Carbonneaux 2016-03-28 10:30:55 -04:00
  • 54d734f6a4 mac os compatibility fixes in scripts Quentin Carbonneaux 2016-03-27 19:35:19 -04:00
  • 205221226f move check rule into src/ Quentin Carbonneaux 2016-03-27 19:13:34 -04:00
  • 3406a5fb2f free memory in pmov test Quentin Carbonneaux 2016-03-27 18:35:21 -04:00
  • 2f2d99e63f fix path in regress Quentin Carbonneaux 2016-03-27 18:26:14 -04:00
  • 32590f3a6c fix wrong path in pmov Quentin Carbonneaux 2016-03-27 18:21:29 -04:00
  • c21581647b compile pmov to cwd Quentin Carbonneaux 2016-03-27 18:20:51 -04:00
  • ff79d2abae move paper synchronization to top makefile Quentin Carbonneaux 2016-03-27 18:20:34 -04:00
  • da640c5a46 move tools to the root Quentin Carbonneaux 2016-03-27 18:17:08 -04:00
  • e38c61d95f add centralized all and clean targets Quentin Carbonneaux 2016-03-27 18:05:27 -04:00
  • c46e1ba7b5 append instead of clobber CFLAGS Quentin Carbonneaux 2016-03-27 15:24:55 -04:00
  • 6405a0742f use make variable for extensibility Quentin Carbonneaux 2016-03-27 15:05:26 -04:00
  • 36635660b4 extract tests out of src Quentin Carbonneaux 2016-03-27 15:00:45 -04:00
  • aad52241c8 compatibility fixes for mac os Quentin Carbonneaux 2016-03-25 20:34:15 -04:00
  • 62e238a6ef great renaming campain! Quentin Carbonneaux 2016-03-25 14:02:43 -04:00
  • 97b58def96 mark diag() as non-returning Quentin Carbonneaux 2016-03-25 10:56:30 -04:00
  • 87dfb081d6 update pmov test to work with new regalloc Quentin Carbonneaux 2016-03-25 10:56:02 -04:00
  • 087b7bf978 dark types are called opaque in the doc Quentin Carbonneaux 2016-03-24 13:44:55 -04:00
  • ddd4f43a39 change IR to IL Quentin Carbonneaux 2016-03-24 13:34:50 -04:00
  • 993ca957ef typos in llvm.txt (thanks lucie) Quentin Carbonneaux 2016-03-23 22:33:36 -04:00
  • 84fbd00237 add comparison to llvm Quentin Carbonneaux 2016-03-23 21:56:15 -04:00
  • 607ab68f0c allow testing the two directions in abitest Quentin Carbonneaux 2016-03-22 14:42:37 -04:00
  • 5e62b615c4 bake more fancy in abitest.sh Quentin Carbonneaux 2016-03-22 13:59:48 -04:00
  • fc115427dd fix struct size computation Quentin Carbonneaux 2016-03-22 13:38:20 -04:00
  • 59e78fe969 fix incorrect size suffix in abi fuzzer Quentin Carbonneaux 2016-03-22 12:23:53 -04:00
  • a67ffa423c check for overflow in ssa.c (abi fuzzer) Quentin Carbonneaux 2016-03-22 12:16:03 -04:00
  • 337b10f6ed store register usage of ret instructions (abi fuzz) Quentin Carbonneaux 2016-03-22 11:53:57 -04:00
  • 5ad3eaa75a typo in lexing table (abi fuzzer) Quentin Carbonneaux 2016-03-22 10:59:16 -04:00
  • 9db053d1b8 typo in isel (abi fuzzer) Quentin Carbonneaux 2016-03-22 10:40:54 -04:00
  • cbb0f5aa83 cleanup at the end of abitest.sh Quentin Carbonneaux 2016-03-22 10:35:36 -04:00
  • 14628baf40 dumb switch mistake in isel (abi fuzzer) Quentin Carbonneaux 2016-03-22 10:33:35 -04:00
  • b8e3bc6aa0 fix bug in type definitions in abi.ml Quentin Carbonneaux 2016-03-22 10:23:39 -04:00
  • 665a45003a fix incorrect size increment in abi (abi fuzzer) Quentin Carbonneaux 2016-03-21 14:59:04 -04:00
  • 6b58aaa7ea add the ability to run with a seed Quentin Carbonneaux 2016-03-21 13:55:38 -04:00
  • 453baf68e0 fix bug in IL checking Quentin Carbonneaux 2016-03-21 13:55:25 -04:00
  • 58e0505068 compile tests with debug options Quentin Carbonneaux 2016-03-21 13:44:22 -04:00
  • 890e85c8d1 add abitest.sh tool Quentin Carbonneaux 2016-03-21 13:42:16 -04:00
  • e004f1dd48 wrap up abi.ml with a main function Quentin Carbonneaux 2016-03-21 13:41:47 -04:00
  • 3b6dc136a5 tools/abi.ml seems to work Quentin Carbonneaux 2016-03-21 13:09:18 -04:00
  • 2ff47b8c17 start il generation Quentin Carbonneaux 2016-03-20 21:59:29 -04:00
  • 2829059c8a finish OutC, use uniform distributions Quentin Carbonneaux 2016-03-20 12:23:38 -04:00
  • a5c00b144c ocaml and c chars are incompatible Quentin Carbonneaux 2016-03-20 09:43:20 -04:00
  • f0a91ffe5e start C dumping Quentin Carbonneaux 2016-03-19 22:51:53 -04:00
  • 5f45999036 add code to generate types Quentin Carbonneaux 2016-03-19 18:56:37 -04:00
  • 47cebe349c start work on an abi fuzzer Quentin Carbonneaux 2016-03-18 22:06:41 -04:00
  • 29ea37fa06 calls now use rax all the time... Quentin Carbonneaux 2016-03-18 16:11:42 -04:00
  • 95df8e55fe remove spurious assignments in rega Quentin Carbonneaux 2016-03-18 15:44:26 -04:00
  • f625e49cb0 more thorough abi testing Quentin Carbonneaux 2016-03-18 15:23:03 -04:00
  • 99eab2d147 oops, nul terminate string tokens Quentin Carbonneaux 2016-03-18 15:21:17 -04:00
  • 12e22bb1b4 lamely handle swap of sse registers Quentin Carbonneaux 2016-03-18 15:03:25 -04:00
  • b19b9a27a0 handle padding correctly in types Quentin Carbonneaux 2016-03-18 14:44:20 -04:00
  • d1c6c305f7 set eax before call (for variadics...) Quentin Carbonneaux 2016-03-18 14:43:41 -04:00
  • 3f3dce67f4 tentative support of calls with struct return Quentin Carbonneaux 2016-03-18 12:00:20 -04:00
  • a93af73ff2 factor return registers computation Quentin Carbonneaux 2016-03-18 10:54:52 -04:00
  • 73371a0f90 small fixes in selcall() Quentin Carbonneaux 2016-03-18 10:42:16 -04:00