Slava Pestov
|
6eaf2d7534
|
cpu.x86: add x87 codegen for Model T enthusiasts
|
2010-05-17 11:35:47 -04:00 |
Slava Pestov
|
ad7636045f
|
compiler: fix bad unit test
|
2010-05-14 18:37:11 -04:00 |
Slava Pestov
|
bb87d124c1
|
compiler: small fixes and cleanups
|
2010-05-13 02:48:20 -04:00 |
Slava Pestov
|
7316d41226
|
FFI rewrite part 2: use ##peek and ##replace instructions to access stack
|
2010-05-09 23:26:43 -04:00 |
Slava Pestov
|
c211c3e84e
|
FFI rewrite part 1: split up ##alien-invoke and friends into smaller instructions
|
2010-05-09 21:36:52 -04:00 |
Slava Pestov
|
035a2e9b63
|
compiler: more tests
|
2010-05-04 05:46:45 -05:00 |
Slava Pestov
|
dd2a4c2c77
|
cpu.x86: GC root offsets were computed wrong in words containing alien calls
|
2010-05-04 02:53:53 -04:00 |
Slava Pestov
|
ea4ee4ff60
|
compiler.tests: remove useless test from float tests; min and max are generic now, with methods on floats, so any potential inconsistency is gone
|
2010-05-04 00:07:53 -04:00 |
Slava Pestov
|
f5c5d8b44c
|
compiler: remove flat machine representation and generate code directly from the CFG
|
2010-05-03 17:34:32 -04:00 |
Slava Pestov
|
7f6ae34d72
|
Updating tests for recent compiler changes
|
2010-05-03 17:34:30 -04:00 |
Slava Pestov
|
38bafd2be8
|
compiler.cfg.linear-scan.assignment: spill slot representation logic was backwards, just like Factor
|
2010-05-03 17:34:29 -04:00 |
Slava Pestov
|
9b34a4a054
|
compiler.cfg: remove unused 'reps' slot from compiler.cfg, and re-organize things in preparation for SSA register allocation
|
2010-05-03 17:34:18 -04:00 |
Slava Pestov
|
a9ccfa8f05
|
strings: move string-nth primitive out of the VM and into the library
|
2010-05-03 17:34:12 -04:00 |
Slava Pestov
|
2475699736
|
compiler.cfg: more flexible addressing for ##slot and ##set-slot
|
2010-05-03 17:34:06 -04:00 |
Slava Pestov
|
913b95192e
|
compiler.cfg: merge all alien accessors into ##load-memory-imm and ##store-memory-imm
|
2010-05-03 17:34:06 -04:00 |
Slava Pestov
|
c81063614b
|
compiler.tests.low-level-ir: update for recent changes
|
2010-05-03 17:34:04 -04:00 |
Slava Pestov
|
2aaf24412a
|
compiler: change how 'f' is represented in low level IR to simplify some code, and fuse a ##load-constant of a word with a ##compare into a ##compare-imm on x86-32. This eliminates a spill from binary-search
|
2010-04-18 21:42:45 -05:00 |
Slava Pestov
|
c1a870fe72
|
sequences: remove stupid <flat-slice> word
|
2010-04-17 00:58:30 -05:00 |
Slava Pestov
|
4f16212840
|
compiler.tests.redefine23: test wasn't testing anything
|
2010-04-13 00:56:48 -07:00 |
Slava Pestov
|
88f627a402
|
compiler.tests.alien: fix tests on Win64
|
2010-04-13 01:24:04 -05:00 |
Slava Pestov
|
918b202b9a
|
compiler.tests.alien: get it passing when VM is compiled with MINGW by disabling certain tests and using the MINGW ABI for others, and fix fastcall alien-indirect tests for name decoration
|
2010-04-12 18:14:18 -05:00 |
Slava Pestov
|
145e6428ba
|
Fixing load errors
|
2010-04-10 17:24:44 -07:00 |
Slava Pestov
|
0aab7aa872
|
compiler.tests.alien: fix typo
|
2010-04-10 00:41:20 -07:00 |
Joe Groff
|
3e0d86f355
|
Merge branch 'master' of git://factorcode.org/git/factor into abi-symbols
Conflicts:
basis/compiler/tests/alien.factor
|
2010-04-06 12:30:15 -07:00 |
Joe Groff
|
1c5f718e80
|
add tests for fastcall callbacks
|
2010-04-02 00:23:39 -07:00 |
Joe Groff
|
47f3ace5ac
|
test fastcall indirect struct return
|
2010-04-02 00:00:34 -07:00 |
Joe Groff
|
43d73dcd4d
|
remove fastcall struct param tests because GCC appears to behave differently from VC++ here and again, who cares
|
2010-04-01 23:54:08 -07:00 |
Joe Groff
|
5dcfb383a6
|
add tests for struct returns from fastcall
|
2010-04-01 23:52:56 -07:00 |
Joe Groff
|
69abcd4b9b
|
test indirect fastcalls
|
2010-04-01 23:43:55 -07:00 |
Joe Groff
|
fd0569e553
|
compiler.tests.alien: add back fastcall float and struct tests
|
2010-04-01 22:47:16 -07:00 |
Joe Groff
|
88da92543c
|
add a test that multiple stdcalls or fastcalls in the same word behave correctly
|
2010-04-01 18:48:12 -07:00 |
Joe Groff
|
553b9fcd93
|
make "fastcall" symbol private since it doesn't really work in all cases
|
2010-04-01 18:34:15 -07:00 |
Joe Groff
|
9c1a9158be
|
retire mixed int/float fastcall tests because who cares
|
2010-04-01 18:25:56 -07:00 |
Slava Pestov
|
eceabbc57e
|
compiler: new set-special-object intrinsic; more efficient special-object intrinsic
|
2010-04-01 20:09:14 -04:00 |
Joe Groff
|
c743608456
|
check gc after fastcall ffi tests like stdcall tests
|
2010-04-01 14:15:34 -07:00 |
Joe Groff
|
a191937c47
|
typos in ffi tests
|
2010-04-01 03:02:36 -07:00 |
Joe Groff
|
fca8ba3d0a
|
add fastcall functions to ffi tests
|
2010-04-01 02:22:42 -07:00 |
Joe Groff
|
f3dd625de6
|
"stdcall" -> stdcall
|
2010-03-31 19:29:04 -07:00 |
Joe Groff
|
65c3259761
|
"cdecl" -> cdecl
|
2010-03-31 19:20:35 -07:00 |
Slava Pestov
|
560c119cd2
|
vm: actually use context callstacks when running code
|
2010-03-26 22:44:43 -04:00 |
Slava Pestov
|
6aee6b3adc
|
Add context-specific special object table, generalizing catchstack_save and current_callback_save fields of context struct
|
2010-03-18 22:06:00 +13:00 |
Joe Groff
|
bcbc7632c6
|
fix stack effects in compiler tests
|
2010-03-08 23:46:20 -08:00 |
Joe Groff
|
4cfa1a6c77
|
rename current string-mangling "char*" to "c-string". char* is now just a boring old pointer to char
|
2010-02-23 11:42:02 -08:00 |
Slava Pestov
|
eb3f8632dd
|
stack-checker.alien: now that C types are words, the compiler can add dependencies on them when compiling alien words. This triggers the necessary recompilation when C types are redefined
|
2010-02-22 21:32:41 +13:00 |
Slava Pestov
|
6501480a0e
|
Fix two problems with recompilation: predicate constant folding was recording unsatisfied dependencies in some cases, and literal tuple instances of forgotten classes would cause problems for method inlining
|
2010-02-20 12:01:47 +13:00 |
Slava Pestov
|
35acd71551
|
compiler.units: fix bug that came up recently with nested compilation units
|
2010-02-04 03:20:48 +13:00 |
Slava Pestov
|
8d3c11c176
|
compiler: remove some unnecessary complexity
|
2010-02-04 01:36:52 +13:00 |
Slava Pestov
|
3259ef4bec
|
vm: modify-code-heap primitive now takes a pair of parameters, update-existing? and reset-pics?. If no generic words were changed, PICs do not need to be reset. If no existing words were redefined, the code heap doesn't have to be traced at all. Speeds up compilation of PEGs since those create lots of compilation units
|
2010-02-03 23:11:28 +13:00 |
Slava Pestov
|
df55fed478
|
generic: rename method-body predicate class to method
|
2010-02-03 23:11:24 +13:00 |
Slava Pestov
|
bf05a901c4
|
Fix ffi-test library to work with Windows SDK. Turns out MINGW has a different ABI for struct returns than MS's compiler; make the MS ABI the default for cdecl on Windows, and add mingw ABI for libraries that use the MINGW ABI
|
2010-02-02 04:01:12 -06:00 |