Oliver Schneider
|
1c9f5ac669
|
Skip the transmute checks for closure glue
|
2017-03-23 15:23:53 +01:00 |
|
Oliver Schneider
|
1391c5a10a
|
Reintroduce fn ptr transmute check
|
2017-03-23 15:17:02 +01:00 |
|
Oliver Schneider
|
4e83659b1d
|
Fix manual rust-call impls
|
2017-03-23 15:07:33 +01:00 |
|
Oliver Schneider
|
d71f24c00f
|
Fix virtual function calls
|
2017-03-23 14:57:11 +01:00 |
|
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 |
|
David Renshaw
|
f0bca59ad0
|
remove feature opt-ins that are no longer needed
|
2017-03-22 18:59:26 -04: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 |
|
David Renshaw
|
3612d826e7
|
ast::Attribute no longer has a 'value' field
|
2017-03-21 11:04:49 -04: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 |
|
Oliver Schneider
|
35cf19f38a
|
only print the index part
|
2017-02-10 22:15:30 +01:00 |
|
Oliver Schneider
|
523c1877d9
|
print local fields as _2.1 instead of _2 (field 1)
|
2017-02-10 21:59:29 +01:00 |
|
Scott Olson
|
55bfbf58a2
|
Resolve Drop impls to get the right substs.
Fixes #133.
|
2017-02-10 07:55:05 -08:00 |
|
Oliver Schneider
|
1e7481f96e
|
remove a hack that is now useless
|
2017-02-10 16:26:59 +01:00 |
|
Oliver Schneider
|
0b86d30594
|
enable Lvalue::Local to refer to a ValPair field
|
2017-02-10 16:14:59 +01:00 |
|
Scott Olson
|
7f0b9460cb
|
Merge pull request #138 from oli-obk/master
refactor lvalue field projection handling to prepare for fewer `force_allocation`s
|
2017-02-10 15:27:36 +01:00 |
|
Scott Olson
|
5a2cdc2689
|
Implement the fast float math intrinsics.
|
2017-02-10 05:58:34 -08:00 |
|
Oliver Schneider
|
31f3aabdd4
|
move some variables closer to their use site.
|
2017-02-10 14:50:24 +01:00 |
|
Oliver Schneider
|
2e185485b3
|
use the lvalue_field function more often to save needless force_allocation s
|
2017-02-10 14:34:10 +01:00 |
|
Oliver Schneider
|
12826fb8a3
|
factor out lvalue field access into its own function
|
2017-02-10 14:34:10 +01:00 |
|
Oliver Schneider
|
680e649805
|
get rid of useless calls into eval_lvalue
|
2017-02-10 14:34:10 +01:00 |
|
Oliver Schneider
|
07e1e7b7e5
|
move base computation into each projection to allow optimizations and corner cases
|
2017-02-10 14:34:10 +01:00 |
|
Scott Olson
|
d971a63c4b
|
Mark more errors as unsupported.
|
2017-02-10 05:27:02 -08:00 |
|
Scott Olson
|
459f898b91
|
Reformatting.
|
2017-02-10 03:28:17 -08:00 |
|
Scott Olson
|
68daab974d
|
Move relevant code into "traits" module.
|
2017-02-10 03:23:04 -08:00 |
|
Scott Olson
|
d8d813c4ad
|
Resolve associated constants.
Fixes #130.
|
2017-02-10 03:22:59 -08:00 |
|
Scott Olson
|
9e24893879
|
Rename "vtable" mod to "traits".
|
2017-02-10 03:07:28 -08:00 |
|
Oliver Schneider
|
333264c956
|
clarify comment on drop glue
|
2017-02-10 08:13:18 +01:00 |
|
Oliver Schneider
|
e58f750a49
|
refactor drop glue
|
2017-02-09 19:27:07 +01:00 |
|
Oliver Schneider
|
023ec3e395
|
add some comments for clarification
|
2017-02-09 19:15:40 +01:00 |
|
Oliver Schneider
|
c06251b0d2
|
double space
|
2017-02-09 19:08:24 +01:00 |
|
Oliver Schneider
|
d92085fd0e
|
properly extract the inner type in a drop impl
|
2017-02-09 19:08:08 +01:00 |
|
Oliver Schneider
|
06a02187ba
|
move drop code into its own file
|
2017-02-09 18:12:59 +01:00 |
|
Scott Olson
|
6e9e7af8e7
|
Fix comment.
|
2017-02-09 06:58:20 -08:00 |
|
Scott Olson
|
3b95bf93b1
|
Merge pull request #132 from oli-obk/master
we cannot panic, thus `panicking` always returns false
|
2017-02-09 15:37:23 +01:00 |
|
Scott Olson
|
14d7501ca4
|
Merge pull request #128 from oli-obk/align_thyself
fix size of dst in size_of_val intrinsic
|
2017-02-09 15:35:15 +01:00 |
|
Oliver Schneider
|
0f183dc866
|
we cannot panic, thus panicking always returns false
|
2017-02-09 15:07:50 +01:00 |
|
Oliver Schneider
|
e6006c35fb
|
don't unnecessarily convert Align -> u64 -> Align
|
2017-02-09 13:00:30 +01:00 |
|
Oliver Schneider
|
0d3cee2db3
|
fix size of dst in size_of_val intrinsic
|
2017-02-09 11:15:56 +01:00 |
|
Scott Olson
|
bc5d9b6f8d
|
Merge pull request #127 from oli-obk/print_panic
ignore `print!`, turn `panic!` into a EvalError
|
2017-02-09 11:14:47 +01:00 |
|
Oliver Schneider
|
250f66562c
|
ignore print! , turn panic! into a EvalError
|
2017-02-09 10:34:23 +01:00 |
|
Scott Olson
|
2048679eed
|
Merge pull request #126 from oli-obk/1>-1
1 > -1
|
2017-02-09 09:57:22 +01:00 |
|
Oliver Schneider
|
6aed897c70
|
1 > -1
|
2017-02-09 09:43:45 +01:00 |
|
Oliver Schneider
|
8030800b15
|
use pre-existing abi_align method instead of magic formula
|
2017-02-09 08:50:35 +01:00 |
|
Oliver Schneider
|
1844381ad0
|
compute the offset of dst fields by checking the vtable
|
2017-02-09 08:38:01 +01:00 |
|
Oliver Schneider
|
4beb774caa
|
don't mark the zst allocation as static
|
2017-02-08 17:24:20 +01:00 |
|
Oliver Schneider
|
080d3e4355
|
properly prevent recursive statics from marking each other
|
2017-02-08 16:27:28 +01:00 |
|
Oliver Schneider
|
3db6ec3f11
|
prevent more deallocations of statics
|
2017-02-08 15:32:49 +01:00 |
|
Oliver Schneider
|
fbfd2d4bca
|
re-add spaces before static kind
|
2017-02-08 09:17:48 +01:00 |
|
Oliver Schneider
|
98cda6cb07
|
freeze -> static
|
2017-02-07 20:28:54 +01:00 |
|
Oliver Schneider
|
fd3bbfde04
|
Merge remote-tracking branch 'origin/master'
|
2017-02-07 19:22:44 +01:00 |
|
Oliver Schneider
|
01ac19d358
|
fix static mut accidental dealloc or freeze
|
2017-02-07 19:20:16 +01:00 |
|
Scott Olson
|
63cd994409
|
Merge pull request #117 from oli-obk/master
fix some leftover u128 errors
|
2017-02-07 17:58:05 +01:00 |
|
Oliver Schneider
|
3c560f5941
|
fix some leftover u128 errors
|
2017-02-07 17:52:32 +01:00 |
|