Commit Graph

284 Commits

Author SHA1 Message Date
Oliver Schneider
377fcce9b8 Ensure tests run with and without full MIR 2017-06-23 16:41:56 +02:00
Oliver Schneider
9be3e9185b Remove the zst allocation 2017-06-23 12:55:49 +02:00
Ralf Jung
12935b6514 add some compile-fail tests 2017-06-22 14:46:53 -07:00
Ralf Jung
14cb31fb88 permit bit-anding in pointer values below the alignment
This makes HashMap work!
2017-06-22 14:46:53 -07:00
Ralf Jung
269667e152 implement _nonzero intrinsics 2017-06-22 14:46:53 -07:00
Ralf Jung
2f61356858 permit offsetting a NULL-ptr by 0, to fix hashmap test 2017-06-22 13:41:13 -07:00
Oliver Schneider
8de111018d Merge pull request #201 from oli-obk/test_suite_fails
"Support" more libc functions
2017-06-22 14:16:45 +02:00
Oliver Schneider
2b9cfb6850 Update regions-mock-trans.rs 2017-06-22 12:30:02 +02:00
Oliver Schneider
1883aac8c2 Update foreign-fn-linkname.rs 2017-06-22 12:27:18 +02:00
Oliver Schneider
522ac49364 Merge pull request #206 from RalfJung/ptrs
Pointer Arithmetic
2017-06-22 11:25:05 +02:00
Ralf Jung
7b2b0dd56c test HashMap creation in libstd-MIR, and make it work again 2017-06-21 23:09:34 -07:00
Ralf Jung
6eafb10b87 add test for function pointer offsets 2017-06-21 21:54:42 -07:00
Ralf Jung
7b1582b383 permit integer addition and subtraction on ptr-integers 2017-06-21 21:38:43 -07:00
Ralf Jung
184d3b3bad expand thread-local storage tests to cover dtor order and re-running dtors 2017-06-21 20:17:07 -07:00
Ralf Jung
8101592ab2 run fullmir tests against rustc; add output explaining what is being tested 2017-06-21 14:28:13 -07:00
Oliver Schneider
ecc44fec7e Implement malloc and free 2017-06-21 15:51:42 +02:00
Oliver Schneider
f22c7e43df Store env vars where necessary 2017-06-21 15:46:30 +02:00
Oliver Schneider
a6cd7a2e08 Also move some compile-fail tests to fullmir-only 2017-06-21 15:07:40 +02:00
Oliver Schneider
b001b5531b The latest nightly doesn't expose as much MIR anymore as it used to 2017-06-21 09:44:10 +02:00
Oliver Schneider
ef29e6a30b Add fullmir tests 2017-06-21 08:57:17 +02:00
Oliver Schneider
a82fe9ae0c Enable more zst writes and reads 2017-06-20 16:26:53 +02:00
Oliver Schneider
ea6f6079ca
Use PrimVal instead of Pointer where applicable 2017-06-20 14:28:19 +02:00
Oliver Schneider
a6734cd890
Fix unions 2017-06-20 14:28:18 +02:00
Oliver Schneider
fcf495821e
Get rid of the integer allocation 2017-06-20 14:28:18 +02:00
David Renshaw
a28c7990ea update compiletest and remove obsolete comment 2017-06-20 07:08:29 +09:00
Ralf Jung
4b1a12c240 test the Rc::{into,from}_raw roundtrip
This uses some pointer arithmetic based on field offsets
2017-06-12 15:32:16 -07:00
Oliver Schneider
03577a905a Fix some clippy warnings 2017-06-12 13:56:29 +02:00
Ralf Jung
4ac9fa67a4 enable a test that was accidentally left disabled 2017-06-11 21:16:05 -07:00
Ralf Jung
3a5abf031b fix comment in aux_test 2017-06-08 11:34:49 -07:00
Ralf Jung
3e1596d8c9 Error out when "primitive MIR math" (as opposed to unchecked intrinsics) overflows
Fixes #178
2017-06-07 15:39:44 -07:00
David Renshaw
c8be312933 fix issue 184 by marking the destination as a packed struct 2017-06-06 09:49:34 -04:00
Ralf Jung
36505c7b40 fix bitops being accidentally allowed on pointers from the same allocation 2017-06-05 17:17:16 -07:00
Ralf Jung
a6e6a6fd29 Add some more tests involving Offset/arith_offset and ZST pointers 2017-06-05 15:19:07 -07:00
Ralf Jung
a291153414 Permit ptr->int->ptr roundtrip 2017-06-05 15:18:40 -07:00
Ralf Jung
2a231d66fc check bounds when using offset intrinsic or MIR op 2017-06-05 14:27:26 -07:00
Ralf Jung
f39e015163 check for overflow when doing pointer arithmetic 2017-06-05 14:23:35 -07:00
Ralf Jung
70227c87bf fix arith_offset not taking the size of the type into account; test for offset 2017-06-05 14:23:35 -07:00
Ralf Jung
1d0e622a81 test that we cannot observe the bytes representing a pointer 2017-06-05 14:23:35 -07:00
Ralf Jung
6197f4fac9 Permit int->ptr->int roundtrip 2017-06-05 14:23:35 -07:00
Ralf Jung
cfff91ba3e write_bytes intrinsic: if the write count is 0, the pointer does not have to be valid 2017-06-05 14:23:34 -07:00
Ralf Jung
716653fd76 add comments in the tests explaining what the ignore flags do 2017-06-05 14:23:34 -07:00
Ralf Jung
1b5f77e4c1 Implement Offset like the other binary operators, share code with the intrinsic
Also improve drop glue tests
2017-06-05 14:19:10 -07:00
Ralf Jung
31cf66d0e8 remove our array drop glue and use rustc's instead; implement the new Offset and SizeOf operators 2017-06-05 10:06:40 -07:00
Oliver Schneider
b946351083 Merge pull request #174 from RalfJung/xargo-test
run test suite also against libstd with full MIR
2017-05-31 23:24:39 +02:00
Ralf Jung
44a45f7c34 run test suite also against libstd with full MIR 2017-05-31 13:39:40 -07:00
David Renshaw
a59d482574 remove unneeded '-gnu' suffix from compiletest ignore directives 2017-05-31 14:21:49 -04:00
David Renshaw
7624bca09e ignore thread-local-no-dtor test on windows-gnu target 2017-05-31 10:47:26 -04:00
Ralf Jung
b8e0b79222 add a test for output string formatting 2017-05-30 14:02:20 -07:00
Ralf Jung
dad95474cb test thread-local key with no dtor 2017-05-30 10:41:38 -07:00
Ralf Jung
633a34d6d3 re-disable aux_test -- it passes here, but not on Travis 2017-05-30 10:41:38 -07:00