llvm-6502/lib
Duncan Sands 24080a9878 The accumulator tail recursion transform claims to work for any associative
operation, but the way it's implemented requires the operation to also be
commutative.  So add a check for commutativity (and tweak the corresponding
comments).  This makes no difference in practice since every associative
LLVM instruction is also commutative!  Here's an example to show the need
for commutativity: the accum_recursion.ll testcase calculates the factorial
function.  Before the transformation the result of a call is
  ((((1*1)*2)*3)...)*x
while afterwards it is
  (((1*x)*(x-1))...*2)*1
which clearly requires both associativity and commutativity of * to be equal
to the original.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108056 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-10 20:31:42 +00:00
..
Analysis remove useless cast and fix typos in comment 2010-07-09 16:42:04 +00:00
Archive Eliminate some unnessary Path::exists() calls. 2010-05-27 20:51:54 +00:00
AsmParser Implement the "linker_private_weak" linkage type. This will be used for 2010-07-01 21:55:59 +00:00
Bitcode cache result of operator* 2010-07-09 16:01:21 +00:00
CodeGen Emit COPY instructions instead of using copyRegToReg in InstrEmitter, 2010-07-10 19:08:25 +00:00
CompilerDriver 80-col violation. 2010-07-01 01:00:27 +00:00
ExecutionEngine Handle execution entrypoints with non-integer return types. 2010-06-18 02:01:10 +00:00
Linker Revert r107205 and r107207. 2010-06-29 22:34:52 +00:00
MC Revert some unneeded parts of the change in r107886 for the 2010-07-08 20:30:44 +00:00
Support add some triple for minix, patch by Kees van Reeuwijk from PR7582 2010-07-07 15:52:27 +00:00
System add some triple for minix, patch by Kees van Reeuwijk from PR7582 2010-07-07 15:52:27 +00:00
Target Don't emit st(0)/st(1) copies as FpMOV instructions. Use FpSET_ST? instead. 2010-07-10 17:42:34 +00:00
Transforms The accumulator tail recursion transform claims to work for any associative 2010-07-10 20:31:42 +00:00
VMCore use PrintEscapedString to handle attribute section with escapes in it, 2010-07-07 23:16:37 +00:00
Makefile