Remove NO_LABEL_VALUES
authorTom de Vries <tom@codesourcery.com>
Tue, 6 Jun 2017 15:35:35 +0000 (15:35 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Tue, 6 Jun 2017 15:35:35 +0000 (15:35 +0000)
2017-06-06  Tom de Vries  <tom@codesourcery.com>

* doc/sourcebuild.texi (Testsuites, C Language Testsuites,
gcc.c-torture/compile): Remove mention of NO_LABEL_VALUES in fixme.

* gcc.c-torture/compile/20000326-2.c: Use dg-require-effective-target
label_values instead of NO_LABEL_VALUES.
* gcc.c-torture/compile/920301-1.c: Same.
* gcc.c-torture/compile/920501-1.c: Same.
* gcc.c-torture/compile/941014-4.c: Same.
* gcc.c-torture/compile/labels-1.c: Same.
* gcc.c-torture/compile/pr18903.c: Same.
* gcc.c-torture/execute/920302-1.c: Same.
* gcc.c-torture/execute/920415-1.c: Same.
* gcc.c-torture/execute/920428-2.c: Same.
* gcc.c-torture/execute/920501-3.c: Same.
* gcc.c-torture/execute/920501-4.c: Same.
* gcc.c-torture/execute/920501-5.c: Same.
* gcc.c-torture/execute/920501-7.c: Same.
* gcc.c-torture/execute/920721-4.c: Same.
* gcc.c-torture/execute/980526-1.c: Same.
* gcc.c-torture/execute/990208-1.c: Same.
* gcc.c-torture/execute/comp-goto-1.c: Same.
* gcc.c-torture/execute/comp-goto-2.c: Same.
* gcc.dg/torture/stackalign/comp-goto-1.c: Same.
* gcc.dg/torture/stackalign/non-local-goto-4.c: Same.
* gcc.dg/torture/stackalign/non-local-goto-5.c: Same.
* gcc.dg/tree-prof/comp-goto-1.c: Same.
* gcc.dg/tree-prof/pr44777.c: Same.
* gcc.misc-tests/bprob-2.c: Same.
* gcc.misc-tests/gcov-3.c: Same.
* lib/gcc.exp (gcc_target_compile): Remove appending of
-DNO_LABEL_VALUES to additional_flags.
* lib/objc.exp (objc_target_compile): Same.
* lib/target-supports.exp (check_effective_target_label_values): Test on
'target_info exists gcc,no_label_values' instead of NO_LABEL_VALUES.

From-SVN: r248923

31 files changed:
gcc/ChangeLog
gcc/doc/sourcebuild.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/20000326-2.c
gcc/testsuite/gcc.c-torture/compile/920301-1.c
gcc/testsuite/gcc.c-torture/compile/920501-1.c
gcc/testsuite/gcc.c-torture/compile/941014-4.c
gcc/testsuite/gcc.c-torture/compile/labels-1.c
gcc/testsuite/gcc.c-torture/compile/pr18903.c
gcc/testsuite/gcc.c-torture/execute/920302-1.c
gcc/testsuite/gcc.c-torture/execute/920415-1.c
gcc/testsuite/gcc.c-torture/execute/920428-2.c
gcc/testsuite/gcc.c-torture/execute/920501-3.c
gcc/testsuite/gcc.c-torture/execute/920501-4.c
gcc/testsuite/gcc.c-torture/execute/920501-5.c
gcc/testsuite/gcc.c-torture/execute/920501-7.c
gcc/testsuite/gcc.c-torture/execute/920721-4.c
gcc/testsuite/gcc.c-torture/execute/980526-1.c
gcc/testsuite/gcc.c-torture/execute/990208-1.c
gcc/testsuite/gcc.c-torture/execute/comp-goto-1.c
gcc/testsuite/gcc.c-torture/execute/comp-goto-2.c
gcc/testsuite/gcc.dg/torture/stackalign/comp-goto-1.c
gcc/testsuite/gcc.dg/torture/stackalign/non-local-goto-4.c
gcc/testsuite/gcc.dg/torture/stackalign/non-local-goto-5.c
gcc/testsuite/gcc.dg/tree-prof/comp-goto-1.c
gcc/testsuite/gcc.dg/tree-prof/pr44777.c
gcc/testsuite/gcc.misc-tests/bprob-2.c
gcc/testsuite/gcc.misc-tests/gcov-3.c
gcc/testsuite/lib/gcc.exp
gcc/testsuite/lib/objc.exp
gcc/testsuite/lib/target-supports.exp

index 5b27621664b90bc871fddab60068a3b7a7e3007f..5dd00df1af06f5990ee42f9adc37029bf8c1c572 100644 (file)
@@ -1,3 +1,8 @@
+2017-06-06  Tom de Vries  <tom@codesourcery.com>
+
+       * doc/sourcebuild.texi (Testsuites, C Language Testsuites,
+       gcc.c-torture/compile): Remove mention of NO_LABEL_VALUES in fixme.
+
 2017-06-06  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
 
        * config/aarch64/atomics.md (atomic_compare_and_swap<mode> expander):
index bb5b6b96158d75834c75cff45032087844ba6b57..841e75abbd817980cc51a52bcea4393176697b02 100644 (file)
@@ -2604,7 +2604,7 @@ you wish to test for the presence or absence of compiler warnings.
 While special options can be set, and tests disabled on specific
 platforms, by the use of @file{.x} files, mostly these test cases
 should not contain platform dependencies.  FIXME: discuss how defines
-such as @code{NO_LABEL_VALUES} and @code{STACK_SIZE} are used.
+such as @code{STACK_SIZE} are used.
 @item gcc.c-torture/execute
 This testsuite contains test cases that should compile, link and run;
 otherwise the same comments as for @file{gcc.c-torture/compile} apply.
index 663f21e2b4aa08d1844fd22cf4cfdb87daa2e771..70179fab05063b1d981d78fc35816635d656ec4e 100644 (file)
@@ -1,3 +1,37 @@
+2017-06-06  Tom de Vries  <tom@codesourcery.com>
+
+       * gcc.c-torture/compile/20000326-2.c: Use dg-require-effective-target
+       label_values instead of NO_LABEL_VALUES.
+       * gcc.c-torture/compile/920301-1.c: Same.
+       * gcc.c-torture/compile/920501-1.c: Same.
+       * gcc.c-torture/compile/941014-4.c: Same.
+       * gcc.c-torture/compile/labels-1.c: Same.
+       * gcc.c-torture/compile/pr18903.c: Same.
+       * gcc.c-torture/execute/920302-1.c: Same.
+       * gcc.c-torture/execute/920415-1.c: Same.
+       * gcc.c-torture/execute/920428-2.c: Same.
+       * gcc.c-torture/execute/920501-3.c: Same.
+       * gcc.c-torture/execute/920501-4.c: Same.
+       * gcc.c-torture/execute/920501-5.c: Same.
+       * gcc.c-torture/execute/920501-7.c: Same.
+       * gcc.c-torture/execute/920721-4.c: Same.
+       * gcc.c-torture/execute/980526-1.c: Same.
+       * gcc.c-torture/execute/990208-1.c: Same.
+       * gcc.c-torture/execute/comp-goto-1.c: Same.
+       * gcc.c-torture/execute/comp-goto-2.c: Same.
+       * gcc.dg/torture/stackalign/comp-goto-1.c: Same.
+       * gcc.dg/torture/stackalign/non-local-goto-4.c: Same.
+       * gcc.dg/torture/stackalign/non-local-goto-5.c: Same.
+       * gcc.dg/tree-prof/comp-goto-1.c: Same.
+       * gcc.dg/tree-prof/pr44777.c: Same.
+       * gcc.misc-tests/bprob-2.c: Same.
+       * gcc.misc-tests/gcov-3.c: Same.
+       * lib/gcc.exp (gcc_target_compile): Remove appending of
+       -DNO_LABEL_VALUES to additional_flags.
+       * lib/objc.exp (objc_target_compile): Same.
+       * lib/target-supports.exp (check_effective_target_label_values): Test on
+       'target_info exists gcc,no_label_values' instead of NO_LABEL_VALUES.
+
 2017-06-06  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
 
        * gcc.target/aarch64/atomic_cmp_exchange_zero_reg_1.c: New test.
index 055260f6e641c53267fe6dfbec0bb57a25fb7449..6578d4e41c637bfbed71cfb3440d5d03f8c52a92 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef NO_LABEL_VALUES
+/* { dg-require-effective-target label_values } */
+
 extern int printk(const char *fmt, ...);
 
 void foo (int x, int y)
@@ -7,7 +8,3 @@ void foo (int x, int y)
   here:
   printk ("", &&here);
 }
