* config/rs6000/sysv4.opt (mlittle): Handle.
authoraldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 13 May 2005 19:52:39 +0000 (19:52 +0000)
committeraldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 13 May 2005 19:52:39 +0000 (19:52 +0000)
* config/rs6000/rs6000.c (rs6000_handle_option): Set
target_flags_explicit when appropriate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99675 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/sysv4.opt

index 2c4c492..dd923ac 100644 (file)
@@ -1,3 +1,10 @@
+2005-05-11  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/sysv4.opt (mlittle): Handle.
+
+       * config/rs6000/rs6000.c (rs6000_handle_option): Set
+       target_flags_explicit when appropriate.
+
 2005-05-13  J"orn Rennecke <joern.rennecke@st.com>
 
        PR middle-end/20714:
index dcf9afe..5ea21a0 100644 (file)
@@ -1553,18 +1553,25 @@ rs6000_handle_option (size_t code, const char *arg, int value)
     case OPT_mno_power:
       target_flags &= ~(MASK_POWER | MASK_POWER2
                        | MASK_MULTIPLE | MASK_STRING);
+      target_flags_explicit |= (MASK_POWER | MASK_POWER2
+                               | MASK_MULTIPLE | MASK_STRING);
       break;
     case OPT_mno_powerpc:
       target_flags &= ~(MASK_POWERPC | MASK_PPC_GPOPT
                        | MASK_PPC_GFXOPT | MASK_POWERPC64);
+      target_flags_explicit |= (MASK_POWERPC | MASK_PPC_GPOPT
+                               | MASK_PPC_GFXOPT | MASK_POWERPC64);
       break;
     case OPT_mfull_toc:
       target_flags &= ~(MASK_MINIMAL_TOC | MASK_NO_FP_IN_TOC
                        | MASK_NO_SUM_IN_TOC);
+      target_flags_explicit |= (MASK_MINIMAL_TOC | MASK_NO_FP_IN_TOC
+                               | MASK_NO_SUM_IN_TOC);
 #ifdef TARGET_USES_SYSV4_OPT
       /* Note, V.4 no longer uses a normal TOC, so make -mfull-toc, be
         just the same as -mminimal-toc.  */
       target_flags |= MASK_MINIMAL_TOC;
+      target_flags_explicit |= MASK_MINIMAL_TOC;
 #endif
       break;
 
@@ -1572,6 +1579,7 @@ rs6000_handle_option (size_t code, const char *arg, int value)
     case OPT_mtoc:
       /* Make -mtoc behave like -mminimal-toc.  */
       target_flags |= MASK_MINIMAL_TOC;
+      target_flags_explicit |= MASK_MINIMAL_TOC;
       break;
 #endif
 
@@ -1581,6 +1589,8 @@ rs6000_handle_option (size_t code, const char *arg, int value)
     case OPT_m64:
 #endif
       target_flags |= MASK_POWERPC64 | MASK_POWERPC | MASK_PPC_GFXOPT;
+      target_flags_explicit |= MASK_POWERPC64 | MASK_POWERPC
+       | MASK_PPC_GFXOPT;
       break;
 
 #ifdef TARGET_USES_AIX64_OPT
@@ -1589,6 +1599,7 @@ rs6000_handle_option (size_t code, const char *arg, int value)
     case OPT_m32:
 #endif
       target_flags &= ~MASK_POWERPC64;
+      target_flags_explicit |= MASK_POWERPC64;
       break;
 
     case OPT_minsert_sched_nops_:
@@ -1598,25 +1609,34 @@ rs6000_handle_option (size_t code, const char *arg, int value)
     case OPT_mminimal_toc:
       if (value == 1)
        {
-         target_flags &= ~MASK_NO_FP_IN_TOC;
-         target_flags &= ~MASK_NO_SUM_IN_TOC;
+         target_flags &= ~(MASK_NO_FP_IN_TOC | MASK_NO_SUM_IN_TOC);
+         target_flags_explicit |= (MASK_NO_FP_IN_TOC | MASK_NO_SUM_IN_TOC);
        }
       break;
 
     case OPT_mpower:
       if (value == 1)
-       target_flags |= (MASK_MULTIPLE | MASK_STRING);
+       {
+         target_flags |= (MASK_MULTIPLE | MASK_STRING);
+         target_flags_explicit |= (MASK_MULTIPLE | MASK_STRING);
+       }
       break;
 
     case OPT_mpower2:
       if (value == 1)
-       target_flags |= (MASK_POWER | MASK_MULTIPLE | MASK_STRING);
+       {
+         target_flags |= (MASK_POWER | MASK_MULTIPLE | MASK_STRING);
+         target_flags_explicit |= (MASK_POWER | MASK_MULTIPLE | MASK_STRING);
+       }
       break;
 
     case OPT_mpowerpc_gpopt:
     case OPT_mpowerpc_gfxopt:
       if (value == 1)
-       target_flags |= MASK_POWERPC;
+       {
+         target_flags |= MASK_POWERPC;
+         target_flags_explicit |= MASK_POWERPC;
+       }
       break;
 
 #if TARGET_ALTIVEC_VRSAVE != 0
@@ -1657,15 +1677,25 @@ rs6000_handle_option (size_t code, const char *arg, int value)
 
     case OPT_mrelocatable:
       if (value == 1)
-       target_flags |= MASK_MINIMAL_TOC | MASK_NO_FP_IN_TOC;
+       {
+         target_flags |= MASK_MINIMAL_TOC | MASK_NO_FP_IN_TOC;
+         target_flags_explicit |= MASK_MINIMAL_TOC | MASK_NO_FP_IN_TOC;
+       }
       break;
 
     case OPT_mrelocatable_lib:
       if (value == 1)
-       target_flags |= MASK_RELOCATABLE | MASK_MINIMAL_TOC
-         | MASK_NO_FP_IN_TOC;
+       {
+         target_flags |= MASK_RELOCATABLE | MASK_MINIMAL_TOC
+           | MASK_NO_FP_IN_TOC;
+         target_flags_explicit |= MASK_RELOCATABLE | MASK_MINIMAL_TOC
+           | MASK_NO_FP_IN_TOC;
+       }
       else
-       target_flags &= ~MASK_RELOCATABLE;
+       {
+         target_flags &= ~MASK_RELOCATABLE;
+         target_flags_explicit |= MASK_RELOCATABLE;
+       }
       break;
 #endif
 
index 29dc62d..d826c55 100644 (file)
@@ -53,10 +53,9 @@ mlittle-endian
 Target Report RejectNegative Mask(LITTLE_ENDIAN)
 Produce little endian code
 
-; FIXME: Need a way to specify an alias.
-;mlittle
-;Target Report RejectNegative Mask(LITTLE_ENDIAN)
-;Produce little endian code
+mlittle
+Target Report RejectNegative Mask(LITTLE_ENDIAN) MaskExists
+Produce little endian code
 
 mbig-endian
 Target Report RejectNegative InverseMask(LITTLE_ENDIAN)