Commit Graph

180 Commits

Author SHA1 Message Date
Oliver Schneider
f2d0101065
Also test optimized MIR 2017-07-20 20:25:43 +02:00
Ralf Jung
e4ffab1754 enable test code that passes just fine 2017-07-19 11:38:15 -07:00
Ralf Jung
0fbbcae92d packed structs: test unsize coercions 2017-07-13 14:18:26 -07:00
Ralf Jung
287b6be5ca track alignment also for ByRef values 2017-07-12 21:06:57 -07:00
Ralf Jung
c149c3fc6a Re-do packed memory accesses
We now track in the lvalue whether what we computed is expected to be aligend or not, and then set some state in the memory system accordingly to make it (not) do alignment checks
2017-07-12 17:46:56 -07:00
Ralf Jung
e60f11f52c update for latest nightly 2017-07-10 13:57:18 -07:00
Ralf Jung
79ab4f0e8c make u128 test work (commenting out the use of checked_shl) 2017-07-03 20:36:04 -07:00
Ralf Jung
fbc00ddc95 make sure that 'identity casting' works 2017-06-24 11:05:13 -07:00
Oliver Schneider
9be3e9185b Remove the zst allocation 2017-06-23 12:55:49 +02: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
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
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
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
David Renshaw
c8be312933 fix issue 184 by marking the destination as a packed struct 2017-06-06 09:49:34 -04: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
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
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
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
Ralf Jung
1241938f97 test suite now also passes on MIR-libstd
Also enable some tests that were disabled for no apparant reason.
(The comment in zst.rs was wrong, the test was disabled also for miri execution.)
Delete env_args test as the args can actually be queried with MIR-libstd (currently, they are always empty)
2017-05-30 10:41:38 -07:00
Ralf Jung
99433a1ffd improve fn pointer signature check to allow some casts that should be permitted
Also properly check the "non-capturing Fn to fn" case
2017-05-30 10:41:38 -07:00
Ralf Jung
720c5f874e implement __rust_maybe_catch_panic 2017-05-30 10:41:38 -07:00
David Renshaw
66495222ab closure_to_fn_coercion has been stabilized 2017-05-30 09:27:50 -04:00
David Renshaw
0641e932bc implement __rust_allocate_zeroed C ABI function 2017-05-21 15:48:31 -04:00
David Renshaw
ecf452ce3a don't match on floating-point literal 2017-05-10 16:38:29 -04:00
Oliver Schneider
6706d8fdec Add regression test for bad substs 2017-03-24 09:03:19 +01:00
Oliver Schneider
bbeb7216e0 Thinify the fat pointer on virtual function calls 2017-03-23 18:32:57 +01:00
Oliver Schneider
0927829e14 Add regression test for single field by val tuples 2017-03-23 16:13:01 +01:00
Scott Olson
a82924b3e2 Merge pull request #152 from oli-obk/intrinsics
Intrinsics and overflow
2017-03-14 13:35:51 -07:00