-
-#else
-int x;
-#endif
index c4d663eb8a7a7406b1dfe0ab2992ec4df49f8cde..b61fe93b5543648e9835ead55ca863cdce786dd7 100644 (file)
@@ -1,4 +1,4 @@
-#ifndef NO_LABEL_VALUES
+/* { dg-require-effective-target label_values } */
+
 f(){static void*t[]={&&x};x:;}
-#endif
 g(){static unsigned p[5];}
index 29e197341aa7ed655131b312e2c61c434afa393d..84cc122070b6890c42177f9e6f9ad09af622d1ee 100644 (file)
@@ -1,5 +1,3 @@
-#ifndef NO_LABEL_VALUES
+/* { dg-require-effective-target label_values } */
+
 a(){int**b[]={&&c};c:;}
-#else
-int x;
-#endif
index 9e673f378335bfef33402036502ffae9676a3b61..9c4cec8b7a0510d897149cd6aa103b87f71fdeab 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef NO_LABEL_VALUES
+/* { dg-require-effective-target label_values } */
+
 f (int *re)
 {
   int *loops = 0, *loope = 0;
@@ -11,6 +12,3 @@ f (int *re)
   if (dat0 & 1)
     re[(dat0 >> 2) & 3] = 0;
 }
-#else
-int x;
-#endif
index fae6ab8f400ea5565a531f26c0feafdac2fe2364..7889567ffa64d4d2ea5b4496be95f2aa6af230bb 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef NO_LABEL_VALUES
+/* { dg-require-effective-target label_values } */
+
 f ()
 {
   void *x = &&L2;
@@ -8,6 +9,3 @@ f ()
  L2: abort ();
  L3:;
 }
