llvm-6502/include/llvm/Target
Arnold Schwaighofer cd3d60c450 TargetLowering: Fix getTypeConversion handling of extended vector types
The code in getTypeConversion attempts to promote the element vector type
before it trys to split or widen the vector.
After it failed finding a legal vector type by promoting it would continue using
the promoted vector element type. Thereby missing legal splitted vector types.
For example the type v32i32 that has a legal split of 4 x v3i32 on x86/sse2
would be transformed to: v32i256 and from there on successively split to:
v16i256, v8i256, v1i256 and then finally ends up as an i64 type.
By resetting the vector element type to the original vector element type that
existed before the promotion the code will attempt to split the vector type to
smaller vector widths of the same type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178999 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-07 20:22:56 +00:00
..
CostTable.h Moving Cost Tables up to share with other targets 2013-01-24 23:01:00 +00:00
Mangler.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Target.td Add SchedRW as an Instruction field. 2013-03-15 22:51:13 +00:00
TargetCallingConv.h OutputArg: added an index of the original argument to match the change to 2012-11-01 23:49:58 +00:00
TargetCallingConv.td Add TableGen support for callee saved registers. 2012-01-17 22:46:58 +00:00
TargetFrameLowering.h Provide the register scavenger to processFunctionBeforeFrameFinalized 2013-03-14 20:33:40 +00:00
TargetInstrInfo.h Add a comment to TargetInstrInfo about FoldImmediate 2013-04-06 19:30:20 +00:00
TargetIntrinsicInfo.h Mark unimplemented copy constructors and copy assignment operators as LLVM_DELETED_FUNCTION. 2012-09-17 06:59:23 +00:00
TargetItinerary.td I'm introducing a new machine model to simultaneously allow simple 2012-07-07 04:00:00 +00:00
TargetJITInfo.h Sort the #include lines for the include/... tree with the script. 2012-12-03 17:02:12 +00:00
TargetLibraryInfo.h Add more functions to the TLI. 2013-03-05 21:47:40 +00:00
TargetLowering.h TargetLowering: Fix getTypeConversion handling of extended vector types 2013-04-07 20:22:56 +00:00
TargetLoweringObjectFile.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
TargetMachine.h Reset some of the target options which affect code generation. 2013-03-13 22:26:59 +00:00
TargetOpcodes.h Add a new optimization pass: Stack Coloring, that merges disjoint static allocations (allocas). Allocas are known to be 2012-09-06 09:17:37 +00:00
TargetOptions.h Use the target options specified on a function to reset the back-end. 2013-04-05 21:52:40 +00:00
TargetRegisterInfo.h Move the eliminateCallFramePseudoInstr method from TargetRegisterInfo 2013-02-21 20:05:00 +00:00
TargetSchedule.td MachineModel: Add a ProcResGroup class. 2013-03-14 21:21:50 +00:00
TargetSelectionDAG.td Remove extra MayLoad/MayStore flags from atomic_load/store. 2012-08-28 03:11:32 +00:00
TargetSelectionDAGInfo.h Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
TargetSubtargetInfo.h Use the 'target-features' and 'target-cpu' attributes to reset the subtarget features. 2013-02-15 22:31:27 +00:00