Ralf Jung
|
bb6a91dc94
|
adjust for ptr_op now being called type-based
|
2019-08-03 14:38:36 +02:00 |
|
Ralf Jung
|
8071034b93
|
fix for error refactoring
|
2019-08-03 10:25:55 +02:00 |
|
bors
|
aadff8560b
|
Auto merge of #852 - lzutao:rustup, r=RalfJung
build: Fix build after rust-lang/rust#60951
|
2019-07-24 13:05:55 +00:00 |
|
Lzu Tao
|
fd71fbea0f
|
build: Fix build after rust-lang/rust#60951
|
2019-07-24 07:45:34 +07:00 |
|
Ralf Jung
|
068517ae66
|
make sure we always have an RNG
|
2019-07-23 21:38:53 +02:00 |
|
Ralf Jung
|
b29cb7d551
|
avoid catching errors
|
2019-07-03 10:56:25 +02:00 |
|
Ralf Jung
|
c8450bda4f
|
support integers that can be cast to pointers in in-bounds offset operation
|
2019-07-03 10:47:28 +02:00 |
|
Ralf Jung
|
c6e4f760a2
|
allow dangling ptr-to-int casts; use force_bits for ptr comparison
|
2019-07-03 10:47:28 +02:00 |
|
Ralf Jung
|
457c823765
|
only treat integer operations as such
|
2019-07-03 10:47:28 +02:00 |
|
Ralf Jung
|
4135441137
|
don't call Memory::get without checking the pointer first; avoid Memory::get if we just need to know align/size
|
2019-07-01 00:24:56 +02:00 |
|
Ralf Jung
|
67d3779b0c
|
move most of the stuff from lib.rs into machine.rs, and initialization + main loop into eval.rs
|
2019-06-29 13:48:59 +02:00 |
|
Christian Poveda
|
792d665a1f
|
Fix merge conflicts
|
2019-06-25 00:57:33 -05:00 |
|
Christian Poveda
|
84cfbb01b7
|
Reorganize MemoryExtra and AllocExtra structures
|
2019-06-24 17:18:25 -05:00 |
|
Christian Poveda
|
2861ceb2fa
|
Rename new fields and move rng to MemoryExtra
|
2019-06-24 10:03:16 -05:00 |
|
Ralf Jung
|
7e7b5d42ba
|
Apply suggestions from code review
Co-Authored-By: Oliver Scherer <github35764891676564198441@oli-obk.de>
|
2019-06-24 14:50:27 +02:00 |
|
Ralf Jung
|
69e8318b60
|
de-obfuscate ptr comparison a bit
|
2019-06-23 20:30:33 +02:00 |
|
Ralf Jung
|
4dc188a60e
|
adjust for refactored memory pointer checks
|
2019-06-23 20:19:26 +02:00 |
|
Christian Poveda
|
dd732e5862
|
Force intptrcast for binary operations
|
2019-06-22 09:25:16 -05:00 |
|
Ralf Jung
|
04fa38dd1b
|
allow some inequality comparisons between pointers and integers
|
2019-06-20 16:38:55 +02:00 |
|
Ralf Jung
|
ad0c941547
|
rustup for lifetime refactorings
|
2019-06-13 09:18:03 +02:00 |
|
Ralf Jung
|
d6bcfc58e3
|
rustup for EvalResult rename
|
2019-06-08 22:14:47 +02:00 |
|
Ralf Jung
|
7a7b853120
|
adjust for rustc changes
|
2019-05-28 22:46:56 +02:00 |
|
Ralf Jung
|
8b219a1329
|
fix for latest rustc
|
2019-05-27 18:50:32 +02:00 |
|
Ralf Jung
|
3f0a2a2941
|
rewrite Stacked Borrows Core. this passes stacked-borrows.rs!
|
2019-04-17 16:02:57 +02:00 |
|
Ralf Jung
|
378d9d4172
|
be pragmatic about ptr-int comparisons, for now
|
2019-04-16 17:47:37 +02:00 |
|
Oliver Scherer
|
9a0eaf6ebd
|
Update to rustc nightly
|
2019-04-03 10:48:11 +02:00 |
|
Alexander Regueiro
|
12d3ecbaff
|
Various cosmetic improvements.
|
2019-02-26 18:37:46 +00:00 |
|
Ralf Jung
|
2c3ee678b1
|
Fix comparing fat pointers
|
2019-02-15 09:35:55 +01:00 |
|
Ralf Jung
|
457741d6d2
|
update for new bin_op APIs
|
2019-02-15 09:35:55 +01:00 |
|
Ralf Jung
|
f2e14d9314
|
use memory::check_bounds_ptr for offset check
|
2018-12-26 13:16:47 +01:00 |
|
Ralf Jung
|
5a8f9e58f7
|
properly compare unequal function pointers
|
2018-12-25 13:29:38 +01:00 |
|
Ralf Jung
|
4e4569cf4b
|
fix build and tests with latest nightly
|
2018-12-25 13:26:40 +01:00 |
|
Oliver Scherer
|
32e93ed776
|
Update to Memory -> Allocation method move
|
2018-11-23 17:00:31 +01:00 |
|
Ralf Jung
|
68ba6cdbaa
|
fix for new Align type
|
2018-11-23 09:46:51 +01:00 |
|
Ralf Jung
|
6085865975
|
adjust for InboundsCheck parameter of memory bounds check
|
2018-11-20 08:45:25 +01:00 |
|
Ralf Jung
|
27b1f47b0a
|
use crate:: where appropriate
|
2018-11-01 08:57:22 +01:00 |
|
Ralf Jung
|
01828fde53
|
respect memory's privacy
|
2018-10-22 16:48:10 +02:00 |
|
Ralf Jung
|
66b4bb7cf2
|
stacked borrows: track refs and derefs
|
2018-10-16 18:35:27 +02:00 |
|
Ralf Jung
|
b84f7e2029
|
add Borrow tag to pointers; remove old locking code
|
2018-10-16 18:35:27 +02:00 |
|
Ralf Jung
|
a439262859
|
Merge branch 'master' into ptr-offset
|
2018-10-10 10:03:34 +02:00 |
|
Ralf Jung
|
edf28fa227
|
only allow offset-by-0 on integer pointers
|
2018-10-09 20:13:46 +02:00 |
|
Ralf Jung
|
cc275c63a9
|
fix for fn allocations now having an alignment (1) and a size (0)
|
2018-10-08 13:35:54 +02:00 |
|
Ralf Jung
|
146f5d8d10
|
rustup; test for return type mismatch
|
2018-10-02 21:16:55 +02:00 |
|
Ralf Jung
|
18d7394071
|
more compile-fail ptr equality tests, to rule out any non-determinism; and fix ptr equality to fail all of them.
At least these are the cases I can think of right now.
|
2018-09-17 10:02:31 +02:00 |
|
Ralf Jung
|
d3928f6356
|
more permissive pointer comparison logic
|
2018-09-01 11:26:54 +02:00 |
|
Ralf Jung
|
2a318264ea
|
also allow comparing pointers with integers so big that they cannot be equal
|
2018-08-30 11:05:52 +02:00 |
|
Ralf Jung
|
c44267960f
|
ptr equality: only defined for ptrs in the same allocation and live ptrs
|
2018-08-30 10:46:09 +02:00 |
|
Ralf Jung
|
ee7f22245d
|
Merge remote-tracking branch 'origin/master'
|
2018-08-20 18:57:48 +02:00 |
|
Ralf Jung
|
259cc6e3dc
|
rustup for big refactor; kill most of validation
|
2018-08-16 10:30:43 +02:00 |
|
Ralf Jung
|
1179d4f8a4
|
fix int ptr ops on 32bit
|
2018-08-14 20:25:56 +02:00 |
|