r192769 - in /branches/gcc-4_7-branch/gcc: Chan...
uros@gcc.gnu.org
uros@gcc.gnu.org
Wed Oct 24 15:27:00 GMT 2012
Author: uros
Date: Wed Oct 24 15:27:47 2012
New Revision: 192769
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=192769
Log:
Backport from mainline
2012-10-22 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.c (memory_address_length): Assert that non-null
base or index RTXes are registers. Do not check for REG RTXes.
Determine addr32 prefix using SImode_address_operand or
from original base and index RTXes. Simplify code.
2012-10-21 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386-protos.h (memory_address_length): Add new bool
argument. Update all uses.
* config/i386/i386.c (memory_address_length): If not LEA insn, then
add length of addr32 prefix based on mode of base or index register.
(ix86_attr_length_address_default) <TYPE_LEA>: Do not handle SImode
addresses here. Update call to memory_address_length.
(ix86_print_address_operand): Use SImode_address_operand predicate.
* config/i386/predicates.md (SImode_address_operand): New.
* config/i386/i386.md (lea<mode>): Use SImode_address_operand
to calculate "mode" attribute. Use SImode_address_operand predicate
instead of open-coding accepted RTX codes.
Modified:
branches/gcc-4_7-branch/gcc/ChangeLog
branches/gcc-4_7-branch/gcc/config/i386/i386-protos.h
branches/gcc-4_7-branch/gcc/config/i386/i386.c
branches/gcc-4_7-branch/gcc/config/i386/i386.md
branches/gcc-4_7-branch/gcc/config/i386/predicates.md
More information about the Gcc-cvs
mailing list