1f79470583759d20c20268711e6111461aefa8461Jim Grosbach// REQUIRES: arm-registered-target
28a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher// RUN: %clang_cc1 -triple armv7-apple-darwin9 -emit-llvm -w -o - %s | FileCheck %s
38a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher
48a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christophervoid clear0(void *ptr) {
58a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  // CHECK: clear0
68a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  // CHECK-NOT: load i8**
78a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  __clear_cache();
88a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher}
98a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher
108a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christophervoid clear1(void *ptr) {
118a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  // CHECK: clear1
128a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  // CHECK: load i8**
138a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  // CHECK-NOT: load i8**
148a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  __clear_cache(ptr);
158a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher}
168a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher
178a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christophervoid clear2(void *ptr, void *ptr2) {
188a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  // CHECK: clear2
198a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  // CHECK: load i8**
208a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  // CHECK: load i8**
218a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher  __clear_cache(ptr, ptr2);
228a37c79f03e62aecfa2c58b9179f90dd1fcdb253Eric Christopher}
23