This is the mail archive of the gcc-bugs@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]
Other format: [Raw text]

[Bug target/48032] PowerPC64 -mcmodel=medium invalid ld offset


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48032

--- Comment #2 from Alan Modra <amodra at gcc dot gnu.org> 2011-03-15 02:19:32 UTC ---
Author: amodra
Date: Tue Mar 15 02:19:28 2011
New Revision: 170976

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=170976
Log:
    PR target/48032
    * config/rs6000/rs6000.c (offsettable_ok_by_alignment): Do not
    presume symbol_refs without a symbol_ref_decl are suitably
    aligned, nor other trees we may see here.  Handle anchor symbols.
    (legitimate_constant_pool_address_p): Comment.  Add mode param.
    Check cmodel=medium addresses.  Adjust all calls.
    (rs6000_emit_move): Don't call offsettable_ok_by_alignment on
    creating cmodel=medium optimized access to locals.
    * config/rs6000/constraints.md (R): Pass QImode to
    legitimate_constant_pool_address_p.
    * config/rs6000/predicates.md (input_operand): Pass mode to
    legitimate_constant_pool_address_p.
    * config/rs6000/rs6000-protos.h (legitimate_constant_pool_address_p):
    Update prototype.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/rs6000/constraints.md
    trunk/gcc/config/rs6000/predicates.md
    trunk/gcc/config/rs6000/rs6000-protos.h
    trunk/gcc/config/rs6000/rs6000.c


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