aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2007-03-06 17:38:43 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2007-03-06 16:38:43 +0000
commitdc4d7240dccb7d7bb0d39525e07f145092f587dc (patch)
treef70d17a85450e10da77bd234ac14b80b870a2903 /gcc/doc
parent80fd744fdae18292b5cb67cebceea8b750656c40 (diff)
downloadgcc-dc4d7240dccb7d7bb0d39525e07f145092f587dc.zip
gcc-dc4d7240dccb7d7bb0d39525e07f145092f587dc.tar.gz
gcc-dc4d7240dccb7d7bb0d39525e07f145092f587dc.tar.bz2
reg-stack.c (reg_to_stack): Large models don't allow NAN to be loaded for constant large models.
* reg-stack.c (reg_to_stack): Large models don't allow NAN to be loaded for constant large models. Non-large 64bit PIC can do. * i386.h (CASE_VECTOR_MODE): Large PIC cases are 64bit. * cmodel.h: Add LARGE PIC. * i386.md (UNSPEC_PLTOFF): New. (UNSPEC_SET_RIP, UNSPEC_SET_GOT_OFFSET): New; renumber other unspecs as needed. (*call_1_rex64): Disable for large models. (*call_1_rex64_large): New. (*call_value_1_rex64): Disable for large models. (*call_value_1_rex64_large): New. (set_rip_rex4): New. (set_got_offset_rex64): New. * predicates.md (constant_call_address_operand): For large model constant calls are not possible. * i386-protos.h (construct_plt_address): Declare. * i386.c (override_options): Accept large models. (ix86_expand_prologue): Expand large PIC GOT pointer load. (legitimate_constant_p): Add new UNSPECs. (legitimate_pic_operand_p): Likewise. (legitimate_pic_address_disp_p): Disallow local symbols for large PICs. (legitimize_pic_address): Do easy RIP relative way for TLS only for non-large model. (output_pic_addr_const): Add PLTOFF. (ix86_output_addr_diff_elt): Output 64bit tables when needed. (ix86_expand_move): Legitimize pic address when in PIC mode. (construct_plt_address): New function. (ix86_expand_call): Offload the address to register and use GOT pointer for large model. * invoke.texi (mcmodel=large): Update documentation. From-SVN: r122623
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/invoke.texi3
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 84dd396..7e15dbf 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -10142,8 +10142,7 @@ building of shared libraries are not supported with the medium model.
@item -mcmodel=large
@opindex mcmodel=large
Generate code for the large model: This model makes no assumptions
-about addresses and sizes of sections. Currently GCC does not implement
-this model.
+about addresses and sizes of sections.
@end table
@node IA-64 Options