Commit graph

  • 5e0c991af9 another return fix in minic Quentin Carbonneaux 2015-11-08 10:32:02 -05:00
  • 1f2261b5a3 use the new && in test/prime.c Quentin Carbonneaux 2015-11-06 19:22:49 -05:00
  • 232b0356eb maybe fix small return bug in stmt() Quentin Carbonneaux 2015-11-06 14:44:07 -05:00
  • 217f216e72 experiment with && and || in minic Quentin Carbonneaux 2015-11-06 14:29:53 -05:00
  • 0b559fcd4d support lighter syntax for arrays Quentin Carbonneaux 2015-11-05 09:57:30 -05:00
  • db1864d22a update align to use loadw Quentin Carbonneaux 2015-11-04 18:39:20 -05:00
  • 5f875c3261 update minic to the new IR Quentin Carbonneaux 2015-11-03 17:01:12 -05:00
  • 8ae9f786cb add interference hints Quentin Carbonneaux 2015-11-03 16:47:47 -05:00
  • 0679df0b56 break Tmp.phi chains at phi nodes Quentin Carbonneaux 2015-11-01 13:55:06 -05:00
  • 07c46bc6f9 support dots in idents for k0ga Quentin Carbonneaux 2015-11-01 09:15:27 -05:00
  • 46f99ac5b7 this emit was an emiti Quentin Carbonneaux 2015-11-01 00:35:36 -04:00
  • 7abf421ea2 make phi-class handling more local Quentin Carbonneaux 2015-10-31 23:39:52 -04:00
  • 5b54910adc add simple dce into isel Quentin Carbonneaux 2015-10-30 13:15:25 -04:00
  • 62ff1f2f50 fix two bugs in spiller Quentin Carbonneaux 2015-10-30 11:43:39 -04:00
  • e68aac2cef use loadw in cprime.ssa Quentin Carbonneaux 2015-10-29 15:07:54 -04:00
  • 0a84de5e53 finish isel adressing modes and clear the code Quentin Carbonneaux 2015-10-29 14:40:35 -04:00
  • d95c8f296b fix several bugs on Blk.gen in liveness Quentin Carbonneaux 2015-10-27 20:39:13 -04:00
  • 27bcd5a3c6 fillphi() now comes before filllive() Quentin Carbonneaux 2015-10-27 14:21:50 -04:00
  • d43ebe8f58 break phi-classes following interferences Quentin Carbonneaux 2015-10-27 14:21:33 -04:00
  • 614130e431 remove liveness heuristic in fillphi() Quentin Carbonneaux 2015-10-27 13:40:15 -04:00
  • dfede22dcd new regalloc heuristic for phis Quentin Carbonneaux 2015-10-27 11:36:47 -04:00
  • 56203de6df wip on regalloc new heuristics Quentin Carbonneaux 2015-10-26 18:49:14 -04:00
  • 65c35372fd setup hints for function arguments Quentin Carbonneaux 2015-10-25 21:28:31 -04:00
  • 32ad5e368a prioritize reg. allocation of some temporaries Quentin Carbonneaux 2015-10-25 21:18:33 -04:00
  • 05f120431d this test optimization is sometimes incorrect Quentin Carbonneaux 2015-10-25 21:17:24 -04:00
  • a9dc36e0eb change extension in sum example Quentin Carbonneaux 2015-10-25 20:56:18 -04:00
  • d272f0896b simplify constant handling in amatch() Quentin Carbonneaux 2015-10-25 15:18:42 -04:00
  • fb1c02657b fix bug in constants addition Quentin Carbonneaux 2015-10-25 15:18:17 -04:00
  • 9c29630dbf small fix in memory refs emission Quentin Carbonneaux 2015-10-25 14:27:44 -04:00
  • 10ef1c132b store constant addresses in Mem.offset Quentin Carbonneaux 2015-10-25 14:27:22 -04:00
  • 486915f501 print memory references in IR dumps Quentin Carbonneaux 2015-10-25 14:12:40 -04:00
  • d1f048bc9c don't share mems containing temporaries Quentin Carbonneaux 2015-10-24 20:53:29 -04:00
  • 47a34dbd51 turn sum.ssa more C style Quentin Carbonneaux 2015-10-23 17:44:38 -04:00
  • 6d264a2594 port rega.c to work with RAMem Quentin Carbonneaux 2015-10-23 17:32:09 -04:00
  • aa5682480c oops, another bug in sum.ssa Quentin Carbonneaux 2015-10-23 17:31:56 -04:00
  • ab7a5c277a add support for RAMem in emit Quentin Carbonneaux 2015-10-23 17:19:57 -04:00
  • 039f9de5c5 port spill.c to work with RAMem Quentin Carbonneaux 2015-10-23 16:58:34 -04:00
  • 7ed3303036 mention addressing modes in isel main comment Quentin Carbonneaux 2015-10-23 16:58:01 -04:00
  • e0d7beda69 fix typo bug in liveness Quentin Carbonneaux 2015-10-23 16:57:26 -04:00
  • 04b66d38db start integrating RAMem references Quentin Carbonneaux 2015-10-23 13:50:26 -04:00
  • b33febc25c prepare for using memory refs Quentin Carbonneaux 2015-10-23 11:28:45 -04:00
  • 82d79017ff fix test for load folding Quentin Carbonneaux 2015-10-22 21:43:22 -04:00
  • e205856bc6 stick scales close to their instruction Quentin Carbonneaux 2015-10-22 16:53:25 -04:00
  • 326bf160f4 fix minor bug in sum.ssa Quentin Carbonneaux 2015-10-22 16:44:41 -04:00
  • 6e0c394047 add a test for addressing mode optimization Quentin Carbonneaux 2015-10-22 16:42:46 -04:00
  • 97db80da31 start work on fusing loads in arithmetic Quentin Carbonneaux 2015-10-22 16:40:52 -04:00
  • 475e90a371 first attempt at address matching Quentin Carbonneaux 2015-10-22 11:49:07 -04:00
  • 525d4db4ea new function to add constants Quentin Carbonneaux 2015-10-22 11:48:55 -04:00
  • 8ef0e2d027 cosmetics on address numbering code Quentin Carbonneaux 2015-10-21 20:50:37 -04:00
  • b44f46fafc store addressability infos in a struct Quentin Carbonneaux 2015-10-21 14:44:06 -04:00
  • 639142f44c do not give an addressability number to scales Quentin Carbonneaux 2015-10-21 13:14:39 -04:00
  • 5e43482c11 store child matchings in the addressing table Quentin Carbonneaux 2015-10-21 12:23:21 -04:00
  • 4185168edc missed a few cases in the tree automaton Quentin Carbonneaux 2015-10-20 18:04:57 -04:00
  • fa3f7b53fa make the echo test return 0 Quentin Carbonneaux 2015-10-20 18:02:29 -04:00
  • 30f47d6ec1 fix bug in pretty printer Quentin Carbonneaux 2015-10-20 18:01:03 -04:00
  • bb5f95c192 start adress mode recognition Quentin Carbonneaux 2015-10-20 18:00:49 -04:00
  • 4bce97b16b rename spill field in Tmp to slot Quentin Carbonneaux 2015-10-20 16:19:00 -04:00
  • a7e7d73a7e use new loadl instruction in echo Quentin Carbonneaux 2015-10-20 16:17:26 -04:00
  • b284721c8a emit code for extensions, move slots into RAlt Quentin Carbonneaux 2015-10-20 13:04:07 -04:00
  • 993416481a add atoi prototype in queen.c test Quentin Carbonneaux 2015-10-25 13:52:30 -04:00
  • 7c6fadc6ba uniformize sign extension and mem loads Quentin Carbonneaux 2015-10-19 17:28:21 -04:00
  • a655b8b3eb add cheap line reporting in die Quentin Carbonneaux 2015-10-17 22:16:43 -04:00
  • 96fab80240 rename valloc and balloc Quentin Carbonneaux 2015-10-13 17:20:44 -04:00
  • eee9afb88e use an array of pointers in queen Quentin Carbonneaux 2015-10-13 14:30:53 -04:00
  • 0c7bf521b3 add void type Quentin Carbonneaux 2015-10-13 14:30:16 -04:00
  • 48cc255929 improve error detection in mcc Quentin Carbonneaux 2015-10-13 14:29:58 -04:00
  • 8cfcd87e50 no, 9 is not prime Quentin Carbonneaux 2015-10-13 13:15:12 -04:00
  • e2fca0812b ignore output of mcc Quentin Carbonneaux 2015-10-12 22:01:31 -04:00
  • 114f0eec99 cosmetics in queen.c Quentin Carbonneaux 2015-10-12 21:48:08 -04:00
  • 7f7cf6a032 add for loops Quentin Carbonneaux 2015-10-12 21:46:27 -04:00
  • b402c8f7d5 make the queen test work Quentin Carbonneaux 2015-10-12 21:30:14 -04:00
  • 8733d14e6e add & binop to minic Quentin Carbonneaux 2015-10-12 18:28:19 -04:00
  • 095ebf62f1 add new test Quentin Carbonneaux 2015-10-12 18:28:00 -04:00
  • 12ebc15a38 add return, break, globals in minic Quentin Carbonneaux 2015-10-12 17:49:32 -04:00
  • e33a10a8a4 limit the amount of warnings in prime example Quentin Carbonneaux 2015-10-12 17:49:00 -04:00
  • e1609b24e6 make mcc script more robust Quentin Carbonneaux 2015-10-12 17:48:34 -04:00
  • ccd6bd869c fix stupid bug in the example Quentin Carbonneaux 2015-10-12 16:20:59 -04:00
  • cf9916d00d fix minor parsing issues Quentin Carbonneaux 2015-10-12 14:33:05 -04:00
  • fbee480f2e add one small test Quentin Carbonneaux 2015-10-12 14:32:48 -04:00
  • 31b19a21b8 finish rough implementation of calls Quentin Carbonneaux 2015-10-12 14:00:20 -04:00
  • f4dc0f98a5 add a cheap implementation of sizeof Quentin Carbonneaux 2015-10-12 12:50:58 -04:00
  • d1b2cf2d49 add super cheap constant folding in minic Quentin Carbonneaux 2015-10-12 12:40:55 -04:00
  • 7c7a8b30ea start implementing basic function calls Quentin Carbonneaux 2015-10-09 21:36:39 -04:00
  • dcf9840bae uniformize naming in minic Quentin Carbonneaux 2015-10-08 23:58:50 -04:00
  • 5d2609b167 add clumsy support for string literals Quentin Carbonneaux 2015-10-08 23:52:44 -04:00
  • a72dfedc1f update miniyacc Quentin Carbonneaux 2015-10-08 23:52:38 -04:00
  • d5afba7909 change end comment for functions Quentin Carbonneaux 2015-10-08 23:03:24 -04:00
  • a07c6e10f5 fix minor bug in rega Quentin Carbonneaux 2015-10-08 23:02:19 -04:00
  • 2642ff022c improve debug output Quentin Carbonneaux 2015-10-08 22:05:30 -04:00
  • e53054c076 allow multiple functions in file Quentin Carbonneaux 2015-10-08 22:02:32 -04:00
  • b5d98b762f use DEnd for strings too Quentin Carbonneaux 2015-10-08 17:59:01 -04:00
  • 25f7bc06e3 emit alignment directives properly Quentin Carbonneaux 2015-10-08 14:49:00 -04:00
  • bf3e6753f3 rename ealloc to emalloc Quentin Carbonneaux 2015-10-08 14:05:13 -04:00
  • 2205930c37 store the byte array in max.ssa Quentin Carbonneaux 2015-10-07 22:32:58 -04:00
  • fb423f749c finish implementing data parsing Quentin Carbonneaux 2015-10-07 22:26:13 -04:00
  • b93b0d2902 start work on parsing data blocks Quentin Carbonneaux 2015-10-07 18:30:19 -04:00
  • 01c1734e42 uh oh, typo bug in freeall() Quentin Carbonneaux 2015-10-06 23:32:44 -04:00
  • 72fc455978 add pool memory management Quentin Carbonneaux 2015-10-06 22:51:51 -04:00
  • 99ad19546d use new vector functions instead of reallocs Quentin Carbonneaux 2015-10-06 20:42:54 -04:00
  • 1f61873799 split long line in idup Quentin Carbonneaux 2015-10-06 13:25:28 -04:00