llvm-6502/include/llvm/CodeGen
Ken Dyck bceddbdc91 Introduce EVT::getHalfSizedIntegerVT() for use in ExpandUnalignedStore() in
LegalizeDAG.cpp. Unlike the code it replaces, which simply decrements the simple
type by one, getHalfSizedIntegerVT() searches for the smallest simple integer
type that is at least half the size of the type it is called on. This approach
has the advantage that it will continue working if a new value type (such as
i24) is added to MVT.

Also, in preparation for new value types, remove the assertions that
non-power-of-2 8-bit-mutiple types are Extended when legalizing extload and
truncstore operations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91614 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-17 20:09:43 +00:00
..
AsmPrinter.h Use StringRef instead of std::string in DIEString. 2009-11-24 19:42:17 +00:00
BinaryObject.h Make a few more LLVM headers parsable as standalone headers. 2009-11-05 23:01:30 +00:00
CalcSpillWeights.h Moved spill weight calculation out of SimpleRegisterCoalescing and into its own pass: CalculateSpillWeights. 2009-12-14 06:49:42 +00:00
CallingConvLower.h Add code to check at SelectionDAGISel::LowerArguments time to see if return values can be lowered to registers. Coming soon, code to perform sret-demotion if return values cannot be lowered to registers 2009-11-07 02:11:54 +00:00
DAGISelHeader.h Fix weird typo which leads to unallocated memory access for nodes with 4 results. 2009-12-13 01:00:59 +00:00
DwarfWriter.h "Attach debug info with llvm instructions" mode was enabled a month ago. Now make it permanent and remove old way of inserting intrinsics to encode debug info for line number and scopes. 2009-11-12 19:02:56 +00:00
ELFRelocation.h
FastISel.h Make TargetSelectInstruction protected and called from FastISel.cpp 2009-12-05 01:27:58 +00:00
FileWriters.h
GCMetadata.h
GCMetadataPrinter.h
GCs.h
GCStrategy.h
IntrinsicLowering.h
JITCodeEmitter.h Change indirect-globals to use a dedicated allocIndirectGV. This lets us 2009-12-15 22:42:46 +00:00
LatencyPriorityQueue.h Remove some old experimental code that is no longer needed. Remove additional, speculative scheduling pass as its cost did not translate into significant performance improvement. Minor tweaks. 2009-11-20 19:32:48 +00:00
LinkAllAsmWriterComponents.h Make a few more LLVM headers parsable as standalone headers. 2009-11-05 23:01:30 +00:00
LinkAllCodegenComponents.h improve portability to avoid conflicting with std::next in c++'0x. 2009-12-03 00:50:42 +00:00
LiveInterval.h
LiveIntervalAnalysis.h Also attempt trivial coalescing for live intervals that end in a copy. 2009-12-10 17:48:32 +00:00
LiveStackAnalysis.h
LiveVariables.h Move PHIElimination::isLiveOut method to LiveVariables. 2009-12-01 17:13:31 +00:00
MachineBasicBlock.h Revert these. They may have been causing 483_xalancbmk to fail: 2009-12-15 00:39:24 +00:00
MachineCodeEmitter.h Change indirect-globals to use a dedicated allocIndirectGV. This lets us 2009-12-15 22:42:46 +00:00
MachineCodeInfo.h Make a few more LLVM headers parsable as standalone headers. 2009-11-05 23:01:30 +00:00
MachineConstantPool.h
MachineDominators.h Add a WriteAsOperand for MachineBasicBlock so MachineLoopInfo dump looks sane. 2009-11-17 19:19:59 +00:00
MachineFrameInfo.h Factor the stack alignment calculations out into a target independent pass. 2009-12-02 19:30:24 +00:00
MachineFunction.h Allow the machine verifier to be run outside the PassManager. 2009-11-18 20:36:57 +00:00
MachineFunctionAnalysis.h Revert 88957. This file uses CodeGenOpt, which is defined in TargetMachine.h. 2009-11-16 20:45:50 +00:00
MachineFunctionPass.h
MachineInstr.h Fill out codegen SSA updater. It's not yet tested. 2009-12-03 02:31:43 +00:00
MachineInstrBuilder.h
MachineJumpTableInfo.h Add function to replace a destination MBB in a single jump table 2009-11-14 20:09:13 +00:00
MachineLocation.h
MachineLoopInfo.h
MachineMemOperand.h Make a few more LLVM headers parsable as standalone headers. 2009-11-05 23:01:30 +00:00
MachineModuleInfo.h Remove DebugLabelFolder pass. It is not used by dwarf writer anymore. 2009-11-24 19:37:07 +00:00
MachineModuleInfoImpls.h
MachineOperand.h Target-independent support for TargetFlags on BlockAddress operands, 2009-11-20 23:18:13 +00:00
MachinePassRegistry.h
MachineRegisterInfo.h Print "..." instead of all the uninteresting register clobbers on call 2009-11-09 19:38:45 +00:00
MachineRelocation.h Make the need-stub variables accurate and consistent. In the case of 2009-11-07 08:51:52 +00:00
MachineSSAUpdater.h Pre-regalloc tale duplication. Work in progress. 2009-12-07 10:15:19 +00:00
MachORelocation.h Make a few more LLVM headers parsable as standalone headers. 2009-11-05 23:01:30 +00:00
ObjectCodeEmitter.h
Passes.h Add a pre-regalloc tail duplication pass. 2009-12-04 09:42:45 +00:00
ProcessImplicitDefs.h
PseudoSourceValue.h Make PseudoSourceValue's classof recognize 2009-11-16 20:40:06 +00:00
RegAllocRegistry.h
RegisterCoalescer.h
RegisterScavenging.h
RuntimeLibcalls.h Add 8 bit libcalls and make use of them for msp430 2009-11-07 17:14:39 +00:00
ScheduleDAG.h Remove some old experimental code that is no longer needed. Remove additional, speculative scheduling pass as its cost did not translate into significant performance improvement. Minor tweaks. 2009-11-20 19:32:48 +00:00
ScheduleHazardRecognizer.h
SchedulerRegistry.h
SelectionDAG.h Reapply r91392, it was only unmasking the bug, and since TOT is still broken having it reverted does no good. 2009-12-16 20:10:05 +00:00
SelectionDAGISel.h Remove old DBG_LABEL code. 2009-12-05 17:56:26 +00:00
SelectionDAGNodes.h BIT_CONVERT nodes are used for vector types, too. 2009-12-17 05:05:36 +00:00
SlotIndexes.h Lang verified that SlotIndex is "pod like" even though it isn't a pod. 2009-12-15 07:27:58 +00:00
ValueTypes.h Introduce EVT::getHalfSizedIntegerVT() for use in ExpandUnalignedStore() in 2009-12-17 20:09:43 +00:00
ValueTypes.td Move Flag and isVoid after the vector types, since bit arithmetic with 2009-12-14 23:36:03 +00:00