-#else
-int x;
-#endif
index 3c123511297c7de7f78bf430732e4177b3192c50..461504f611a137f2f982d3795980896a9b4e4b0d 100644 (file)
@@ -1,8 +1,9 @@
+/* { dg-require-effective-target label_values } */
+
 /* We were ICEing in bsi_after_labels because 
    we had a BB which did not have a lablel.
    PR middle-end/18903 */
 
-#ifndef NO_LABEL_VALUES
 void g (int s, int f)
 {
   &&ff;
@@ -12,6 +13,3 @@ void g (int s, int f)
   f = s;
   end:;
 }
-#else
-int g;
-#endif
index 44a1e9b670e0e22bbff1c59cb233e3da2b7a65c5..62e4fc205a94653629095230d27efc64c2cdd116 100644 (file)
@@ -1,9 +1,10 @@
+/* { dg-require-effective-target label_values } */
+
 short optab[5];
 char buf[10];
 execute (ip)
      register short *ip;
 {
-#ifndef NO_LABEL_VALUES
   register void *base = &&x;
   char *bp = buf;
   static void *tab[] = {&&x, &&y, &&z};
@@ -21,9 +22,6 @@ y:  *bp++='y';
 z:  *bp++='z';
     *bp=0;
     return;
-#else
-    strcpy (buf, "xyxyz");
-#endif
 }
 
 short p[5];
index 2d6335aea55f1bb0b07503300d7fbd5fb1a5bbf6..ec31ea94a525493efbc61c1553f747f4e0d5c0cd 100644 (file)
@@ -1,5 +1,2 @@
-#ifndef NO_LABEL_VALUES
+/* { dg-require-effective-target label_values } */
 main(){__label__ l;void*x(){return&&l;}goto*x();abort();return;l:exit(0);}
-#else
-main(){ exit (0); }
-#endif
index f8c2e5f782c42a7c131e6f9eacf73c0814b69cef..99a39257496903386a0a18e2c0d165bb5631a9b4 100644 (file)
@@ -1,4 +1,6 @@
-#if !defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+/* { dg-require-effective-target label_values } */
+
+#if !defined (NO_TRAMPOLINES)
 s(i){if(i>0){__label__ l1;int f(int i){if(i==2)goto l1;return 0;}return f(i);l1:;}return 1;}
 x(){return s(0)==1&&s(1)==0&&s(2)==1;}
 main(){if(x()!=1)abort();exit(0);}
