Commit Graph

1493 Commits

Author SHA1 Message Date
Oliver Schneider 181bb30d07 Rustc reorders fields, but miri expects them in source order 2017-08-04 13:43:17 +02:00
Ralf Jung 4957031e3c selectively disable validation in compile-fail where appropriate. cargo test now passes :) 2017-08-03 18:13:23 -07:00
Ralf Jung 9458111681 for now, disable validation on optimized tests -- inlining breaks validation 2017-08-03 18:13:23 -07:00
Ralf Jung 58a17026c9 Let -Zmir-emit-validate also control whether miri even acts on the validation commands 2017-08-03 18:13:23 -07: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 3754572b0a Release of an Undef local is fine, and a NOP 2017-08-03 18:12:48 -07:00
Ralf Jung 85dc3e563e make execution with full MIR work: need to whitelist Arc drop impl and whatever it calls 2017-08-03 18:12:26 -07:00
Ralf Jung c2c05014af with the new 'limited validation when there is unsafe', we can significantly shrink our whitelist 2017-08-03 18:12:26 -07:00
Ralf Jung b3fa42fc0e with Validation MIR around drop being fixed, we can remove the hack working around this 2017-08-03 18:12:24 -07:00
Ralf Jung dd533a9ec6 Revert "disable validation code so that it all compiles against current nightly"
This reverts commit 791dbaf584.
2017-08-03 18:10:47 -07:00
Oliver Schneider 726b027ba3 Merge pull request #280 from solson/archeology
Produce backtraces for miri internals
2017-08-03 23:02:29 +02:00
Ralf Jung 2cf394955b actually, we can use a plain constant 2017-08-03 12:58:34 -07:00
Ralf Jung 0f43321178 no need to do run-time formatting 2017-08-03 12:39:55 -07:00
Ralf Jung 5aed31812e Merge pull request #281 from RalfJung/unsized
fix size_of_val on unsized tuples
2017-08-03 11:39:30 -07:00
Ralf Jung de1376f923 Add a build script to inform the binary about its profile, and use that in the test suite 2017-08-03 11:38:00 -07:00
Ralf Jung 5d27b94b04 fix comment 2017-08-03 11:06:25 -07:00
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
Ralf Jung c533cf8496 fix size_of_val on unsized tuples 2017-08-02 15:29:13 -07:00
Ralf Jung 8deb9387e9 step.rs: improve comment for clarity 2017-08-02 15:10:25 -07: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