Commit Graph

2118 Commits

Author SHA1 Message Date
Oliver Schneider
927844ab24
priroda required functions 2017-01-12 12:43:37 +01:00
Oliver Schneider
8084d60f54
add test for unions and remove needles forced alloc 2017-01-12 12:43:37 +01:00
Oliver Schneider
374232c832
add memrchr libc function 2017-01-12 12:43:37 +01:00
Oliver Schneider
24870428a7
more intrinsics 2017-01-12 12:43:37 +01:00
Scott Olson
f3752220af Merge pull request #100 from oli-obk/tuple_struct_constructor_as_fn
allow the use of tuple struct constructors as functions
2017-01-12 02:35:36 -08:00
Oliver Schneider
0595f95460
remove old comment 2017-01-12 11:27:04 +01:00
Oliver Schneider
548a6baec0
also test transmutes to empty enums 2017-01-12 11:23:44 +01:00
Oliver Schneider
a58170a4c6
prevent intrinsics from creating uninhabited types 2017-01-12 10:37:14 +01:00
Oliver Schneider
b5f824fd9c
fix ICE when transmuting inhabited types to uninhabited 2017-01-12 09:59:00 +01:00
Oliver Schneider
753dbcf158
add a test for dereferencing a pointer to a ! 2017-01-12 09:41:36 +01:00
Scott Olson
0daa3b2898 Merge pull request #99 from oli-obk/travis
various travis cleanups + run miri tests on travis against 4 major targets
2017-01-12 00:14:41 -08:00
Oliver Schneider
3ee34381b6
remove typo 2017-01-12 08:53:03 +01:00
Oliver Schneider
7c486416cb
allow the use of tuple struct constructors as functions 2017-01-12 08:52:22 +01:00
Oliver Schneider
ccfcc12a58
aux tests only run if the host is set 2017-01-12 08:45:09 +01:00
Oliver Schneider
ae7d69a5bd
msvc has different internals for mutexes and thus fails on a different function 2017-01-12 08:41:57 +01:00
Oliver Schneider
421b537f80
travis fix 2017-01-12 08:41:46 +01:00
Oliver Schneider
f47aa03f6f
analyze travis 2017-01-12 08:41:39 +01:00
Oliver Schneider
3084aa8052
test more targets on travis 2017-01-12 08:41:31 +01:00
Oliver Schneider
2f51310a80
clamp down on hacks in compiletest 2017-01-12 08:41:22 +01:00
Oliver Schneider
1f40819315
try to pin down the travis failure 2017-01-12 08:41:12 +01:00
Oliver Schneider
5d7b92a6e3
fix travis 2017-01-12 08:40:53 +01:00
Scott Olson
57b983862e Merge pull request #98 from oli-obk/rustup
rustup (i128)
2017-01-11 23:40:37 -08:00
Oliver Schneider
32cd8efb97
re-enable auxiliary tests for the host only 2017-01-12 08:40:16 +01:00
Oliver Schneider
3a658e09e8
rustup (i128) 2017-01-12 08:28:42 +01:00
Scott Olson
d6e35fe46f Add test for #95. 2016-12-21 17:26:52 -08:00
Scott Olson
6d1c47b6ef Update for changes in rustc. 2016-12-21 17:23:28 -08:00
Scott Olson
9093188a5c Clean up useless pub use. 2016-12-21 17:15:03 -08:00
Scott Olson
2a5029ed6d Update MIR passes to match rustc. 2016-12-18 23:31:23 -08:00
Scott Olson
b233ada529 Change Option<Value> to Value, using ByVal(Undef).
This job isn't quite finished because it caused me to discover bugs
related to reading `ByVal(Undef)` when a `ByValPair` is expected, e.g.
for a fat pointer. This wasn't a problem with the `None` of
`Option<Value>`, but I realized an equivalent bug existed even then,
since you could transmute a `u64` like `ByVal(Bytes(42))` to a fat
pointer type on 32-bit targets.

Likewise, you could transmute a fat pointer to `u64` and get panics
related to expecting `ByVal` but finding `ByValPair`, so the problem
goes both ways.
2016-12-18 20:59:01 -08:00
Scott Olson
459a27d6bd Reading undef local/globals gets PrimVal::Undef.
This fixes #95.
2016-12-17 03:36:22 -08:00
Scott Olson
6b7c68bec2 Rename bits to bytes for consistency. 2016-12-17 03:19:32 -08:00
Scott Olson
4fe41ad8d5 Refactor PrimVal::bits() out of existence. 2016-12-17 03:09:57 -08:00
Scott Olson
9e244251a0 Enable an old test that works now! 2016-12-17 01:58:03 -08:00
Scott Olson
0cc4535a58 This test appears to work on 32-bit now. 2016-12-17 01:52:26 -08:00
Scott Olson
d63ab5f8c3 Refactor PrimVal::relocation out of existence. 2016-12-17 01:47:24 -08:00
Scott Olson
29e690fe14 Handle writing undefined PrimVals and mask properly. 2016-12-17 01:36:02 -08:00
Scott Olson
142d971c82 Add regression test for write_primval bug. 2016-12-17 01:34:19 -08:00
Scott Olson
96b83ebb7c Improve compiletest target detection. 2016-12-17 00:54:37 -08:00
Scott Olson
42239e69bf Make layout SizeOverflow test trigger on i686. 2016-12-16 23:57:46 -08:00
Scott Olson
0591683b73 Stop before trans so I can test non-x86_64 targets.
I had problems when it tried to link outputs for targets other than my
host.

This re-breaks tests with auxiliary builds. I'm not sure what to do
about those right now.
2016-12-16 23:47:43 -08:00
Scott Olson
33223fdd76 Allow compiletest to see symlinked targets. 2016-12-16 23:43:58 -08:00
Scott Olson
3bad50e114 Rename PrimVal::from_{u,}int to from_{u,i}64. 2016-12-16 22:11:44 -08:00
Scott Olson
f83c45e367 Turn invalid panics into Results and rename fns. 2016-12-16 22:08:40 -08:00
Scott Olson
33f97feafb Shorten PrimVal::Undefined to PrimVal::Undef. 2016-12-16 22:03:34 -08:00
Scott Olson
e615f671ce Remove potentially wrong PartialEq from PrimVal. 2016-12-16 22:03:34 -08:00
Scott Olson
67e1627a55 Rename PrimVal::Pointer to PrimVal::Ptr.
Also fill out the PrimVal doc comments.
2016-12-16 22:03:34 -08:00
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