Commit Graph

203 Commits

Author SHA1 Message Date
Oliver Schneider 58a59e9d23 Rustup (generator support) 2017-08-30 13:16:27 +02:00
Ralf Jung e6a874b0bf test new From instances for Rc 2017-08-29 16:51:26 +02:00
Oliver Schneider 506a5c7910 Mir optimizations treat single variant enums as structs 2017-08-29 12:26:20 +02:00
Oliver Schneider 88fc45b37c Get some more rustc tests working 2017-08-29 11:58:22 +02:00
Oliver Schneider 206f0bd6df Fix panic in subslice patterns of arrays (fixes #276) 2017-08-29 10:03:00 +02:00
Oliver Schneider 385b5b9fd1 Merge branch 'master' into priroda 2017-08-28 15:37:10 +02:00
Oliver Schneider 9d10e0154b Mir validation can't cope with mem::uninitialized::<SomeEnum>() 2017-08-28 14:53:43 +02:00
Oliver Schneider e28f4a8e3e Add a regression test for #313 2017-08-28 14:10:59 +02:00
Ralf Jung 907d2c7310 rustc #43457 got fixed, we can enable more tests 2017-08-27 18:18:32 +02:00
Ralf Jung e332ab9b13 Handle closures in get_field_ty
Fixes #304
2017-08-24 13:34:05 +02:00
Ralf Jung 90edc03eea Add a test demonstrating the limitations of our lfietime resolution 2017-08-18 11:29:51 +02:00
Ralf Jung 7e5d971c56 fix warnings; make test suite pass again 2017-08-12 09:45:44 -07:00
Ralf Jung 668491a892 Work on making validation test pass again
Turns out that tracking write locks by their lifetime is not precise enough,
but for now, we don't have an alternative.  Also, we need to force_allocate
what we acquire or else the memory will not be in the right state.
2017-08-09 15:49:47 -07:00
Oliver Schneider 8ab1eeef51 Implement packed statics 2017-08-08 17:09:26 +02:00
Ralf Jung 847396e412 Re-do memory locking (again). Now with proper support for multiple independent shared borrows of the same mutable reference. 2017-08-07 12:57:32 -07:00
Ralf Jung 2a1d7666ed Merge pull request #286 from RalfJung/mir-validate
Update MIR validation and test it
2017-08-04 22:02:52 -07:00
Oliver Schneider 181bb30d07 Rustc reorders fields, but miri expects them in source order 2017-08-04 13:43:17 +02:00
Ralf Jung 766a69f656 make test suite MIR validation aware. run-pass passes with and without fullmir, if optimizations are disabled! 2017-08-03 18:13:22 -07:00
Ralf Jung 4672cb7bde make force_allocation handle packed ByValPair 2017-07-26 23:45:22 -07:00
Oliver Schneider f906c5458c Merge pull request #272 from oli-obk/mir-validate
Mir validate
2017-07-26 23:37:52 +02:00
Ralf Jung 744780e794 more hacks to make test cases pass 2017-07-25 17:31:40 -07:00
Ralf Jung e5cc8aaf5b Test that &* of a dangling (and even unaligned) ptr is okay 2017-07-25 17:02:57 -07:00
Ralf Jung f960f4c537 fix casting integers to pointers 2017-07-21 20:02:48 -07:00
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