739 Commits

Author SHA1 Message Date
Oliver Schneider
0377990dc6
fix turning function items into closure trait objects 2017-02-07 11:04:46 +01:00
Scott Olson
9f7ca351e0 Dump fn ptr ABIs. 2017-02-07 01:57:42 -08:00
Scott Olson
468dbe8eaa Don't print a span for call to main. 2017-02-07 01:30:16 -08:00
Scott Olson
23c47f1e77 Dump instrinsic and C ABI return values. 2017-02-07 01:03:40 -08:00
Scott Olson
a5b9a0cb78 Simplify logging output. 2017-02-07 00:45:22 -08:00
Scott Olson
0afcb0568e Clean up local var dumping. 2017-02-07 00:39:40 -08:00
Scott Olson
097db58f30 Print fn name and type in dump_allocs. 2017-02-06 12:48:10 -08:00
Scott Olson
b36d8085a7 Fix duplicate allocation printing. 2017-02-06 09:26:01 -08:00
Scott Olson
7acbf7ef74 Cleanup: EvalResult<'a, ()> becomes EvalResult<'a>. 2017-02-04 13:09:10 -08:00
Scott Olson
0451b74c62 Merge pull request #108 from oli-obk/packd
implement packed struct field access
2017-02-03 15:47:47 -08:00
Scott Olson
3fe45572c1 Merge pull request #110 from oli-obk/rename_map_hir
rustup
2017-02-03 15:22:02 -08:00
Scott Olson
2ba883ce98 Merge pull request #107 from canndrew/rename_map_hir
TyCtxt's map renamed to hir
2017-02-03 15:20:05 -08:00
Oliver Schneider
0e77dd9473 rustup 2017-02-03 15:47:23 +01:00
Oliver Schneider
74d1a9a26c more documentation of unintuitive packed struct solution 2017-01-31 10:59:38 +01:00
Oliver Schneider
c47c325252 remove duplicate alignment checks 2017-01-31 10:56:37 +01:00
Oliver Schneider
d3e9e51d67 fix accessing fields other than the first in packed structs 2017-01-31 10:51:19 +01:00
Oliver Schneider
148c6de507 fix some unaligned reads 2017-01-31 10:36:46 +01:00
Oliver Schneider
96607d4593 document our packed struct strategy 2017-01-31 10:36:27 +01:00
Oliver Schneider
5e34740ab6 implement packed struct field access 2017-01-30 09:44:52 +01:00
Scott Olson
b490a4077c Merge pull request #103 from oli-obk/tuples
allow using tuple variant names as function handles
2017-01-29 03:27:29 -08:00
Andrew Cann
1752af689f TyCtxt's map renamed to hir 2017-01-29 15:21:24 +08:00
Oliver Schneider
ce95ae5927 correctly implement pointers to enum variant constructors 2017-01-28 15:46:46 +01:00
Oliver Schneider
b6e79dbbf5 fix some ICEs 2017-01-28 15:28:24 +01:00
Oliver Schneider
8f7e492305 drive-by rust update 2017-01-28 15:27:20 +01:00
Oliver Schneider
17090b8524
add tests for cargo miri and run them on travis 2017-01-28 11:57:53 +01:00
Oliver Schneider
2cca377bd4
add cargo miri test sub sub command 2017-01-28 11:57:53 +01:00
Oliver Schneider
5adb84645f
add cargo-miri subcommand to directly interpret the main binary of a crate 2017-01-28 11:57:52 +01:00
Oliver Schneider
e22cceaceb
allow using tuple variant names as function handles in presence of NonZero optimizations 2017-01-23 12:56:40 +01:00
Oliver Schneider
04eadedb28
allow using tuple variant names as function handles 2017-01-23 12:56:40 +01:00
Scott Olson
684f757139 Make clippy-suggested fixes. 2017-01-22 00:19:35 -08:00
Scott Olson
53fa985fc4 Update for changes in rustc. 2017-01-16 19:37:53 -08:00
Scott Olson
ac2bf50f9d Use the new field init shorthand. 2017-01-16 18:45:30 -08:00
Oliver Schneider
1838ef6bda
rustup to 2017-01-12 2017-01-13 17:16:19 +01:00
Oliver Schneider
e7ef118138
fix copy pasted code 2017-01-12 12:43:37 +01:00
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
Oliver Schneider
0595f95460
remove old comment 2017-01-12 11:27:04 +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
Oliver Schneider
7c486416cb
allow the use of tuple struct constructors as functions 2017-01-12 08:52:22 +01: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
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