Ralf Jung
0f43321178
no need to do run-time formatting
2017-08-03 12:39:55 -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
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