summaryrefslogtreecommitdiffstats
path: root/test/CodeGen/volatile-1.c
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2013-06-12 01:40:06 +0000
committerEli Friedman <eli.friedman@gmail.com>2013-06-12 01:40:06 +0000
commit0934e18b620ecaa6c7ec18ba5c4286b6122d6fb8 (patch)
treea1f15ff9df212287a84f31b2b9afe480c69af744 /test/CodeGen/volatile-1.c
parent7a1b586a383622e3287a5f3d82736ec513032744 (diff)
Add support for complex compound assignments where the LHS is a scalar.
Fixes <rdar://problem/11224126> and PR12790. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183821 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/volatile-1.c')
-rw-r--r--test/CodeGen/volatile-1.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/CodeGen/volatile-1.c b/test/CodeGen/volatile-1.c
index 65511593d3..42e576540f 100644
--- a/test/CodeGen/volatile-1.c
+++ b/test/CodeGen/volatile-1.c
@@ -313,3 +313,15 @@ void test1() {
(void) x;
return x;
}
+
+// CHECK: define i32 @test2()
+int test2() {
+ // CHECK: load volatile i32*
+ // CHECK-NEXT: load volatile i32*
+ // CHECK-NEXT: load volatile i32*
+ // CHECK-NEXT: add i32
+ // CHECK-NEXT: add i32
+ // CHECK-NEXT: store volatile i32
+ // CHECK-NEXT: ret i32
+ return i += ci;
+}