forked from M-Labs/artiq
1d8b0d46bc
Fascinatingly, the fact that you can mark call instructions with !tbaa metadata is completely undocumented. Regardless, it is true: a !tbaa metadata for an "immutable" type will cause AliasAnalysis::getModRefBehavior to return OnlyReadsMemory for that call site. Don't bother marking loads with TBAA yet since we already place !load.invariant on them (which is as good as the TBAA "immutable" flag) and after that we're limited by lack of !nonnull anyway. Also, add TBAA analysis passes in our pipeline to actually engage it. |
||
---|---|---|
.. | ||
algorithms | ||
analyses | ||
testbench | ||
transforms | ||
validators | ||
__init__.py | ||
asttyped.py | ||
builtins.py | ||
embedding.py | ||
iodelay.py | ||
ir.py | ||
module.py | ||
prelude.py | ||
targets.py | ||
types.py |