llvm-6502/include/llvm/Target
Evan Cheng 0b0cd9113a Optimize some 64-bit multiplication by constants into two lea's or one lea + shl since imulq is slow (latency 5). e.g.
x * 40
=>
shlq    $3, %rdi
leaq    (%rdi,%rdi,4), %rax

This has the added benefit of allowing more multiply to be folded into addressing mode. e.g.
a * 24 + b
=>
leaq    (%rdi,%rdi,2), %rax
leaq    (%rsi,%rax,8), %rax


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67917 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-28 05:57:29 +00:00
..
DarwinTargetAsmInfo.h
ELFTargetAsmInfo.h
SubtargetFeature.h
Target.td
TargetAsmInfo.h add a friend needed by a stringmap change. 2009-02-04 01:51:53 +00:00
TargetCallingConv.td
TargetData.h Eliminate several more unnecessary intptr_t casts. 2009-02-18 05:09:16 +00:00
TargetELFWriterInfo.h
TargetFrameInfo.h
TargetInstrDesc.h Clarify comments. 2009-02-05 08:41:53 +00:00
TargetInstrInfo.h Describe tail merging's use of InsertBranch. 2009-02-19 19:40:21 +00:00
TargetInstrItineraries.h
TargetIntrinsicInfo.h Added support to have TableGen provide information if an intrinsic (core 2009-02-24 23:17:49 +00:00
TargetJITInfo.h Add support to the JIT for true non-lazy operation. When a call to a function 2009-02-18 08:31:02 +00:00
TargetLowering.h Optimize some 64-bit multiplication by constants into two lea's or one lea + shl since imulq is slow (latency 5). e.g. 2009-03-28 05:57:29 +00:00
TargetMachine.h CodeGen still defaults to non-verbose asm, but llc now overrides it and default to verbose. 2009-03-25 01:47:28 +00:00
TargetMachineRegistry.h Registry.h should not depend on CommandLine.h. 2009-01-16 07:02:28 +00:00
TargetMachOWriterInfo.h
TargetOptions.h CodeGen still defaults to non-verbose asm, but llc now overrides it and default to verbose. 2009-03-25 01:47:28 +00:00
TargetRegisterInfo.h We don't really need the abort here. This unbreak x86_64 linux build. 2009-02-06 17:51:34 +00:00
TargetSchedule.td
TargetSelectionDAG.td
TargetSubtarget.h