Commit Graph

94 Commits

Author SHA1 Message Date
Joel Dice
83aa342bc8 hello, world on amd64 2008-10-04 11:26:35 -06:00
Joel Dice
965b83303f implement additional instructions 2008-09-27 16:00:58 -06:00
Joel Dice
f2bf152eba more bugfixes 2008-09-23 18:01:42 -06:00
Joel Dice
d4938115ef various bugfixes 2008-09-23 15:18:41 -06:00
Joel Dice
fadb66044b remove unused instructions from x86.cpp 2008-09-16 07:59:34 -06:00
Joel Dice
606e5cb238 lots of bugfixes - finally got Simple.pow() working 2008-09-14 20:28:42 -06:00
Joel Dice
44ccd2b09e write alignment padding to output buffer in MyAssembler::writeTo 2008-09-13 15:07:39 -06:00
Joel Dice
392a1417e5 lots of bugfixes and a few instructions added 2008-09-08 18:31:19 -06:00
Joel Dice
1dd25325c8 implement various instructions, including AlignedCall 2008-09-07 20:21:52 -06:00
Joel Dice
af9758a6d3 got a simple arithmetic test working 2008-09-07 14:12:11 -06:00
Joel Dice
9971eaa92a support out-of-order compilation in x86 assembler 2008-09-06 19:37:12 -06:00
Joel Dice
ed806ca740 working towards compiling simple methods 2008-09-06 15:25:41 -06:00
Joel Dice
e13b755048 more progress towards new JIT code - this compiles but won't run properly 2008-09-05 09:00:38 -06:00
Joel Dice
5f7d68b404 snapshot 2008-08-30 14:12:27 -06:00
Joel Dice
a062d8c975 progress towards refactored JIT compiler to support PowerPC and data flow analysis across control flow boundaries 2008-08-23 12:04:36 -06:00
Joel Dice
9908bbcf50 sketch new version of x86.cpp to conform to new assembler.h APIs 2008-08-19 17:38:37 -06:00
Joel Dice
4a022147cd Merge branch 'master' of oss.readytalk.com:/var/local/git/avian into powerpc 2008-08-16 12:56:41 -06:00
Joel Dice
6ee2b0280e implement compareAM 2008-07-31 07:53:43 -06:00
Joel Dice
2343483d8e Merge branch 'master' of oss:/var/local/git/avian into powerpc 2008-07-13 12:47:49 -06:00
Joel Dice
23043d140f snapshot 2008-07-05 14:21:13 -06:00
Joel Dice
107ac01304 fix addCR and subtractCR for cases of 64-bit constants on amd64 2008-07-02 08:52:35 -06:00
Joel Dice
9bea21dec7 add copyright header to files which don't already have them 2008-06-25 14:53:48 -06:00
Joel Dice
3d84f31c13 fix longCompareCR on 64-bit systems 2008-06-17 09:32:46 -06:00
Joel Dice
b683d836c3 implement longCompareRR 2008-06-12 11:23:20 -06:00
Joel Dice
6f5cc9f45f fix unused parameter warning 2008-06-12 11:09:53 -06:00
Joel Dice
eabb37e6eb add lcmp instruction to Compiler and corresponding LongCompare instruction to Assembler, since that's the only efficient way to implement the lcmp bytecode on x86 2008-06-12 10:56:48 -06:00
Joel Dice
357acbdb0f implement move4To8CR, which just defers to moveCR 2008-06-11 08:59:05 -06:00
Joel Dice
5b2065e76c only elide constant multiply if constant is one, not zero (duh) 2008-06-10 18:14:15 -06:00
Joel Dice
3b0e05b739 fix unused parameter warning 2008-06-02 08:13:20 -06:00
Joel Dice
ecfb853f17 use relative branches where possible on amd64 2008-06-02 07:49:09 -06:00
Joel Dice
65830a76c5 improve efficiency of array bounds checks and generate a thunk table for native functions called indirectly 2008-05-31 16:14:27 -06:00
Joel Dice
51256f3cc2 fix moveCM for 64-bit constants on 64-bit machines 2008-05-22 18:16:44 -06:00
Joel Dice
3326aafdac various 32-bit fixes 2008-05-22 11:15:18 -06:00
Joel Dice
651c4559db implement compareAR 2008-05-19 10:39:05 -06:00
Joel Dice
ad6153612b disallow memory,constant comparisons on x86 2008-05-19 07:43:37 -06:00
Joel Dice
b52cefa86e disallow memory operands in 32-bit comparisons on amd64 2008-05-19 07:27:05 -06:00
Joel Dice
56d8851764 constrain temporary register in moveMM according to moveMR's requirements 2008-05-18 22:28:47 -06:00
Joel Dice
4858972dbc support 64-bit subtracts on 32-bit systems; allow constant shift counts in MyAssembler::plan 2008-05-18 09:43:31 -06:00
Joel Dice
392132cb0e Merge branch 'compiler' of la.merseine.nu:p/avian-compiler into compiler 2008-05-17 21:34:46 -06:00
Joel Dice
b6b84af123 various bugfixes 2008-05-17 21:32:14 -06:00
Joel Dice
15c2eb13f2 don't generate code for a move from a register to itself 2008-05-17 18:13:27 -06:00
Joel Dice
790e2fee42 respect constraints specified by Assembler::plan in MoveEvent::compile 2008-05-16 10:01:24 -06:00
Joel Dice
d7fc4aa438 fix offset computation in compareCR and compareCM 2008-05-15 18:34:48 -06:00
Joel Dice
bbd1ee5540 various register marshalling bugfixes 2008-05-15 14:00:57 -06:00
Joel Dice
8434abaa0e implement swapRR 2008-05-14 17:33:55 -06:00
Joel Dice
73b8cc5595 fix unused variable warnings 2008-05-14 17:19:41 -06:00
Joel Dice
13d6ab023f implement addCM 2008-05-13 11:28:19 -06:00
Joel Dice
f1809897bd fix build 2008-05-06 15:13:02 -06:00
Joel Dice
2e108861da remove operand marshalling from the assembler in favor of doing it in the compiler 2008-05-04 13:09:12 -06:00
Joel Dice
7b809efd3f fix shift bugs 2008-04-30 12:44:27 -06:00