vapier 14/07/31 06:31:00
Modified: 90_all_gcc-4.7-x32.patch README.history
Log:
update of x32 patch by Greg Turner #513686
Revision ChangesPath
1.2 src/patchsets/gcc/4.7.4/gentoo/90_all_gcc-4.7-x32.patch
file :
http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.7.4/gentoo/90_all_gcc-4.7-x32.patch?rev=1.2&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.7.4/gentoo/90_all_gcc-4.7-x32.patch?rev=1.2&content-type=text/plain
diff :
http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.7.4/gentoo/90_all_gcc-4.7-x32.patch?r1=1.1&r2=1.2
Index: 90_all_gcc-4.7-x32.patch
===
RCS file:
/var/cvsroot/gentoo/src/patchsets/gcc/4.7.4/gentoo/90_all_gcc-4.7-x32.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 90_all_gcc-4.7-x32.patch17 Jun 2014 01:47:24 - 1.1
+++ 90_all_gcc-4.7-x32.patch31 Jul 2014 06:31:00 - 1.2
@@ -649,18 +649,18 @@
@@ -10389,14 +10482,18 @@ ix86_expand_prologue (void)
if (r10_live && eax_live)
{
- t = choose_baseaddr (m->fs.sp_offset - allocate);
+ t = gen_rtx_PLUS (Pmode, stack_pointer_rtx, eax);
-emit_move_insn (r10, gen_frame_mem (Pmode, t));
+emit_move_insn (gen_rtx_REG (word_mode, R10_REG),
+gen_frame_mem (word_mode, t));
- t = choose_baseaddr (m->fs.sp_offset - allocate - UNITS_PER_WORD);
+ t = plus_constant (t, UNITS_PER_WORD);
-emit_move_insn (eax, gen_frame_mem (Pmode, t));
+emit_move_insn (gen_rtx_REG (word_mode, AX_REG),
+gen_frame_mem (word_mode, t));
}
else if (eax_live || r10_live)
{
- t = choose_baseaddr (m->fs.sp_offset - allocate);
+ t = gen_rtx_PLUS (Pmode, stack_pointer_rtx, eax);
-emit_move_insn ((eax_live ? eax : r10), gen_frame_mem (Pmode, t));
+emit_move_insn (gen_rtx_REG (word_mode,
+ (eax_live ? AX_REG : R10_REG)),
@@ -1145,15 +1145,14 @@
(clobber (mem:BLK (scratch)))]
""
"pop{}\t%0"
-@@ -3399,9 +3406,9 @@
- })
+@@ -3399,8 +3406,8 @@
(define_insn "*zero_extendsidi2_rex64"
-- [(set (match_operand:DI 0 "nonimmediate_operand" "=r,o,?*Ym,?*y,?*Yi,*x")
-+ [(set (match_operand:DI 0 "nonimmediate_operand" "=r
,o,?*Ym,?*y,?*Yi,*x")
+- [(set (match_operand:DI 0 "nonimmediate_operand" "=r,o,?*Ym,?!*y,?*Yi,*x")
++ [(set (match_operand:DI 0 "nonimmediate_operand" "=r
,o,?*Ym,?!*y,?*Yi,*x")
(zero_extend:DI
-- (match_operand:SI 1 "nonimmediate_operand" "rm,0,r ,m ,r ,m")))]
-+ (match_operand:SI 1 "x86_64_zext_general_operand" "rmWz,0,r ,m ,r
,m")))]
+- (match_operand:SI 1 "nonimmediate_operand" "rm,0,r ,m ,r ,m")))]
++ (match_operand:SI 1 "x86_64_zext_general_operand" "rmWz,0,r ,m ,r
,m")))]
"TARGET_64BIT"
"@
mov{l}\t{%1, %k0|%k0, %1}
@@ -1544,10 +1543,11 @@
(match_operand:DI 2 "register_operand" "a"))
- (set (match_operand:DI 0 "register_operand" "=D")
- (plus:DI (match_dup 1)
-- (const_int 8)))]
+- (const_int 8)))
+ (set (match_operand:P 0 "register_operand" "=D")
+ (plus:P (match_dup 1)
-+ (const_int 8)))]
++ (const_int 8)))
+(unspec [(const_int 0)] UNSPEC_STOS)]
"TARGET_64BIT
&& !(fixed_regs[AX_REG] || fixed_regs[DI_REG])"
- "stosq"
@@ -1556,8 +1556,8 @@
(set_attr "memory" "store")
(set_attr "mode" "DI")])
@@ -15936,7 +15951,7 @@
- (plus:P (match_dup 1)
- (const_int 4)))]
+ (const_int 4)))
+(unspec [(const_int 0)] UNSPEC_STOS)]
"!(fixed_regs[AX_REG] || fixed_regs[DI_REG])"
- "stos{l|d}"
+ "%^stos{l|d}"
@@ -1565,8 +1565,8 @@
(set_attr "memory" "store")
(set_attr "mode" "SI")])
@@ -15948,7 +15963,7 @@
- (plus:P (match_dup 1)
- (const_int 2)))]
+ (const_int 2)))
+(unspec [(const_int 0)] UNSPEC_STOS)]
"!(fixed_regs[AX_REG] || fixed_regs[DI_REG])"
- "stosw"
+ "%^stosw"
@@ -1574,8 +1574,8 @@
(set_attr "memory" "store")
(set_attr "mode" "HI")])
@@ -15960,7 +15975,7 @@
- (plus:P (match_dup 1)
- (const_int 1)))]
+ (const_int 1)))
+(unspec [(const_int 0)] UNSPEC_STOS)]
"!(fixed_regs[AX_REG] || fixed_regs[DI_REG])"
- "stosb"
+ "%^stosb"
1.4 src/patchsets/gcc/4.7.4/gentoo/README.history
file :
http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.7.4/gentoo/README.history?rev=1.4&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.7.4/gentoo/README.history?rev=1.4&content-type=text/plain
diff :
http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.7.4/gentoo/README.history?r1=1.3&r2=1.4
Index: README.histor