index 1031d7378cb2d27dd3cd29410fccf225f810585c..452d7c0debe8f9e115c21c9622288b46fd0a8728 100644 (file)
@@ -1,8 +1,9 @@
+/* { dg-require-effective-target label_values } */
+
 int tab[9];
 execute(oip, ip)
      unsigned short *oip, *ip;
 {
-#ifndef NO_LABEL_VALUES
   int x = 0;
   int *xp = tab;
 base:
@@ -14,12 +15,6 @@ base:
     }
   *xp++ = ip - oip;
   goto *(&&base + *ip++);
-#else
-  tab[0] = 0;
-  tab[1] = 1;
-  tab[2] = 2;
-  tab[3] = 0;
-#endif
 }
 
 main()
index 3524dd5c8b2552a9348eee684bc66cfbb6afa983..c99857079aa2c570cb3d22cd96e7627133ccbe25 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef NO_LABEL_VALUES
+/* { dg-require-effective-target label_values } */
+
 int
 x (int i)
 {
@@ -21,7 +22,3 @@ main (void)
 
   exit (0);
 }
-#else
-int
-main (void) { exit (0); }
-#endif
index e352a9155632e7dd047abe2a6609d185d8ed1fe7..f0b907166531b7fba844f0384c2ba27894c43dd0 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef NO_LABEL_VALUES
+/* { dg-require-effective-target label_values } */
+
 x (int i)
 {
   void *j[] = {&&x, &&y, &&z};
@@ -14,6 +15,3 @@ main ()
     abort();
   exit(0);
 }
-#else
-main(){ exit (0); }
-#endif
index c23717d797e00589c0aeea9e54ecdae923f8062f..ea8f93191e10494b7a7e330ae3849b691568f0a4 100644 (file)
@@ -1,10 +1,12 @@
+/* { dg-require-effective-target label_values } */
+
 #ifdef STACK_SIZE
 #define DEPTH ((STACK_SIZE) / 512 + 1)
 #else
 #define DEPTH 1000
 #endif
 
