diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2009-03-13 18:37:06 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2009-03-13 18:37:06 +0000 |
commit | 9b922aa3b8c781ef9ecb3c82e8ea7d7874e65861 (patch) | |
tree | 4e9050ebecc917ee9ead0ed1960ca87c3b492fd6 /test/CodeGen/X86/tls14.ll | |
parent | b14cda3c0dea98bdd44c2f209afaf4fb36d42a8a (diff) | |
download | external_llvm-9b922aa3b8c781ef9ecb3c82e8ea7d7874e65861.zip external_llvm-9b922aa3b8c781ef9ecb3c82e8ea7d7874e65861.tar.gz external_llvm-9b922aa3b8c781ef9ecb3c82e8ea7d7874e65861.tar.bz2 |
Improve sext and zext of TLS variables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66922 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/tls14.ll')
-rw-r--r-- | test/CodeGen/X86/tls14.ll | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/CodeGen/X86/tls14.ll b/test/CodeGen/X86/tls14.ll new file mode 100644 index 0000000..d3401b6 --- /dev/null +++ b/test/CodeGen/X86/tls14.ll @@ -0,0 +1,21 @@ +; RUN: llvm-as < %s | llc -march=x86 -mtriple=i386-linux-gnu > %t +; RUN: grep {movsbl %gs:i@NTPOFF, %eax} %t +; RUN: grep {movzbl %gs:j@NTPOFF, %eax} %t + +@i = thread_local global i8 0 +@j = thread_local global i8 0 + +define void @f() nounwind optsize { +entry: + %0 = load i8* @i, align 2 + %1 = sext i8 %0 to i32 + tail call void @g(i32 %1) nounwind + %2 = load i8* @j, align 2 + %3 = zext i8 %2 to i32 + tail call void @h(i32 %3) nounwind + ret void +} + +declare void @g(i32) + +declare void @h(i32) |