Commit Graph

  • 06c61d9cea Use macro-map for IRT_* enum. Add IRT_FLOAT. Mike Pall 2010-12-28 20:58:00 +0100
  • d176433e32 FFI: Catch various NYI cases while recording. Mike Pall 2010-12-28 19:09:01 +0100
  • a70fb9416a Make recording of type() independent of LJ_T*/IRT_* mapping. Mike Pall 2010-12-28 18:23:41 +0100
  • 44935dae0d FFI: Add 64 bit integer arithmetic. Mike Pall 2010-12-25 22:54:25 +0100
  • dd65e00831 FFI: Fix C type representation for valarrays. Mike Pall 2010-12-25 22:33:07 +0100
  • 461bf77331 FFI: Parse complex and 64 bit integer literals. Mike Pall 2010-12-24 01:31:39 +0100
  • 4850865c57 Fix misnamed macro in Lua parser. Mike Pall 2010-12-24 01:23:42 +0100
  • aa705f7e1a FFI: Fix C parser for hex literals. Mike Pall 2010-12-23 23:06:04 +0100
  • 79ab1a4baa FFI: Add pointer arithmetic. Mike Pall 2010-12-23 17:54:54 +0100
  • ba20871f0f Fix display of branches to exit stubs in 32 bit disassembly. Mike Pall 2010-12-23 01:01:04 +0100
  • 6082f93919 Improve register allocation for loops with variable shifts. Mike Pall 2010-12-23 00:55:31 +0100
  • c0ffe7d394 FFI: Record cdata allocations. Mike Pall 2010-12-22 23:21:38 +0100
  • 4f2f44dd97 Avoid compiler warnings. Mike Pall 2010-12-22 23:20:50 +0100
  • dbab6cf511 Reassociate XLOAD across PHIs to handle a[i-1] forwarding case. Mike Pall 2010-12-20 19:35:57 +0100
  • c8d6f078a5 Fix XSTORE for IRT_NUM constants. Mike Pall 2010-12-20 19:34:15 +0100
  • 1eb6e23730 Fix dump of pointer constants. Mike Pall 2010-12-20 17:12:49 +0100
  • c9a0b9ea9e Improve alias analysis for cdata allocations. Mike Pall 2010-12-20 15:26:05 +0100
  • 255c6e8c87 FFI: Drop IR_CNEWI. Add IR_CNEWP only for pointers/refs. Mike Pall 2010-12-17 17:20:04 +0100
  • c98132e182 FFI: FOLD load of initializers even across PHIs. Mike Pall 2010-12-17 16:47:28 +0100
  • c4a0fb4f60 FFI: Record copy-by-value for pointer and complex C types. Mike Pall 2010-12-15 21:49:40 +0100
  • 09ef7ebf56 FFI: Simplify copy-by-value. Strip attributes, keep qualifiers. Mike Pall 2010-12-15 21:47:46 +0100
  • fbcc925a2d FFI: Fix auto-deref of pointers to structs. Mike Pall 2010-12-15 19:47:01 +0100
  • badff4ed0a Fix error location while recording metamethods. Mike Pall 2010-12-15 19:44:30 +0100
  • 9666cf52ce Fix type-based alias analysis for XLOAD/XSTORE. Mike Pall 2010-12-12 23:09:26 +0100
  • 74317fa0ef Add alias analysis for XLOAD/XSTORE. Add DSE for XSTORE. Mike Pall 2010-12-12 22:28:48 +0100
  • a22ea8898e FOLD (base+k)+(idx*sz)+ofs ==> (base+idx*sz)+(ofs+k). Mike Pall 2010-12-12 21:07:23 +0100
  • a403cb13e4 Add missing PHI barrier to strength reduction of widening. Mike Pall 2010-12-12 21:03:20 +0100
  • 42f9b38663 Extend all FOLD rules to work on 64 bit integers. Mike Pall 2010-12-11 21:20:49 +0100
  • 476259e87e Add 64 bit bswap and rotates. Mike Pall 2010-12-11 21:20:12 +0100
  • 5f7e9173db Regroup FOLD rules for constant folding. Mike Pall 2010-12-11 20:08:07 +0100
  • 44101c64e8 FFI: Don't use KNULL for arbitrary NULL pointers. Mike Pall 2010-12-11 20:10:52 +0100
  • cdac0fa2cb FFI: Add IR_CNEW/IR_CNEWI to allocate/init cdata objects. Mike Pall 2010-12-11 19:32:12 +0100
  • 6947493687 Turn lj_mem_newgco() into a fastcall. Mike Pall 2010-12-10 01:10:52 +0100
  • 09e2bdbb0a FFI: Always specialize to the field name for struct access. Mike Pall 2010-12-09 22:48:01 +0100
  • 870bcd7640 Add missing guard for check against "#" when recording select(). Mike Pall 2010-12-09 22:35:49 +0100
  • cc0efd85d6 FFI: Fix alignment of scalars/vectors modified with mode attribute. Mike Pall 2010-12-09 18:48:23 +0100
  • 1d86090926 Strength-reduce 32 to 64 bit widening using scalar evolution analysis. Mike Pall 2010-12-09 16:12:59 +0100
  • 36fed9f3e1 Allow integer literals in FOLD rules. Mike Pall 2010-12-09 16:11:15 +0100
  • e9cab5a763 x86/x64 backend: keep invariants on the right rather than fusing loads. Mike Pall 2010-12-09 16:08:55 +0100
  • 4f0d3e8262 Apply narrowing optimization to IR_TOI64, too. Mike Pall 2010-12-08 21:03:45 +0100
  • f308e00e03 Add FOLD rule to reassociate 64 bit (x+k1)+k2. Mike Pall 2010-12-08 20:57:21 +0100
  • 70071241bf Fix type-based colorization of snapshot slots in debug output. Mike Pall 2010-12-08 20:37:22 +0100
  • d0b283e596 Avoid stack resizes while recording calls to vararg functions. Mike Pall 2010-12-08 19:11:58 +0100
  • 6a04591b7b FOLD (base+(idx+k)*sz)+ofs ==> (base+idx*sz)+(ofs+k*sz). Mike Pall 2010-12-08 03:33:48 +0100
  • 3c78a7f468 Avoid fusing loads if there are multiple references. Mike Pall 2010-12-08 03:26:53 +0100
  • 72744dabd9 Fix IRT_NUM support for XLOAD/XSTORE. Mike Pall 2010-12-08 03:24:35 +0100
  • 3ef6a53cfa FFI: Turn cdata indexing into x86/x64 [base+idx*sz+ofs] addressing. Mike Pall 2010-12-08 02:36:09 +0100
  • d778680098 FFI: Record cdata index operations (preliminary, lots of NYI cases). Mike Pall 2010-12-08 02:11:18 +0100
  • 2a917a9d83 FFI: Treat cdata metatable+methods as immutable in trace recorder. Mike Pall 2010-12-08 02:02:21 +0100
  • d4d95ee2da Fix x64 code generation for A16+REX prefixed instructions. Mike Pall 2010-12-08 01:57:50 +0100
  • e6093b129a Fix register allocation for 8 bit stores in x86 backend. Mike Pall 2010-12-07 01:18:10 +0100
  • b3c4c0810a Add IRT_NUM support to XLOAD/XSTORE. Mike Pall 2010-12-06 19:28:51 +0100
  • 159f51d811 Add IR_TOI64. Mike Pall 2010-12-06 16:18:18 +0100
  • f6c4e8d3d7 Add FOLD rule to turn i << 1 into i + i. Mike Pall 2010-12-06 13:26:58 +0100
  • a5bdae8f23 Fix 64 bit shifts in backend. Fix shift by 0. Mike Pall 2010-12-06 13:16:35 +0100
  • 5270586a80 Fix XLOAD/XSTORE references. Mike Pall 2010-12-06 13:15:53 +0100
  • 86fd2289f0 Add support for integer IR_MUL. Mike Pall 2010-12-06 12:54:00 +0100
  • b56b83487f Support all kinds of XLOAD/XSTORE references in backend. Mike Pall 2010-12-06 03:09:52 +0100
  • a850b27da9 Avoid compiler warnings. Mike Pall 2010-12-06 03:07:10 +0100
  • e137408752 Use native IRT_PTR instead of IRT_LIGHTUD workaround for FILE*. Mike Pall 2010-12-06 02:14:39 +0100
  • 73bc83cda1 Simplify lj_ir_kvalue(). Fix IR_KNULL + IRT_P64 case. Mike Pall 2010-12-06 02:12:08 +0100
  • 4755765e32 Avoid warning. Mike Pall 2010-12-06 01:59:07 +0100
  • db3d16bfd7 Add IR_XSTORE. Mike Pall 2010-12-06 01:48:19 +0100
  • 281f426d60 Add minimal set of fold rules for KINT64. Mike Pall 2010-12-06 00:38:21 +0100
  • 588fa0481f Add support for 64 bit integer arithmetic to x64 backend. Mike Pall 2010-12-06 00:07:36 +0100
  • c5f4f607c9 Fix xmm spill/restore broken by b1fb71fb. Mike Pall 2010-12-05 22:39:36 +0100
  • 5a13fa69d9 Add IR_KINT64. Mike Pall 2010-12-05 21:50:52 +0100
  • b1fb71fb98 Cleanup 64 bit IR type handling. Mike Pall 2010-12-05 19:49:29 +0100
  • 6a7605ec85 Rename IRT_PTR to IRT_P32. Mike Pall 2010-12-05 18:59:34 +0100
  • 26830d070d Make sure to use irt_toitype() macro everywhere. Mike Pall 2010-12-05 18:51:37 +0100
  • e7f8cc964e Split off fast function recording to lj_ffrecord.c. Mike Pall 2010-12-05 17:12:34 +0100
  • 559545eb6d Whitespace. Mike Pall 2010-12-05 01:14:18 +0100
  • ffa5a2b045 Don't export internal symbol. Mike Pall 2010-12-05 01:04:15 +0100
  • 7cb250c4b4 FFI: Add ffi.* library. Mike Pall 2010-12-05 00:43:47 +0100
  • 513b0ba18f FFI: Add support for converting cdata to tonumber(). Mike Pall 2010-12-05 00:40:23 +0100
  • 233076d3f9 FFI: Add C declaration parser. Mike Pall 2010-12-05 00:20:59 +0100
  • 526e087e63 FFI: Add C data handling and C type conversions. Mike Pall 2010-12-05 00:18:07 +0100
  • 05973ee440 FFI: Add C type management. Mike Pall 2010-12-05 00:11:35 +0100
  • 8679ca5792 POSIX is an acronym. Mike Pall 2010-12-04 20:47:51 +0100
  • 100a00dd40 Undo ef8c2648. Mike Pall 2010-12-03 16:58:19 +0100
  • d98cd19bb0 Allow access to raw error messages from outside lj_err.c. Mike Pall 2010-12-01 12:54:32 +0100
  • 0ffd06aba8 FFI: Add define to disable the FFI library. Mike Pall 2010-11-30 21:56:57 +0100
  • 4ed8a1931b Add support for deferred library loads to lib_init.c. Mike Pall 2010-11-30 21:56:03 +0100
  • 443c542e26 Fix check for enabled JIT compiler in lj_trace.h. Mike Pall 2010-11-30 18:32:22 +0100
  • cd1901370d Rearrange src/Makefile. Split features and debugging support. Mike Pall 2010-11-30 16:19:20 +0100
  • b3ef6040fa Update copyright for Lua 5.2-derived features. Mike Pall 2010-11-29 17:31:45 +0100
  • 592cf3ffac Don't mark REF_BASE in DCE. Mike Pall 2010-11-29 16:00:44 +0100
  • 2033d6310b Add shorter defines for endianess checks. Mike Pall 2010-11-28 17:22:45 +0100
  • 24186e05e6 Remove metamethod frame for errors from internal metamethods. Mike Pall 2010-11-27 20:23:39 +0100
  • 35890f66c1 FFI: Don't propagate cdata objects. Mike Pall 2010-11-26 17:27:02 +0100
  • ef8c264873 FFI: Add macros for consistent number to integer truncation. Mike Pall 2010-11-26 13:40:40 +0100
  • 2fd1292955 FFI: Add cdata object type. Mike Pall 2010-11-26 13:28:46 +0100
  • 6290d6f5d0 Display caller location in errors from metamethods. Mike Pall 2010-11-26 13:20:56 +0100
  • 7840d0b2b0 Shrink slots for 'break' statement to help data-flow analysis. Mike Pall 2010-11-25 12:09:21 +0100
  • 18fbf86c9e Improve unrolling heuristics for non-looping inner loops. Mike Pall 2010-11-25 11:38:48 +0100
  • 7338456796 Support os.exit(status|true|false [,close]) (from Lua 5.2). Mike Pall 2010-11-22 22:39:06 +0100
  • 367ff0cdaa Parse '\*' escape in strings (from Lua 5.2). Mike Pall 2010-11-22 22:22:12 +0100
  • b776bf91ff Tighter check on table.sort function compliance (from Lua 5.2). Mike Pall 2010-11-19 18:44:59 +0100
  • 52fd87bf34 Add support for "%g" character class in patterns (from Lua 5.2). Mike Pall 2010-11-19 18:37:10 +0100
  • 7cc981c140 string.format("%q", str) is now fully reversible (from Lua 5.2). Mike Pall 2010-11-19 18:22:08 +0100