Commit Graph

739 Commits

Author SHA1 Message Date
Oliver Schneider
ad4f6b920a Fix virtual function calls 2017-03-23 14:24:02 +01:00
Oliver Schneider
d70b79c778 Refactor function calls 2017-03-23 13:36:13 +01:00
Oliver Schneider
70ea218d2b Reuse more rustc code instead of copying it into miri 2017-03-23 13:35:19 +01:00
Oliver Schneider
0255a51468 Fix function pointer calls 2017-03-23 10:04:08 +01:00
Oliver Schneider
caed365dbe Refactor drop into its own module and fix Vec 2017-03-22 18:31:41 +01:00
Oliver Schneider
3ef0b0de2c Dropping slices works again 2017-03-22 17:51:43 +01:00
Oliver Schneider
c409079442 Dropping trait objects works again 2017-03-22 17:48:16 +01:00
Oliver Schneider
9e4e6cdb5c Dropping arrays works again 2017-03-22 17:32:20 +01:00
Oliver Schneider
7c12ebc78d Roll our own MIR for dropping arrays. 2017-03-22 16:16:23 +01:00
Oliver Schneider
030f00a8a1 Fix drop terminator 2017-03-22 14:19:29 +01:00
Oliver Schneider
26c3335dbf Closures work again 2017-03-22 13:13:52 +01:00
Oliver Schneider
dc1b0fb436 Compiles again 2017-03-21 13:53:55 +01:00
Oliver Schneider
c6a18cead8 Rustup to rustc 1.17.0-nightly (134c4a0f0 2017-03-20) 2017-03-21 09:21:51 +01:00
Scott Olson
a82924b3e2 Merge pull request #152 from oli-obk/intrinsics
Intrinsics and overflow
2017-03-14 13:35:51 -07:00
Scott Olson
0ca0676abd Merge pull request #146 from oli-obk/peephole1
[Peephole Optimization 1/n] Don't allocate for structs with a single primval field
2017-03-14 09:57:02 -07:00
Scott Olson
6ee8595375 Merge pull request #147 from oli-obk/rustup
rustup to rustc 1.17.0-nightly (60a0edc6c 2017-02-26)
2017-03-14 09:49:40 -07:00
Oliver Schneider
257ac5803f Don't unconditionally mask bitshift rhs 2017-03-14 14:24:16 +01:00
Oliver Schneider
bb33830c60 Implement more atomic intrinsics 2017-03-14 13:05:51 +01:00
Oliver Schneider
adddde7cba Implement more float intrinsics 2017-03-14 12:35:38 +01:00
Oliver Schneider
adb3fbb285 Add a method that hides the lifetime erasing boilerplate 2017-03-14 11:12:59 +01:00
Oliver Schneider
da6f136997 I say we take off and nuke the lifetimes from orbit 2017-03-14 10:49:22 +01:00
Oliver Schneider
64d196a9dc Use deterministic keyword renaming (append _) 2017-03-14 09:23:15 +01:00
David Renshaw
f0e2247f4d fix argument order on check_align 2017-03-13 21:07:25 -04:00
David Renshaw
41c2aa677a simplify write_bytes() by using memory.write_repeat() 2017-03-13 20:47:08 -04:00
David Renshaw
e79ee140ee write_bytes(): fix handling of types that are larger than u128 2017-03-13 20:32:43 -04:00
David Renshaw
2f3440d213 implement write_bytes intrinsic 2017-03-13 19:46:44 -04:00
Oliver Schneider
4cb1f639b7 Rustup to rustc 1.17.0-nightly (824c9ebbd 2017-03-12) 2017-03-13 11:28:45 +01:00
Oliver Schneider
41d59b117a Rustup to rustc 1.17.0-nightly (b1e31766d 2017-03-03) 2017-03-07 12:49:56 +01:00
Oliver Schneider
8405770b51 Rustup to rustc 1.17.0-nightly (be760566c 2017-02-28) 2017-03-02 13:11:33 +01:00
Oliver Schneider
8878a4030a rustup to rustc 1.17.0-nightly (60a0edc6c 2017-02-26) 2017-02-28 12:35:00 +01:00
Oliver Schneider
e2c5a6e64e
don't allocate for primvals 2017-02-24 11:04:13 +01:00
Oliver Schneider
de42764b52
drop zst fields of null pointer optimized structs and enums
fixes #25
2017-02-24 11:04:13 +01:00
Oliver Schneider
2282e6b582
represent single field structs as their single field 2017-02-24 11:04:13 +01:00
Oliver Schneider
1a697f9bba
move all code accessing vtable internals into the trait module
fixes #124
2017-02-24 11:04:13 +01:00
Oliver Schneider
51f209a61f
write_primval used to leak memory if the destination was ByRef
instead of duplicating all the code from `write_value`, we forward to it.
2017-02-24 10:41:15 +01:00
Oliver Schneider
529efc51e8
detect memory leaks 2017-02-24 10:41:15 +01:00
Oliver Schneider
25c3a4fb00
drop all temporary closure allocations 2017-02-24 10:41:15 +01:00
Oliver Schneider
35502fd47d rustup 2017-02-24 10:39:55 +01:00
Scott Olson
1af2c397bf Merge pull request #141 from oli-obk/bug1
fix a bug in drop code of structs with unsized fields
2017-02-23 18:06:12 -08:00
Oliver Schneider
545f70010c
rustup 2017-02-14 17:19:43 +01:00
Oliver Schneider
4730cdf825
fix a bug in drop code of structs with unsized fields 2017-02-14 14:26:47 +01:00
Oliver Schneider
d4da7c46dd
rustup 2017-02-14 10:19:19 +01:00
Oliver Schneider
ac71d6f345
don't duplicate field access logic, always go through lvalue_field 2017-02-14 10:19:19 +01:00
Oliver Schneider
a727ceb7e9
fast path for zsts 2017-02-14 10:19:18 +01:00
Scott Olson
eeae478e74 Remove stable feature flag. 2017-02-10 15:13:50 -08:00
Scott Olson
b755a91c21 Do drop glue for closures. 2017-02-10 14:54:14 -08:00
Scott Olson
f73f001ce5 Fix fabsf{32,64} intrinsics. 2017-02-10 14:53:56 -08:00
Scott Olson
0f714b72a0 Formatting. 2017-02-10 13:35:45 -08:00
Scott Olson
6ffd7005c1 Cache string and bytestring literal allocs. 2017-02-10 13:35:33 -08:00
Scott Olson
98d28b688c Merge pull request #139 from oli-obk/master
lvalue references into fields of ValPair locals
2017-02-10 22:29:54 +01:00