[llvm-commits] [llvm] r65341 - in /llvm/trunk: lib/Target/X86/X86FastISel.cpp test/CodeGen/X86/fast-isel-tls.ll
Tanya M. Lattner
tonic at nondot.org
Tue Feb 24 10:07:13 PST 2009
Please see my mail about patches for the release:
http://lists.cs.uiuc.edu/pipermail/llvmdev/2009-February/020043.html
This must fix a regression (correctness) in llvm-test or dejagnu to be
merged in.
-Tanya
On Tue, 24 Feb 2009, Rafael Espindola wrote:
> Maybe this should be in the release.
>
> 2009/2/23 Dan Gohman <gohman at apple.com>:
>> Author: djg
>> Date: Mon Feb 23 16:03:08 2009
>> New Revision: 65341
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=65341&view=rev
>> Log:
>> Fast-isel can't do TLS yet, so it should fall back to SDISel
>> if it sees TLS addresses.
>>
>> Added:
>> llvm/trunk/test/CodeGen/X86/fast-isel-tls.ll
>> Modified:
>> llvm/trunk/lib/Target/X86/X86FastISel.cpp
>>
>> Modified: llvm/trunk/lib/Target/X86/X86FastISel.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86FastISel.cpp?rev=65341&r1=65340&r2=65341&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/lib/Target/X86/X86FastISel.cpp (original)
>> +++ llvm/trunk/lib/Target/X86/X86FastISel.cpp Mon Feb 23 16:03:08 2009
>> @@ -21,6 +21,7 @@
>> #include "X86TargetMachine.h"
>> #include "llvm/CallingConv.h"
>> #include "llvm/DerivedTypes.h"
>> +#include "llvm/GlobalVariable.h"
>> #include "llvm/Instructions.h"
>> #include "llvm/Intrinsics.h"
>> #include "llvm/CodeGen/FastISel.h"
>> @@ -433,6 +434,11 @@
>> (AM.Base.Reg != 0 || AM.IndexReg != 0))
>> return false;
>>
>> + // Can't handle TLS yet.
>> + if (GlobalVariable *GVar = dyn_cast<GlobalVariable>(GV))
>> + if (GVar->isThreadLocal())
>> + return false;
>> +
>> // Set up the basic address.
>> AM.GV = GV;
>> if (!isCall &&
>>
>> Added: llvm/trunk/test/CodeGen/X86/fast-isel-tls.ll
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/fast-isel-tls.ll?rev=65341&view=auto
>>
>> ==============================================================================
>> --- llvm/trunk/test/CodeGen/X86/fast-isel-tls.ll (added)
>> +++ llvm/trunk/test/CodeGen/X86/fast-isel-tls.ll Mon Feb 23 16:03:08 2009
>> @@ -0,0 +1,10 @@
>> +; RUN: llvm-as < %s | llc -march=x86 -relocation-model=pic -mtriple=i686-unknown-linux-gnu -fast-isel | grep __tls_get_addr
>> +; PR3654
>> +
>> + at v = thread_local global i32 0
>> +define i32 @f() nounwind {
>> +entry:
>> + %t = load i32* @v
>> + %s = add i32 %t, 1
>> + ret i32 %s
>> +}
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
>
>
>
More information about the llvm-commits
mailing list