1ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// RUN: %clang_cc1 -triple x86_64-darwin-apple -emit-llvm %s -o - | FileCheck %s
2ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
3ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// PR6695
4ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
5ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// CHECK: define void @test0(i32* %{{.*}}, i32 %{{.*}})
6ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid test0(int *x, int y) {
7ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
8ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
9ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// CHECK: define void @test1(i32* noalias %{{.*}}, i32 %{{.*}})
10ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid test1(int * restrict x, int y) {
11ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
12ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
13ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// CHECK: define void @test2(i32* %{{.*}}, i32* noalias %{{.*}})
14ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid test2(int *x, int * restrict y) {
15ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
16ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
17ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaotypedef int * restrict rp;
18ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
19ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// CHECK: define void @test3(i32* noalias %{{.*}}, i32 %{{.*}})
20ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid test3(rp x, int y) {
21ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
22ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
23ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// CHECK: define void @test4(i32* %{{.*}}, i32* noalias %{{.*}})
24ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid test4(int *x, rp y) {
25ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
26ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
27