llvm-6502/include/llvm/CodeGen
Elena Demikhovsky 2785766bc8 Fixed a bug in type legalizer for masked load/store intrinsics.
The problem occurs when after vectorization we have type
<2 x i32>. This type is promoted to <2 x i64> and then requires
additional efforts for expanding loads and truncating stores.
I added EXPAND / TRUNCATE attributes to the masked load/store
SDNodes. The code now contains additional shuffles.
I've prepared changes in the cost estimation for masked memory
operations, it will be submitted separately.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226808 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-22 12:07:59 +00:00
..
PBQP [PBQP] Unique allowed-sets for nodes in the PBQP graph and use pairs of these 2014-10-27 17:44:25 +00:00
Analysis.h Fold a loop for array processing in ComputeLinearIndex 2015-01-14 05:33:01 +00:00
AsmPrinter.h Remove support for DIVariable's FlagIndirectVariable and expect 2015-01-19 17:57:29 +00:00
CalcSpillWeights.h [PBQP] Tweak spill costs and coalescing benefits 2014-11-04 20:51:24 +00:00
CallingConvLower.h Make musttail more robust for vector types on x86 2014-12-22 23:58:37 +00:00
CommandFlags.h Revert "Insert random noops to increase security against ROP attacks (llvm)" 2015-01-14 05:24:33 +00:00
DAGCombine.h
DFAPacketizer.h Remove the TargetMachine from DFAPacketizer since it was only 2014-10-14 01:03:16 +00:00
DIE.h Make DIE.h a public CodeGen header. 2015-01-05 21:29:41 +00:00
EdgeBundles.h
FastISel.h [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
ForwardControlFlowIntegrity.h [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
FunctionLoweringInfo.h Remove dead code for llvm.eh.selector in the old EH model 2015-01-14 18:49:39 +00:00
GCMetadata.h clang-format all the GC related files (NFC) 2015-01-16 23:16:12 +00:00
GCMetadataPrinter.h clang-format all the GC related files (NFC) 2015-01-16 23:16:12 +00:00
GCs.h clang-format all the GC related files (NFC) 2015-01-16 23:16:12 +00:00
IntrinsicLowering.h
ISDOpcodes.h Implement new way of expanding extloads. 2015-01-14 01:35:17 +00:00
JumpInstrTables.h Add Forward Control-Flow Integrity. 2014-11-11 21:08:02 +00:00
LatencyPriorityQueue.h
LexicalScopes.h [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
LinkAllAsmWriterComponents.h
LinkAllCodegenComponents.h Introduce an example statepoint GC strategy 2015-01-07 19:07:50 +00:00
LiveInterval.h LiveInterval: Introduce createMainRangeFromSubranges(). 2014-12-24 02:11:51 +00:00
LiveIntervalAnalysis.h LiveIntervalAnalysis: Factor out code to update liveness on vreg def removal 2015-01-21 19:02:30 +00:00
LiveIntervalUnion.h LiveIntervalUnion: Allow specification of liverange when unifying/extracting. 2014-12-10 01:12:59 +00:00
LivePhysRegs.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
LiveRangeEdit.h Remove unnecessary getTarget call now that the subtarget is cached 2014-09-03 20:36:26 +00:00
LiveRegMatrix.h
LiveStackAnalysis.h
LiveVariables.h CodeGen/LiveVariables: hoist out code in nested loops 2014-08-25 01:59:49 +00:00
MachineBasicBlock.h CodeGen: assert an instruction is being inserted with the correct iterator. 2014-11-14 00:34:59 +00:00
MachineBlockFrequencyInfo.h
MachineBranchProbabilityInfo.h
MachineCombinerPattern.h MachineCombiner Pass for selecting faster instruction 2014-08-03 21:35:39 +00:00
MachineConstantPool.h
MachineDominanceFrontier.h
MachineDominators.h Update SetVector to rely on the underlying set's insert to return a pair<iterator, bool> 2014-11-19 07:49:26 +00:00
MachineFrameInfo.h Add the llvm.frameallocate and llvm.recoverframeallocation intrinsics 2015-01-13 00:48:10 +00:00
MachineFunction.h Use a Factory Method for MachineFunctionInfo Creation 2015-01-06 20:05:02 +00:00
MachineFunctionAnalysis.h
MachineFunctionPass.h
MachineInstr.h LiveIntervalAnalysis: Mark subregister defs as undef when we determined they are only reading a dead superregister value 2015-01-21 22:55:13 +00:00
MachineInstrBuilder.h Work around bugs in MSVC "14" CTP 3's conversion logic 2014-10-31 23:19:46 +00:00
MachineInstrBundle.h
MachineJumpTableInfo.h
MachineLoopInfo.h
MachineMemOperand.h AA metadata refactoring (introduce AAMDNodes) 2014-07-24 12:16:19 +00:00
MachineModuleInfo.h CodeGen support for x86_64 SEH catch handlers in LLVM 2015-01-14 01:05:27 +00:00
MachineModuleInfoImpls.h
MachineOperand.h Add MachineOperand::ChangeToFPImmediate and setFPImm 2014-09-28 19:24:59 +00:00
MachinePassRegistry.h
MachinePostDominators.h Fix typos in comments, NFC 2014-08-29 21:53:01 +00:00
MachineRegionInfo.h
MachineRegisterInfo.h Add a flag to enable/disable subregister liveness. 2014-12-10 01:12:30 +00:00
MachineScheduler.h [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
MachineSSAUpdater.h
MachineTraceMetrics.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MachineValueType.h [CodeGen] Add MVT::isValid to replace manual validity checks. NFC. 2015-01-07 22:47:46 +00:00
MachORelocation.h
Passes.h [NFC] Update createMachineScheduler() comment 2015-01-19 12:02:25 +00:00
PBQPRAConstraint.h Remove redundant virtual on overriden functions. 2014-11-14 19:06:36 +00:00
PseudoSourceValue.h
RegAllocPBQP.h [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
RegAllocRegistry.h
RegisterClassInfo.h
RegisterPressure.h
RegisterScavenging.h Changed the liveness tracking in the RegisterScavenger 2014-08-04 23:07:49 +00:00
ResourcePriorityQueue.h
RuntimeLibcalls.h Add minnum / maxnum codegen 2014-10-21 23:01:01 +00:00
ScheduleDAG.h New method SDep::isNormalMemoryOrBarrier() in ScheduleDAGInstrs.cpp. 2015-01-07 13:38:29 +00:00
ScheduleDAGInstrs.h Cleanup: Delete seemingly unused reference to MachineDominatorTree from ScheduleDAGInstrs. 2014-08-20 20:57:26 +00:00
ScheduleDFS.h
ScheduleHazardRecognizer.h
SchedulerRegistry.h
ScoreboardHazardRecognizer.h
SelectionDAG.h Fixed a bug in type legalizer for masked load/store intrinsics. 2015-01-22 12:07:59 +00:00
SelectionDAGISel.h [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
SelectionDAGNodes.h Fixed a bug in type legalizer for masked load/store intrinsics. 2015-01-22 12:07:59 +00:00
SlotIndexes.h
StackMapLivenessAnalysis.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
StackMaps.h [Statepoints 2/4] Statepoint infrastructure for garbage collection: MI & x86-64 Backend 2014-12-01 22:52:56 +00:00
StackProtector.h
TargetLoweringObjectFileImpl.h Recommit r224935 with a fix for the ObjC++/AArch64 bug that that revision 2015-01-09 18:55:42 +00:00
TargetSchedule.h Change MCSchedModel to be a struct of statically initialized data. 2014-09-02 17:43:54 +00:00
ValueTypes.h
ValueTypes.td
VirtRegMap.h