Joel Dice
|
2ed6247cec
|
fix freezing and thawing of read sites where the same value is read multiple times in compile()
|
2008-05-15 08:29:19 -06:00 |
|
Joel Dice
|
505d6df7ae
|
reorder code in CallEvent ctor to ensure we don't clobber argument registers when it comes time to marshal values for reading
|
2008-05-14 18:04:25 -06:00 |
|
Joel Dice
|
8434abaa0e
|
implement swapRR
|
2008-05-14 17:33:55 -06:00 |
|
Joel Dice
|
04f4ad4f58
|
fix variadic argument passing bug on amd64
|
2008-05-14 17:22:44 -06:00 |
|
Joel Dice
|
73b8cc5595
|
fix unused variable warnings
|
2008-05-14 17:19:41 -06:00 |
|
Joel Dice
|
482065f91a
|
fix code ordering bug in popNow()
|
2008-05-14 16:36:22 -06:00 |
|
Joel Dice
|
13d6ab023f
|
implement addCM
|
2008-05-13 11:28:19 -06:00 |
|
Joel Dice
|
08beaad1b6
|
various bugfixes related to new register allocation code
|
2008-05-13 11:27:57 -06:00 |
|
Joel Dice
|
a40635fdba
|
rework register allocation to be more flexible
|
2008-05-12 07:54:47 -06:00 |
|
Joel Dice
|
f1809897bd
|
fix build
|
2008-05-06 15:13:02 -06:00 |
|
Joel Dice
|
efb30b2256
|
progress towards more flexible register allocation in compiler
|
2008-05-04 14:55:34 -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 |
|
Joel Dice
|
bf08cc4c53
|
fix array bounds checks
|
2008-04-30 11:47:25 -06:00 |
|
Joel Dice
|
918193fa60
|
fix 32-bit right unsigned shifts on amd64
|
2008-04-30 11:15:21 -06:00 |
|
Joel Dice
|
844841937f
|
fix use of wrong constant in x86.cpp
|
2008-04-30 10:46:46 -06:00 |
|
Joel Dice
|
e2b24263a2
|
various bugfixes
|
2008-04-30 09:44:17 -06:00 |
|
Joel Dice
|
3909e3f032
|
fix thinko concerning stack resets in compile()
|
2008-04-29 17:18:28 -06:00 |
|
Joel Dice
|
7640590153
|
implement orCR and compareRC
|
2008-04-29 17:16:53 -06:00 |
|
Joel Dice
|
59f92b6208
|
support 64-bit multiplies on 32-bit systems
|
2008-04-29 16:11:17 -06:00 |
|
Joel Dice
|
4c2d44099b
|
support more 64-bit operations on 32-bit systems
|
2008-04-29 14:24:52 -06:00 |
|
Joel Dice
|
3fa3fd0796
|
fix stack index calculation when pushing operands
|
2008-04-29 14:24:08 -06:00 |
|
Joel Dice
|
4652b7aea0
|
enable 64-bit various operations on 32-bit systems
|
2008-04-29 10:56:29 -06:00 |
|
Joel Dice
|
9dafe37ff3
|
fix code ordering bug in MyCompiler::peek
|
2008-04-29 10:55:56 -06:00 |
|
Joel Dice
|
377e2864d9
|
fix argument marshalling for floating point helper functions on 32-bit systems
|
2008-04-29 10:40:44 -06:00 |
|
Joel Dice
|
d50e3aaee0
|
preserve operands to CombineEvent and TranslateEvent when necessary
|
2008-04-29 10:25:20 -06:00 |
|
Joel Dice
|
22382a5c8b
|
fix amd64 regression in PushEvent::skipMove
|
2008-04-29 09:30:41 -06:00 |
|
Joel Dice
|
c96f44d77d
|
don't skip move when MoveEvent is followed by a PushEvent which is not active; use existing register site in ValueSite when possible
|
2008-04-29 08:59:12 -06:00 |
|
Joel Dice
|
7791b1df80
|
support 64-bit operands on 32-bit systems in compareCR
|
2008-04-29 08:57:24 -06:00 |
|
Joel Dice
|
a07a189ddb
|
fix various register marshalling bugs
|
2008-04-28 18:58:02 -06:00 |
|
Joel Dice
|
8738bddcb9
|
bugfixes, mainly concerning 32-bit machines
|
2008-04-28 16:08:31 -06:00 |
|
Joel Dice
|
90ae9a70ee
|
fix encoding reg-to-reg moves of one and two byte sizes
|
2008-04-28 10:52:54 -06:00 |
|
Joel Dice
|
1b5f14d847
|
re-enable tests in Misc and get them working
|
2008-04-28 09:53:48 -06:00 |
|
Joel Dice
|
5e45475f36
|
fix unused parameter warnings
|
2008-04-27 16:43:15 -06:00 |
|
Joel Dice
|
9f8d77a2a9
|
Merge branch 'master' into compiler
Conflicts:
src/compile.cpp
src/compiler.cpp
src/compiler.h
|
2008-04-27 16:40:53 -06:00 |
|
Joel Dice
|
505e0bd7db
|
treat 4-byte reg-to-reg moves as 8-byte moves on amd64 since the intention is to copy integer values verbatim; all tests now pass on amd64
|
2008-04-27 16:25:17 -06:00 |
|
Joel Dice
|
8be4cf8fa6
|
fix pushState and popState to work as intended
|
2008-04-27 15:58:29 -06:00 |
|
Joel Dice
|
cc64668657
|
add support for more instructions to assembler
|
2008-04-27 14:42:57 -06:00 |
|
Joel Dice
|
5b7372a3bb
|
various bugfixes; majority of tests now pass
|
2008-04-27 14:15:18 -06:00 |
|
Joel Dice
|
d5137a7cdf
|
use stack instead of registers to save data across jumps and branches; bugfixes
|
2008-04-26 14:56:03 -06:00 |
|
Joel Dice
|
23572b58bd
|
fix code ordering bug in MyProcessor::getStackTrace which caused the stack trace footprint calculation to be inaccurate
|
2008-04-25 16:18:19 -06:00 |
|
Joel Dice
|
fdfeabbb37
|
Merge branch 'master' of oss.readytalk.com:/var/local/git/avian
|
2008-04-24 16:13:03 -06:00 |
|
Joel Dice
|
0655b55378
|
resolve catch type for each exception handler during compilation
|
2008-04-24 16:06:36 -06:00 |
|
Eric Scharff
|
584e1005e3
|
Fix Mac compiler warnings for fprintf format strings
|
2008-04-24 11:07:20 -06:00 |
|
Joel Dice
|
18d25468fe
|
optimize common case of setting a single object field so we don't acquire the heap lock unnecessarily
|
2008-04-23 18:08:24 -06:00 |
|
Joel Dice
|
1d7b00baff
|
backport getstatic/putstatic optimization from compiler branch
|
2008-04-23 16:56:02 -06:00 |
|
Joel Dice
|
f49174da28
|
set the base pointer in vmNativeCall to point to the return address per convention, allowing us to safely walk the stack in Process::getStackTrace
|
2008-04-23 15:07:14 -06:00 |
|
Joel Dice
|
7e1a2ea876
|
don't remove nodes from call node table, since it leads to a race condition
|
2008-04-23 15:01:47 -06:00 |
|
Joel Dice
|
d072b71c39
|
nth attempt to clean up MyStackWalker
|
2008-04-23 10:33:31 -06:00 |
|
Joel Dice
|
9e8e4b3de7
|
fix stack walker to properly handle the case of a native method calling another native method
|
2008-04-22 10:21:54 -06:00 |
|