Commit Graph

872 Commits

Author SHA1 Message Date
Scott Olson
b36a83171b Turn PrimVal into an enum including Undefined.
This is step 1 of a refactoring to fix #95. The `Undefined` variant is
so far unused and the old `bits` and `relocation` fields are emulated
with two new temporary methods. There should be no functional change due
to this commit.
2016-12-16 22:03:34 -08:00
Scott Olson
9674e507ca Merge pull request #97 from solson/revert-94-revert-93-always_encode_mir
Revert "Revert "rustup to rustc 1.15.0-dev (ace092f56 2016-12-13)""
2016-12-16 17:44:40 -08:00
Scott Olson
539e7e0ae1 Update compiletest_rs to 0.2.5. 2016-12-16 17:40:24 -08:00
Scott Olson
6ec3d65068 Revert "Revert "rustup to rustc 1.15.0-dev (ace092f56 2016-12-13)"" 2016-12-16 17:10:16 -08:00
Scott Olson
f789c40e1d Merge pull request #94 from solson/revert-93-always_encode_mir
Revert "rustup to rustc 1.15.0-dev (ace092f56 2016-12-13)"
2016-12-15 01:20:52 -08:00
Scott Olson
0deabf9c00 Revert "rustup to rustc 1.15.0-dev (ace092f56 2016-12-13)" 2016-12-15 01:16:06 -08:00
Scott Olson
cbffb3bd8c Merge pull request #93 from oli-obk/always_encode_mir
rustup to rustc 1.15.0-dev (ace092f56 2016-12-13)
2016-12-15 01:10:58 -08:00
Oliver Schneider
0a79304fcb
improve variable name 2016-12-15 09:58:57 +01:00
Oliver Schneider
fd0c21eeee
check that the null terminator is defined and not part of a pointer 2016-12-15 09:58:41 +01:00
Oliver Schneider
24203602e1
remove unused import 2016-12-15 09:56:40 +01:00
Oliver Schneider
9ec97bac71
enable auxiliary builds 2016-12-14 17:06:36 +01:00
Oliver Schneider
8b8c7430f1
re-use mir-opt compiletest instead of rolling our own 2016-12-14 17:06:36 +01:00
Oliver Schneider
69fa3ebff6
rustup to rustc 1.15.0-dev (ace092f56 2016-12-13) (always_encode_mir) 2016-12-14 17:06:23 +01:00
Scott Olson
ee0dc452aa Move binop functions to operator module. 2016-12-10 17:03:12 -08:00
Scott Olson
e0013b2ae4 Clean up vtable imports. 2016-12-10 16:58:13 -08:00
Scott Olson
636b476eda Rename intrinsics to intrinsic for consistency. 2016-12-10 16:27:45 -08:00
Scott Olson
1af63171f8 Split primval into operator and value. 2016-12-10 16:23:07 -08:00
Scott Olson
bc5bd71922 Add support for untagged unions. 2016-12-07 23:25:47 -08:00
Scott Olson
a64d30b2c1 Replace some stray try!s with ?. 2016-12-07 22:56:28 -08:00
Scott Olson
829d97bde2 Move lvalue-related methods to lvalue mod. 2016-12-07 22:01:11 -08:00
Scott Olson
5ce6514f23 Dump allocations within PrimVal pointers. 2016-12-07 22:00:46 -08:00
Scott Olson
fe19a014ff Move lvalue data structures out of eval_context. 2016-12-07 20:58:48 -08:00
Scott Olson
4702d97093 Flatten 'interpreter' mod tree into the root. 2016-12-07 20:30:37 -08:00
Scott Olson
ac21ef4cd9 Merge pull request #91 from oli-obk/master
rustup and small fixes
2016-12-07 01:12:04 -08:00
Oliver Schneider
5dd01c309f
fix documentation 2016-12-07 09:52:22 +01:00
Oliver Schneider
3065273601
simplify the interpreter locals, since they always must be backed by an allocation 2016-12-07 09:19:14 +01:00
Oliver Schneider
c076321a94 rustup 2016-12-06 22:59:40 -08:00
Oliver Schneider
bfe1efcbf8
stop leaking memory on closure calls 2016-12-06 18:13:11 +01:00
Oliver Schneider
360ef490f4
supply a real "caller" span to drop calls 2016-12-06 16:16:22 +01:00
Oliver Schneider
c303ac001d
rustup 2016-12-06 15:41:28 +01:00
Scott Olson
b96202b3cd Update for changes in rustc. 2016-12-02 19:44:59 -08:00
Scott Olson
244ae8eac7 Introduce try_read_value to avoid allocations.
Attempt reading a primitive value out of any source lvalue and write
that into the destination without making an allocation if possible.
2016-11-28 20:22:21 -08:00
Scott Olson
140b21e09c Merge pull request #89 from solson/unkind-primval
Remove PrimValKind field from PrimVal.
2016-11-27 19:09:39 -08:00
Scott Olson
e4910e437b Remove useless map. 2016-11-27 19:08:06 -08:00
Scott Olson
71cc1226c7 s/init/zero/ 2016-11-27 13:46:34 -08:00
Scott Olson
fd02285788 Remove unnecessary transmute_primval function. 2016-11-26 23:42:17 -08:00
Scott Olson
0929201d60 Remove useless binding. 2016-11-26 23:37:40 -08:00
Scott Olson
f7cd07a615 Produce PrimValKinds for small, simple layout ADTs. 2016-11-26 23:21:25 -08:00
Scott Olson
fc3e1c0064 compiletest: Don't automatically enable MIRI_LOG=trace. 2016-11-26 23:21:25 -08:00
Scott Olson
49f784a3e4 Remove PrimValKind field from PrimVal. 2016-11-26 23:21:20 -08:00
Scott Olson
16f3b590e4 Remove unnecessary qualification. 2016-11-26 19:18:39 -08:00
Scott Olson
78b29b360a Dump return value when returning. 2016-11-26 19:13:22 -08:00
Scott Olson
020f0b782b Refactor passing of resource limits. 2016-11-26 17:54:19 -08:00
Scott Olson
3f764a5cfd Update for changes in rustc and refactor. 2016-11-26 17:36:31 -08:00
Scott Olson
16fa75c6cf Merge pull request #88 from oli-obk/patch-1
don't freeze globals twice
2016-11-19 00:10:36 -08:00
Scott Olson
85801fa2b0 Merge pull request #87 from oli-obk/no_u_size_is_wong
replace most uses of `usize` with `u64`
2016-11-19 00:10:02 -08:00
Oliver Schneider
ca7ae5a3d0 don't freeze globals twice 2016-11-19 08:33:13 +01:00
Scott Olson
0b632d553e Merge pull request #86 from oli-obk/fast_repeat
abort on huge repeat expressions
2016-11-18 22:58:59 -08:00
Scott Olson
3973b9961e Merge pull request #85 from oli-obk/storage_dead
deallocate all locals on function exit and transitively freeze constants through pointers
2016-11-18 22:43:18 -08:00
Oliver Schneider
0039ebc940
replace most uses of usize with u64 so the host architecture isn't exposed anymore 2016-11-18 12:55:14 +01:00