summaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/volatile.ll
blob: 1a82014536e7a613dda5b9ef6b9ece7cd052d5d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
; RUN: llc < %s -march=x86 -mattr=sse2 | grep movsd | count 5
; RUN: llc < %s -march=x86 -mattr=sse2 -O0 | grep -v esp | grep movsd | count 5

@x = external global double

define void @foo() nounwind  {
  %a = load volatile double* @x
  store volatile double 0.0, double* @x
  store volatile double 0.0, double* @x
  %b = load volatile double* @x
  ret void
}

define void @bar() nounwind  {
  %c = load volatile double* @x
  ret void
}