Mike Pall
|
87456f73f5
|
Fix hint-based register allocation in ra_dest().
|
2011-11-14 23:52:26 +01:00 |
|
Mike Pall
|
fa1675baad
|
ARM: Fix IR splitting for softfp XLOAD.
|
2011-11-11 01:07:34 +01:00 |
|
Mike Pall
|
2dc574d06b
|
FFI: Compile calls to stdcall, fastcall and vararg functions.
|
2011-10-27 01:57:30 +02:00 |
|
Mike Pall
|
0cf8c20be8
|
PPC: Integrate and enable JIT compiler.
|
2011-10-24 16:43:51 +02:00 |
|
Mike Pall
|
167f638f91
|
PPC: Generalize rematerialization handling.
|
2011-10-24 16:21:11 +02:00 |
|
Mike Pall
|
3591609dad
|
PPC: Add Linux/PPC cache flush mechanism.
GCC's __clear_cache() does nothing on PPC. Duh.
|
2011-10-24 16:18:02 +02:00 |
|
Mike Pall
|
8fc9bc1724
|
Make sure to flush/sync the D/I-cache for all generated code.
|
2011-10-24 16:16:14 +02:00 |
|
Mike Pall
|
a0d7827554
|
Generalize handling of stack checks indicated by highest exit + 1.
|
2011-10-24 16:11:38 +02:00 |
|
Mike Pall
|
c01aaad890
|
Fix register hints for arithmetic helper functions.
|
2011-10-22 02:00:15 +02:00 |
|
Mike Pall
|
c805a49d30
|
Separate/rename NUM/FLOAT <-> I64/U64 conversion functions.
|
2011-10-22 01:59:10 +02:00 |
|
Mike Pall
|
ff7f7a7180
|
Cleanup various endianess issues in assembler backend.
|
2011-10-22 01:35:57 +02:00 |
|
Mike Pall
|
1b949dc60a
|
Use some register allocator helpers for multiple architectures.
|
2011-09-05 20:23:20 +02:00 |
|
Mike Pall
|
eb92daad0a
|
ARM: Don't evict ASMREF_L in ra_evictk().
|
2011-07-12 15:59:07 +02:00 |
|
Mike Pall
|
deeb8196c4
|
Reorganize trace linking and track link types.
|
2011-06-28 23:23:34 +02:00 |
|
Mike Pall
|
db22ce2ba8
|
Fix iOS build.
|
2011-06-27 01:33:50 +02:00 |
|
Mike Pall
|
513bd6e952
|
x86/x64: Don't evict BASE in ra_evictk().
|
2011-06-22 21:07:02 +02:00 |
|
Mike Pall
|
5d82cfd091
|
ARM: Add ARM-specific assembler backend.
|
2011-06-02 03:18:26 +02:00 |
|
Mike Pall
|
a770bf3741
|
Many soft-float-related fixes to SPLIT pass and assembler backend.
|
2011-06-02 01:24:36 +02:00 |
|
Mike Pall
|
2d0b32500e
|
ARM: Tune rematerialization scheduler.
|
2011-05-31 21:50:14 +02:00 |
|
Mike Pall
|
7bad42a3ba
|
Fix compiler warning.
|
2011-05-27 02:01:36 +02:00 |
|
Mike Pall
|
840a067d4e
|
ARM: Fix rematerialization scheduler.
|
2011-05-26 18:05:19 +02:00 |
|
Mike Pall
|
8d4400331d
|
ARM: Flush instruction cache in assembler backend.
|
2011-05-26 18:04:01 +02:00 |
|
Mike Pall
|
afad72af25
|
ARM: Add ARM-specific tuning to generic assembler backend.
|
2011-05-22 17:54:28 +02:00 |
|
Mike Pall
|
aaba681056
|
ARM: Add rematerialization scheduler for constants to backend.
|
2011-05-22 17:50:36 +02:00 |
|
Mike Pall
|
138f54352a
|
Split up FP IR instructions with SPLIT pass for soft-float targets.
|
2011-05-22 17:44:58 +02:00 |
|
Mike Pall
|
d0115c65f5
|
More portability cleanups for assembler backend.
|
2011-05-22 17:13:16 +02:00 |
|
Mike Pall
|
effdfda673
|
Move IR_CALL* definitions to lj_ircall.h.
|
2011-05-22 16:28:43 +02:00 |
|
Mike Pall
|
3a942d6cea
|
Portability cleanups for assembler backend.
|
2011-05-17 21:26:00 +02:00 |
|
Mike Pall
|
fb46370e56
|
Cleanup of target dependencies.
|
2011-05-16 19:32:47 +02:00 |
|
Mike Pall
|
dab4bcafba
|
Add target-specific macro for stack alignment in assembler backend.
|
2011-05-16 02:43:14 +02:00 |
|
Mike Pall
|
58f38c254b
|
Move x86/x64 parts of JIT assembler backend to extra files.
|
2011-05-12 01:35:09 +02:00 |
|
Mike Pall
|
800349387a
|
Disentangle target-specific parts of JIT assembler backend.
|
2011-05-12 01:27:20 +02:00 |
|
Mike Pall
|
c77ca54564
|
FFI: Compile C function calls with 64 bit args/results in 32 bit mode.
|
2011-04-29 19:40:50 +02:00 |
|
Mike Pall
|
eb7b452d53
|
x86: Pop unused FP result from x87 stack.
|
2011-04-29 19:35:25 +02:00 |
|
Mike Pall
|
31e0774a9e
|
FFI: Fix cdata finalization.
|
2011-04-13 21:37:54 +02:00 |
|
Mike Pall
|
3b6f37dd2c
|
FFI: Add ctype metamethods and ffi.metatype().
|
2011-04-12 19:16:39 +02:00 |
|
Mike Pall
|
66a1006175
|
Fuse XLOAD/XSTORE operands more aggressively.
|
2011-04-05 16:32:27 +02:00 |
|
Mike Pall
|
48438b9e13
|
Fix code generation for PHIs with type IRT_FLOAT.
|
2011-04-05 16:29:40 +02:00 |
|
Mike Pall
|
7fb1075903
|
DUALNUM: Add integer variant of MIN/MAX.
|
2011-03-11 23:28:46 +01:00 |
|
Mike Pall
|
bfce3c1127
|
DUALNUM: Handle integer type in JIT compiler.
|
2011-03-10 01:57:24 +01:00 |
|
Mike Pall
|
1c9981ae4c
|
x86/x64: Fix code generation for fused IR_MUL/IR_MULOV.
|
2011-03-10 01:09:18 +01:00 |
|
Mike Pall
|
a127eaf8d2
|
FFI: Fix x86 code generation for ffi.string().
|
2011-03-10 00:57:02 +01:00 |
|
Mike Pall
|
449cee405c
|
Fix code generation for bit.bnot().
|
2011-03-07 22:11:01 +01:00 |
|
Mike Pall
|
54978e481b
|
DUALNUM: Make overflow guards weak. Add IR_USE and IR_MULOV.
|
2011-03-07 20:21:38 +01:00 |
|
Mike Pall
|
1cb58fb7bb
|
Fix code generation for Intel Atom in x64 mode.
|
2011-03-03 00:49:45 +01:00 |
|
Mike Pall
|
e1aa8d0d97
|
FFI: Fix compiled ffi.string() semantics.
|
2011-02-28 19:47:51 +01:00 |
|
Mike Pall
|
97d0874ff5
|
Add IR_XBAR, a barrier against XLOAD/XSTORE optimizations.
|
2011-02-07 21:59:25 +01:00 |
|
Mike Pall
|
26fadcd25b
|
FFI: Record simple C function calls.
Only handles cdecl and fixarg C functions.
Doesn't handle pass-by-value aggregates.
Doesn't handle 64 bit args/returns on 32 bit CPUs.
|
2011-02-05 21:50:15 +01:00 |
|
Mike Pall
|
df65b8b419
|
FFI: Rename IR_CNEWP to IR_CNEWI and use it to box 64 bit integers.
Generates smaller IR and DCE eliminates many intermediate boxes.
Needs allocation sinking to eliminate the boxes kept alive by PHIs.
|
2011-02-03 04:22:27 +01:00 |
|
Mike Pall
|
1027018b21
|
Rename IR_POWI to IR_POW.
|
2011-02-02 21:33:11 +01:00 |
|