This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

MIPS: doc for -m flags




Here is my own contribution to the documentation process.  My strategy
was to assume that this was ment for people who had read the .info
files already, and just needed a refresher.  I've never looked at 
some of these before, so I may have misunderstood their purpose.
Someone should check it for spelling, and think-o's.  Will commit
it early next week, if there are no objections.

                                               -gavin...




	* config/mips/mips.h (TARGET_SWITCHES,TARGET_OPTIONS): Add documentation strings.
	* config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Same.


Index: gcc/config/mips/mips.h
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/config/mips/mips.h,v
retrieving revision 1.49
diff -c -r1.49 mips.h
*** gcc/config/mips/mips.h	1999/03/16 08:03:58	1.49
--- gcc/config/mips/mips.h	1999/03/19 21:20:02
***************
*** 452,506 ****
  
  #define TARGET_SWITCHES							\
  {									\
!   {"int64",		  MASK_INT64 | MASK_LONG64},			\
!   {"long64",		  MASK_LONG64},					\
!   {"long32",		 -(MASK_LONG64 | MASK_INT64)},			\
!   {"split-addresses",	  MASK_SPLIT_ADDR},				\
!   {"no-split-addresses", -MASK_SPLIT_ADDR},				\
!   {"mips-as",		 -MASK_GAS},					\
!   {"gas",		  MASK_GAS},					\
!   {"rnames",		  MASK_NAME_REGS},				\
!   {"no-rnames",		 -MASK_NAME_REGS},				\
!   {"gpOPT",		  MASK_GPOPT},					\
!   {"gpopt",		  MASK_GPOPT},					\
!   {"no-gpOPT",		 -MASK_GPOPT},					\
!   {"no-gpopt",		 -MASK_GPOPT},					\
!   {"stats",		  MASK_STATS},					\
!   {"no-stats",		 -MASK_STATS},					\
!   {"memcpy",		  MASK_MEMCPY},					\
!   {"no-memcpy",		 -MASK_MEMCPY},					\
!   {"mips-tfile",	  MASK_MIPS_TFILE},				\
!   {"no-mips-tfile",	 -MASK_MIPS_TFILE},				\
!   {"soft-float",	  MASK_SOFT_FLOAT},				\
!   {"hard-float",	 -MASK_SOFT_FLOAT},				\
!   {"fp64",		  MASK_FLOAT64},				\
!   {"fp32",		 -MASK_FLOAT64},				\
!   {"gp64",		  MASK_64BIT},					\
!   {"gp32",		 -MASK_64BIT},					\
!   {"abicalls",		  MASK_ABICALLS},				\
!   {"no-abicalls",	 -MASK_ABICALLS},				\
!   {"half-pic",		  MASK_HALF_PIC},				\
!   {"no-half-pic",	 -MASK_HALF_PIC},				\
!   {"long-calls",	  MASK_LONG_CALLS},				\
!   {"no-long-calls",	 -MASK_LONG_CALLS},				\
!   {"embedded-pic",	  MASK_EMBEDDED_PIC},				\
!   {"no-embedded-pic",	 -MASK_EMBEDDED_PIC},				\
!   {"embedded-data",	  MASK_EMBEDDED_DATA},				\
!   {"no-embedded-data",	 -MASK_EMBEDDED_DATA},				\
!   {"eb",		  MASK_BIG_ENDIAN},				\
!   {"el",		 -MASK_BIG_ENDIAN},				\
!   {"single-float",	  MASK_SINGLE_FLOAT},				\
!   {"double-float",	 -MASK_SINGLE_FLOAT},				\
!   {"mad",		  MASK_MAD},					\
!   {"no-mad",		 -MASK_MAD},					\
!   {"fix4300",             MASK_4300_MUL_FIX},				\
!   {"no-fix4300",         -MASK_4300_MUL_FIX},				\
!   {"4650",		  MASK_MAD | MASK_SINGLE_FLOAT},		\
!   {"3900",		  MASK_MIPS3900},                               \
!   {"check-zero-division",-MASK_NO_CHECK_ZERO_DIV},			\
!   {"no-check-zero-division", MASK_NO_CHECK_ZERO_DIV},			\
!   {"check-range-division",MASK_CHECK_RANGE_DIV},			\
!   {"no-check-range-division",-MASK_CHECK_RANGE_DIV},			\
    {"debug",		  MASK_DEBUG},					\
    {"debuga",		  MASK_DEBUG_A},				\
    {"debugb",		  MASK_DEBUG_B},				\
--- 452,506 ----
  
  #define TARGET_SWITCHES							\
  {									\
!   {"int64",		  MASK_INT64 | MASK_LONG64, "ints and longs 64-bits"},\
!   {"long64",		  MASK_LONG64, "longs 64-bits"},\
!   {"long32",		 -(MASK_LONG64 | MASK_INT64), "ints and longs 32-bits"},\
!   {"split-addresses",	  MASK_SPLIT_ADDR, "high/low splitting of address loads"},\
!   {"no-split-addresses", -MASK_SPLIT_ADDR, "no high/low splitting of address loads"},\
!   {"mips-as",		 -MASK_GAS, "code for the MIPS assembler"},\
!   {"gas",		  MASK_GAS, "code for GNU as"},\
!   {"rnames",		  MASK_NAME_REGS, "code using 'a0' register names"},\
!   {"no-rnames",		 -MASK_NAME_REGS, "code using '$4' register names"},\
!   {"gpOPT",		  MASK_GPOPT, "code using gp relative addressing"},\
!   {"gpopt",		  MASK_GPOPT, "code using gp relative addressing"},\
!   {"no-gpOPT",		 -MASK_GPOPT, "code using high/low addressing"},\
!   {"no-gpopt",		 -MASK_GPOPT, "code using high/low addressing"},\
!   {"stats",		  MASK_STATS, "print stats for each function"},\
!   {"no-stats",		 -MASK_STATS, "no stats for each function"},\
!   {"memcpy",		  MASK_MEMCPY, "don't open code block copies"},\
!   {"no-memcpy",		 -MASK_MEMCPY, "open code block copies"},\
!   {"mips-tfile",	  MASK_MIPS_TFILE, "run mips-tfile"},\
!   {"no-mips-tfile",	 -MASK_MIPS_TFILE, "don't run mips-tfile"},\
!   {"soft-float",	  MASK_SOFT_FLOAT, "software floating point"},\
!   {"hard-float",	 -MASK_SOFT_FLOAT, "hardware floating point"},\
!   {"fp64",		  MASK_FLOAT64, "code using 64-bit floating point"},\
!   {"fp32",		 -MASK_FLOAT64, "code using 32-bit floating point"},\
!   {"gp64",		  MASK_64BIT, "code using 64-bit gp registers"},\
!   {"gp32",		 -MASK_64BIT, "code using 32-bit gp registers"},\
!   {"abicalls",		  MASK_ABICALLS, "use .abicalls"},\
!   {"no-abicalls",	 -MASK_ABICALLS, "don't use .abicalls"},\
!   {"half-pic",		  MASK_HALF_PIC, "pointers to externs in data section"},\
!   {"no-half-pic",	 -MASK_HALF_PIC, "not half-pic"},\
!   {"long-calls",	  MASK_LONG_CALLS, "use JALR for all calls"},\
!   {"no-long-calls",	 -MASK_LONG_CALLS, "not long-calls"},\
!   {"embedded-pic",	  MASK_EMBEDDED_PIC, "use embedded pic"},\
!   {"no-embedded-pic",	 -MASK_EMBEDDED_PIC, "no embedded pic"},\
!   {"embedded-data",	  MASK_EMBEDDED_DATA, "use embedded data"},\
!   {"no-embedded-data",	 -MASK_EMBEDDED_DATA, "no embedded data"},\
!   {"eb",		  MASK_BIG_ENDIAN, /* intensional undocumented */},\
!   {"el",		 -MASK_BIG_ENDIAN, /* intensional undocumented */},\
!   {"single-float",	  MASK_SINGLE_FLOAT, "hardware singles, software doubles"},\
!   {"double-float",	 -MASK_SINGLE_FLOAT, "hardware floating point"},\
!   {"mad",		  MASK_MAD, "4650 specific instructions"},\
!   {"no-mad",		 -MASK_MAD, "no 4650 specific instructions"},\
!   {"fix4300",             MASK_4300_MUL_FIX, "workaround 4300 multiply bug"},\
!   {"no-fix4300",         -MASK_4300_MUL_FIX, "don't workaround 4300 multiply bug"},\
!   {"4650",		  MASK_MAD | MASK_SINGLE_FLOAT, "-mmad and -msingle-float"},\
!   {"3900",		  MASK_MIPS3900, "tx39 specific instructions"},\
!   {"check-zero-division",-MASK_NO_CHECK_ZERO_DIV, "check for div-by-zero"},\
!   {"no-check-zero-division", MASK_NO_CHECK_ZERO_DIV, "no div-by-zero check"},\
!   {"check-range-division",MASK_CHECK_RANGE_DIV, "check for div overflow"},\
!   {"no-check-range-division",-MASK_CHECK_RANGE_DIV, "don't check div overflow"},\
    {"debug",		  MASK_DEBUG},					\
    {"debuga",		  MASK_DEBUG_A},				\
    {"debugb",		  MASK_DEBUG_B},				\
***************
*** 575,585 ****
  #define TARGET_OPTIONS							\
  {									\
    SUBTARGET_TARGET_OPTIONS						\
!   { "cpu=",	&mips_cpu_string	},				\
!   { "ips",	&mips_isa_string	},				\
!   { "entry",	&mips_entry_string	},				\
!   { "no-mips16", &mips_no_mips16_string	},                              \
!   { "explicit-type-size", &mips_explicit_type_size_string }		\
  }
  
  /* This is meant to be redefined in the host dependent files.  */
--- 575,585 ----
  #define TARGET_OPTIONS							\
  {									\
    SUBTARGET_TARGET_OPTIONS						\
!   { "cpu=",	&mips_cpu_string, "Schedule for a particular CPU"	},\
!   { "ips",	&mips_isa_string, "Issue instructions for a particular ISA"},\
!   { "entry",	&mips_entry_string, "Issue entry and exit pseudo-ops"	},\
!   { "no-mips16", &mips_no_mips16_string, "Don't issue mips16 instructions"},\
!   { "explicit-type-size", &mips_explicit_type_size_string /* intentionally undocumented */ } \
  }
  
  /* This is meant to be redefined in the host dependent files.  */
Index: gcc/config/mips/abi64.h
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/config/mips/abi64.h,v
retrieving revision 1.10
diff -c -r1.10 abi64.h
*** gcc/config/mips/abi64.h	1999/03/16 08:03:55	1.10
--- gcc/config/mips/abi64.h	1999/03/19 21:20:02
***************
*** 23,29 ****
  
  #undef SUBTARGET_TARGET_OPTIONS
  #define SUBTARGET_TARGET_OPTIONS\
!   { "abi=", &mips_abi_string	},
  
  #undef STACK_BOUNDARY
  #define STACK_BOUNDARY \
--- 23,29 ----
  
  #undef SUBTARGET_TARGET_OPTIONS
  #define SUBTARGET_TARGET_OPTIONS\
!   { "abi=", &mips_abi_string, "code for a particular ABI"},
  
  #undef STACK_BOUNDARY
  #define STACK_BOUNDARY \


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]