2010-06-21 18:21:27 +00:00
|
|
|
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu | FileCheck %s
|
|
|
|
@tm_nest_level = internal thread_local global i32 0
|
|
|
|
define i64 @z() nounwind {
|
2013-10-14 22:02:53 +00:00
|
|
|
; FIXME: The codegen here is primitive at best and could be much better.
|
2013-10-14 21:52:26 +00:00
|
|
|
; The add and the moves can be folded together.
|
2013-10-17 12:41:05 +00:00
|
|
|
; CHECK-DAG: movq $tm_nest_level@TPOFF, %rcx
|
|
|
|
; CHECK-DAG: movq %fs:0, %rax
|
2013-10-14 21:52:26 +00:00
|
|
|
; CHECK: addl %ecx, %eax
|
2010-06-21 18:21:27 +00:00
|
|
|
ret i64 and (i64 ptrtoint (i32* @tm_nest_level to i64), i64 100)
|
|
|
|
}
|