summaryrefslogtreecommitdiffstats
path: root/clang/test/Driver/function-sections.c
diff options
context:
space:
mode:
authorEvgeniy Stepanov <eugeni.stepanov@gmail.com>2014-02-03 11:11:37 +0000
committerEvgeniy Stepanov <eugeni.stepanov@gmail.com>2014-02-03 11:11:37 +0000
commit9e7cb33b1761a486757616cace41fa7b977a448f (patch)
tree557080b3d029de12acf1127ec4e6dae9e7162534 /clang/test/Driver/function-sections.c
parentfe437f0a8f88bbed28a60cfc1b38b796ba2fef46 (diff)
downloadbcm5719-llvm-9e7cb33b1761a486757616cace41fa7b977a448f.tar.gz
bcm5719-llvm-9e7cb33b1761a486757616cace41fa7b977a448f.zip
Fix handling of -fno-function-sections, -fno-data-sections in clang driver.
llvm-svn: 200685
Diffstat (limited to 'clang/test/Driver/function-sections.c')
-rw-r--r--clang/test/Driver/function-sections.c62
1 files changed, 62 insertions, 0 deletions
diff --git a/clang/test/Driver/function-sections.c b/clang/test/Driver/function-sections.c
new file mode 100644
index 00000000000..fe6d303e3ec
--- /dev/null
+++ b/clang/test/Driver/function-sections.c
@@ -0,0 +1,62 @@
+// Test handling of -f(no-)function-sections and -f(no-)data-sections
+//
+// CHECK-FS: -ffunction-sections
+// CHECK-NOFS-NOT: -ffunction-sections
+// CHECK-DS: -fdata-sections
+// CHECK-NODS-NOT: -fdata-sections
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: | FileCheck --check-prefix=CHECK-NOFS --check-prefix=CHECK-NODS %s
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: -ffunction-sections \
+// RUN: | FileCheck --check-prefix=CHECK-FS %s
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: -fno-function-sections \
+// RUN: | FileCheck --check-prefix=CHECK-NOFS %s
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: -ffunction-sections -fno-function-sections \
+// RUN: | FileCheck --check-prefix=CHECK-NOFS %s
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: -fno-function-sections -ffunction-sections \
+// RUN: | FileCheck --check-prefix=CHECK-FS %s
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: -ffunction-sections -fno-function-sections -ffunction-sections \
+// RUN: | FileCheck --check-prefix=CHECK-FS %s
+
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: -fdata-sections \
+// RUN: | FileCheck --check-prefix=CHECK-DS %s
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: -fno-data-sections \
+// RUN: | FileCheck --check-prefix=CHECK-NODS %s
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: -fdata-sections -fno-data-sections \
+// RUN: | FileCheck --check-prefix=CHECK-NODS %s
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: -fno-data-sections -fdata-sections \
+// RUN: | FileCheck --check-prefix=CHECK-DS %s
+
+// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \
+// RUN: -target i386-unknown-linux \
+// RUN: -fdata-sections -fno-data-sections -fdata-sections \
+// RUN: | FileCheck --check-prefix=CHECK-DS %s
+
OpenPOWER on IntegriCloud