llvm-6502/lib/VMCore
Duncan Sands 2333e29be4 Relax the restrictions on vector of pointer types, and vector getelementptr.
Previously in a vector of pointers, the pointer couldn't be any pointer type,
it had to be a pointer to an integer or floating point type.  This is a hassle
for dragonegg because the GCC vectorizer happily produces vectors of pointers
where the pointer is a pointer to a struct or whatever.  Vector getelementptr
was restricted to just one index, but now that vectors of pointers can have
any pointer type it is more natural to allow arbitrary vector getelementptrs.
There is however the issue of struct GEPs, where if each lane chose different
struct fields then from that point on each lane will be working down into
unrelated types.  This seems like too much pain for too little gain, so when
you have a vector struct index all the elements are required to be the same.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167828 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-13 12:59:33 +00:00
..
AsmWriter.cpp Special calling conventions for Intel OpenCL built-in library. 2012-10-24 14:46:16 +00:00
Attributes.cpp Change ForceSizeOpt attribute into MinSize attribute 2012-10-30 16:32:52 +00:00
AttributesImpl.h Have AttributesImpl defriend the Attributes class. 2012-10-16 05:57:28 +00:00
AutoUpgrade.cpp Attributes Rewrite 2012-10-15 04:46:55 +00:00
BasicBlock.cpp Add a constified getLandingPad() method. 2012-01-31 00:26:24 +00:00
CMakeLists.txt Don't explicitly require RTTI and EH. 2012-10-26 12:15:29 +00:00
ConstantFold.cpp Fix isEliminableCastPair to work correctly in the presence of pointers 2012-10-30 16:03:32 +00:00
ConstantFold.h Convert ConstantFoldGetElementPtr to use ArrayRef. 2011-07-19 15:30:30 +00:00
Constants.cpp Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00
ConstantsContext.h Use LLVM_DELETED_FUNCTION in place of 'DO NOT IMPLEMENT' comments. 2012-09-15 17:09:36 +00:00
Core.cpp Move the Attributes::Builder outside of the Attributes class and into its own class named AttrBuilder. No functionality change. 2012-10-15 20:35:56 +00:00
DataLayout.cpp Enable the assertion in getIntPtrType (I've audited all users of this method and 2012-11-02 09:02:37 +00:00
DebugInfo.cpp Fix PR14016. 2012-10-09 08:13:15 +00:00
DebugLoc.cpp Pull the simple parts of DenseMapInfo<DebugLoc> inline and prune includes. 2012-07-19 15:00:34 +00:00
DIBuilder.cpp Use the 'count' attribute instead of the 'upper_bound' attribute. 2012-11-13 02:31:47 +00:00
Dominators.cpp Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767 2012-09-27 10:14:43 +00:00
Function.cpp Attributes Rewrite 2012-10-15 04:46:55 +00:00
GCOV.cpp Don't do actual work inside an assert statement. Fixes PR11760! 2012-09-23 03:58:21 +00:00
Globals.cpp Clean-up after r159077. 2012-06-23 12:14:23 +00:00
GVMaterializer.cpp
InlineAsm.cpp [ms-inline asm] Enumerate the InlineAsm dialects and rename the nsdialect to 2012-09-05 19:00:49 +00:00
Instruction.cpp Refactor operation equivalence checking in BBVectorize by extending Instruction::isSameOperationAs. 2012-06-28 05:42:26 +00:00
Instructions.cpp Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00
IntrinsicInst.cpp
IRBuilder.cpp Add IRBuilder code for adding !tbaa.struct metadata tags to llvm.memcpy calls. 2012-09-26 22:17:14 +00:00
LeakDetector.cpp Merge System into Support. 2010-11-29 18:16:10 +00:00
LeaksContext.h
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
LLVMContext.cpp Define an official slot for the new !tbaa.struct metadata tag. 2012-09-13 17:56:17 +00:00
LLVMContextImpl.cpp Fix use after free when deleting attributes in a chained folding set. 2012-10-14 08:48:40 +00:00
LLVMContextImpl.h Move the AttributesImpl header file into the VMCore directory so that it can be opaque. 2012-10-15 05:40:12 +00:00
Makefile Don't explicitly require RTTI and EH. 2012-10-26 12:15:29 +00:00
Metadata.cpp Typo. 2012-08-14 01:09:10 +00:00
Module.cpp Move the "findUsedStructTypes" functionality outside of the Module class. 2012-08-03 00:30:35 +00:00
Pass.cpp Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767 2012-09-27 10:14:43 +00:00
PassManager.cpp Revert r167759. Ben is right this isn't likely to help much. 2012-11-13 02:56:38 +00:00
PassRegistry.cpp Cosmetic changes, as per Nick's review. 2011-09-29 16:46:47 +00:00
PrintModulePass.cpp Now with fewer extraneous semicolons! 2010-10-07 22:25:06 +00:00
SymbolTableListTraitsImpl.h
TargetTransformInfo.cpp Lowercase the argument for TargetTransformInfo so it's consistent with all other passes. 2012-10-26 18:46:15 +00:00
Type.cpp Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00
TypeFinder.cpp Move the "findUsedStructTypes" functionality outside of the Module class. 2012-08-03 00:30:35 +00:00
Use.cpp Add missing include of <new> 2012-03-26 14:04:17 +00:00
User.cpp Fix ODR violations: a virtual function must be defined, even if it's never 2012-10-24 00:30:41 +00:00
Value.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
ValueSymbolTable.cpp eliminate the Type::getDescription() method, using "<<" instead. This 2011-06-18 21:18:23 +00:00
ValueTypes.cpp Replace calls to getSizeInBits with getExtendedSizeInBits since its already known its an extended type. 2012-09-26 07:11:42 +00:00
Verifier.cpp Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00