mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
more notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57427 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
51b7f8268b
commit
cdb0e4caff
@ -74,7 +74,7 @@ It includes a large number of features and refinements from LLVM 2.3.</p>
|
|||||||
|
|
||||||
<!-- for announcement email:
|
<!-- for announcement email:
|
||||||
mention dev mtg
|
mention dev mtg
|
||||||
Xcode 3.1.1?
|
Xcode 3.1 and 3.1.1.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<!--=========================================================================-->
|
<!--=========================================================================-->
|
||||||
@ -87,7 +87,7 @@ It includes a large number of features and refinements from LLVM 2.3.</p>
|
|||||||
<p>The LLVM IR generated by llvm-gcc now doesn't name instructions. Use the
|
<p>The LLVM IR generated by llvm-gcc now doesn't name instructions. Use the
|
||||||
instnamer pass if you want them.</p>
|
instnamer pass if you want them.</p>
|
||||||
|
|
||||||
|
<li>LoadVN and GCSE are completely gone.</li>
|
||||||
|
|
||||||
|
|
||||||
<p>LLVM API Changes:</p>
|
<p>LLVM API Changes:</p>
|
||||||
@ -105,7 +105,9 @@ converted to strings using <tt>llvm::GetConstantStringInfo</tt> defined via
|
|||||||
<li>API change: BinaryOperator::create -> Create (CmpInst, CastInst too)</li>
|
<li>API change: BinaryOperator::create -> Create (CmpInst, CastInst too)</li>
|
||||||
<li>Various header files like "llvm/ADT/iterator" were given a .h suffix.
|
<li>Various header files like "llvm/ADT/iterator" were given a .h suffix.
|
||||||
Change your code to #include "llvm/ADT/iterator.h" instead.</li>
|
Change your code to #include "llvm/ADT/iterator.h" instead.</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!--=========================================================================-->
|
<!--=========================================================================-->
|
||||||
@ -238,10 +240,12 @@ for the C, C++, Objective-C, Ada, and Fortran front-ends.</p>
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
|
<li>vector shifts in the IR: no codegen support yet</li>
|
||||||
<li>use diet patch landed: saved 15% IR memory footprint</li>
|
<li>use diet patch landed: saved 15% IR memory footprint</li>
|
||||||
<li>LLVM IR now directly represents "common" linkage, instead of
|
<li>LLVM IR now directly represents "common" linkage, instead of
|
||||||
representing it as a form of weak linkage.</li>
|
representing it as a form of weak linkage.</li>
|
||||||
<li>DebugInfoBuilder</li>
|
<li>DebugInfoBuilder</li>
|
||||||
|
<li>.ll printing format change: %3 = add i32 4, 2</li>
|
||||||
<li>...</li>
|
<li>...</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
@ -269,14 +273,13 @@ and rewrote ADCE to be simpler faster, and not need control dependence.</li>
|
|||||||
|
|
||||||
<li>SparsePropagation framework for lattice-based dataflow solvers.</li>
|
<li>SparsePropagation framework for lattice-based dataflow solvers.</li>
|
||||||
|
|
||||||
<li>LoadVN and GCSE finally bit the dust?</li>
|
<li>Tail duplication was removed from the standard optimizer sequence.</li>
|
||||||
|
|
||||||
<li>Tail duplication was is removed from the standard optimizer sequence.</li>
|
|
||||||
|
|
||||||
<li>Various helper functions (ComputeMaskedBits, ComputeNumSignBits, etc) were
|
<li>Various helper functions (ComputeMaskedBits, ComputeNumSignBits, etc) were
|
||||||
pulled out of instcombine and put into a new ValueTracking.h file, where they
|
pulled out of instcombine and put into a new ValueTracking.h file, where they
|
||||||
can be reused by other passes.</li>
|
can be reused by other passes.</li>
|
||||||
|
|
||||||
|
<li>MarkModRef etc</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@ -293,7 +296,10 @@ which allows us to implement more aggressive algorithms and make it run
|
|||||||
faster:</p>
|
faster:</p>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>2-addr pass can now remat trivial insts to avoid a copy.</li>
|
<li>asm writers split out to their own library to avoid JITs having to link
|
||||||
|
them in.</li>
|
||||||
|
<li>Big asm writer refactoring + TargetAsmInfo</li>
|
||||||
|
<li>2-addr pass and coalescer can now remat trivial insts to avoid a copy.</li>
|
||||||
<li>spiller to commute instructions in order to fold a reload</li>
|
<li>spiller to commute instructions in order to fold a reload</li>
|
||||||
<li>Stack slot coloring?</li>
|
<li>Stack slot coloring?</li>
|
||||||
<li>Live intervals renumbering? Is this useful to external people?</li>
|
<li>Live intervals renumbering? Is this useful to external people?</li>
|
||||||
@ -337,6 +343,7 @@ faster:</p>
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
|
<li>MIPS floating point support?</li>
|
||||||
<li>....</li>
|
<li>....</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
@ -355,6 +362,7 @@ faster:</p>
|
|||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>raw_ostream + formatting</li>
|
<li>raw_ostream + formatting</li>
|
||||||
|
<li>Recycler + pool allocation stuff?</li>
|
||||||
<li>...</li>
|
<li>...</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user