Chad Rosier | 2875bda | 2011-11-04 19:28:44 +0000 | [diff] [blame] | 1 | // Check to make sure clang is somewhat picky about -g options. |
| 2 | // rdar://10383444 |
| 3 | |
Manman Ren | e783048 | 2013-07-03 20:45:07 +0000 | [diff] [blame] | 4 | // RUN: %clang -### -c -g %s -target x86_64-linux-gnu 2>&1 \ |
| 5 | | FileCheck -check-prefix=G %s |
| 6 | // RUN: %clang -### -c -g2 %s -target x86_64-linux-gnu 2>&1 \ |
| 7 | | FileCheck -check-prefix=G %s |
| 8 | // RUN: %clang -### -c -g3 %s -target x86_64-linux-gnu 2>&1 \ |
| 9 | | FileCheck -check-prefix=G %s |
| 10 | // RUN: %clang -### -c -ggdb %s -target x86_64-linux-gnu 2>&1 \ |
| 11 | | FileCheck -check-prefix=G %s |
| 12 | // RUN: %clang -### -c -ggdb1 %s -target x86_64-linux-gnu 2>&1 \ |
| 13 | | FileCheck -check-prefix=G %s |
| 14 | // RUN: %clang -### -c -ggdb3 %s -target x86_64-linux-gnu 2>&1 \ |
| 15 | | FileCheck -check-prefix=G %s |
| 16 | |
| 17 | // RUN: %clang -### -c -g %s -target x86_64-apple-darwin 2>&1 \ |
| 18 | | FileCheck -check-prefix=G_DARWIN %s |
| 19 | // RUN: %clang -### -c -g2 %s -target x86_64-apple-darwin 2>&1 \ |
| 20 | | FileCheck -check-prefix=G_DARWIN %s |
| 21 | // RUN: %clang -### -c -g3 %s -target x86_64-apple-darwin 2>&1 \ |
| 22 | | FileCheck -check-prefix=G_DARWIN %s |
| 23 | // RUN: %clang -### -c -ggdb %s -target x86_64-apple-darwin 2>&1 \ |
| 24 | | FileCheck -check-prefix=G_DARWIN %s |
| 25 | // RUN: %clang -### -c -ggdb1 %s -target x86_64-apple-darwin 2>&1 \ |
| 26 | | FileCheck -check-prefix=G_DARWIN %s |
| 27 | // RUN: %clang -### -c -ggdb3 %s -target x86_64-apple-darwin 2>&1 \ |
| 28 | | FileCheck -check-prefix=G_DARWIN %s |
| 29 | |
Manman Ren | fc0f91c | 2013-06-19 01:46:49 +0000 | [diff] [blame] | 30 | // RUN: %clang -### -c -gdwarf-2 %s 2>&1 | FileCheck -check-prefix=G_D2 %s |
Alexey Samsonov | 7f32607 | 2012-06-21 08:22:39 +0000 | [diff] [blame] | 31 | // |
| 32 | // RUN: %clang -### -c -gfoo %s 2>&1 | FileCheck -check-prefix=G_NO %s |
| 33 | // RUN: %clang -### -c -g -g0 %s 2>&1 | FileCheck -check-prefix=G_NO %s |
| 34 | // RUN: %clang -### -c -ggdb0 %s 2>&1 | FileCheck -check-prefix=G_NO %s |
| 35 | // |
Alexey Samsonov | fd00eec | 2012-05-04 07:39:27 +0000 | [diff] [blame] | 36 | // RUN: %clang -### -c -gline-tables-only %s 2>&1 \ |
Alexey Samsonov | 7f32607 | 2012-06-21 08:22:39 +0000 | [diff] [blame] | 37 | // RUN: | FileCheck -check-prefix=GLTO_ONLY %s |
Manman Ren | e783048 | 2013-07-03 20:45:07 +0000 | [diff] [blame] | 38 | // RUN: %clang -### -c -gline-tables-only -g %s -target x86_64-linux-gnu 2>&1 \ |
Alexey Samsonov | 7f32607 | 2012-06-21 08:22:39 +0000 | [diff] [blame] | 39 | // RUN: | FileCheck -check-prefix=G_ONLY %s |
Manman Ren | e783048 | 2013-07-03 20:45:07 +0000 | [diff] [blame] | 40 | // RUN: %clang -### -c -gline-tables-only -g %s -target x86_64-apple-darwin 2>&1 \ |
| 41 | // RUN: | FileCheck -check-prefix=G_ONLY_DARWIN %s |
Alexey Samsonov | a9cd83b | 2012-05-29 08:10:34 +0000 | [diff] [blame] | 42 | // RUN: %clang -### -c -gline-tables-only -g0 %s 2>&1 \ |
Alexey Samsonov | 7f32607 | 2012-06-21 08:22:39 +0000 | [diff] [blame] | 43 | // RUN: | FileCheck -check-prefix=GLTO_NO %s |
| 44 | // |
Benjamin Kramer | 967d833 | 2012-08-03 10:35:06 +0000 | [diff] [blame] | 45 | // RUN: %clang -### -c -grecord-gcc-switches -gno-record-gcc-switches \ |
Eric Christopher | 3e8ac1b | 2013-06-18 00:03:50 +0000 | [diff] [blame] | 46 | // RUN: -gstrict-dwarf -gno-strict-dwarf -fdebug-types-section \ |
| 47 | // RUN: -fno-debug-types-section %s 2>&1 \ |
Eric Christopher | e7d9464 | 2013-06-18 00:03:46 +0000 | [diff] [blame] | 48 | // RUN: | FileCheck -check-prefix=GIGNORE %s |
Chad Rosier | 2875bda | 2011-11-04 19:28:44 +0000 | [diff] [blame] | 49 | // |
Eric Christopher | 0f43a6d | 2013-09-13 22:37:55 +0000 | [diff] [blame^] | 50 | // RUN: %clang -### -c -ggnu-pubnames %s 2>&1 | FileCheck -check-prefix=GOPT %s |
| 51 | // |
Chad Rosier | 2875bda | 2011-11-04 19:28:44 +0000 | [diff] [blame] | 52 | // G: "-cc1" |
Manman Ren | e783048 | 2013-07-03 20:45:07 +0000 | [diff] [blame] | 53 | // G: "-g" |
| 54 | // |
| 55 | // G_DARWIN: "-cc1" |
| 56 | // G_DARWIN: "-gdwarf-2" |
Manman Ren | fc0f91c | 2013-06-19 01:46:49 +0000 | [diff] [blame] | 57 | // |
| 58 | // G_D2: "-cc1" |
| 59 | // G_D2: "-gdwarf-2" |
Chad Rosier | 2875bda | 2011-11-04 19:28:44 +0000 | [diff] [blame] | 60 | // |
Alexey Samsonov | 7f32607 | 2012-06-21 08:22:39 +0000 | [diff] [blame] | 61 | // G_NO: "-cc1" |
| 62 | // G_NO-NOT: "-g" |
Chad Rosier | 670326f | 2012-02-28 20:49:04 +0000 | [diff] [blame] | 63 | // |
Alexey Samsonov | 7f32607 | 2012-06-21 08:22:39 +0000 | [diff] [blame] | 64 | // GLTO_ONLY: "-cc1" |
| 65 | // GLTO_ONLY-NOT: "-g" |
| 66 | // GLTO_ONLY: "-gline-tables-only" |
| 67 | // GLTO_ONLY-NOT: "-g" |
Chad Rosier | 2875bda | 2011-11-04 19:28:44 +0000 | [diff] [blame] | 68 | // |
Alexey Samsonov | 7f32607 | 2012-06-21 08:22:39 +0000 | [diff] [blame] | 69 | // G_ONLY: "-cc1" |
| 70 | // G_ONLY-NOT: "-gline-tables-only" |
Manman Ren | e783048 | 2013-07-03 20:45:07 +0000 | [diff] [blame] | 71 | // G_ONLY: "-g" |
Alexey Samsonov | 7f32607 | 2012-06-21 08:22:39 +0000 | [diff] [blame] | 72 | // G_ONLY-NOT: "-gline-tables-only" |
Chad Rosier | 2875bda | 2011-11-04 19:28:44 +0000 | [diff] [blame] | 73 | // |
Manman Ren | e783048 | 2013-07-03 20:45:07 +0000 | [diff] [blame] | 74 | // G_ONLY_DARWIN: "-cc1" |
| 75 | // G_ONLY_DARWIN-NOT: "-gline-tables-only" |
| 76 | // G_ONLY_DARWIN: "-gdwarf-2" |
| 77 | // G_ONLY_DARWIN-NOT: "-gline-tables-only" |
| 78 | // |
Alexey Samsonov | 7f32607 | 2012-06-21 08:22:39 +0000 | [diff] [blame] | 79 | // GLTO_NO: "-cc1" |
| 80 | // GLTO_NO-NOT: "-gline-tables-only" |
Eric Christopher | e7d9464 | 2013-06-18 00:03:46 +0000 | [diff] [blame] | 81 | // |
| 82 | // GIGNORE-NOT: "argument unused during compilation" |
Eric Christopher | 0f43a6d | 2013-09-13 22:37:55 +0000 | [diff] [blame^] | 83 | // |
| 84 | // GOPT: -generate-gnu-dwarf-pub-sections |