Commit Graph

827 Commits

Author SHA1 Message Date
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
3e5d86bb08
test the memory limit 2016-07-05 13:04:53 +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
Scott Olson
bbc842412e Merge pull request #41 from oli-obk/master
optimize all ZST allocations into one single allocation
2016-07-01 17:39:47 -05:00
Oliver Schneider
3d9588332f
address comments 2016-07-01 13:09:40 +02:00
Oliver Schneider
594f1d79da
optimize all ZST allocations into one single allocation 2016-07-01 13:09:17 +02:00
Scott Olson
1720b1f4af Remove AddCallGuards. It's useless for Miri. 2016-06-30 21:39:35 -06:00
Scott Olson
64eca52ad3 Run Mir passes (copied from rustc pre-trans). 2016-06-30 21:33:24 -06:00
Scott Olson
756d73b3ca Remove filling drop to prep for elaborated drops. 2016-06-30 21:30:03 -06:00
Scott Olson
339e703e0b Merge pull request #40 from oli-obk/miri_upstream
things priroda needs to be public or changed
2016-06-30 04:40:43 -05:00
Oliver Schneider
b91338b220
things priroda needs to be public or changed 2016-06-30 11:29:25 +02:00
Scott Olson
d309ab72e0 Merge pull request #39 from oli-obk/can_you_read_me_now
use the item path printer that prints user friendly textual paths
2016-06-29 13:35:42 -05:00
Oliver Schneider
ae3c49a9e5
use the item path printer that prints user friendly textual paths 2016-06-29 17:07:05 +02:00
Scott Olson
87306f1c2d Merge pull request #38 from oli-obk/dont_step_up_to_the_const
don't execute the first statement of a constant/static/promoted right away
2016-06-28 13:30:18 -05:00
Oliver Schneider
7d574f7b1c
don't execute the first statement of a constant/static/promoted right away
This might create confusion, because attempting to execute a statement can cause
arbitrary stackframes to be added for the constants/statics/promoteds required by that
statement. Before this commit, the first statement of the last added stackframe was
executed immediately. Thus there was no way to inspect the state before that first
statement.
2016-06-28 15:06:44 +02:00
Scott Olson
f28feed87d Merge pull request #36 from oli-obk/alignment
Use target byte order instead of host byteorder
2016-06-25 16:00:53 -05:00
Oliver 'ker' Schneider
37287d2a5d use free methods instead of traits 2016-06-25 16:50:33 +02:00
Oliver Schneider
e23fdd1f49
fix const -> pointer writing (noticeable on big endian) 2016-06-23 15:40:46 +02:00
Oliver Schneider
0288486b73
use target byte order 2016-06-23 15:16:25 +02:00
Oliver Schneider
86040c0d29
simplify write_ptr 2016-06-23 13:04:05 +02:00
Scott Olson
ba23b8751e Merge pull request #34 from oli-obk/alignment
use ty::layout::Size and ty::layout::TargetDataLayout
2016-06-23 03:22:54 -05:00
Oliver Schneider
4c7aae73bc
adjust all pointer_size checks to use the method 2016-06-23 10:02:39 +02:00
Oliver Schneider
d13153c424
add a pointer_size method to Memory for easy access 2016-06-23 09:59:16 +02:00
Oliver Schneider
205a988c1b
improve rustdoc rendering 2016-06-23 09:40:01 +02:00
Oliver Schneider
055b6a8d38
store full TargetDataLayout in Memory instead of just pointer size 2016-06-23 09:36:37 +02:00
Oliver Schneider
b33a9f3431
there can never be too many tests 2016-06-23 09:36:37 +02:00
Oliver Schneider
3404a9da2a
add test for invalid char 2016-06-23 09:36:37 +02:00
Scott Olson
0c720f6e6b Split terminator evaluation into a new module. 2016-06-23 01:03:58 -06:00
Scott Olson
d80cf91ef2 Rename stepper module to step. 2016-06-23 00:04:10 -06:00
Scott Olson
7bda9f24d6 Make step an EvalContext method and remove Stepper. 2016-06-23 00:02:47 -06:00
Scott Olson
3c19db95b8 Merge pull request #31 from oli-obk/chars
implement char handling
2016-06-21 02:55:38 -05:00
Oliver Schneider
b10fc7a99f
make sure miri never switches over an invalid char value 2016-06-21 09:44:01 +02:00
Oliver Schneider
7a9272c8e1
no need to cast chars as u32 before casting to u64 2016-06-21 09:43:45 +02:00
Oliver Schneider
422e5edd28
error message improvements 2016-06-21 09:43:27 +02:00
Oliver Schneider
2dbd30fa51
implement char handling 2016-06-21 09:35:20 +02:00
Scott Olson
579628f56d Merge pull request #28 from oli-obk/oflo
cleanup overflow binop code
2016-06-20 12:20:54 -05:00
Oliver Schneider
65de5dd2d0
simplify even more 2016-06-20 18:15:33 +02:00
Oliver Schneider
c7039dbb2b
simplify the masked rhs computation 2016-06-20 18:01:35 +02:00
Oliver Schneider
001ae69212
remove the bad rhs value error and panic instead. the typechecker prevent this 2016-06-20 17:52:36 +02:00
Oliver Schneider
a088f105aa
add a comment explaining the magic numbers 2016-06-20 17:52:14 +02:00
Oliver Schneider
3e3aeab0ed
implement bit masks as the compiler would translate them 2016-06-20 17:16:45 +02:00
Oliver Schneider
0821a15476
no need for EvalContext::eval_binop 2016-06-20 16:57:36 +02:00