Commit Graph

126 Commits

Author SHA1 Message Date
Mike Pall
caefd06871 Merge branch 'master' into v2.1 2014-04-01 00:34:13 +02:00
Mike Pall
19b69f21d4 FFI: Allow non-scalar cdata to be compared for equality by address. 2014-04-01 00:30:22 +02:00
Mike Pall
a9d4543601 Merge branch 'master' into v2.1 2014-01-16 23:18:34 +01:00
Mike Pall
ef59e54820 Bump copyright date to 2014. 2014-01-16 23:10:16 +01:00
Mike Pall
a014d5e65d FFI: Compile conversions from functions to function pointers. 2013-10-16 19:51:42 +02:00
Mike Pall
88c7785b87 FFI: Compile lightuserdata to void * conversion. 2013-10-09 17:23:08 +02:00
Mike Pall
0d41601e76 Merge branch 'master' into v2.1 2013-09-08 03:10:47 +02:00
Mike Pall
93c2b939bd FFI: Fix argument checks for ffi.string(). 2013-09-08 03:09:39 +02:00
Mike Pall
45f3ee8794 Merge branch 'master' into v2.1 2013-05-29 23:12:09 +02:00
Mike Pall
3eeb7d3aa0 FFI: Preserve intermediate string for const char * conversion.
Otherwise the trailing NUL is lost.
2013-05-29 23:05:05 +02:00
Mike Pall
992f7d4b71 FFI: Refactor ffi.gc()/__gc. Compile ffi.gc(cdata, nil), too. 2013-05-24 17:44:55 +02:00
Mike Pall
f1f7e40318 FFI: Compile VLA/VLS and large cdata allocs with default initialization. 2013-05-24 00:49:02 +02:00
Mike Pall
b3369f3c95 Merge branch 'master' into v2.1 2013-05-23 22:20:07 +02:00
Mike Pall
7ef2b55fc0 FFI: Fix unroll limit for ffi.fill(). 2013-05-23 22:17:45 +02:00
Mike Pall
55772e3ad9 Merge branch 'master' into v2.1 2013-05-23 19:58:35 +02:00
Mike Pall
890754ee27 FFI: Insert no-op type conversion for pointer to integer cast. 2013-05-23 19:55:09 +02:00
Mike Pall
fd616caf26 Compile bit.tohex(). 2013-05-15 13:57:35 +02:00
Mike Pall
8f90a1279e Big renaming of string buffer/formatting/conversion functions. 2013-05-13 10:15:07 +02:00
Mike Pall
2be1c2658f Merge branch 'master' into v2.1 2013-05-02 02:07:38 +02:00
Mike Pall
5d6db413ae FFI: Fix tailcall in lowest frame to C function with bool result. 2013-05-02 02:04:41 +02:00
Mike Pall
a98aede377 FFI: Add 64 bit bitwise operations. 2013-03-14 06:03:18 +01:00
Mike Pall
b359ce804b Remove obsolete non-truncating number to integer conversions. 2013-02-23 01:19:00 +01:00
Mike Pall
4a44c4ff69 Bump copyright date to 2013. 2013-02-11 12:54:48 +01:00
Mike Pall
4e5ef81b86 FFI: Fix recording of bool call result check on x86/x64. 2012-11-06 17:05:37 +01:00
Mike Pall
0b55e05d06 FFI: Compile ffi.gc(). 2012-10-10 18:56:16 +02:00
Mike Pall
1c626112a0 FFI: Compile ffi.sizeof(), ffi.alignof() and ffi.offsetof(). 2012-10-10 18:16:18 +02:00
Mike Pall
4a97faef7e FFI: Compile array/struct copies. 2012-10-09 21:51:30 +02:00
Mike Pall
a7d1dbacb1 FFI: Optimize ffi.copy() and ffi.fill(). 2012-10-09 21:49:57 +02:00
Mike Pall
da682b0e91 FFI: Add support for copy constructors. 2012-10-08 17:15:28 +02:00
Mike Pall
e013206dd8 FFI: ctypeid of ctype object is immutable. 2012-09-27 14:48:13 +02:00
Mike Pall
21cea85d92 FFI: Always resolve metamethods for pointers to structs. 2012-09-08 21:03:40 +02:00
Mike Pall
90ec1f90d0 Fix recording of ctype() constructors for pointers. 2012-09-03 21:08:37 +02:00
Mike Pall
2717623e3a FFI: Compile ffi.typeof(cdata).
Thanks to Robert G. Jakabosky.
2012-08-08 21:01:36 +02:00
Mike Pall
e2373c1538 FFI: Compile assignments from enums.
Thanks to Robert G. Jakabosky.
2012-08-08 20:36:31 +02:00
Mike Pall
3636a720a5 Turn loads from immutable upvalues into constants. 2012-07-20 18:54:52 +02:00
Mike Pall
4d9c29a78c FFI: Box all accessed or returned enums. 2012-07-17 22:22:07 +02:00
Mike Pall
bd782cedd5 Bump some limits to accomodate SINK pass. 2012-07-04 21:15:15 +02:00
Mike Pall
17d3fc47f3 Avoid pesky compiler warnings about C++ keywords (eh?). 2012-07-03 13:19:32 +02:00
Mike Pall
dd9e7a4608 Fix cdecl string parsing during recording. 2012-06-28 20:17:08 +02:00
Mike Pall
8b71ab1080 FFI: Check for __new metamethod when calling a constructor. 2012-06-20 18:28:25 +02:00
Mike Pall
e75561b70e FFI: Fix address calculation for refs.
Fixes bug introduced in commit 5032e6d8.
2012-06-09 00:23:27 +02:00
Mike Pall
5032e6d87f FFI: Use CNEWI/FLOAD to box/access ffi.new("int", x) (for varargs). 2012-06-04 15:39:16 +02:00
Mike Pall
fa2572da6c FFI: Convert io.* file handle to FILE * pointer (but as a void *). 2012-05-29 12:09:18 +02:00
Mike Pall
3a43ea5084 FFI: Equality comparisons never raise an error. 2012-05-23 22:20:27 +02:00
Mike Pall
6e5c872eb7 FFI: Fix recording of test for bool result of call. 2012-05-09 16:25:51 +02:00
Mike Pall
7d3954036c FFI: Don't record test for bool result of call, if ignored. 2012-05-08 18:59:51 +02:00
Mike Pall
d4a09431c8 ARM/FFI: Invoke SPLIT pass for double args in FFI call. 2012-04-26 23:46:23 +02:00
Mike Pall
ac6b678d4c FFI: Fix result type of pointer difference. 2012-04-17 12:54:38 +02:00
Mike Pall
10ef109eef Bump copyright date to 2012. 2012-01-23 22:42:42 +01:00
Mike Pall
63981436f7 Fix compiler warning. 2011-12-09 15:57:20 +01:00