1 /// Check the behavior of toolchain for NEC Aurora VE
2 /// REQUIRES: ve-registered-target
3 
4 ///-----------------------------------------------------------------------------
5 /// Checking dwarf-version
6 
7 // RUN: %clang -### -g -target ve %s 2>&1 | FileCheck -check-prefix=DWARF_VER %s
8 // DWARF_VER: "-dwarf-version=4"
9 
10 ///-----------------------------------------------------------------------------
11 /// Checking dynamic-linker
12 
13 // RUN: %clang -### -target ve %s 2>&1 | FileCheck -check-prefix=DYNLINKER %s
14 // DYNLINKER: nld{{.*}} "-dynamic-linker" "/opt/nec/ve/lib/ld-linux-ve.so.1"
15 
16 ///-----------------------------------------------------------------------------
17 /// Checking VE specific option
18 
19 // RUN: %clang -### -target ve %s 2>&1 | FileCheck -check-prefix=VENLDOPT %s
20 // VENLDOPT: nld{{.*}} "-z" "max-page-size=0x4000000"
21 
22 ///-----------------------------------------------------------------------------
23 /// Checking include-path
24 
25 // RUN: %clang -### -target ve %s 2>&1 | FileCheck -check-prefix=DEFINC %s
26 // DEFINC: clang{{.*}} "-cc1"
27 // DEFINC: "-nostdsysteminc"
28 // DEFINC: "-internal-isystem" "{{.*}}/lib/clang/{{[0-9.]*}}/include"
29 // DEFINC: "-internal-isystem" "/opt/nec/ve/include"
30 
31 // RUN: %clang -### -target ve %s -nostdlibinc 2>&1 | \
32 // RUN:    FileCheck -check-prefix=NOSTDLIBINC %s
33 // NOSTDLIBINC: clang{{.*}} "-cc1"
34 // NOSTDLIBINC: "-internal-isystem" "{{.*}}/lib/clang/{{[0-9.]*}}/include"
35 // NOSTDLIBINC-NOT: "-internal-isystem" "/opt/nec/ve/include"
36 
37 // RUN: %clang -### -target ve %s -nobuiltininc 2>&1 | \
38 // RUN:    FileCheck -check-prefix=NOBUILTININC %s
39 // NOBUILTININC: clang{{.*}} "-cc1"
40 // NOBUILTININC: "-nobuiltininc"
41 // NOBUILTININC-NOT: "-internal-isystem" "{{.*}}/lib/clang/{{[0-9.]*}}/include"
42 // NOBUILTININC: "-internal-isystem" "/opt/nec/ve/include"
43 
44 // RUN: %clang -### -target ve %s -nostdinc 2>&1 | \
45 // RUN:    FileCheck -check-prefix=NOSTDINC %s
46 // NOSTDINC: clang{{.*}} "-cc1"
47 // NOSTDINC: "-nobuiltininc"
48 // NOSTDINC-NOT: "-internal-isystem" "{{.*}}/lib/clang/{{[0-9.]*}}/include"
49 // NOSTDINC-NOT: "-internal-isystem" "/opt/nec/ve/include"
50 
51 ///-----------------------------------------------------------------------------
52 /// Checking -fuse-init-array
53 
54 // RUN: %clang -### -target ve %s 2>&1 | FileCheck -check-prefix=DEFINITARRAY %s
55 // DEFINITARRAY: clang{{.*}} "-cc1"
56 // DEFINITARRAY-NOT: "-fuse-init-array"
57 
58 // RUN: %clang -### -target ve %s -fno-use-init-array 2>&1 | \
59 // RUN:     FileCheck -check-prefix=NOTINITARRAY %s
60 // NOTINITARRAY: clang{{.*}} "-cc1"
61 // NOTINITARRAY: "-fno-use-init-array"
62 
63 ///-----------------------------------------------------------------------------
64 /// Checking -faddrsig
65 
66 // RUN: %clang -### -target ve %s 2>&1 | FileCheck -check-prefix=DEFADDESIG %s
67 // DEFADDESIG: clang{{.*}} "-cc1"
68 // DEFADDESIG-NOT: "-faddrsig"
69 
70 // RUN: %clang -### -target ve %s -faddrsig 2>&1 | \
71 // RUN:     FileCheck -check-prefix=ADDRSIG %s
72 // ADDRSIG: clang{{.*}} "-cc1"
73 // ADDRSIG: "-faddrsig"
74 
75 // RUN: %clang -### -target ve %s -fno-addrsig 2>&1 | \
76 // RUN:     FileCheck -check-prefix=NOADDRSIG %s
77 // NOADDRSIG: clang{{.*}} "-cc1"
78 // NOADDRSIG-NOT: "-faddrsig"
79 
80 ///-----------------------------------------------------------------------------
81 /// Checking exceptions
82 
83 // RUN: %clang -### -target ve %s 2>&1 | FileCheck -check-prefix=DEFEXCEPTION %s
84 // DEFEXCEPTION: clang{{.*}} "-cc1"
85 // DEFEXCEPTION: "-fsjlj-exceptions"
86 
87 ///-----------------------------------------------------------------------------
88 /// Passing -fintegrated-as
89 
90 // RUN: %clang -### -target ve -x assembler %s 2>&1 | \
91 // RUN:    FileCheck -check-prefix=AS_LINK %s
92 // RUN: %clang -### -target ve -fno-integrated-as -x assembler %s 2>&1 | \
93 // RUN:    FileCheck -check-prefix=NAS_LINK %s
94 
95 // AS_LINK: clang{{.*}} "-cc1as"
96 // AS_LINK: nld{{.*}}
97 
98 // NAS_LINK: nas{{.*}}
99 // NAS_LINK: nld{{.*}}
100