Commit Graph

1375 Commits

Author SHA1 Message Date
Oliver Schneider f7bc6ab162 Reuse the Backtrace object instead of rolling our own 2017-08-03 12:37:52 +02:00
Oliver Schneider 163821b500 Remove accidental text paste 2017-08-03 12:37:24 +02:00
Oliver Schneider 40677a5c47 Choose release miri for release tests 2017-08-02 18:28:12 +02:00
Oliver Schneider 7e585ef147 Speed up travis by using release mode
before we built in debug mode for testing,
but then installed miri, which builds in release mode.

So we built in release mode anyway but tested slowly in debug mode
2017-08-02 17:57:55 +02:00
Oliver Schneider 29a3c4d28c Produce backtraces for miri internals 2017-08-02 16:59:01 +02:00
Eduard-Mihai Burtescu cf318b1f6f Merge pull request #278 from solson/unions
Process untagged unions
2017-08-02 14:09:04 +03:00
Oliver Schneider f8c61da070 Add a test for untagged unions 2017-08-02 12:56:07 +02:00
Oliver Schneider 7700bd0c54 Merge pull request #268 from oli-obk/upstream
Split up miri into the librustc_mir and bin parts
2017-08-02 09:30:14 +02:00
Oliver Schneider f19d77e0f1 Build the rustc_tests binary on travis 2017-08-01 16:44:49 +02:00
Oliver Schneider 79f38bf2cd Process untagged unions 2017-08-01 16:12:29 +02:00
Oliver Schneider 393216d410 Add a better error message than syscall 318 not found 2017-08-01 16:12:29 +02:00
Oliver Schneider 8b81f5430f Fix running the rustc test suite 2017-08-01 16:12:29 +02:00
Oliver Schneider d05784f23c Address comments 2017-08-01 11:11:57 +02:00
Oliver Schneider 8de85808ec Properly process ptr_op for const eval 2017-08-01 09:56:21 +02:00
Oliver Schneider 3d82b66c6c Remove redundant members field 2017-08-01 09:56:21 +02:00
Oliver Schneider 54ecdf16b3 Remove leftover unused file 2017-08-01 09:56:21 +02:00
Oliver Schneider 23d351d6d4 Move tls code to its own file 2017-08-01 09:56:21 +02:00
Oliver Schneider adfea61665 Allow machines to create new memory kinds 2017-08-01 09:56:21 +02:00
Oliver Schneider 7ed706d09c Update Cargo.toml 2017-08-01 09:56:21 +02:00
Oliver Schneider 4383fc2e27 Adjust travis to the directory changes 2017-08-01 09:56:21 +02:00
Oliver Schneider f16b9e280b Move all intrinsics out of interpret and fail CTFE on intrinsic calls 2017-08-01 09:56:21 +02:00
Oliver Schneider 45b7cfdb6d Update env_logger in order to share more dependencies 2017-08-01 09:56:21 +02:00
Oliver Schneider df7c42bcc8 Move a method used everywhere out of intrinsic.rs 2017-08-01 09:56:21 +02:00
Oliver Schneider e15d374dda Fix doc text 2017-08-01 09:56:21 +02:00
Oliver Schneider e5799a6af3 Reduce the chance of accidentally calling functions in CTFE
previously miri had a check for const fn and other cases that
CTFE requires. Instead the function call is completely
processed inside the machine. This allows CTFE to have full
control over what is called and miri to not have useless
CTFE-checks in normal mode.
2017-08-01 09:56:21 +02:00
Oliver Schneider 728bb878ac Move the global_item function to the EvalContext 2017-08-01 09:56:21 +02:00
Oliver Schneider 960dca172d Rename const_eval::Evaluator to CompileTimeFunctionEvaluator 2017-08-01 09:56:21 +02:00
Oliver Schneider 4a4640a331 Move more non-CTFE operations to the Machine 2017-08-01 09:56:21 +02:00
Oliver Schneider dc6e877ead Split "new" miri crate into modules 2017-08-01 09:56:21 +02:00
Oliver Schneider 36502a32b0 Implement the first machine function 2017-08-01 09:56:21 +02:00
Oliver Schneider 11e30a65e6 Split up miri into the librustc_mir and bin parts 2017-08-01 09:56:21 +02:00
Ralf Jung 6d3c88c061 Merge pull request #277 from RalfJung/nightly
fix for latest nightly
2017-07-31 17:14:38 -07:00
Ralf Jung 69fd22f904 fix for latest nightly 2017-07-31 16:53:53 -07:00
Oliver Schneider 7c6befe69f Merge pull request #274 from RalfJung/packed2
make force_allocation handle packed ByValPair
2017-07-31 12:41:29 +02:00
Ralf Jung 4458001644 remove some commented-out tracing 2017-07-28 19:47:02 -07:00
Ralf Jung eb6c743e42 avoid anonymous bool 2017-07-28 19:43:05 -07:00
Ralf Jung 14c8e834b9 use Cell for memory's aligned flag to avoid infecting interfaces with 'fake' mutability 2017-07-27 09:14:04 -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 791dbaf584 disable validation code so that it all compiles against current nightly 2017-07-26 11:27:40 -07:00
Ralf Jung fdc7071697 whitelist some more methods 2017-07-26 11:10:47 -07:00
Oliver Schneider 46324c24ca Merge pull request #273 from RalfJung/ref
Test that &* of a dangling (and even unaligned) ptr is okay
2017-07-26 07:46:39 +02:00
Ralf Jung b372de8ec9 move undef-check-on-release-validation out, to catch more cases 2017-07-25 18:15:43 -07:00
Ralf Jung 858e5eef92 check mutable UnsafeCell; hack for AtomicBool::get_mut 2017-07-25 17:31:40 -07: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 e2d80d0423 whitelist things so that more tests pass 2017-07-25 13:24:23 -07:00
Ralf Jung ec6d289c5b suspend lvalues, not locks. refactor memory locking.
Due to this, we are back down to 88 tests
2017-07-25 10:30:12 +02:00
Ralf Jung 0b15db0cc2 make LockInfo non-Copy 2017-07-25 10:30:12 +02:00
Ralf Jung 59d49c5d6d fix checks when releasing write locks (101) 2017-07-25 10:30:12 +02:00