Commit Graph

75269 Commits

Author SHA1 Message Date
Oliver Schneider
ceb634a732
Update tests 2018-03-08 08:34:14 +01:00
Oliver Schneider
45abb1ba84
Stabilize const_indexing feature 2018-03-08 08:34:14 +01:00
Oliver Schneider
600fcc7159
Report const eval errors at the correct span 2018-03-08 08:34:14 +01:00
Oliver Schneider
13c0dc56df
Only report bitshift lints on bitshift ops 2018-03-08 08:34:14 +01:00
Oliver Schneider
438139f635
rustc_passes::consts -> rvalue_promotion 2018-03-08 08:34:14 +01:00
Oliver Schneider
929a4cece5
Use IndexVec instead of FxHashMap 2018-03-08 08:34:14 +01:00
Oliver Schneider
8c8a433532
Merge const linting pass into const prop 2018-03-08 08:34:14 +01:00
Oliver Schneider
0f72f0009a
Remove redundant warnings in rustc_trans 2018-03-08 08:34:13 +01:00
Oliver Schneider
c568807989
Remove single field struct by just using the field 2018-03-08 08:34:13 +01:00
Oliver Schneider
e093ab0df4
Adjust tests to changed const err lints 2018-03-08 08:34:13 +01:00
Oliver Schneider
4667346042
Remove the fragile const propagator and just do linting 2018-03-08 08:34:13 +01:00
Oliver Schneider
ec857e1e09
Deduplicate code in rustdoc 2018-03-08 08:34:13 +01:00
Oliver Schneider
d57a109203
Adjust tests to more aggressive const err linting 2018-03-08 08:34:13 +01:00
Oliver Schneider
21554b96af
Fix ICE in const prop 2018-03-08 08:34:13 +01:00
Oliver Schneider
e549f0b3d6
Simplify const SIMD shuffle in trans 2018-03-08 08:34:13 +01:00
Oliver Schneider
00c95b29bc
Revert all changes to the instcombine pass 2018-03-08 08:34:13 +01:00
Oliver Schneider
54615ec989
Split const prop into its own pass 2018-03-08 08:34:12 +01:00
Oliver Schneider
edb2af58e4
Don't use scary block reorderings 2018-03-08 08:34:12 +01:00
Oliver Schneider
5b247b9bbe
Report errors in statics during collecting instead of translating 2018-03-08 08:34:12 +01:00
Oliver Schneider
df6b40e342
Add regression tests 2018-03-08 08:34:12 +01:00
Oliver Schneider
5125d58fcf
Simplify code around reading/writing ConstVals 2018-03-08 08:34:12 +01:00
Oliver Schneider
4fbf1199ef
Accidental paste 2018-03-08 08:34:12 +01:00
Oliver Schneider
f8602ac12c
Explain the existance of is_binop_lang_item 2018-03-08 08:34:12 +01:00
Oliver Schneider
4f65261c43
Remove unused error variants and const eval types 2018-03-08 08:34:12 +01:00
Oliver Schneider
ef995bde50
Move the pattern checking code to hair 2018-03-08 08:34:11 +01:00
Oliver Schneider
bb81f9bdec
only export the two check* functions from check_match 2018-03-08 08:34:11 +01:00
Oliver Schneider
1543367624
The const_eval module is no more 2018-03-08 08:34:11 +01:00
Oliver Schneider
57f9e0e468
Move lit_to_const to pattern and remove the now-empty eval module 2018-03-08 08:34:11 +01:00
Oliver Schneider
b38e8af5eb
Remove unused function 2018-03-08 08:34:11 +01:00
Oliver Schneider
0e2da01b91
Move compare_const_vals out of eval 2018-03-08 08:34:11 +01:00
Oliver Schneider
b75a828e2b
Reduce noise in error reporting 2018-03-08 08:34:11 +01:00
Oliver Schneider
8a93972ba9
Use Mutability enum instead of bool 2018-03-08 08:34:11 +01:00
Oliver Schneider
c5d2e178e7
Prefer enum instead of magic numbers 2018-03-08 08:34:10 +01:00
Oliver Schneider
8c2db0ba8c
Stop emitting miri failed in error messages 2018-03-08 08:34:10 +01:00
Oliver Schneider
03ef614f8f
Rename simd shuffle function and adjust comment 2018-03-08 08:34:10 +01:00
Oliver Schneider
bdda1196f2
Use layout::Integer over manual *size resolving 2018-03-08 08:34:10 +01:00
Oliver Schneider
9857eaa4df
Nuke ConstInt and Const*size 2018-03-08 08:34:10 +01:00
Oliver Schneider
3b8d2e0016
Rename ConstVal::to_u128 to to_raw_bits 2018-03-08 08:34:10 +01:00
Oliver Schneider
2f2c90e733
Destructure Rc wrapped ErrorKind in miri 2018-03-08 08:34:10 +01:00
Oliver Schneider
790d131ac2
Add test for #45044 2018-03-08 08:34:09 +01:00
Oliver Schneider
cf056615a8
Add test for attempting to use array indexing for conditional const eval 2018-03-08 08:34:09 +01:00
Oliver Schneider
4f6c557c9d
Wrap the miri ErrorKind in an Rc to reduce work in queries 2018-03-08 08:34:09 +01:00
Oliver Schneider
3d8c4d4fe9
Don't read from zero sized fields 2018-03-08 08:34:09 +01:00
Oliver Schneider
d26ebec81c
Hide the RefCell inside InterpretInterner
It was too easy to get this wrong
2018-03-08 08:34:09 +01:00
Oliver Schneider
37d8b9a86c
Don't borrow the interpret_interner for anything but a direct function call 2018-03-08 08:34:09 +01:00
Oliver Schneider
1d438f87e7
Allow tools (e.g. miri) to enable rust logging 2018-03-08 08:34:09 +01:00
Oliver Schneider
34772aad63
Allow writing mutable statics in miri by adding them to the Machine 2018-03-08 08:34:09 +01:00
Oliver Schneider
d3e2f48c8c
More const eval sanity checks (invalid slice fat pointers) 2018-03-08 08:34:08 +01:00
Oliver Schneider
f14e746b2f
Enable const prop to also evaluate constants, not just literals 2018-03-08 08:34:08 +01:00
Oliver Schneider
4caf6a92f3
Additional sanity assertion 2018-03-08 08:34:08 +01:00