Jeremy Stucki
3dde32ca97
rustc: Remove needless lifetimes
2022-12-20 22:10:40 +01:00
Oli Scherer
b7413511dc
Generalize the Assume intrinsic statement to a general Intrinsic statement
2022-09-06 14:18:32 +00:00
Oli Scherer
3f07645120
Lower the assume intrinsic to a MIR statement
2022-09-06 14:18:32 +00:00
Tomasz Miąsko
58eabb291d
Add method that applies DefUse effect
2022-08-25 10:38:00 +02:00
Tomasz Miąsko
31d892a942
Fix liveness analysis for yield terminators
...
A resume place is evaluated and assigned to only after a yield
terminator resumes. Ensure that locals used when evaluating the
resume place are live across the yield.
2022-08-25 07:12:16 +02:00
Tomasz Miąsko
099a32bbe4
Remove redundant TransferWrapper
struct
2022-08-01 17:08:19 +02:00
lcnr
cf9c0a5935
cleanup mir visitor for rustc::pass_by_value
2022-07-01 16:21:21 +02:00
bors
ecdd374e61
Auto merge of #97863 - JakobDegen:bitset-choice, r=nnethercote
...
`BitSet` related perf improvements
This commit makes two changes:
1. Changes `MaybeLiveLocals` to use `ChunkedBitSet`
2. Overrides the `fold` method for the iterator for `ChunkedBitSet`
I have local benchmarks verifying that each of these changes individually yield significant perf improvements to #96451 . I'm hoping this will be true outside of that context too. If that is not the case, I'll try to gate things on where they help as needed
r? `@nnethercote` who I believe was working on closely related things, cc `@tmiasko` because of the destprop pr
2022-06-17 07:35:22 +00:00
Jakob Degen
bc7cd2f351
BitSet
perf improvements
...
This commit makes two changes:
1. Changes `MaybeLiveLocals` to use `ChunkedBitSet`
2. Overrides the `fold` method for the iterator for `ChunkedBitSet`
2022-06-14 19:41:58 -07:00
Tomasz Miąsko
6277c3a944
Preserve unused pointer to address casts
2022-06-07 17:33:16 +02:00
Tomasz Miąsko
dff602fc18
Add a pointer to address cast kind
...
A pointer to address cast are often special-cased.
Introduce a dedicated cast kind to make them easy distinguishable.
2022-05-31 00:00:00 +00:00
Jakob Degen
bf153a241d
Add dead store elimination pass
2022-05-24 22:50:21 -04:00
Jakob Degen
48b01a0d0e
Add new MutatatingUseContext
s for deinit and SetDiscriminant
2022-04-11 09:26:26 -04:00
Yuri Astrakhan
5160f8f843
Spellchecking compiler comments
...
This PR cleans up the rest of the spelling mistakes in the compiler comments. This PR does not change any literal or code spelling issues.
2022-03-30 15:14:15 -04:00
Tomasz Miąsko
000b36c505
Remove deprecated LLVM-style inline assembly
2022-01-12 18:51:31 +01:00
LegionMammal978
fed881aafc
Remove in_band_lifetimes
from rustc_mir_dataflow
...
See #91867 for more information.
2021-12-16 14:29:43 -05:00
Amanieu d'Antras
940b2eabad
Add initial AST and MIR support for unwinding from inline assembly
2021-12-03 23:51:46 +01:00
Dylan MacKenzie
02c2a35c66
Discuss field-sensitivity and enums in context of MaybeLiveLocals
2021-10-04 14:09:19 -07:00
Camille GILLOT
fd9c04fe32
Move the dataflow framework to its own crate.
2021-09-07 19:57:07 +02:00