llvm-6502/lib/IR
David Blaikie d25af8c396 Refix a use of explicit pointer types in GEP constant folding
In the glorious future of opaque pointer types, it won't be possible to
retrieve the pointee type of a pointer type which is what's being done
in this GEP loop - but the first iteration is always a pointer type and
the loop doesn't care about that case, except whether or not the index
is a constant.

So pull that special case out before the loop and start at the second
iteration (index 1) instead.

Originally committed in r236670 and reverted with a test case in
r239015. This change keeps the test case working while also avoiding
depending on pointee types.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@239629 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-12 18:22:03 +00:00
..
AsmWriter.cpp Prefer copy init over direct init. NFC. 2015-06-08 18:58:57 +00:00
AttributeImpl.h
Attributes.cpp Add initial support for the convergent attribute. 2015-05-26 23:48:40 +00:00
AutoUpgrade.cpp [opaque pointer type] Pass explicit type to Load instruction creation in AutoUpgrade 2015-05-20 21:46:30 +00:00
BasicBlock.cpp Set proper debug location for branch added in BasicBlock::splitBasicBlock(). 2015-06-11 18:25:54 +00:00
CMakeLists.txt
Comdat.cpp
ConstantFold.cpp Refix a use of explicit pointer types in GEP constant folding 2015-06-12 18:22:03 +00:00
ConstantFold.h
ConstantRange.cpp
Constants.cpp Replace all accesses to User::OperandList with getter and setter methods. NFC. 2015-06-12 17:48:05 +00:00
ConstantsContext.h
Core.cpp [C API] Add LLVMStructGetTypeAtIndex. 2015-06-04 09:09:53 +00:00
DataLayout.cpp
DebugInfo.cpp
DebugInfoMetadata.cpp IR / debug info: Add a DWOId field to DICompileUnit, 2015-05-21 20:37:30 +00:00
DebugLoc.cpp
DiagnosticInfo.cpp Replace an instance of custom atomics with standard ones. 2015-06-11 17:30:34 +00:00
DiagnosticPrinter.cpp
DIBuilder.cpp IR / debug info: Add a DWOId field to DICompileUnit, 2015-05-21 20:37:30 +00:00
Dominators.cpp
Function.cpp ArgumentPromotion: Drop sret attribute on functions that are only called directly. 2015-06-10 21:14:34 +00:00
GCOV.cpp
Globals.cpp Rename NumOperands to make it clear its managed by the User. NFC. 2015-06-12 17:48:10 +00:00
GVMaterializer.cpp
InlineAsm.cpp
Instruction.cpp [PlaceSafepoints] Cleanup InsertSafepointPoll function 2015-05-26 21:03:23 +00:00
Instructions.cpp Rename NumOperands to make it clear its managed by the User. NFC. 2015-06-12 17:48:10 +00:00
IntrinsicInst.cpp
IRBuilder.cpp
IRPrintingPasses.cpp
LegacyPassManager.cpp Rangify more for loops in LegacyPassManager.cpp. 2015-06-05 17:48:47 +00:00
LLVMBuild.txt
LLVMContext.cpp [IR/AsmWriter] Output escape sequences if the first character isdigit() 2015-06-02 21:25:08 +00:00
LLVMContextImpl.cpp
LLVMContextImpl.h Move the name pointer out of Value into a map that lives on the 2015-06-01 22:24:01 +00:00
Makefile
Mangler.cpp Revert "Move dllimport name mangling to IR mangler." 2015-06-11 01:31:48 +00:00
MDBuilder.cpp Add isConstant argument to MDBuilder::createTBAAStructTagNode 2015-06-01 14:53:55 +00:00
Metadata.cpp Move the name pointer out of Value into a map that lives on the 2015-06-01 22:24:01 +00:00
MetadataImpl.h
MetadataTracking.cpp
Module.cpp
module.modulemap
Operator.cpp Put GEPOperator member function definition in the appropriate .cpp file 2015-05-21 21:17:12 +00:00
Pass.cpp
PassManager.cpp
PassRegistry.cpp
Statepoint.cpp
SymbolTableListTraitsImpl.h
Type.cpp Int128 is also a built-in preconstructed type. 2015-06-02 23:56:53 +00:00
TypeFinder.cpp
Use.cpp
User.cpp Move OperandList to be allocated prior to User for hung off subclasses. 2015-06-12 17:48:18 +00:00
Value.cpp Rename NumOperands to make it clear its managed by the User. NFC. 2015-06-12 17:48:10 +00:00
ValueSymbolTable.cpp
ValueTypes.cpp
Verifier.cpp Add initial support for the convergent attribute. 2015-05-26 23:48:40 +00:00