Scott Olson
f731766805
Fix allocation of fn items by allowing ZST alignment to be 0.
2016-09-13 21:31:12 -06:00
Oliver Schneider
23eb8a5cf2
error on failed assumptions
2016-09-13 13:08:57 +02:00
Oliver Schneider
c57233abca
needless clones
2016-09-13 13:03:54 +02:00
Oliver Schneider
903bb97c17
needless references
2016-09-13 13:03:42 +02:00
Scott Olson
4051b0e36a
Merge pull request #53 from oli-obk/dont_touch_my_precious_constants
...
Detect modifications of immutable memory
2016-09-11 03:17:58 -06:00
Scott Olson
db7d842fb3
Fix comment wording.
2016-09-11 03:06:44 -06:00
Oliver Schneider
3c5f595d45
prevent the modification of vtables
2016-09-11 11:02:45 +02:00
Oliver Schneider
5c47e3dbd8
only allow the modification of static mut
or statics with interior mutability
2016-09-11 11:02:45 +02:00
Oliver Schneider
0e58c2a31b
document the fields of Allocation
2016-09-11 11:02:45 +02:00
Oliver Schneider
78bef956c9
don't load memory as mutable if not necessary
2016-09-11 11:02:45 +02:00
Scott Olson
5ac138c61f
Update for changes in rustc.
2016-09-10 20:59:23 -06:00
Oliver Schneider
3562118948
use canonical formatting of pub (super)
2016-09-10 15:14:49 +02:00
Oliver Schneider
bcda724c43
closures don't work yet
2016-09-09 15:44:35 +02:00
Oliver Schneider
00c551c5f0
implement calling methods through trait objects
2016-09-09 12:51:14 +02:00
Oliver Schneider
168d9e7745
don't use type_is_immediate
for finding fat ptr casts
2016-09-08 10:26:33 +02:00
Oliver Schneider
d627cc749f
use cheap assertions instead of expensive debug assertions
2016-09-08 10:25:45 +02:00
Oliver Schneider
0f177fdecf
implement more casts
2016-09-07 18:34:59 +02:00
Oliver Schneider
ad053d66fe
change the block and stmt position after a function call returns
...
previously we moved to the target block *before* calling a function, so when inspecting
the stack, it appeared as if we were in the first statement of the next block.
2016-09-07 12:48:29 +02:00
Scott Olson
be23dcdb8c
Merge pull request #47 from oli-obk/unreachable_bugs
...
replace all `unreachable!` and `panic!` calls with `bug!`
2016-09-07 02:53:33 -06:00
Oliver Schneider
7be27ecb53
forgot to insert a {} into the format string
2016-09-07 10:43:13 +02:00
Oliver Schneider
ca703f619c
DRY
2016-09-07 10:30:49 +02:00
Oliver Schneider
f5a89d297c
rustc now can use integer literals in attributes
2016-09-07 10:27:57 +02:00
Oliver Schneider
35e8882553
still use panic!
for missing MIR, because compiletest can't test compiler bugs
2016-09-07 10:27:32 +02:00
Oliver Schneider
7b24d55eca
address comments
2016-09-07 10:12:15 +02:00
Oliver Schneider
cd91f9feee
replace all unreachable!
and panic!
calls with bug!
2016-09-06 16:16:49 +02:00
Oliver Schneider
cd42bb97f0
rustup to rustc 1.13.0-nightly ( 91f057de3
2016-09-04)
2016-09-06 16:04:51 +02:00
Scott Olson
45cf3cfde2
Update for changes in rustc.
2016-08-27 01:44:54 -06:00
Oliver Schneider
f8cfc387fd
address nits
2016-07-25 12:30:35 +02:00
Oliver Schneider
ec897f9156
don't allow runtime-aligning of memory
2016-07-22 16:35:39 +02:00
Oliver Schneider
613d15c672
clippy
2016-07-07 13:19:17 +02:00
Oliver Schneider
4c258d1ed2
Merge remote-tracking branch 'origin/master' into alignment
2016-07-07 13:17:08 +02:00
Oliver Schneider
44bef25235
allocating memory for floats can fail, too
2016-07-07 11:30:00 +02:00
Oliver Schneider
9669acc3a3
Merge remote-tracking branch 'origin/master' into the_outer_limits
2016-07-07 11:27:49 +02:00
Oliver Schneider
5381981446
shrink_to_fit some vectors to prevent interpreted code from passing the memory limits
2016-07-07 11:21:18 +02:00
Oliver Schneider
8d3817cfc6
use usize instead of u64 for memory limits
2016-07-07 11:20:46 +02:00
Oliver Schneider
a7d3a85d9e
infer type of the various limits
2016-07-07 11:20:09 +02:00
Oliver Schneider
7d2803ae3f
remove unused extern crate
2016-07-07 11:19:55 +02:00
Oliver Schneider
7613ef0563
comparing floats is necessary in rare cases
2016-07-06 11:53:03 +02:00
Oliver Schneider
51ce4a2584
use byteorder's write_f{32,64} instead of transmuting
2016-07-06 11:51:32 +02:00
Oliver Schneider
1bd8e04228
check alignment in various places
2016-07-06 11:12:44 +02:00
Oliver Schneider
50987e3697
some methods to check pointers for correct alignment
2016-07-06 10:58:51 +02:00
Oliver Schneider
7161c72320
abi alignment is the correct one
2016-07-06 10:58:26 +02:00
Oliver Schneider
082effb3ee
align allocations in the worst possible way
2016-07-05 14:27:27 +02:00
Oliver Schneider
4781a6ba54
add attribute to limit the stack size
2016-07-05 13:23:58 +02:00
Oliver Schneider
88d98998e1
add execution time limit
2016-07-05 13:17:40 +02:00
Oliver Schneider
1444cabc08
make the memory limit configurable
2016-07-05 13:04:46 +02:00
Oliver Schneider
756fbcce48
add a memory limit
2016-07-05 10:47:10 +02:00
Oliver Schneider
4b831569f6
implement floats by running the ops on the host architecture
2016-07-05 09:08:24 +02:00
Scott Olson
a7cc77a010
Compare against ZST_ALLOC_ID in points_to_zst.
2016-07-01 16:40:52 -06:00
Oliver Schneider
3d9588332f
address comments
2016-07-01 13:09:40 +02:00