summaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2001-10-02 10:59:42 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2001-10-02 10:59:42 +0000
commit5c66405bf9241c305be866f3a786513e4fe917da (patch)
tree70110e347db132c6e0f4f51554c0c0348a6fc741 /gcc/doc
parente9a0f285818ea3e0f7f5630ecb22d4b358f7eeed (diff)
downloadgcc-5c66405bf9241c305be866f3a786513e4fe917da.tar.gz
* doc/invoke.texi (i386 Options): Document x86-64 options.
(i386 and x86-64 Options): Rename i386 options section. * config/i386/i386.h (TARGET_UNWIND_INFO): New. (TARGET_SWITCHES): Add -munwind-info. (MASK_NO_UNWIND_INFO): New. (NO_BUILTIN_SIZE_TYPE, NO_BUILTIN_PTRDIFF_TYPE): Define for biarch compilation. (ASM_OUTPUT_DOUBLE_INT): New. * config/i386/linux64.h: New spec file for Linux x86-64 support. * config.gcc: Fix tm_file settings for x86-64. * config/i386/x86-64.h: New file with OS independent x86-64 definitions. * config/i386/biarch64.h: New file used to configure compiler to biarch/64bit compilation. * config/i386/i386.c: (override_options): Set flags default for 64bit compilation. * i386.c (legitimize_pic_address): Add missing bits of 64bit support. (ix86_expand_int_movcc): Optimize DImode conditional moves with constants on x86_64. (ix86_attr_length_immediate_default): Support MODE_DI. * i386.md (fixdi splitter): Add missing "&& 1" in splitter condition. (indirect_jump, tablejump): Turn into expander. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45946 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/invoke.texi40
1 files changed, 34 insertions, 6 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index b3a731a3266..8499d72bac6 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -464,7 +464,7 @@ in the following sections.
-mabi=32 -mabi=n32 -mabi=64 -mabi=eabi @gol
-mfix7000 -mno-crt0}
-@emph{i386 Options}
+@emph{i386 and x86-64 Options}
@gccoptlist{
-mcpu=@var{cpu-type} -march=@var{cpu-type} @gol
-mintel-syntax -mieee-fp -mno-fancy-math-387 @gol
@@ -474,7 +474,9 @@ in the following sections.
-mmmx -msse -m3dnow @gol
-mthreads -mno-align-stringops -minline-all-stringops @gol
-mpush-args -maccumulate-outgoing-args -m128bit-long-double @gol
--m96bit-long-double -mregparm=@var{num} -momit-leaf-frame-pointer}
+-m96bit-long-double -mregparm=@var{num} -momit-leaf-frame-pointer @gol
+-mno-red-zone@gol
+-m32 -m64}
@emph{HPPA Options}
@gccoptlist{
@@ -5077,7 +5079,7 @@ that macro, which enables you to change the defaults.
* RS/6000 and PowerPC Options::
* RT Options::
* MIPS Options::
-* i386 Options::
+* i386 and x86-64 Options::
* HPPA Options::
* Intel 960 Options::
* DEC Alpha Options::
@@ -7418,12 +7420,15 @@ options is also defined by that macro, which enables you to change the
defaults.
@end ifset
-@node i386 Options
-@subsection Intel 386 Options
+@node i386 and x86-64 Options
+@subsection Intel 386 and AMD x86-64 Options
@cindex i386 Options
+@cindex x86-64 Options
@cindex Intel 386 Options
+@cindex AMD x86-64 Options
-These @samp{-m} options are defined for the i386 family of computers:
+These @samp{-m} options are defined for the i386 and x86-64 family of
+computers:
@table @gcctabopt
@item -mcpu=@var{cpu-type}
@@ -8027,6 +8032,29 @@ makes an extra register available in leaf functions. The option
which might make debugging harder.
@end table
+These @samp{-m} switches are supported in addition to the above
+on AMD x86-64 processors in 64-bit environments.
+
+@table @gcctabopt
+@item -m32
+@itemx -m64
+@opindex m32
+@opindex m64
+Generate code for a 32-bit or 64-bit environment.
+The 32-bit environment sets int, long and pointer to 32 bits and
+generates code that runs on any i386 system.
+The 64-bit environment sets int to 32 bits and long and pointer
+to 64 bits and generates code for AMD's x86-64 architecture.
+
+@item -mno-red-zone
+@opindex no-red-zone
+Do not use a so called red zone for x86-64 code. The red zone is mandated
+by the x86-64 ABI, it is a 128-byte area beyond the location of the
+stack pointer that will not be modified by signal or interrupt handlers
+and therefore can be used for temporary data without adjusting the stack
+pointer. The flag @option{-mno-red-zone} disables this red zone.
+@end table
+
@node HPPA Options
@subsection HPPA Options
@cindex HPPA Options