summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2015-05-15 04:20:36 -0700
committerH.J. Lu <hjl.tools@gmail.com>2015-05-27 12:45:34 -0700
commit9ebccb0d32ee1c7d0383d77f5baef1b70411a138 (patch)
treee313faefa80c147f4c7e78a5d21cf59dfb47d18e
parented5286b517d1d70a718db4d4549bb985cd06d103 (diff)
downloadgcc-9ebccb0d32ee1c7d0383d77f5baef1b70411a138.tar.gz
Add -miamcu command line option
-miamcu tells GCC to generate code that conforms to Intel MCU psABI. * config/i386/i386.opt: Add -miamcu. * doc/invoke.texi: Document -miamcu.
-rw-r--r--gcc/config/i386/i386.opt4
-rw-r--r--gcc/doc/invoke.texi7
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/config/i386/i386.opt b/gcc/config/i386/i386.opt
index 0f463a23820..6759a8c06c5 100644
--- a/gcc/config/i386/i386.opt
+++ b/gcc/config/i386/i386.opt
@@ -493,6 +493,10 @@ Clear all tune features
mdump-tune-features
Target RejectNegative Var(ix86_dump_tunes) Init(0)
+miamcu
+Target Report Mask(IAMCU)
+Generate code that conforms to Intel MCU psABI
+
mabi=
Target RejectNegative Joined Var(ix86_abi) Enum(calling_abi) Init(SYSV_ABI)
Generate code that conforms to the given ABI
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 720736f6b47..ced76a2a323 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -682,7 +682,7 @@ Objective-C and Objective-C++ Dialects}.
-mpc32 -mpc64 -mpc80 -mstackrealign @gol
-momit-leaf-frame-pointer -mno-red-zone -mno-tls-direct-seg-refs @gol
-mcmodel=@var{code-model} -mabi=@var{name} -maddress-mode=@var{mode} @gol
--m32 -m64 -mx32 -m16 -mlarge-data-threshold=@var{num} @gol
+-m32 -m64 -mx32 -m16 -miamcu -mlarge-data-threshold=@var{num} @gol
-msse2avx -mfentry -m8bit-idiv @gol
-mavx256-split-unaligned-load -mavx256-split-unaligned-store @gol
-mstack-protector-guard=@var{guard}}
@@ -15722,10 +15722,12 @@ on x86-64 processors in 64-bit environments.
@itemx -m64
@itemx -mx32
@itemx -m16
+@itemx -miamcu
@opindex m32
@opindex m64
@opindex mx32
@opindex m16
+@opindex miamcu
Generate code for a 16-bit, 32-bit or 64-bit environment.
The @option{-m32} option sets @code{int}, @code{long}, and pointer types
to 32 bits, and
@@ -15744,6 +15746,9 @@ The @option{-m16} option is the same as @option{-m32}, except for that
it outputs the @code{.code16gcc} assembly directive at the beginning of
the assembly output so that the binary can run in 16-bit mode.
+The @option{-miamcu} option generates code which conforms to Intel MCU
+psABI. It requires the @option{-m32} option to be turned on.
+
@item -mno-red-zone
@opindex mno-red-zone
Do not use a so-called ``red zone'' for x86-64 code. The red zone is mandated