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/38900] ICE: unable to find a register to spill



------- Comment #17 from rth at gcc dot gnu dot org  2009-07-08 16:59 -------
Subject: Bug 38900

Author: rth
Date: Wed Jul  8 16:59:15 2009
New Revision: 149374

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=149374
Log:
        PR target/38900
        * config/i386/i386.h (CONDITIONAL_REGISTER_USAGE): Move to i386.c.
        (enum reg_class): Add CLOBBERED_REGS.
        (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Likewise.
        * config/i386/i386.c (ix86_conditional_register_usage): Moved
        from CONDITIONAL_REGISTER_USAGE; build CLOBBERED_REGS for 64-bit.
        (ix86_function_ok_for_sibcall): Tidy.  Disallow MS->SYSV sibcalls.
        (ix86_expand_call): Use sibcall_insn_operand when needed.  Don't
        force 64-bit sibcalls into R11.
        * config/i386/constraints.md (U): New constraint.
        * config/i386/i386.md (sibcall_1, sibcall_value_1): Use it.
        (sibcall_1_rex64, sibcall_value_1_rex64): Likewise.
        (sibcall_1_rex64_v, sibcall_value_1_rex64_v): Remove.

Modified:
    branches/gcc-4_4-branch/gcc/ChangeLog
    branches/gcc-4_4-branch/gcc/config/i386/constraints.md
    branches/gcc-4_4-branch/gcc/config/i386/i386-protos.h
    branches/gcc-4_4-branch/gcc/config/i386/i386.c
    branches/gcc-4_4-branch/gcc/config/i386/i386.h
    branches/gcc-4_4-branch/gcc/config/i386/i386.md


-- 


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


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