aboutsummaryrefslogtreecommitdiff
path: root/test/Driver/clang_f_opts.c
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2015-01-18 16:23:48 +0000
committerDimitry Andric <dim@FreeBSD.org>2015-01-18 16:23:48 +0000
commit06d4ba388873e6d1cfa9cd715a8935ecc8cd2097 (patch)
tree3eb853da77d46cc77c4b017525a422f9ddb1385b /test/Driver/clang_f_opts.c
parent30d791273d07fac9c0c1641a0731191bca6e8606 (diff)
downloadsrc-06d4ba388873e6d1cfa9cd715a8935ecc8cd2097.tar.gz
src-06d4ba388873e6d1cfa9cd715a8935ecc8cd2097.zip
Vendor import of clang RELEASE_360/rc1 tag r226102 (effectively, 3.6.0 RC1):vendor/clang/clang-release_360-r226102
Notes
Notes: svn path=/vendor/clang/dist/; revision=277325 svn path=/vendor/clang/clang-release_360-r226102/; revision=277326; tag=vendor/clang/clang-release_360-r226102
Diffstat (limited to 'test/Driver/clang_f_opts.c')
-rw-r--r--test/Driver/clang_f_opts.c150
1 files changed, 150 insertions, 0 deletions
diff --git a/test/Driver/clang_f_opts.c b/test/Driver/clang_f_opts.c
index 796da768769e..3ca9f2847523 100644
--- a/test/Driver/clang_f_opts.c
+++ b/test/Driver/clang_f_opts.c
@@ -59,6 +59,13 @@
// RUN: %clang -### -S -fauto-profile=%S/Inputs/file.prof %s 2>&1 | FileCheck -check-prefix=CHECK-AUTO-PROFILE %s
// CHECK-AUTO-PROFILE: "-fprofile-sample-use={{.*}}/file.prof"
+// RUN: %clang -### -S -fprofile-arcs %s 2>&1 | FileCheck -check-prefix=CHECK-PROFILE-ARCS %s
+// RUN: %clang -### -S -fno-profile-arcs -fprofile-arcs %s 2>&1 | FileCheck -check-prefix=CHECK-PROFILE-ARCS %s
+// RUN: %clang -### -S -fno-profile-arcs %s 2>&1 | FileCheck -check-prefix=CHECK-NO-PROFILE-ARCS %s
+// RUN: %clang -### -S -fprofile-arcs -fno-profile-arcs %s 2>&1 | FileCheck -check-prefix=CHECK-NO-PROFILE-ARCS %s
+// CHECK-PROFILE-ARCS: "-femit-coverage-data"
+// CHECK-NO-PROFILE-ARCS-NOT: "-femit-coverage-data"
+
// RUN: %clang -### -S -fvectorize %s 2>&1 | FileCheck -check-prefix=CHECK-VECTORIZE %s
// RUN: %clang -### -S -fno-vectorize -fvectorize %s 2>&1 | FileCheck -check-prefix=CHECK-VECTORIZE %s
// RUN: %clang -### -S -fno-vectorize %s 2>&1 | FileCheck -check-prefix=CHECK-NO-VECTORIZE %s
@@ -132,6 +139,9 @@
// RUN: %clang -### -S -finput-charset=iso-8859-1 -o /dev/null %s 2>&1 | FileCheck -check-prefix=CHECK-INVALID-CHARSET %s
// CHECK-INVALID-CHARSET: error: invalid value 'iso-8859-1' in '-finput-charset=iso-8859-1'
+// RUN: %clang -### -S -fexec-charset=iso-8859-1 -o /dev/null %s 2>&1 | FileCheck -check-prefix=CHECK-INVALID-INPUT-CHARSET %s
+// CHECK-INVALID-INPUT-CHARSET: error: invalid value 'iso-8859-1' in '-fexec-charset=iso-8859-1'
+
// Test that we don't error on these.
// RUN: %clang -### -S -Werror \
// RUN: -falign-functions -falign-functions=2 -fno-align-functions \
@@ -144,6 +154,7 @@
// RUN: -fident -fno-ident \
// RUN: -fimplicit-templates -fno-implicit-templates \
// RUN: -finput-charset=UTF-8 \
+// RUN: -fexec-charset=UTF-8 \
// RUN: -fivopts -fno-ivopts \
// RUN: -fnon-call-exceptions -fno-non-call-exceptions \
// RUN: -fpermissive -fno-permissive \
@@ -166,6 +177,56 @@
// RUN: -fstrength-reduce -fno-strength-reduce \
// RUN: -finline-limit=1000 \
// RUN: -finline-limit \
+// RUN: -flto=1 \
+// RUN: -falign-labels \
+// RUN: -falign-labels=100 \
+// RUN: -falign-loops \
+// RUN: -falign-loops=100 \
+// RUN: -falign-jumps \
+// RUN: -falign-jumps=100 \
+// RUN: -fexcess-precision=100 \
+// RUN: -fbranch-count-reg \
+// RUN: -fcaller-saves \
+// RUN: -fno-default-inline -fdefault-inline \
+// RUN: -fgcse-after-reload \
+// RUN: -fgcse-las \
+// RUN: -fgcse-sm \
+// RUN: -fipa-cp \
+// RUN: -finline-functions-called-once \
+// RUN: -fmodulo-sched \
+// RUN: -fmodulo-sched-allow-regmoves \
+// RUN: -fpeel-loops \
+// RUN: -frename-registers \
+// RUN: -fschedule-insns2 \
+// RUN: -fsingle-precision-constant \
+// RUN: -ftree_loop_im \
+// RUN: -ftree_loop_ivcanon \
+// RUN: -ftree_loop_linear \
+// RUN: -funsafe-loop-optimizations \
+// RUN: -fuse-linker-plugin \
+// RUN: -fvect-cost-model \
+// RUN: -fvariable-expansion-in-unroller \
+// RUN: -fweb \
+// RUN: -fwhole-program \
+// RUN: -fno-tree-dce -ftree-dce \
+// RUN: -fno-tree-ter -ftree-ter \
+// RUN: -fno-tree-vrp -ftree-vrp \
+// RUN: -fno-delete-null-pointer-checks -fdelete-null-pointer-checks \
+// RUN: -fno-inline-small-functions -finline-small-functions \
+// RUN: -fno-fat-lto-objects -ffat-lto-objects \
+// RUN: -fno-merge-constants -fmerge-constants \
+// RUN: -fno-caller-saves -fcaller-saves \
+// RUN: -fno-reorder-blocks -freorder-blocks \
+// RUN: -fno-schedule-insns2 -fschedule-insns2 \
+// RUN: -fno-stack-check \
+// RUN: -fno-check-new -fcheck-new \
+// RUN: -ffriend-injection \
+// RUN: -fno-implement-inlines -fimplement-inlines \
+// RUN: -fstack-check \
+// RUN: -fforce-addr \
+// RUN: -malign-functions=100 \
+// RUN: -malign-loops=100 \
+// RUN: -malign-jumps=100 \
// RUN: %s 2>&1 | FileCheck --check-prefix=IGNORE %s
// IGNORE-NOT: error: unknown argument
@@ -177,6 +238,7 @@
// RUN: -fno-expensive-optimizations \
// RUN: -fno-defer-pop \
// RUN: -finline-functions \
+// RUN: -fkeep-inline-functions \
// RUN: -fno-keep-inline-functions \
// RUN: -freorder-blocks \
// RUN: -fprofile-dir=/rand/dir \
@@ -197,6 +259,48 @@
// RUN: -ftracer \
// RUN: -funroll-all-loops \
// RUN: -funswitch-loops \
+// RUN: -flto=1 \
+// RUN: -falign-labels \
+// RUN: -falign-labels=100 \
+// RUN: -falign-loops \
+// RUN: -falign-loops=100 \
+// RUN: -falign-jumps \
+// RUN: -falign-jumps=100 \
+// RUN: -fexcess-precision=100 \
+// RUN: -fbranch-count-reg \
+// RUN: -fcaller-saves \
+// RUN: -fno-default-inline \
+// RUN: -fgcse-after-reload \
+// RUN: -fgcse-las \
+// RUN: -fgcse-sm \
+// RUN: -fipa-cp \
+// RUN: -finline-functions-called-once \
+// RUN: -fmodulo-sched \
+// RUN: -fmodulo-sched-allow-regmoves \
+// RUN: -fpeel-loops \
+// RUN: -frename-registers \
+// RUN: -fschedule-insns2 \
+// RUN: -fsingle-precision-constant \
+// RUN: -ftree_loop_im \
+// RUN: -ftree_loop_ivcanon \
+// RUN: -ftree_loop_linear \
+// RUN: -funsafe-loop-optimizations \
+// RUN: -fuse-linker-plugin \
+// RUN: -fvect-cost-model \
+// RUN: -fvariable-expansion-in-unroller \
+// RUN: -fweb \
+// RUN: -fwhole-program \
+// RUN: -fcaller-saves \
+// RUN: -freorder-blocks \
+// RUN: -fdelete-null-pointer-checks \
+// RUN: -ffat-lto-objects \
+// RUN: -fmerge-constants \
+// RUN: -finline-small-functions \
+// RUN: -ftree-dce \
+// RUN: -ftree-ter \
+// RUN: -ftree-vrp \
+// RUN: -fno-devirtualize \
+// RUN: -fno-devirtualize-speculatively \
// RUN: %s 2>&1 | FileCheck --check-prefix=CHECK-WARNING %s
// CHECK-WARNING-DAG: optimization flag '-finline-limit=1000' is not supported
// CHECK-WARNING-DAG: optimization flag '-finline-limit' is not supported
@@ -204,6 +308,7 @@
// CHECK-WARNING-DAG: optimization flag '-fno-expensive-optimizations' is not supported
// CHECK-WARNING-DAG: optimization flag '-fno-defer-pop' is not supported
// CHECK-WARNING-DAG: optimization flag '-finline-functions' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fkeep-inline-functions' is not supported
// CHECK-WARNING-DAG: optimization flag '-fno-keep-inline-functions' is not supported
// CHECK-WARNING-DAG: optimization flag '-freorder-blocks' is not supported
// CHECK-WARNING-DAG: optimization flag '-fprofile-dir=/rand/dir' is not supported
@@ -224,12 +329,57 @@
// CHECK-WARNING-DAG: optimization flag '-ftracer' is not supported
// CHECK-WARNING-DAG: optimization flag '-funroll-all-loops' is not supported
// CHECK-WARNING-DAG: optimization flag '-funswitch-loops' is not supported
+// CHECK-WARNING-DAG: optimization flag '-flto=1' is not supported
+// CHECK-WARNING-DAG: optimization flag '-falign-labels' is not supported
+// CHECK-WARNING-DAG: optimization flag '-falign-labels=100' is not supported
+// CHECK-WARNING-DAG: optimization flag '-falign-loops' is not supported
+// CHECK-WARNING-DAG: optimization flag '-falign-loops=100' is not supported
+// CHECK-WARNING-DAG: optimization flag '-falign-jumps' is not supported
+// CHECK-WARNING-DAG: optimization flag '-falign-jumps=100' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fexcess-precision=100' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fbranch-count-reg' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fcaller-saves' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fno-default-inline' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fgcse-after-reload' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fgcse-las' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fgcse-sm' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fipa-cp' is not supported
+// CHECK-WARNING-DAG: optimization flag '-finline-functions-called-once' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fmodulo-sched' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fmodulo-sched-allow-regmoves' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fpeel-loops' is not supported
+// CHECK-WARNING-DAG: optimization flag '-frename-registers' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fschedule-insns2' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fsingle-precision-constant' is not supported
+// CHECK-WARNING-DAG: optimization flag '-ftree_loop_im' is not supported
+// CHECK-WARNING-DAG: optimization flag '-ftree_loop_ivcanon' is not supported
+// CHECK-WARNING-DAG: optimization flag '-ftree_loop_linear' is not supported
+// CHECK-WARNING-DAG: optimization flag '-funsafe-loop-optimizations' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fuse-linker-plugin' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fvect-cost-model' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fvariable-expansion-in-unroller' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fweb' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fwhole-program' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fcaller-saves' is not supported
+// CHECK-WARNING-DAG: optimization flag '-freorder-blocks' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fdelete-null-pointer-checks' is not supported
+// CHECK-WARNING-DAG: optimization flag '-ffat-lto-objects' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fmerge-constants' is not supported
+// CHECK-WARNING-DAG: optimization flag '-finline-small-functions' is not supported
+// CHECK-WARNING-DAG: optimization flag '-ftree-dce' is not supported
+// CHECK-WARNING-DAG: optimization flag '-ftree-ter' is not supported
+// CHECK-WARNING-DAG: optimization flag '-ftree-vrp' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fno-devirtualize' is not supported
+// CHECK-WARNING-DAG: optimization flag '-fno-devirtualize-speculatively' is not supported
// Test that we mute the warning on these
// RUN: %clang -### -finline-limit=1000 -Wno-invalid-command-line-argument \
// RUN: %s 2>&1 | FileCheck --check-prefix=CHECK-NO-WARNING1 %s
// RUN: %clang -### -finline-limit -Wno-invalid-command-line-argument \
// RUN: %s 2>&1 | FileCheck --check-prefix=CHECK-NO-WARNING2 %s
+// RUN: %clang -### -finline-limit \
+// RUN: -Winvalid-command-line-argument -Wno-ignored-optimization-argument \
+// RUN: %s 2>&1 | FileCheck --check-prefix=CHECK-NO-WARNING2 %s
// CHECK-NO-WARNING1-NOT: optimization flag '-finline-limit=1000' is not supported
// CHECK-NO-WARNING2-NOT: optimization flag '-finline-limit' is not supported