mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 20:32:21 +00:00
Modify notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
fb3f24fd57
commit
1fedd5ae6c
@ -8,6 +8,8 @@
|
||||
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. :(
|
||||
* Maybe ConstantPool objects should keep themselves sorted as things are
|
||||
inserted.
|
||||
* Enable DoConstantPoolMerging to do trivial DCE of constant values.
|
||||
* Should provide "castTerminator, castPHI, etc" functions in Instruction, and
|
||||
similar functions in other classes, that effectively do dynamic casts. This
|
||||
@ -26,7 +28,6 @@
|
||||
* The dropAllReferences code can be a noop when NDEBUG!!!
|
||||
* Finish xvcg output
|
||||
* pred/succ iterators on basic blocks don't handle switch statements correctly
|
||||
* Enhance BB to make predecessor handling easier (to update PHI nodes)
|
||||
* Provide a pass that eliminates critical edges from the CFG
|
||||
* Provide a print pass to print out xvcg format files for vis
|
||||
* I need to provide an option to the bytecode loader to ignore memory
|
||||
@ -36,22 +37,7 @@
|
||||
reference. You should only be able to take the address of a variable.
|
||||
Maybe taking the address of a constant copies it? What about virtual
|
||||
function tables? Maybe a const pointer would be better...
|
||||
* Structures should be accessed something like this: ubyte is ok. Limits
|
||||
structure size to 256 members. This can be fixed later by either:
|
||||
1. adding varient that takes ushort
|
||||
2. Splitting structures into nested structures each of half size
|
||||
<float> %f = load *{int, {float}} Str, 1, 0
|
||||
store float %f, *{int, {float}} Str, 1, 0
|
||||
* I'm noticing me writing a lot of code that looks like this (dtor material here):
|
||||
ConstPool.dropAllReferences();
|
||||
ConstPool.delete_all();
|
||||
ConstPool.setParent(0);
|
||||
~ConstPool
|
||||
|
||||
* Need a way to attach bytecode block info at various levels of asm code.
|
||||
* Rename "ConstantPool" to "ConstPool"
|
||||
* Maybe ConstantPool objects should keep themselves sorted as things are
|
||||
inserted.
|
||||
* Need to be able to inflate recursive types. %x = { *%x }, %x = %x ()
|
||||
* Recognize and save comments in assembly and bytecode format
|
||||
* Encode line number table in bytecode (like #line), optional table
|
||||
@ -65,7 +51,6 @@
|
||||
* Implement a header file that can read either assembly or bytecode, implement
|
||||
a writer that can output either based on what is read with this reader..
|
||||
* Implement the following derived types:
|
||||
* structure/record { int %foo, int %bar} or { %foo = int, int }
|
||||
* pointer int *
|
||||
* "packed format", like this: [4 x sbyte]: Packed SIMD datatype
|
||||
* Maybe 'tailcall' also?
|
||||
|
Loading…
Reference in New Issue
Block a user