diff options
author | dim <dim@FreeBSD.org> | 2011-02-20 13:06:31 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2011-02-20 13:06:31 +0000 |
commit | 39fcc9a984e2820e4ea0fa2ac4abd17d9f3a31df (patch) | |
tree | a9243275843fbeaa590afc07ee888e006b8d54ea /test/Driver | |
parent | 69b4eca4a4255ba43baa5c1d9bbdec3ec17f479e (diff) | |
download | FreeBSD-src-39fcc9a984e2820e4ea0fa2ac4abd17d9f3a31df.zip FreeBSD-src-39fcc9a984e2820e4ea0fa2ac4abd17d9f3a31df.tar.gz |
Vendor import of clang trunk r126079:
http://llvm.org/svn/llvm-project/cfe/trunk@126079
Diffstat (limited to 'test/Driver')
-rw-r--r-- | test/Driver/apple-kext-mkernel.c | 6 | ||||
-rw-r--r-- | test/Driver/clang_f_opts.c | 6 | ||||
-rw-r--r-- | test/Driver/darwin-ld.c | 22 | ||||
-rw-r--r-- | test/Driver/darwin-xarch.c | 12 | ||||
-rw-r--r-- | test/Driver/dragonfly.c | 1 | ||||
-rw-r--r-- | test/Driver/emit-llvm.c | 3 | ||||
-rw-r--r-- | test/Driver/freebsd.c | 6 | ||||
-rw-r--r-- | test/Driver/m_and_mm.c | 3 | ||||
-rw-r--r-- | test/Driver/openbsd.c | 1 | ||||
-rw-r--r-- | test/Driver/sysroot-flags.c | 28 |
10 files changed, 61 insertions, 27 deletions
diff --git a/test/Driver/apple-kext-mkernel.c b/test/Driver/apple-kext-mkernel.c new file mode 100644 index 0000000..712dfc8 --- /dev/null +++ b/test/Driver/apple-kext-mkernel.c @@ -0,0 +1,6 @@ +// RUN: %clang -ccc-host-triple x86_64-apple-darwin10 -mkernel -### -fsyntax-only %s 2> %t +// RUN grep "-disable-red-zone" %t +// RUN grep "-fapple-kext" %t +// RUN grep "-fno-builtin" %t +// RUN grep "-fno-rtti" %t +// RUN grep "-fno-common" %t diff --git a/test/Driver/clang_f_opts.c b/test/Driver/clang_f_opts.c index 50bce3b..8e6b0fe 100644 --- a/test/Driver/clang_f_opts.c +++ b/test/Driver/clang_f_opts.c @@ -1,6 +1,5 @@ // RUN: %clang -### -S -fasm -fblocks -fbuiltin -fno-math-errno -fcommon -fpascal-strings -fno-blocks -fno-builtin -fmath-errno -fno-common -fno-pascal-strings -fblocks -fbuiltin -fmath-errno -fcommon -fpascal-strings %s 2>&1 | FileCheck -check-prefix=CHECK-OPTIONS1 %s -// RUN: %clang -### -S -fasm -fblocks -fbuiltin -fno-math-errno -fcommon -fpascal-strings -fno-asm -fno-blocks -fno-builtin -fmath-errno -fno-common -fno-pascal-strings -fno-show-source-location -fshort-wchar %s 2>&1 | FileCheck -check-prefix=CHECK-OPTIONS2 %s -// RUN: %clang -### -fshort-enums %s 2>&1 | FileCheck -check-prefix=CHECK-SHORT-ENUMS %s +// RUN: %clang -### -S -fasm -fblocks -fbuiltin -fno-math-errno -fcommon -fpascal-strings -fno-asm -fno-blocks -fno-builtin -fmath-errno -fno-common -fno-pascal-strings -fno-show-source-location -fshort-enums -fshort-wchar %s 2>&1 | FileCheck -check-prefix=CHECK-OPTIONS2 %s // CHECK-OPTIONS1: -fgnu-keywords // CHECK-OPTIONS1: -fblocks @@ -9,8 +8,7 @@ // CHECK_OPTIONS2: -fno-gnu-keywords // CHECK-OPTIONS2: -fmath-errno // CHECK-OPTIONS2: -fno-builtin +// CHECK-OPTIONS2: -fshort-enums // CHECK-OPTIONS2: -fshort-wchar // CHECK-OPTIONS2: -fno-common // CHECK-OPTIONS2: -fno-show-source-location - -// CHECK-SHORT-ENUMS: compiler does not support '-fshort-enums' diff --git a/test/Driver/darwin-ld.c b/test/Driver/darwin-ld.c index 074957d..206e665 100644 --- a/test/Driver/darwin-ld.c +++ b/test/Driver/darwin-ld.c @@ -28,15 +28,15 @@ // RUN: %clang -ccc-host-triple i386-apple-darwin9 -### -arch armv6 -miphoneos-version-min=3.0 -bundle %t.o 2>> %t.log // RUN: FileCheck -check-prefix=LINK_IPHONE_3_0 %s < %t.log -// LINK_IPHONE_3_0: ld" +// LINK_IPHONE_3_0: {{ld(.exe)?"}} // LINK_IPHONE_3_0-NOT: -lcrt1.3.1.o // LINK_IPHONE_3_0: -lcrt1.o // LINK_IPHONE_3_0: -lSystem -// LINK_IPHONE_3_0: ld" +// LINK_IPHONE_3_0: {{ld(.exe)?"}} // LINK_IPHONE_3_0: -dylib // LINK_IPHONE_3_0: -ldylib1.o // LINK_IPHONE_3_0: -lSystem -// LINK_IPHONE_3_0: ld" +// LINK_IPHONE_3_0: {{ld(.exe)?"}} // LINK_IPHONE_3_0: -lbundle1.o // LINK_IPHONE_3_0: -lSystem @@ -45,42 +45,42 @@ // RUN: %clang -ccc-host-triple i386-apple-darwin9 -### -arch armv7 -miphoneos-version-min=3.1 -bundle %t.o 2>> %t.log // RUN: FileCheck -check-prefix=LINK_IPHONE_3_1 %s < %t.log -// LINK_IPHONE_3_1: ld" +// LINK_IPHONE_3_1: {{ld(.exe)?"}} // LINK_IPHONE_3_1-NOT: -lcrt1.o // LINK_IPHONE_3_1: -lcrt1.3.1.o // LINK_IPHONE_3_1: -lSystem -// LINK_IPHONE_3_1: ld" +// LINK_IPHONE_3_1: {{ld(.exe)?"}} // LINK_IPHONE_3_1: -dylib // LINK_IPHONE_3_1-NOT: -ldylib1.o // LINK_IPHONE_3_1: -lSystem -// LINK_IPHONE_3_1: ld" +// LINK_IPHONE_3_1: {{ld(.exe)?"}} // LINK_IPHONE_3_1-NOT: -lbundle1.o // LINK_IPHONE_3_1: -lSystem // RUN: %clang -ccc-host-triple i386-apple-darwin9 -### -fpie %t.o 2> %t.log // RUN: FileCheck -check-prefix=LINK_EXPLICIT_PIE %s < %t.log // -// LINK_EXPLICIT_PIE: ld" +// LINK_EXPLICIT_PIE: {{ld(.exe)?"}} // LINK_EXPLICIT_PIE: "-pie" // RUN: %clang -ccc-host-triple i386-apple-darwin9 -### -fno-pie %t.o 2> %t.log // RUN: FileCheck -check-prefix=LINK_EXPLICIT_NO_PIE %s < %t.log // -// LINK_EXPLICIT_NO_PIE: ld" +// LINK_EXPLICIT_NO_PIE: {{ld(.exe)?"}} // LINK_EXPLICIT_NO_PIE: "-no_pie" // RUN: %clang -ccc-host-triple x86_64-apple-darwin10 -### %t.o \ // RUN: -mlinker-version=100 2> %t.log // RUN: FileCheck -check-prefix=LINK_NEWER_DEMANGLE %s < %t.log // -// LINK_NEWER_DEMANGLE: ld" +// LINK_NEWER_DEMANGLE: {{ld(.exe)?"}} // LINK_NEWER_DEMANGLE: "-demangle" // RUN: %clang -ccc-host-triple x86_64-apple-darwin10 -### %t.o \ // RUN: -mlinker-version=100 -Wl,--no-demangle 2> %t.log // RUN: FileCheck -check-prefix=LINK_NEWER_NODEMANGLE %s < %t.log // -// LINK_NEWER_NODEMANGLE: ld" +// LINK_NEWER_NODEMANGLE: {{ld(.exe)?"}} // LINK_NEWER_NODEMANGLE-NOT: "-demangle" // LINK_NEWER_NODEMANGLE: "-lSystem" @@ -88,6 +88,6 @@ // RUN: -mlinker-version=95 2> %t.log // RUN: FileCheck -check-prefix=LINK_OLDER_NODEMANGLE %s < %t.log // -// LINK_OLDER_NODEMANGLE: ld" +// LINK_OLDER_NODEMANGLE: {{ld(.exe)?"}} // LINK_OLDER_NODEMANGLE-NOT: "-demangle" // LINK_OLDER_NODEMANGLE: "-lSystem" diff --git a/test/Driver/darwin-xarch.c b/test/Driver/darwin-xarch.c index cd7fa84..84201ce 100644 --- a/test/Driver/darwin-xarch.c +++ b/test/Driver/darwin-xarch.c @@ -2,7 +2,13 @@ // RUN: -arch i386 -Xarch_i386 -mmacosx-version-min=10.4 \ // RUN: -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 \ // RUN: -c %s 2> %t -// RUN: FileCheck < %t %s +// RUN: FileCheck --check-prefix=CHECK-COMPILE < %t %s // -// CHECK: clang{{.*}}" "-cc1" "-triple" "i386-apple-darwin8.0.0" -// CHECK: clang{{.*}}" "-cc1" "-triple" "x86_64-apple-darwin9.0.0" +// CHECK-COMPILE: clang{{.*}}" "-cc1" "-triple" "i386-apple-darwin8.0.0" +// CHECK-COMPILE: clang{{.*}}" "-cc1" "-triple" "x86_64-apple-darwin9.0.0" + +// RUN: %clang -ccc-host-triple x86_64-apple-darwin10 -### \ +// RUN: -arch i386 -Xarch_i386 -Wl,-some-linker-arg -filelist X 2> %t +// RUN: FileCheck --check-prefix=CHECK-LINK < %t %s +// +// CHECK-LINK: ld"{{.*}} "-some-linker-arg" diff --git a/test/Driver/dragonfly.c b/test/Driver/dragonfly.c index d7b954d..d768fe6 100644 --- a/test/Driver/dragonfly.c +++ b/test/Driver/dragonfly.c @@ -2,7 +2,6 @@ // RUN: FileCheck -input-file %t.log %s // CHECK: clang{{.*}}" "-cc1" "-triple" "amd64-pc-dragonfly" -// CHECK: as{{.*}}" "-o" "{{.*}}.o" "{{.*}}.s // CHECK: ld{{.*}}" "-dynamic-linker" "{{.*}}ld-elf.{{.*}}" "-o" "a.out" "{{.*}}crt1.o" "{{.*}}crti.o" "{{.*}}crtbegin.o" "{{.*}}.o" "-L{{.*}}/gcc{{.*}}" {{.*}} "-lc" "-lgcc" "{{.*}}crtend.o" "{{.*}}crtn.o" diff --git a/test/Driver/emit-llvm.c b/test/Driver/emit-llvm.c index 3439b58..76ea059 100644 --- a/test/Driver/emit-llvm.c +++ b/test/Driver/emit-llvm.c @@ -1,6 +1,3 @@ -// RUN: not %clang -ccc-host-triple i386-pc-linux-gnu -emit-llvm -o %t %s 2> %t.log -// RUN: grep 'unable to pass LLVM bit-code files to linker' %t.log - // Check that -O4 is only honored as the effective -O option. // <rdar://problem/7046672> clang/loader problem diff --git a/test/Driver/freebsd.c b/test/Driver/freebsd.c index e8bc223..87ac6d7 100644 --- a/test/Driver/freebsd.c +++ b/test/Driver/freebsd.c @@ -2,8 +2,7 @@ // RUN: FileCheck --check-prefix=CHECK-PPC < %t %s // // CHECK-PPC: clang{{.*}}" "-cc1" "-triple" "powerpc64-pc-freebsd8" -// CHECK-PPC: as{{.*}}" "-o" "{{.*}}.o" "{{.*}}.s -// CHECK-PPC: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "{{.*}}ld-elf{{.*}}" "-o" "a.out" "{{.*}}crt1.o" "{{.*}}crti.o" "{{.*}}crtbegin.o" "{{.*}}.o" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "{{.*}}crtend.o" "{{.*}}crtn.o" +// CHECK-PPC: ld{{.*}}" "--eh-frame-hdr" "-dynamic-linker" "{{.*}}ld-elf{{.*}}" "-o" "a.out" "{{.*}}crt1.o" "{{.*}}crti.o" "{{.*}}crtbegin.o" "-L/usr/lib" "{{.*}}.o" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "{{.*}}crtend.o" "{{.*}}crtn.o" // Check that -m32 properly adjusts the toolchain flags. @@ -12,10 +11,9 @@ // RUN: FileCheck --check-prefix=CHECK-LIB32 < %t %s // // CHECK-LIB32: clang{{.*}}" "-cc1" "-triple" "i386-pc-freebsd8" -// CHECK-LIB32: as{{.*}}" "--32" // CHECK-LIB32: ld{{.*}}" {{.*}} "-m" "elf_i386_fbsd" // // RUN: %clang -ccc-host-triple x86_64-pc-freebsd8 -m32 -print-search-dirs %s > %t // RUN: FileCheck --check-prefix=CHECK-LIB32PATHS < %t %s // -// CHECK-LIB32PATHS: libraries: ={{.*}}:/usr/lib32 +// CHECK-LIB32PATHS: libraries: ={{.*:?}}/usr/lib32 diff --git a/test/Driver/m_and_mm.c b/test/Driver/m_and_mm.c new file mode 100644 index 0000000..eab2a04 --- /dev/null +++ b/test/Driver/m_and_mm.c @@ -0,0 +1,3 @@ +// RUN: %clang -### \ +// RUN: -M -MM %s 2> %t +// RUN: grep '"-sys-header-deps"' %t | count 0 diff --git a/test/Driver/openbsd.c b/test/Driver/openbsd.c index 6024461..34f6988 100644 --- a/test/Driver/openbsd.c +++ b/test/Driver/openbsd.c @@ -2,5 +2,4 @@ // RUN: FileCheck -input-file %t.log %s // CHECK: clang{{.*}}" "-cc1" "-triple" "i686-pc-openbsd" -// CHECK: as{{.*}}" "-o" "{{.*}}.o" "{{.*}}.s // CHECK: ld{{.*}}" "-e" "__start" "--eh-frame-hdr" "-Bdynamic" "-dynamic-linker" "{{.*}}ld.so" "-o" "a.out" "{{.*}}crt0.o" "{{.*}}crtbegin.o" "{{.*}}.o" "-lgcc" "-lc" "-lgcc" "{{.*}}crtend.o" diff --git a/test/Driver/sysroot-flags.c b/test/Driver/sysroot-flags.c new file mode 100644 index 0000000..461c451 --- /dev/null +++ b/test/Driver/sysroot-flags.c @@ -0,0 +1,28 @@ +// Check for proper handling of --sysroot and -isysroot flags. + +// RUN: %clang -### -fsyntax-only -isysroot /foo/bar %s 2>&1 | \ +// RUN: FileCheck %s -check-prefix=ISYSROOT +// ISYSROOT: "-isysroot" "/foo/bar" + +// Check that we get both isysroot for headers, and pass --sysroot on to GCC to +// produce the final binary. +// RUN: %clang -### -ccc-host-triple x86_64-unknown-linux-gnu \ +// RUN: --sysroot=/foo/bar -o /dev/null %s 2>&1 | \ +// RUN: FileCheck %s -check-prefix=SYSROOT_EQ +// SYSROOT_EQ: "-isysroot" "/foo/bar" +// SYSROOT_EQ: "--sysroot{{" "|=}}/foo/bar" + +// Check for overriding the header sysroot by providing both --sysroot and +// -isysroot. +// RUN: %clang -### -ccc-host-triple x86_64-unknown-linux-gnu -isysroot /baz \ +// RUN: --sysroot=/foo/bar -o /dev/null %s 2>&1 | FileCheck %s \ +// RUN: -check-prefix=ISYSROOT_AND_SYSROOT +// ISYSROOT_AND_SYSROOT: "-isysroot" "/baz" +// ISYSROOT_AND_SYSROOT: "--sysroot{{" "|=}}/foo/bar" + +// Check that omitting the equals works as well. +// RUN: %clang -### -ccc-host-triple x86_64-unknown-linux-gnu \ +// RUN: --sysroot /foo/bar -o /dev/null %s 2>&1 | \ +// RUN: FileCheck %s -check-prefix=SYSROOT_SEPARATE +// SYSROOT_SEPARATE: "-isysroot" "/foo/bar" +// SYSROOT_SEPARATE: "--sysroot{{" "|=}}/foo/bar" |