mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 20:32:21 +00:00
Add more notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
cfce6c0686
commit
0305cfd3cc
@ -1,3 +1,23 @@
|
|||||||
|
* Fix the const pool printer to print out constants in some sort of "sorted"
|
||||||
|
order. Then enable TestOptimizer.sh to diff -sccp output. Currently it
|
||||||
|
doesn't work because the diff fails because of ordering of the constant
|
||||||
|
pool. :(
|
||||||
|
* Enable DoConstantPoolMerging to do trivial DCE of constant values.
|
||||||
|
* Fix DCE to work better, so that SCCP can show it's true value.
|
||||||
|
* Should provide "castTerminator, castPHI, etc" functions in Instruction, and
|
||||||
|
similar functions in other classes, that effectively do dynamic casts. This
|
||||||
|
would allow code like this:
|
||||||
|
if (I->isTerminator()) {
|
||||||
|
TerminatorInst *TI = (TerminatorInst*)I;
|
||||||
|
...
|
||||||
|
}
|
||||||
|
to be written as:
|
||||||
|
if (TerminatorInst *TI = I->castTerminatorInst()) {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
* Think about whether edge split SSA form would be useful to do.
|
||||||
|
* Inlining should attempt to give block names the same name in the inlined
|
||||||
|
method (using SymbolTable::getUniqueName)
|
||||||
* The dropAllReferences code can be a noop when NDEBUG!!!
|
* The dropAllReferences code can be a noop when NDEBUG!!!
|
||||||
* Finish xvcg output
|
* Finish xvcg output
|
||||||
* pred/succ iterators on basic blocks don't handle switch statements correctly
|
* pred/succ iterators on basic blocks don't handle switch statements correctly
|
||||||
|
Loading…
Reference in New Issue
Block a user