Joel Dice
|
58a9718d82
|
clean stack sites more aggressively after function calls to avoid GC bugs
|
2008-11-25 16:00:40 -07:00 |
|
Joel Dice
|
eea2225176
|
save locals to memory before executing any instruction which might trigger an exception if that instruction lies within an exception handler
|
2008-11-25 10:34:48 -07:00 |
|
Joel Dice
|
3d9e508e3e
|
fix regression in last commit
|
2008-11-17 08:44:35 -07:00 |
|
Joel Dice
|
9aee242408
|
Merge branch 'powerpc' of oss:/var/local/git/avian into powerpc
Conflicts:
src/compiler.cpp
|
2008-11-17 08:22:07 -07:00 |
|
Joel Dice
|
7ea5a4a64f
|
avoid inifinite recursion in trySteal
|
2008-11-17 08:20:48 -07:00 |
|
Joel Dice
|
92a8a4d83b
|
clean up subroutine code in wake of merge from master branch
|
2008-11-15 18:03:43 -07:00 |
|
Joel Dice
|
fb770d10fb
|
implement jsr/ret support
The Subroutine test won't pass due to a bug in the stack mapping code
such that objects may be missed during GC.
|
2008-11-13 17:59:21 -07:00 |
|
Joel Dice
|
fae0ccfe96
|
fix unused parameter warnings
|
2008-11-11 18:09:45 -07:00 |
|
Joel Dice
|
6f5613ebd9
|
minor code cleanup in MoveEvent::compile
|
2008-11-11 17:48:21 -07:00 |
|
Joel Dice
|
191bfb6141
|
fix 4-to-8 byte sign extensions for ia32 and clean up MoveEvent; all tests now pass on ia32
|
2008-11-11 17:39:26 -07:00 |
|
Joel Dice
|
671fd1c0f9
|
set popIndex for stack arguments in CallEvent constructor
|
2008-11-11 11:56:23 -07:00 |
|
Joel Dice
|
c80eb51c17
|
Merge branch 'master' into powerpc
Conflicts:
makefile
src/assembler.h
src/compile.cpp
src/compiler.cpp
src/compiler.h
src/finder.cpp
|
2008-11-11 08:21:48 -07:00 |
|
Joel Dice
|
2304a656cf
|
in releaseRegister, if the register is not the exclusive site of a value, steal it
|
2008-11-10 21:25:36 -07:00 |
|
Joel Dice
|
96a7c71c30
|
fix loading 8-byte values on 32-bit systems
|
2008-11-10 19:12:36 -07:00 |
|
Joel Dice
|
5fc9ad058b
|
more bugfixes; all tests pass on amd64
|
2008-11-10 17:07:44 -07:00 |
|
Joel Dice
|
00d8142de9
|
various bugfixes; all but one test are passing on amd64
|
2008-11-09 16:56:37 -07:00 |
|
Joel Dice
|
000aeb25c1
|
handle case where first instruction is the target of a branch properly
|
2008-11-08 16:21:30 -07:00 |
|
Joel Dice
|
decd24965a
|
implement multiplyCR and divideCR
|
2008-11-08 15:42:26 -07:00 |
|
Joel Dice
|
61539bae31
|
fix stack mapping bugs which broke GC
|
2008-11-08 15:36:38 -07:00 |
|
Joel Dice
|
312539af64
|
fix moves involving sign or zero extension
|
2008-11-08 13:47:26 -07:00 |
|
Joel Dice
|
f01f4441d9
|
various bugfixes and instructions implemented to get more tests passing
|
2008-11-06 17:39:38 -07:00 |
|
Joel Dice
|
1ba497d90a
|
fix Exceptions test for amd64
|
2008-11-02 15:25:51 -07:00 |
|
Joel Dice
|
04da77e95b
|
snapshot
|
2008-11-02 13:35:35 -07:00 |
|
Joel Dice
|
3e81405a33
|
snapshot
|
2008-11-01 16:16:18 -06:00 |
|
Joel Dice
|
dd4dc18916
|
snapshot
|
2008-11-01 13:14:13 -06:00 |
|
Joel Dice
|
d20ee74d79
|
fix stack frame offset calculations for 64-bit values; insert dummy events for instructions which start with stack activity
|
2008-10-24 20:12:02 -06:00 |
|
Joel Dice
|
7d6ca28b2f
|
snapshot
|
2008-10-18 18:15:57 -06:00 |
|
Joel Dice
|
26614e2182
|
use same code to spill registers and stack frame slots
|
2008-10-16 18:10:35 -06:00 |
|
Joel Dice
|
5391c68efd
|
bugfixes
|
2008-10-14 18:45:31 -06:00 |
|
Joel Dice
|
aaaf388652
|
fix handling of instructions which are targets of more than one conditional branch
|
2008-10-13 18:18:18 -06:00 |
|
Joel Dice
|
3c798f5bd7
|
various bugfixes concerning control flow boundaries
|
2008-10-11 18:23:08 -06:00 |
|
Joel Dice
|
83d5d6fde4
|
avoid unnecessary moves in resolveJunctionSite; distinguish between branches and other events when deciding when to marshal values at junctions
|
2008-10-07 18:08:13 -06:00 |
|
Joel Dice
|
f6c4496166
|
various bugfixes
|
2008-10-05 18:50:59 -06:00 |
|
Joel Dice
|
adb63778f0
|
fix stack and local snapshots for DummyEvents
|
2008-10-04 18:14:43 -06:00 |
|
Joel Dice
|
83aa342bc8
|
hello, world on amd64
|
2008-10-04 11:26:35 -06:00 |
|
Joel Dice
|
d409f89d5d
|
ensure that only one value holds a given frame site at at time
|
2008-09-28 15:56:12 -06:00 |
|
Joel Dice
|
61c708d7b2
|
reserve stack space for arguments to native calls
|
2008-09-28 13:00:52 -06:00 |
|
Joel Dice
|
c699725cf8
|
avoid running out of registers when picking junction sites
|
2008-09-27 16:01:39 -06:00 |
|
Joel Dice
|
11c2afbf91
|
bugfixes
|
2008-09-24 18:48:32 -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
|
b8dd495ada
|
fix build
|
2008-09-22 08:28:18 -06:00 |
|
Joel Dice
|
86bec5e3b7
|
sketch out handling of reads at control flow blocks with multiple predecessors
|
2008-09-21 18:58:54 -06:00 |
|
Joel Dice
|
1b4ad1db42
|
snapshot
|
2008-09-20 17:42:46 -06:00 |
|
Joel Dice
|
606e5cb238
|
lots of bugfixes - finally got Simple.pow() working
|
2008-09-14 20:28:42 -06:00 |
|
Joel Dice
|
bd9e8a77e2
|
improved tracking of data flow across control flow boundaries
|
2008-09-13 15:09:26 -06:00 |
|
Joel Dice
|
392a1417e5
|
lots of bugfixes and a few instructions added
|
2008-09-08 18:31:19 -06:00 |
|
Joel Dice
|
dcdf78dc44
|
fix localOffset calculation
|
2008-09-07 20:21:11 -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 |
|