mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
fix fastisel to handle GS and FS relative pointers. Patch by
Nelson Elhage! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106031 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
827b2106fe
commit
868ee9460c
@ -349,6 +349,11 @@ bool X86FastISel::X86SelectAddress(const Value *V, X86AddressMode &AM) {
|
||||
U = C;
|
||||
}
|
||||
|
||||
if (const PointerType *Ty = dyn_cast<PointerType>(V->getType()))
|
||||
if (Ty->getAddressSpace() > 255)
|
||||
// Fast instruction selection doesn't support pointers through %fs or %gs
|
||||
return false;
|
||||
|
||||
switch (Opcode) {
|
||||
default: break;
|
||||
case Instruction::BitCast:
|
||||
|
6
test/CodeGen/X86/2010-06-14-fast-isel-fs-load.ll
Normal file
6
test/CodeGen/X86/2010-06-14-fast-isel-fs-load.ll
Normal file
@ -0,0 +1,6 @@
|
||||
; RUN: llc -fast-isel -march=x86 < %s | grep %fs:
|
||||
|
||||
define i32 @test1(i32 addrspace(257)* %arg) nounwind {
|
||||
%tmp = load i32 addrspace(257)* %arg
|
||||
ret i32 %tmp
|
||||
}
|
Loading…
Reference in New Issue
Block a user