* [Bug ada/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
@ 2006-01-24 12:25 ` ebotcazou at gcc dot gnu dot org
2006-01-24 13:17 ` ebotcazou at gcc dot gnu dot org
` (15 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2006-01-24 12:25 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from ebotcazou at gcc dot gnu dot org 2006-01-24 12:25 -------
Yup.
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |ebotcazou at gcc dot gnu dot
| |org
Summary|ACATS FAIL cxa4024 |[4.2 Regression] ACATS
|Ada.Strings.Maps on x86- |cxa4024 failure
|linux |
Target Milestone|--- |4.2.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug ada/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
2006-01-24 12:25 ` [Bug ada/25703] [4.2 Regression] ACATS cxa4024 failure ebotcazou at gcc dot gnu dot org
@ 2006-01-24 13:17 ` ebotcazou at gcc dot gnu dot org
2006-01-24 18:44 ` ebotcazou at gcc dot gnu dot org
` (14 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2006-01-24 13:17 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from ebotcazou at gcc dot gnu dot org 2006-01-24 13:17 -------
Yup 2. :-)
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2006-01-24 13:17:06
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug ada/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
2006-01-24 12:25 ` [Bug ada/25703] [4.2 Regression] ACATS cxa4024 failure ebotcazou at gcc dot gnu dot org
2006-01-24 13:17 ` ebotcazou at gcc dot gnu dot org
@ 2006-01-24 18:44 ` ebotcazou at gcc dot gnu dot org
2006-01-24 21:37 ` [Bug rtl-optimization/25703] " ebotcazou at gcc dot gnu dot org
` (13 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2006-01-24 18:44 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from ebotcazou at gcc dot gnu dot org 2006-01-24 18:43 -------
Working on it, it's the combiner.
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |ebotcazou at gcc dot gnu dot
|dot org |org
Status|NEW |ASSIGNED
Last reconfirmed|2006-01-24 13:17:06 |2006-01-24 18:43:57
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (2 preceding siblings ...)
2006-01-24 18:44 ` ebotcazou at gcc dot gnu dot org
@ 2006-01-24 21:37 ` ebotcazou at gcc dot gnu dot org
2006-01-25 1:05 ` roger at eyesopen dot com
` (12 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2006-01-24 21:37 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from ebotcazou at gcc dot gnu dot org 2006-01-24 21:37 -------
Recategorizing.
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|ada |rtl-optimization
GCC host triplet|i686-pc-linux-gnu |
GCC target triplet| |i?86-*-*
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (3 preceding siblings ...)
2006-01-24 21:37 ` [Bug rtl-optimization/25703] " ebotcazou at gcc dot gnu dot org
@ 2006-01-25 1:05 ` roger at eyesopen dot com
2006-01-25 13:52 ` ebotcazou at gcc dot gnu dot org
` (11 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: roger at eyesopen dot com @ 2006-01-25 1:05 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from roger at eyesopen dot com 2006-01-25 01:05 -------
I'm testing the following patch...
Index: combine.c
===================================================================
*** combine.c (revision 109912)
--- combine.c (working copy)
*************** try_combine (rtx i3, rtx i2, rtx i1, int
*** 1967,1972 ****
--- 1967,1983 ----
if (BITS_BIG_ENDIAN)
offset = GET_MODE_BITSIZE (GET_MODE (XEXP (dest, 0)))
- width - offset;
+
+ /* If this is the low part, we're done. */
+ if (subreg_lowpart_p (XEXP (dest, 0)))
+ ;
+ /* Handle the case where inner is twice the size of outer. */
+ else if (GET_MODE_BITSIZE (GET_MODE (SET_DEST (temp)))
+ == 2 * GET_MODE_BITSIZE (GET_MODE (XEXP (dest, 0))))
+ offset += GET_MODE_BITSIZE (GET_MODE (XEXP (dest, 0)));
+ /* Otherwise give up for now. */
+ else
+ offset = -1;
}
}
else if (subreg_lowpart_p (dest))
My apologies for any inconvenience.
--
roger at eyesopen dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |roger at eyesopen dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (4 preceding siblings ...)
2006-01-25 1:05 ` roger at eyesopen dot com
@ 2006-01-25 13:52 ` ebotcazou at gcc dot gnu dot org
2006-01-25 18:19 ` hjl at lucon dot org
` (10 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2006-01-25 13:52 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from ebotcazou at gcc dot gnu dot org 2006-01-25 13:52 -------
*** Bug 25899 has been marked as a duplicate of this bug. ***
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (5 preceding siblings ...)
2006-01-25 13:52 ` ebotcazou at gcc dot gnu dot org
@ 2006-01-25 18:19 ` hjl at lucon dot org
2006-01-25 18:27 ` ebotcazou at gcc dot gnu dot org
` (9 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: hjl at lucon dot org @ 2006-01-25 18:19 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from hjl at lucon dot org 2006-01-25 18:19 -------
I tried the patch in comment 5. It doesn't fix c34006a and cc1226b on
Linux/i686.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (6 preceding siblings ...)
2006-01-25 18:19 ` hjl at lucon dot org
@ 2006-01-25 18:27 ` ebotcazou at gcc dot gnu dot org
2006-01-25 18:41 ` hjl at lucon dot org
` (8 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2006-01-25 18:27 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from ebotcazou at gcc dot gnu dot org 2006-01-25 18:27 -------
> I tried the patch in comment 5. It doesn't fix c34006a and cc1226b on
> Linux/i686.
Does it change anything for Jan's testcase?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (7 preceding siblings ...)
2006-01-25 18:27 ` ebotcazou at gcc dot gnu dot org
@ 2006-01-25 18:41 ` hjl at lucon dot org
2006-01-25 18:59 ` ebotcazou at gcc dot gnu dot org
` (7 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: hjl at lucon dot org @ 2006-01-25 18:41 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from hjl at lucon dot org 2006-01-25 18:41 -------
No, it still needs -mtune=pentiumpro to pass.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (8 preceding siblings ...)
2006-01-25 18:41 ` hjl at lucon dot org
@ 2006-01-25 18:59 ` ebotcazou at gcc dot gnu dot org
2006-01-25 19:53 ` roger at eyesopen dot com
` (6 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2006-01-25 18:59 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from ebotcazou at gcc dot gnu dot org 2006-01-25 18:59 -------
> No, it still needs -mtune=pentiumpro to pass.
OK, thanks, I see the problem.
Roger, if you haven't already plugged it, the very same hole is present in the
STRICT_LOW_PART case too. For Jan's testcase:
(insn 10 35 12 2 (set (zero_extract:SI (subreg:SI (reg/v:DI 58 [ a ]) 4)
(const_int 8 [0x8])
(const_int 8 [0x8]))
(const_int 1 [0x1])) 53 {movsi_insv_1} (insn_list:REG_DEP_TRUE 35
(nil))
(nil))
(insn 12 10 14 2 (set (subreg:SI (reg/v:DI 58 [ a ]) 0)
(const_int 1 [0x1])) 34 {*movsi_1} (insn_list:REG_DEP_TRUE 10 (nil))
(nil))
(insn 14 12 16 2 (set (strict_low_part (subreg:QI (reg/v:DI 58 [ a ]) 4))
(const_int 1 [0x1])) 46 {*movstrictqi_1} (insn_list:REG_DEP_TRUE 12
(nil))
(nil))
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (9 preceding siblings ...)
2006-01-25 18:59 ` ebotcazou at gcc dot gnu dot org
@ 2006-01-25 19:53 ` roger at eyesopen dot com
2006-01-25 20:15 ` hjl at lucon dot org
` (5 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: roger at eyesopen dot com @ 2006-01-25 19:53 UTC (permalink / raw)
To: gcc-bugs
------- Comment #11 from roger at eyesopen dot com 2006-01-25 19:52 -------
Created an attachment (id=10729)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10729&action=view)
patch v2
Here's a revised version of the patch that also handles the STRICT_LOW_PART
case.
My apologies once again for the inconvenience. In the previous version of the
patch I'd mistakenly assumed that STRICT_LOW_PART was some indication that the
SUBREG only affected the "low_part". Investigating Jan's testcase with
-mtune=i486, I now understand it really means STRICT_SUB_PART, and actually
behaves identically to SUBREG in this optimization, as we preserve all of the
unaffected bits anyway!
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (10 preceding siblings ...)
2006-01-25 19:53 ` roger at eyesopen dot com
@ 2006-01-25 20:15 ` hjl at lucon dot org
2006-01-25 20:15 ` ebotcazou at gcc dot gnu dot org
` (4 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: hjl at lucon dot org @ 2006-01-25 20:15 UTC (permalink / raw)
To: gcc-bugs
------- Comment #12 from hjl at lucon dot org 2006-01-25 20:14 -------
Patch in comment 11 looks good. c34006a, cc1226b and Jan's C testcase now
pass.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (11 preceding siblings ...)
2006-01-25 20:15 ` hjl at lucon dot org
@ 2006-01-25 20:15 ` ebotcazou at gcc dot gnu dot org
2006-01-25 20:47 ` hjl at lucon dot org
` (3 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2006-01-25 20:15 UTC (permalink / raw)
To: gcc-bugs
------- Comment #13 from ebotcazou at gcc dot gnu dot org 2006-01-25 20:15 -------
> My apologies once again for the inconvenience. In the previous version of the
> patch I'd mistakenly assumed that STRICT_LOW_PART was some indication that the
> SUBREG only affected the "low_part". Investigating Jan's testcase with
> -mtune=i486, I now understand it really means STRICT_SUB_PART, and actually
> behaves identically to SUBREG in this optimization, as we preserve all of the
> unaffected bits anyway!
You're right, the manual doesn't seem to allow that kind of STRICT_LOW_PARTs:
`(strict_low_part (subreg:M (reg:N R) 0))'
This expression code is used in only one context: as the
destination operand of a `set' expression. In addition, the
operand of this expression must be a non-paradoxical `subreg'
expression.
The presence of `strict_low_part' says that the part of the
register which is meaningful in mode N, but is not part of mode M,
is not to be altered. Normally, an assignment to such a subreg is
allowed to have undefined effects on the rest of the register when
M is less than a word.
Is that a typo in the manual? What happens on big-endian?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (12 preceding siblings ...)
2006-01-25 20:15 ` ebotcazou at gcc dot gnu dot org
@ 2006-01-25 20:47 ` hjl at lucon dot org
2006-01-25 20:54 ` ebotcazou at gcc dot gnu dot org
` (2 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: hjl at lucon dot org @ 2006-01-25 20:47 UTC (permalink / raw)
To: gcc-bugs
------- Comment #14 from hjl at lucon dot org 2006-01-25 20:47 -------
FYI, I got
LAST_UPDATED: Wed Jan 25 17:12:12 UTC 2006 (revision 110216)
=== acats tests ===
FAIL: c32001e
FAIL: c64105b
FAIL: c95086b
FAIL: cdd2a02
=== acats Summary ===
# of expected passes 2312
# of unexpected failures 4
Native configuration is i686-pc-linux-gnu
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (13 preceding siblings ...)
2006-01-25 20:47 ` hjl at lucon dot org
@ 2006-01-25 20:54 ` ebotcazou at gcc dot gnu dot org
2006-01-26 2:48 ` sayle at gcc dot gnu dot org
2006-01-26 7:04 ` ebotcazou at gcc dot gnu dot org
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2006-01-25 20:54 UTC (permalink / raw)
To: gcc-bugs
------- Comment #15 from ebotcazou at gcc dot gnu dot org 2006-01-25 20:54 -------
> LAST_UPDATED: Wed Jan 25 17:12:12 UTC 2006 (revision 110216)
>
> === acats tests ===
> FAIL: c32001e
> FAIL: c64105b
> FAIL: c95086b
> FAIL: cdd2a02
>
> === acats Summary ===
> # of expected passes 2312
> # of unexpected failures 4
> Native configuration is i686-pc-linux-gnu
Nominal status in 4.1/4.2 when Tree-SRA is enabled. The 4 failures stem from
a couple of bad interactions between the Ada front-end and Tree-SRA.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (14 preceding siblings ...)
2006-01-25 20:54 ` ebotcazou at gcc dot gnu dot org
@ 2006-01-26 2:48 ` sayle at gcc dot gnu dot org
2006-01-26 7:04 ` ebotcazou at gcc dot gnu dot org
16 siblings, 0 replies; 18+ messages in thread
From: sayle at gcc dot gnu dot org @ 2006-01-26 2:48 UTC (permalink / raw)
To: gcc-bugs
------- Comment #16 from sayle at gcc dot gnu dot org 2006-01-26 02:48 -------
Subject: Bug 25703
Author: sayle
Date: Thu Jan 26 02:48:01 2006
New Revision: 110242
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110242
Log:
PR rtl-optimization/25703
* combine.c (try_combine): Handle zero_extract and strict_low_part
of non-lowpart SUBREGs for constant reg_subword_p set optimization.
* gcc.target/i386/20060125-1.c: New test case.
* gcc.target/i386/20060125-2.c: New test case.
Added:
trunk/gcc/testsuite/gcc.target/i386/20060125-1.c
trunk/gcc/testsuite/gcc.target/i386/20060125-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/combine.c
trunk/gcc/testsuite/ChangeLog
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug rtl-optimization/25703] [4.2 Regression] ACATS cxa4024 failure
2006-01-06 22:12 [Bug ada/25703] New: ACATS FAIL cxa4024 Ada.Strings.Maps on x86-linux laurent at guerby dot net
` (15 preceding siblings ...)
2006-01-26 2:48 ` sayle at gcc dot gnu dot org
@ 2006-01-26 7:04 ` ebotcazou at gcc dot gnu dot org
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2006-01-26 7:04 UTC (permalink / raw)
To: gcc-bugs
------- Comment #17 from ebotcazou at gcc dot gnu dot org 2006-01-26 07:04 -------
http://gcc.gnu.org/ml/gcc-patches/2006-01/msg01786.html
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25703
^ permalink raw reply [flat|nested] 18+ messages in thread