-#if ! defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
 x(a)
 {
   __label__ xlab;
@@ -22,7 +24,7 @@ x(a)
 
 main ()
 {
-#if ! defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
   if (x (DEPTH) != DEPTH)
     abort ();
 #endif
index 3cccc5b30242478357feb78ed95633d9424c5a0a..805918b2aa3dcd4a0ddcc765a5e2fd1772a8538b 100644 (file)
@@ -1,4 +1,5 @@
-#ifndef NO_LABEL_VALUES
+/* { dg-require-effective-target label_values } */
+
 int try (int num) {
   __label__ lab1, lab2, lab3, lab4, lab5, lab6, default_lab;
 
@@ -55,6 +56,3 @@ main()
     }
   exit(0);
 }
-#else
-main(){ exit (0); }
-#endif
index 2c9e735da69c62af69d5c436ecab03ab37d82ddf..15c580791aba64427dc4bf294708b961724f69f7 100644 (file)
@@ -1,5 +1,5 @@
-/* { dg-skip-if "requires indirect jumps" { ! indirect_jumps } { "-O0" } { "" } } */
-/* { dg-skip-if "requires label values" { ! label_values } { "-O0" } { "" } } */
+/* { dg-require-effective-target label_values } */
+
 int expect_do1 = 1, expect_do2 = 2;
  
 static int doit(int x){
@@ -31,9 +31,5 @@ static void do2(void){
 }
  
 int main(void){
-#ifndef NO_LABEL_VALUES
-  do1();
-  do2();
-#endif
   exit(0);
 }
index 786e664f35b8495b31d3ba7e6bded935f0e2c2cf..15dcdfbdf7acbe7c83a2c8c441a73dd9c1555373 100644 (file)
@@ -1,8 +1,9 @@
+/* { dg-require-effective-target label_values } */
+
 /* As a quality of implementation issue, we should not prevent inlining
    of function explicitly marked inline just because a label therein had
    its address taken.  */
 
-#ifndef NO_LABEL_VALUES
 static void *ptr1, *ptr2;
 static int i = 1;
 
@@ -44,7 +45,3 @@ int main()
 }
 
 void bar(void) { }
-
-#else /* NO_LABEL_VALUES */
-int main() { exit(0); }
-#endif
index 4c41b71c344ab51ae25abaed4a51d436604b1bd1..d01f96ba70a62347b769c08fbc3721f9e1abfe84 100644 (file)
@@ -1,6 +1,8 @@
+/* { dg-require-effective-target label_values } */
+
 #include <stdlib.h>
 
-#if !defined(NO_LABEL_VALUES) && (!defined(STACK_SIZE) || STACK_SIZE >= 4000) && __INT_MAX__ >= 2147483647
+#if (!defined(STACK_SIZE) || STACK_SIZE >= 4000) && __INT_MAX__ >= 2147483647
 typedef unsigned int uint32;
 typedef signed int sint32;
 
index 771cd956995a7e1da4736abab2c3153e3d10c6e5..1b594db2758c73fc7e9ec916b154d48fe7dbafe1 100644 (file)
@@ -1,3 +1,5 @@
+/* { dg-require-effective-target label_values } */
+
 /* A slight variation of 920501-7.c.  */
 
 #ifdef STACK_SIZE
@@ -6,7 +8,7 @@
 #define DEPTH 1000
 #endif
 
-#if ! defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
 x(a)
 {
   __label__ xlab;
@@ -28,7 +30,7 @@ x(a)
 
 main ()
 {
-#if ! defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
   if (x (DEPTH) != DEPTH)
     abort ();
 #endif
index cf163722de8900e16a2665fb5f2fbfbab64328c3..1129b00a49ef2b1881f0b8b96cc5dc166717390c 100644 (file)
@@ -1,4 +1,5 @@
 /* { dg-do run } */
+/* { dg-require-effective-target label_values } */
 
 #ifdef STACK_SIZE
 #define DEPTH ((STACK_SIZE) / 512 + 1)
@@ -9,7 +10,7 @@
 extern void abort (void);
 extern void exit (int);
 
-#if ! defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
 int
 x(int a)
 {
@@ -33,7 +34,7 @@ x(int a)
 int
 main ()
 {
-#if ! defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
   if (x (DEPTH) != DEPTH)
     abort ();
 #endif
index d30572364905d987068e17b32e497b71d7fe919b..bcad887a93fc2f27c4e1116aeb9849044b23d912 100644 (file)
@@ -1,5 +1,6 @@
 /* { dg-do run } */
 /* { dg-require-effective-target nonlocal_goto } */
+/* { dg-require-effective-target label_values } */
 
 extern void abort (void);
 extern void exit (int);
@@ -10,7 +11,7 @@ extern void exit (int);
 #define DEPTH 1000
 #endif
 
-#if ! defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
 int
 x(int a)
 {
@@ -30,7 +31,7 @@ x(int a)
 int
 main ()
 {
-#if ! defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
   if (x (DEPTH) != DEPTH)
     abort ();
 #endif
index b034a655ad0181b03c285b7e429e138c749e13f5..ab524fe36562b6f5900e5810be61bb59cabcbd5e 100644 (file)
@@ -1,8 +1,9 @@
 /* { dg-do run } */
 /* { dg-require-effective-target nonlocal_goto } */
+/* { dg-require-effective-target label_values } */
 
 extern void exit (int);
-#if !defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
 extern void abort (void);
 int s(int i){if(i>0){__label__ l1;int f(int i){if(i==2)goto l1;return 0;}return f(i);l1:;}return 1;}
 int x(){return s(0)==1&&s(1)==0&&s(2)==1;}
index 42d61f3cad68174f80e346608cf788e0aab7c912..86e88adb89d3beed65942a7b7078cf2c09b46ec0 100644 (file)
@@ -1,8 +1,9 @@
 /* { dg-require-effective-target freorder } */
+/* { dg-require-effective-target label_values } */
 /* { dg-options "-O2 -freorder-blocks-and-partition" } */
 #include <stdlib.h>
 
-#if !defined(NO_LABEL_VALUES) && (!defined(STACK_SIZE) || STACK_SIZE >= 4000) && __INT_MAX__ >= 2147483647
+#if (!defined(STACK_SIZE) || STACK_SIZE >= 4000) && __INT_MAX__ >= 2147483647
 typedef unsigned int uint32;
 typedef signed int sint32;
 
index 1c4da7f5f7dc6619562647f31e8744f44e4045cc..4550599a2885eaaed6092015eda888dda9cdbbc3 100644 (file)
@@ -1,4 +1,5 @@
 /* PR middle-end/44777 */
+/* { dg-require-effective-target label_values } */
 /* { dg-options "-O0" } */
 /* A variant of gcc.c-torture/execute/comp-goto-2.c.  */
 
@@ -11,7 +12,7 @@ extern void exit (int);
 #define DEPTH 1000
 #endif
 
-#if ! defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
 int
 x (int a)
 {
@@ -35,7 +36,7 @@ x (int a)
 int
 main ()
 {
-#if ! defined (NO_LABEL_VALUES) && !defined (NO_TRAMPOLINES)
+#if !defined (NO_TRAMPOLINES)
   if (x (DEPTH) != DEPTH)
     abort ();
 #endif
index e0931f39c469e9709b4782d9f899cda6141827ff..90ed7d74b8c19adce8932ed577fb51780594e1c4 100644 (file)
@@ -1,3 +1,5 @@
+/* { dg-require-effective-target label_values } */
+
 /* Test profile-directed block ordering with computed gotos.
  *
    This is the same as test gcc.c-torture/execute/980526-1.c and
@@ -37,9 +39,7 @@ static void do2(void){
 }
  
 int main(void){
-#ifndef NO_LABEL_VALUES
   do1();
   do2();
-#endif
   exit(0);
 }
index fcccdeeff419575a95764c5ad54714c8582fc595..eb6e4cc46bfaf4f92fba86fde915de750c0abfd1 100644 (file)
@@ -1,3 +1,5 @@
+/* { dg-require-effective-target label_values } */
+
 /* Test Gcov with computed gotos.
    This is the same as test gcc.c-torture/execute/980526-1.c */
 
@@ -38,10 +40,8 @@ static void do2(void){
 }
  
 int main(void){                        /* count(1) */
-#ifndef NO_LABEL_VALUES
   do1();
   do2();
-#endif
   exit(0);                     /* count(1) */
 }
 
index 846e4e285f7346022d3e7f350586b3ed313dc381..19d500c6a29437b1215f5059eb4e4b1b18e37be3 100644 (file)
@@ -147,9 +147,6 @@ proc gcc_target_compile { source dest type options } {
     if [target_info exists gcc,no_trampolines] {
        lappend options "additional_flags=-DNO_TRAMPOLINES"
     }
-    if [target_info exists gcc,no_label_values] {
-       lappend options "additional_flags=-DNO_LABEL_VALUES"
-    }
     if [target_info exists gcc,signal_suppress] {
        lappend options "additional_flags=-DSIGNAL_SUPPRESS"
     }
index 65d18395c4497943182a61d232e31a6b6dcc9b45..c4c954e1db67c8d1006a2e7f40badd0e2ae83b97 100644 (file)
@@ -197,9 +197,6 @@ proc objc_target_compile { source dest type options } {
     if [target_info exists objc,no_trampolines] {
        lappend options "additional_flags=-DNO_TRAMPOLINES"
     }
-    if [target_info exists objc,no_label_values] {
-       lappend options "additional_flags=-DNO_LABEL_VALUES"
-    }
 
     # TEST_ALWAYS_FLAGS are flags that should be passed to every
     # compilation.  They are passed first to allow individual
index ded6383cc1f9a1489cd83e1dace0c2fc48e252c3..8b99f35513330d40e455326d9feaf7541987c932 100644 (file)
@@ -749,14 +749,11 @@ proc check_effective_target_global_constructor {} {
 # Return 1 if taking label values is supported, 0 otherwise.
 
 proc check_effective_target_label_values {} {
-    if { [istarget nvptx-*-*] } {
+    if { [istarget nvptx-*-*] || [target_info exists gcc,no_label_values] } {
        return 0
     }
-    return [check_no_compiler_messages label_values assembly {
-       #ifdef NO_LABEL_VALUES
-       #error NO
-       #endif
-    }]
+
+    return 1
 }
 
 # Return 1 if builtin_return_address and builtin_frame_address are