public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH ARM-Embedded-4_7-branch] fixing incoorect instruction length in checkin r193980
@ 2013-03-01  5:22 Bin Cheng
  2013-03-07  2:19 ` Bin Cheng
  0 siblings, 1 reply; 2+ messages in thread
From: Bin Cheng @ 2013-03-01  5:22 UTC (permalink / raw)
  To: gcc-patches; +Cc: Joey Ye

Hi,
On ARM-Embedded-4_7 branch, check-in(r193980) causes a "branch out of range"
bug. Root cause is the incorrect instruction length set by that check-in.
Since the length of instruction should strictly reflect the pattern it
matches, this patch fixes it by correcting the length.

Patch applied to ARM-Embedded-4_7-branch as r196368.

Thanks.


2013-03-01  Bin Cheng  <bin.cheng@arm.com>

	* config/arm/arm.md (*arm_addsi3, *arm_subsi3_insn, *arm_mulsi3_v6)
	(*arm_andsi3_insn, andsi_notsi_si, *iorsi3_insn, *arm_xorsi3)
	(*arm_shiftsi3): Change attribute length from 2 to 4 for all 
	alternatives.




^ permalink raw reply	[flat|nested] 2+ messages in thread

* RE: [PATCH ARM-Embedded-4_7-branch] fixing incoorect instruction length in checkin r193980
  2013-03-01  5:22 [PATCH ARM-Embedded-4_7-branch] fixing incoorect instruction length in checkin r193980 Bin Cheng
@ 2013-03-07  2:19 ` Bin Cheng
  0 siblings, 0 replies; 2+ messages in thread
From: Bin Cheng @ 2013-03-07  2:19 UTC (permalink / raw)
  To: gcc-patches

[-- Attachment #1: Type: text/plain, Size: 1135 bytes --]

My bad for missing the patch. As stated in previous message, the patch has
already been applied to ARM-Embedded-4_7-Branch.

Thanks.

> -----Original Message-----
> From: gcc-patches-owner@gcc.gnu.org [mailto:gcc-patches-owner@gcc.gnu.org]
On
> Behalf Of Bin Cheng
> Sent: Friday, March 01, 2013 1:18 PM
> To: gcc-patches@gcc.gnu.org
> Cc: Joey Ye
> Subject: [PATCH ARM-Embedded-4_7-branch] fixing incoorect instruction
length
> in checkin r193980
> 
> Hi,
> On ARM-Embedded-4_7 branch, check-in(r193980) causes a "branch out of
range"
> bug. Root cause is the incorrect instruction length set by that check-in.
> Since the length of instruction should strictly reflect the pattern it
matches,
> this patch fixes it by correcting the length.
> 
> Patch applied to ARM-Embedded-4_7-branch as r196368.
> 
> Thanks.
> 
> 
> 2013-03-01  Bin Cheng  <bin.cheng@arm.com>
> 
> 	* config/arm/arm.md (*arm_addsi3, *arm_subsi3_insn, *arm_mulsi3_v6)
> 	(*arm_andsi3_insn, andsi_notsi_si, *iorsi3_insn, *arm_xorsi3)
> 	(*arm_shiftsi3): Change attribute length from 2 to 4 for all
> 	alternatives.
> 
> 
> 
> 

[-- Attachment #2: r193980-fix-length.txt --]
[-- Type: text/plain, Size: 2390 bytes --]

Index: gcc/config/arm/arm.md
===================================================================
--- gcc/config/arm/arm.md	(revision 196332)
+++ gcc/config/arm/arm.md	(working copy)
@@ -746,7 +746,7 @@
 		      operands[1], 0);
   DONE;
   "
-  [(set_attr "length" "2,4,4,4,4,4,2,4,4,4,4,16")
+  [(set_attr "length" "4,4,4,4,4,4,4,4,4,4,4,16")
    (set_attr "predicable" "yes")
    (set_attr "arch" "t2,*,*,*,t2,t2,t2,*,*,t2,t2,*")]
 )
@@ -1234,7 +1234,7 @@
                       INTVAL (operands[1]), operands[0], operands[2], 0);
   DONE;
   "
-  [(set_attr "length" "4,2,4,4,16")
+  [(set_attr "length" "4,4,4,4,16")
    (set_attr "predicable" "yes")
    (set_attr "arch" "*,t2,*,*,*")]
 )
@@ -1360,7 +1360,7 @@
 		 (match_operand:SI 2 "s_register_operand" "0,r")))]
   "TARGET_32BIT && arm_arch6"
   "mul%?\\t%0, %1, %2"
-  [(set_attr "length" "2,4")
+  [(set_attr "length" "4,4")
    (set_attr "insn" "mul")
    (set_attr "predicable" "yes")
    (set_attr "arch" "t2,*")]
@@ -2213,7 +2213,7 @@
 	               INTVAL (operands[2]), operands[0], operands[1], 0);
   DONE;
   "
-  [(set_attr "length" "2,2,4,4,16")
+  [(set_attr "length" "4,4,4,4,16")
    (set_attr "predicable" "yes")
    (set_attr "arch" "t2,t2,*,*,*")]
 )
@@ -2797,7 +2797,7 @@
 		(match_operand:SI 1 "s_register_operand" "0,r")))]
   "TARGET_32BIT"
   "bic%?\\t%0, %1, %2"
-  [(set_attr "length" "2,4")
+  [(set_attr "length" "4,4")
    (set_attr "predicable" "yes")
    (set_attr "arch" "t2,*")]
 )
@@ -2943,7 +2943,7 @@
                       INTVAL (operands[2]), operands[0], operands[1], 0);
   DONE;
 }
-  [(set_attr "length" "2,4,4,16")
+  [(set_attr "length" "4,4,4,16")
    (set_attr "arch" "t2,32,t2,32")
    (set_attr "predicable" "yes")])
 
@@ -3080,7 +3080,7 @@
                       INTVAL (operands[2]), operands[0], operands[1], 0);
   DONE;
 }
-  [(set_attr "length" "2,4,16")
+  [(set_attr "length" "4,4,16")
    (set_attr "predicable" "yes")
    (set_attr "arch" "t2,*,*")]
 )
@@ -3692,7 +3692,7 @@
 	  (match_operand:SI 2 "reg_or_int_operand" "l,rM")]))]
   "TARGET_32BIT"
   "* return arm_output_shift(operands, 0);"
-  [(set_attr "length" "2,4")
+  [(set_attr "length" "4,4")
    (set_attr "predicable" "yes")
    (set_attr "shift" "1")
    (set (attr "type") (if_then_else (match_operand 2 "const_int_operand" "")

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-03-07  2:19 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-01  5:22 [PATCH ARM-Embedded-4_7-branch] fixing incoorect instruction length in checkin r193980 Bin Cheng
2013-03-07  2:19 ` Bin Cheng

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).