This is the mail archive of the gcc-patches@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]

Re: [RFC PATCH] Fix middle-end/6963


	A little more information about the divergence: at -O1, the RTL
difference begins with flow2.  With the function.c patch virtual-stack-vars
reg remains alive after reload:

 (note 120 209 228 NOTE_INSN_DELETED)
 
-(insn 228 120 229 (set (mem/f:DI (plus:DI (reg/f:DI 31 r31)
-                (const_int 120 [0x78])) [0 S8 A64])
+(insn 228 120 229 (set (mem/f:DI (plus:DI (reg/f:DI 111 virtual-stack-vars)
+                (const_int 8 [0x8])) [0 S8 A64])
         (reg/v:DI 63 f31 [119])) 314 {*movdi_internal64} (nil)
     (expr_list:REG_DEAD (reg/v:DI 63 f31 [119])
         (nil)))
 
 (insn 229 228 230 (set (reg:DI 0 r0)
-        (mem/f:DI (plus:DI (reg/f:DI 31 r31)
-                (const_int 120 [0x78])) [0 S8 A64])) 314 {*movdi_internal64} (nil)
+        (mem/f:DI (plus:DI (reg/f:DI 111 virtual-stack-vars)
+                (const_int 8 [0x8])) [0 S8 A64])) 314 {*movdi_internal64} (nil)
     (nil))
 
 (insn 230 229 231 (parallel[ 
@@ -450,15 +450,15 @@
         ] ) 220 {*adddi3_internal3} (insn_list 229 (nil))
     (nil))
 
-(insn 231 230 232 (set (mem/f:DI (plus:DI (reg/f:DI 31 r31)
-                (const_int 120 [0x78])) [0 S8 A64])
+(insn 231 230 232 (set (mem/f:DI (plus:DI (reg/f:DI 111 virtual-stack-vars)
+                (const_int 8 [0x8])) [0 S8 A64])
         (reg:DI 0 r0)) 314 {*movdi_internal64} (insn_list 230 (nil))
     (expr_list:REG_DEAD (reg:DI 0 r0)
         (nil)))
 
 (insn 232 231 233 (set (reg/v:DI 63 f31 [119])
-        (mem/f:DI (plus:DI (reg/f:DI 31 r31)
-                (const_int 120 [0x78])) [0 S8 A64])) 314 {*movdi_internal64} (nil)
+        (mem/f:DI (plus:DI (reg/f:DI 111 virtual-stack-vars)
+                (const_int 8 [0x8])) [0 S8 A64])) 314 {*movdi_internal64} (nil)
     (nil))
 
 (jump_insn 233 232 143 (set (pc)
@@ -470,7 +470,7 @@
         (expr_list:REG_BR_PROB (const_int 8900 [0x22c4])
             (nil))))
 ;; End of basic block 8, registers live:
- 1 [1] 30 [30] 31 [31] 63 [31]
+ 1 [1] 30 [30] 31 [31] 63 [31] 111
 
 (note 143 233 145 NOTE_INSN_LOOP_END)


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