public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/15579] New: tree-ssa regression for C++ altivec tests
@ 2004-05-22 22:05 janis187 at us dot ibm dot com
  2004-05-22 22:36 ` [Bug tree-optimization/15579] [3.5 Regression] always_inline ignored at -O0 pinskia at gcc dot gnu dot org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: janis187 at us dot ibm dot com @ 2004-05-22 22:05 UTC (permalink / raw)
  To: gcc-bugs

Several of the C++ altivec tests (g++.dg/ext/altivec-[24568].C) fail
to compile since the tree-ssa merge when no optimization is used.  For
example, altivec-2.C gets the error "argument to `__builtin_altivec_dst'
must be a 2-bit unsigned literal".  In this case a literal '0' is turned
into a var_decl.  The same test is successful when compiled as C instead
of C++.

-- 
           Summary: tree-ssa regression for C++ altivec tests
           Product: gcc
           Version: 3.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: janis187 at us dot ibm dot com
                CC: aldyh at redhat dot com,gcc-bugs at gcc dot gnu dot org
  GCC host triplet: powerpc-unknown-linux-gnu
GCC target triplet: powerpc-unknown-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15579


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

* [Bug tree-optimization/15579] [3.5 Regression] always_inline ignored at -O0
  2004-05-22 22:05 [Bug c++/15579] New: tree-ssa regression for C++ altivec tests janis187 at us dot ibm dot com
@ 2004-05-22 22:36 ` pinskia at gcc dot gnu dot org
  2004-05-22 22:52 ` [Bug middle-end/15579] " janis187 at us dot ibm dot com
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-05-22 22:36 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-05-21 23:44 -------
Confirmed, the problem is the attribute always_inline is ignored at -O0 causing these regressions.
Another problem is that the constants are not prograted even with -finline.
Here is a small example:
int ghgf(int);

static inline int __attribute__((always_inline)) a(int l)
{
  return ghgf(l);
}
int b()
{
  return a(1);
}

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hubicka at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
          Component|c++                         |tree-optimization
     Ever Confirmed|                            |1
           Keywords|                            |missed-optimization, wrong-
                   |                            |code
   Last reconfirmed|0000-00-00 00:00:00         |2004-05-21 23:44:43
               date|                            |
            Summary|tree-ssa regression for C++ |[3.5 Regression]
                   |altivec tests               |always_inline ignored at -O0
   Target Milestone|---                         |3.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15579


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

* [Bug middle-end/15579] [3.5 Regression] always_inline ignored at -O0
  2004-05-22 22:05 [Bug c++/15579] New: tree-ssa regression for C++ altivec tests janis187 at us dot ibm dot com
  2004-05-22 22:36 ` [Bug tree-optimization/15579] [3.5 Regression] always_inline ignored at -O0 pinskia at gcc dot gnu dot org
@ 2004-05-22 22:52 ` janis187 at us dot ibm dot com
  2004-06-03 23:03 ` steven at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: janis187 at us dot ibm dot com @ 2004-05-22 22:52 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From janis187 at us dot ibm dot com  2004-05-21 23:58 -------
Andrew Pinski says this is broken in the middle-end, not C++ front end.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|tree-optimization           |middle-end


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15579


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

* [Bug middle-end/15579] [3.5 Regression] always_inline ignored at -O0
  2004-05-22 22:05 [Bug c++/15579] New: tree-ssa regression for C++ altivec tests janis187 at us dot ibm dot com
  2004-05-22 22:36 ` [Bug tree-optimization/15579] [3.5 Regression] always_inline ignored at -O0 pinskia at gcc dot gnu dot org
  2004-05-22 22:52 ` [Bug middle-end/15579] " janis187 at us dot ibm dot com
@ 2004-06-03 23:03 ` steven at gcc dot gnu dot org
  2004-09-12  0:43 ` pinskia at gcc dot gnu dot org
  2004-11-27  0:51 ` [Bug middle-end/15579] [4.0 " steven at gcc dot gnu dot org
  4 siblings, 0 replies; 6+ messages in thread
From: steven at gcc dot gnu dot org @ 2004-06-03 23:03 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From steven at gcc dot gnu dot org  2004-06-03 23:02 -------
And I say it is broken for all languages other than C. 
 
This only works because even at -O0 or with -fno-inline, C actually has 
flag_inline_trees set to 1.  The C++ front end does not, and that is the 
correct behavior in my opinion. 
 
Actually I was just working on a patch for this (as part of killing that 
detestable flag_inline_trees/flag_really_no_inline hack).  So I'm taking 
responsibility for this bug in the hope that it will go away with that 
patch I'm working on ;-) 
 
 

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
  BugsThisDependsOn|                            |7257
         AssignedTo|unassigned at gcc dot gnu   |steven at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15579


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

* [Bug middle-end/15579] [3.5 Regression] always_inline ignored at -O0
  2004-05-22 22:05 [Bug c++/15579] New: tree-ssa regression for C++ altivec tests janis187 at us dot ibm dot com
                   ` (2 preceding siblings ...)
  2004-06-03 23:03 ` steven at gcc dot gnu dot org
@ 2004-09-12  0:43 ` pinskia at gcc dot gnu dot org
  2004-11-27  0:51 ` [Bug middle-end/15579] [4.0 " steven at gcc dot gnu dot org
  4 siblings, 0 replies; 6+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-09-12  0:43 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-09-12 00:43 -------
This is fixed now, I don't know what fixed it but it has been fixed.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15579


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

* [Bug middle-end/15579] [4.0 Regression] always_inline ignored at -O0
  2004-05-22 22:05 [Bug c++/15579] New: tree-ssa regression for C++ altivec tests janis187 at us dot ibm dot com
                   ` (3 preceding siblings ...)
  2004-09-12  0:43 ` pinskia at gcc dot gnu dot org
@ 2004-11-27  0:51 ` steven at gcc dot gnu dot org
  4 siblings, 0 replies; 6+ messages in thread
From: steven at gcc dot gnu dot org @ 2004-11-27  0:51 UTC (permalink / raw)
  To: gcc-bugs



-- 
Bug 15579 depends on bug 7257, which changed state.

Bug 7257 Summary: [3.4/4.0 regression] -O3 -fverbose-asm does not display -flag-inline-functions
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=7257

           What    |Old Value                   |New Value
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15579


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

end of thread, other threads:[~2004-11-27  0:51 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-05-22 22:05 [Bug c++/15579] New: tree-ssa regression for C++ altivec tests janis187 at us dot ibm dot com
2004-05-22 22:36 ` [Bug tree-optimization/15579] [3.5 Regression] always_inline ignored at -O0 pinskia at gcc dot gnu dot org
2004-05-22 22:52 ` [Bug middle-end/15579] " janis187 at us dot ibm dot com
2004-06-03 23:03 ` steven at gcc dot gnu dot org
2004-09-12  0:43 ` pinskia at gcc dot gnu dot org
2004-11-27  0:51 ` [Bug middle-end/15579] [4.0 " steven at gcc dot gnu dot org

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).