[Bug ada/19488] RTEMS Ada RTS doesn't compile

2005-02-06 Thread laurent at guerby dot net

--- Additional Comments From laurent at guerby dot net  2005-02-06 09:50 
---
Fixed by last commit
--- Additional Comments From laurent at guerby dot net  2005-02-06 09:57 
---
Fixed by last commit

-- 
   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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


[Bug ada/19489] gnat tools not buildable cross

2005-02-06 Thread laurent at guerby dot net

--- Additional Comments From laurent at guerby dot net  2005-02-06 10:02 
---
(In reply to comment #19)

Nathanel I confirm your small patch (+autoconf) restores Ada cross x86 to
powerpc-rtems build, and I've even been able to powerpc-rtems-gnatmake Ada
examples and run them on gdb psim. It also does not break native bootstrap as
far as I can tell, so all looks good for commit testing wise.

Thanks for helping!

-- 
Bug 19489 depends on bug 19488, which changed state.

Bug 19488 Summary: RTEMS Ada RTS doesn't compile
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19488

   What|Old Value   |New Value

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED

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


[Bug tree-optimization/19786] New: Aliasing optimisation bug

2005-02-06 Thread sylvain dot pion at sophia dot inria dot fr
The attached C++ program triggers an assertion violation when compiled with -O2
(it should not).
The assertion is not triggered when adding -fno-strict-aliasing, or when 
removing
-O2.  It is also working when slight changes to the program are made (see 
comments
in the source).  It is the smallest version of the program which allowed me to
reproduce the bug, but I did not try to look into the  header.

It might be an aliasing bug in , I don't know.
Note that g++ 3.4 works fine.

-- 
   Summary: Aliasing optimisation bug
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: critical
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sylvain dot pion at sophia dot inria dot fr
CC: gcc-bugs at gcc dot gnu dot org
  GCC host triplet: i686-pc-linux-gnu


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


[Bug tree-optimization/19786] Aliasing optimisation bug

2005-02-06 Thread sylvain dot pion at sophia dot inria dot fr

--- Additional Comments From sylvain dot pion at sophia dot inria dot fr  
2005-02-06 10:20 ---
Created an attachment (id=8135)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=8135&action=view)
Compile with -O2 and execute

It is not preprocessed, but uses  (and  for illustration).
I can send a preprocessed version if needed.

-- 


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


[Bug other/19525] [4.0 Regression] In-build-directory multilib testing broken

2005-02-06 Thread aj at gcc dot gnu dot org

--- Additional Comments From aj at gcc dot gnu dot org  2005-02-06 10:27 
---
See also http://gcc.gnu.org/ml/gcc/2004-12/msg01142.html 
 
This appears also on x86-64. 

-- 
   What|Removed |Added

 CC||aj at gcc dot gnu dot org


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


[Bug c++/19787] New: Internal compiler error with ambiguous conversion functions

2005-02-06 Thread belz at kolumbus dot fi
struct H {
operator char();
operator short();
};

int const& ref = H();

output:
oref.cpp:7: error: conversion from 'H' to 'const int' is ambiguous
oref.cpp:4: note: candidates are: H::operator short int()
oref.cpp:3: note: H::operator char()
oref.cpp:7: internal compiler error: tree check: expected class 'type', have 
'exceptional' (error_mark) in initialize_reference, at cp/call.c:6586
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html> for instructions.

using:
$ g++ -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../gcc/configure --enable-languages=c++,c --enable-
threads=posix
Thread model: posix
gcc version 4.0.0 20050203 (experimental)


This is a regression from earlier versions. There does not seem to be any 
problems if I do the reference binding in block scope.


Mikael

-- 
   Summary: Internal compiler error with ambiguous conversion
functions
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: belz at kolumbus dot fi
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug c/19664] libstdc++ headers should have pop/push of the visibility around the declarations

2005-02-06 Thread giovannibajo at libero dot it

--- Additional Comments From giovannibajo at libero dot it  2005-02-06 
13:11 ---
So this is both a compiler bug and a v3 bug. HJL provided a patch for the C++ 
frontend here:
http://gcc.gnu.org/ml/gcc-patches/2005-02/msg00180.html
Notice that the patch is incomplete because it is missing a testcase.

-- 
   What|Removed |Added

   Keywords||patch


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


[Bug tree-optimization/19788] New: Inconsistent handling of -1.

2005-02-06 Thread kazu at cs dot umass dot edu
Consider:

int
foo (void)
{
  return -1;
}

int
bar (void)
{
  unsigned int a = 0x;
  return a;
}

int
baz (void)
{
  int a = -1;
  unsigned int b = 0x;
  return a == (int) b;
}

Here is what I get:

;; Function foo (foo)

foo ()
{
:
  return -1;

}

;; Function bar (bar)

bar ()
{
  int D.1124;

:
  D.1124 = -1;
  return D.1124;

}

;; Function baz (baz)

baz ()
{
  int b.0;

:
  b.0 = -1;
  return b.0 == -1;

}

Note that -1 is represented in two different ways in foo and bar.
Worse yet, the tree optimizers do not know that they are equal in baz.
baz is optimized as expected at RTL level.

-- 
   Summary: Inconsistent handling of -1.
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Keywords: missed-optimization, TREE
  Severity: enhancement
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kazu at cs dot umass dot edu
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug c/19664] libstdc++ headers should have pop/push of the visibility around the declarations

2005-02-06 Thread pcarlini at suse dot de

--- Additional Comments From pcarlini at suse dot de  2005-02-06 13:19 
---
A testcase suitably distilled from #11 should do.

For the libstdc++ side of the problem, we are missing a testcase. Probably, it's
better opening a separate, complete libstdc++ PR: then fixing the latter will be
straightforward (just add push/pop everywhere, I have a draft ready).

-- 


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


[Bug tree-optimization/19789] New: tree optimizers do not know that constant global variables do not change

2005-02-06 Thread kazu at cs dot umass dot edu
Consider:

void abort (void) __attribute__ ((noreturn));

union node
{
  int dummy;
  union node *ptr;
};

extern void bar (union node *tree);

extern const int global_constant;

void
foo (union node *p)
{
  if (global_constant == 1)
abort ();

  bar (p->ptr);

  if (global_constant == 1)
abort ();
}

Note that if we get to the second "if", we know that global_constant != 1,
so we could remove the second "if".

The tree optimizers do not take this opportunity, but the RTL optimizers do.

-- 
   Summary: tree optimizers do not know that constant global
variables do not change
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Keywords: missed-optimization, TREE
  Severity: enhancement
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kazu at cs dot umass dot edu
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug c/19664] libstdc++ headers should have pop/push of the visibility around the declarations

2005-02-06 Thread pcarlini at suse dot de

--- Additional Comments From pcarlini at suse dot de  2005-02-06 13:22 
---
But, on second thought, sorry, I think we have also a third problem, target
dependent, for R_X86_64_PC32 relocaltions wrongly emitted for global symbols
on x86_64.

-- 


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


[Bug c/19664] libstdc++ headers should have pop/push of the visibility around the declarations

2005-02-06 Thread pcarlini at suse dot de

--- Additional Comments From pcarlini at suse dot de  2005-02-06 13:24 
---
Actually, the testcase in comment #11 is about the *third* issue, AFAICS.

-- 


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


[Bug tree-optimization/19790] New: equality not noticed when signedness differs.

2005-02-06 Thread kazu at cs dot umass dot edu
Consider:

extern void bar (int);

foo (int *array)
{
  int i;

  for (i = 0; i <= 10; i++)
{
  bar (i + 1);
  array[i / ((unsigned) 32)] |= ((unsigned long) 1) << (i % ((unsigned) 
(32)));
}
}

The last tree SSA dump looks like so:

foo (array)
{
  unsigned int D.1154;
  unsigned int D.1152;
  unsigned int D.1153;
  unsigned int ivtmp.5;
  int pretmp.4;
  unsigned int pretmp.3;
  int pretmp.2;
  int i;
  int D.1136;
  long unsigned int D.1135;
  long unsigned int D.1134;
  int D.1133;
  long unsigned int D.1132;
  int D.1131;
  int * D.1130;
  int * D.1129;
  unsigned int D.1128;
  unsigned int D.1127;
  unsigned int i.0;
  int D.1125;

:

  # i_24 = PHI ;
:;
  D.1152_7 = (unsigned int) i_24;
  D.1153_20 = D.1152_7 + 1;
  i_1 = (int) D.1153_20;
  bar (i_1);
  D.1154_27 = (unsigned int) i_1;
  i.0_28 = D.1154_27 + 0;
  D.1127_5 = i.0_28 >> 5;
  D.1128_10 = D.1127_5 * 4;
  D.1129_11 = (int *) D.1128_10;
  D.1130_12 = array_8 + D.1129_11;
  D.1131_13 = *D.1130_12;
  D.1132_14 = (long unsigned int) D.1131_13;
  D.1133_15 = i_24 & 31;
  D.1134_16 = 1 << D.1133_15;
  D.1135_17 = D.1132_14 | D.1134_16;
  D.1136_18 = (int) D.1135_17;
  *D.1130_12 = D.1136_18;
  if (D.1153_20 != 11) goto ; else goto ;

:;
  return;

}

Note that D.1152_7 == i.0_28, but this equality is not noticed
at tree level due to signedness changes in between.

We should replace the definition of i.0_28 as

  i.0_28 = D.1152_7;

and the copy propagation should take care of the rest.

The rtl optimizers catch this opportunity.

-- 
   Summary: equality not noticed when signedness differs.
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Keywords: missed-optimization, TREE
  Severity: enhancement
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kazu at cs dot umass dot edu
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug tree-optimization/19791] New: [tcb] A constant not fully propagated

2005-02-06 Thread kazu at cs dot umass dot edu
Consider:

extern void abort (void) __attribute__ ((__noreturn__));

extern int bar (int, int);

int
foo (int mode, int size, unsigned int align)
{
  int align0;
  int iftmp1;

  if (mode == 0)
{
  if (align != 128)
abort ();
}

  align0 = (int) align;
  if (mode == 0)
{
  int D1131 = align0 / 8;
  int D1132 = D1131 + size;
  int D1133 = D1132 - 1;
  int D1134 = D1131 - 1;
  int D1135 = ~D1134;

  iftmp1 = D1133 & D1135;
}
  else
{
  iftmp1 = size;
}

  return bar (iftmp1, align0);
}

Note that if we get to the basic block that starts with "int D1131",
we know that align0 == 128, which can be propagated.

The last tree SSA dump looks like so:

foo (mode, size, align)
{
  int prephitmp.1;
  int pretmp.0;
  int D1135;
  int D1134;
  int D1133;
  int D1132;
  int D1131;
  int iftmp1;
  int align0;
  int D.1134;
  int D.1133;

:
  if (mode_4 == 0) goto ; else goto ;

:;
  if (align_6 != 128) goto ; else goto ;

:;
  abort ();

:;
  align0_5 = (int) align_6;

Invalid sum of outgoing probabilities 0.0%
Invalid sum of incoming frequencies 5000, should be 0
  # align0_2 = PHI ;
:;

Invalid sum of incoming frequencies 0, should be 9950
  # align0_7 = PHI ;
  # iftmp1_3 = PHI ;
:;
  D.1133_8 = bar (iftmp1_3, align0_7) [tail call];
  return D.1133_8;

Invalid sum of incoming frequencies 4950, should be 0
  # align0_9 = PHI <128(1)>;
:;
  D1131_13 = align0_9 / 8;
  D1132_14 = size_11 + D1131_13;
  D1133_15 = D1132_14 - 1;
  D1134_16 = D1131_13 - 1;
  D1135_17 = ~D1134_16;
  iftmp1_18 = D1133_15 & D1135_17;
  goto  ();

}

Notice

  # align0_9 = PHI <128(1)>;

which means we are missing the obvious constant propagation opportunity.

This opportunity is picked up at the RTL level.

On mainline, the opportunity is not as obvious, but the RTL optimizers do
take care of this.

-- 
   Summary: [tcb] A constant not fully propagated
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Keywords: missed-optimization, TREE
  Severity: enhancement
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kazu at cs dot umass dot edu
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug tree-optimization/19792] New: Missed optimizations due to signedness in the way

2005-02-06 Thread kazu at cs dot umass dot edu
Consider:

extern unsigned char size_lookup[257];

int
foo (unsigned int t)
{
  return (size_lookup [(int) t] == size_lookup[t]);
}

int
bar (unsigned int t)
{
  int a = t;
  return a == t;
}

Both functions should return 1, and in fact that's what the RTL optimizers
notice, but the tree optimizers don't.

This is somewhat related to PR 19790.

-- 
   Summary: Missed optimizations due to signedness in the way
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Keywords: missed-optimization, TREE
  Severity: enhancement
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kazu at cs dot umass dot edu
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug tree-optimization/19790] equality not noticed when signedness differs.

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

 CC||stevenb at suse dot de


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


[Bug tree-optimization/19792] Missed optimizations due to signedness in the way

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

 CC||stevenb at suse dot de


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


[Bug tree-optimization/19789] tree optimizers do not know that constant global variables do not change

2005-02-06 Thread steven at gcc dot gnu dot org

--- Additional Comments From steven at gcc dot gnu dot org  2005-02-06 
15:04 ---
Can you see if global_constant is marked call-clobbered, or alias global_var? 

-- 


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


[Bug c++/19787] [4.0 Regression] Internal compiler error with ambiguous conversion functions

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
15:19 ---
Confirmed, I think is a regression (even though it does not show up with 
checking).

-- 
   What|Removed |Added

   Severity|normal  |minor
 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Keywords||error-recovery, ice-
   ||checking, ice-on-invalid-
   ||code
   Last reconfirmed|-00-00 00:00:00 |2005-02-06 15:19:13
   date||
Summary|Internal compiler error with|[4.0 Regression] Internal
   |ambiguous conversion|compiler error with
   |functions   |ambiguous conversion
   ||functions
   Target Milestone|--- |4.0.0


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


[Bug tree-optimization/19786] Aliasing optimisation bug

2005-02-06 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

   Attachment #8135|application/octet-stream|text/plain
  mime type||


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


[Bug bootstrap/19793] New: testing pr

2005-02-06 Thread dberlin at gcc dot gnu dot org
testing due to a bug report i got about not being able to file new bugs.

-- 
   Summary: testing pr
   Product: gcc
   Version: 2.95
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dberlin at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug rtl-optimization/19786] [4.0 Regression] Aliasing optimisation bug

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
15:29 ---
Hmm, interesting.  On PPC I need -O3.  What is more interesting is that I could 
not see where the 
problems were in the tree dumps, therfor I am moving this into the rtl 
optimization component.  It 
might turn out that this is C++ front-end bug or a libstdc++ one.

-- 
   What|Removed |Added

   Severity|critical|normal
 Status|UNCONFIRMED |NEW
  Component|tree-optimization   |rtl-optimization
 Ever Confirmed||1
   Keywords||wrong-code
   Last reconfirmed|-00-00 00:00:00 |2005-02-06 15:29:08
   date||
Summary|Aliasing optimisation bug   |[4.0 Regression] Aliasing
   ||optimisation bug
   Target Milestone|--- |4.0.0


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


[Bug tree-optimization/19788] Inconsistent handling of -1.

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

OtherBugsDependingO||19721
  nThis||


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


[Bug tree-optimization/19791] [tcb] A constant not fully propagated

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

OtherBugsDependingO||19721
  nThis||


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


[Bug tree-optimization/19789] tree optimizers do not know that constant global variables do not change

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

OtherBugsDependingO||19721
  nThis||


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


[Bug tree-optimization/19790] equality not noticed when signedness differs.

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

OtherBugsDependingO||19721
  nThis||


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


[Bug tree-optimization/19792] Missed optimizations due to signedness in the way

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

OtherBugsDependingO||19721
  nThis||


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


[Bug bootstrap/19793] testing pr

2005-02-06 Thread dberlin at gcc dot gnu dot org

--- Additional Comments From dberlin at gcc dot gnu dot org  2005-02-06 
15:53 ---
Person having trouble has confirmed it is fixed now

-- 
   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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


[Bug rtl-optimization/8361] [3.3/3.4/4.0 regression] C++ compile-time performance regression

2005-02-06 Thread steven at gcc dot gnu dot org

--- Additional Comments From steven at gcc dot gnu dot org  2005-02-06 
16:04 ---
All compilers were bootstrapped, with the following flags: 
 
"--disable-{nls,checking} --enable-languages=c,c++" 
 
Below, gcc40 is CVS HEAD.  This was on a 1.6GHz Opteron, with -m32. 
The machine has 4GB of memory so garbage collection times are zero, 
which may account for some of the rather unexpected results. 
For gcc34 and gcc40 I used generate-3.4.ii.bz2 (attachment 3) and 
for the other two I used the latest generate.ii.bz2 (attachment 4). 
 
gcc32   gcc33   gcc34   gcc40 
-O0 16.439s 16.172s 15.223s 6.674s 
-O1 30.265s 25.115s 20.678s 20.305s 
-O2 42.678s 34.908s 34.526s 27.418s 
-O3 47.469s 47.538s 35.706s 27.896s 
 
I'll try to get numbers on a 32bits machine (i686) as well. 
 

-- 


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


[Bug tree-optimization/19788] Inconsistent handling of -1.

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
16:04 ---
Confirmed.  The problem is from TREE_OVERFLOW/TREE_CONSTANT_OVERFLOW.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-02-06 16:04:44
   date||


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


[Bug tree-optimization/19790] equality not noticed when signedness differs.

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
16:12 ---
Confirmed but guess what my tree combiner fixes the problem:
  # i_24 = PHI ;
:;
  D.1165_26 = (unsigned int) i_24;
  D.1166_25 = D.1165_26 + 1;
  i_9 = (int) D.1166_25;
  bar (i_9);
  D.1121_5 = D.1165_26 >> 5;
  D.1122_10 = D.1121_5 * 4;
  D.1123_11 = (int *) D.1122_10;
  D.1124_12 = array_8 + D.1123_11;
  D.1125_13 = *D.1124_12;
  D.1126_14 = (long unsigned int) D.1125_13;
  D.1127_15 = i_24 & 31;
  D.1128_16 = 1 << D.1127_15;
  D.1129_17 = D.1126_14 | D.1128_16;
  D.1130_18 = (int) D.1129_17;
  *D.1124_12 = D.1130_18;
  if (D.1166_25 != 11) goto ; else goto ;

Guess that means I need to work more on it.

-- 
   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
  BugsThisDependsOn||15459
 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-02-06 16:12:50
   date||


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


[Bug tree-optimization/19792] Missed optimizations due to signedness in the way

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
16:17 ---
Confirmed, For bar, my tree combiner fixes the missed optimization.
Not for foo.

-- 
   What|Removed |Added

  BugsThisDependsOn||15459
 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-02-06 16:17:02
   date||


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


[Bug c/19664] libstdc++ headers should have pop/push of the visibility around the declarations

2005-02-06 Thread hjl at lucon dot org

--- Additional Comments From hjl at lucon dot org  2005-02-06 16:23 ---
I don't think emitting R_X86_64_PC32 is a bug since
-fvisibility=hidden -fvisibility-inlines-hidden is
used and the undefined function can be defined in
another .o file. The real bug is gcc doesn't emit

 .hidden foo

when foo is marked hidden and undefined.




-- 


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


[Bug tree-optimization/19791] [tcb] A constant not fully propagated

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
16:25 ---
Confirmed.

-- 
   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-02-06 16:25:18
   date||


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


[Bug tree-optimization/19789] tree optimizers do not know that constant global variables do not change

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
16:26 ---
Confirmed.

-- 
   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-02-06 16:26:15
   date||


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


[Bug rtl-optimization/8361] [3.3/3.4/4.0 regression] C++ compile-time performance regression

2005-02-06 Thread steven at gcc dot gnu dot org

--- Additional Comments From steven at gcc dot gnu dot org  2005-02-06 
16:49 ---
Similar numbers on a 1.4GHz Xeon (i686): 
 
gcc32   gcc33   gcc34   gcc40 
-O0 18.865s 15.107s 13.286s 10.193s 
-O1 33.511s 30.096s 24.693s 23.543s 
-O2 46.527s 42.657s 42.618s 33.549s 
-O3 49.537s 43.887s 44.056s 33.917s 
 

-- 


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


[Bug rtl-optimization/8361] [3.3/3.4/4.0 regression] C++ compile-time performance regression

2005-02-06 Thread steven at gcc dot gnu dot org

--- Additional Comments From steven at gcc dot gnu dot org  2005-02-06 
16:54 ---
Considering the numbers from #44, #48, and #49, I think we can conclude 
that we are back to the compile times GCC 3.0 used to have.  It should 
be noted that we have a significantly larger memory foot print though, 
and some of the speedups (especially from GCC 3.2 to GCC 3.3) came from 
smaller hacks to the GC system (collect less often, etc.).  But then, 
most people just use the compiler with -O[0123] and no fancy --params 
and similar hacks, so from a user POV this bug really is fixed, mostly. 
I'm not sure if it is useful to keep this bug open any longer. 

-- 


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


[Bug tree-optimization/19788] Inconsistent handling of -1.

2005-02-06 Thread schlie at comcast dot net

--- Additional Comments From schlie at comcast dot net  2005-02-06 17:14 
---
(In reply to comment #1)

- as I'm curious as to what the "proper" interpretation/handling of
  target dependant constant value casts should be; it seems that in
  the provided example, the optimized transformations of 0x
  to an (int)-1 intermediate value in bar & baz are consistent, assuming:

  (((0x) >> ((sizeof(int) * BITS_PER_UNIT)) & 1)

  however would have expected the comparison between a & b in baz
  to have been optimized away; is this a reasonable expectation?


-- 


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


[Bug tree-optimization/19788] Inconsistent handling of -1.

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
17:17 ---
(In reply to comment #2)
> (In reply to comment #1)
Really TREE_OVERFLOW/TREE_CONSTANT_OVERFLOW should go away, there has been some 
talk about 
removing them.  on the tree level, having that flag set we really say the 
constant is no longer be able to 
prograte which causes the real problem.

-- 


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


[Bug middle-end/19721] [meta-bug] optimizations that CSE still catches

2005-02-06 Thread steven at gcc dot gnu dot org

--- Additional Comments From steven at gcc dot gnu dot org  2005-02-06 
17:41 ---
Arguably, PR16961 is not directly related.  But if we fix that bug and the 
similar "long long" issues on 32 bits hosts, then the "64 bits arith on 32 
bits hosts" thing should be a non-issue (assuming the tree optimizers do 
well). 

-- 
   What|Removed |Added

  BugsThisDependsOn||16961


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


[Bug tree-optimization/19516] missed optimization (bool)

2005-02-06 Thread kazu at cs dot umass dot edu

--- Additional Comments From kazu at cs dot umass dot edu  2005-02-06 17:49 
---
Hi Richard,

I didn't say that load elimination is the *only* way to take this
optimization opportunity.

DOM *can* thread incoming edges to a basic block with more than COND_EXPR
or SWITCH_EXPR in limited circumstances.

One problem here is that upon taking edge from  to ,
DOM does not record that D.1317_2 == 0.

Once we fix that, then D.1317_4 = *flag_1; is folded to D.1317_4 = 0;,
but DOM wants to see an SSA_NAME on rhs on every MODIFY_EXPR leading up to
COND_EXPR or SWITCH_EXPR.

If DOM also knew that D.1317_2 == D.1317_4, it could thread the edge in
question, but I cannot think of an easy way of teaching DOM how to
figure out equivalences of two SSA_NAMEs when we already have a known constant
value.

CCing Jeff as he is the DOM person.


-- 
   What|Removed |Added

 CC||law at redhat dot com


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


[Bug tree-optimization/19794] New: [meta-bug] Jump threading related bugs

2005-02-06 Thread kazu at cs dot umass dot edu
Please make jump threading related bugs block this meta bug.

-- 
   Summary: [meta-bug] Jump threading related bugs
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Keywords: meta-bug
  Severity: enhancement
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kazu at cs dot umass dot edu
CC: gcc-bugs at gcc dot gnu dot org,law at redhat dot com


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


[Bug tree-optimization/19794] [meta-bug] Jump threading related bugs

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

  BugsThisDependsOn||15352


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


[Bug tree-optimization/19794] [meta-bug] Jump threading related bugs

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

  BugsThisDependsOn||16538


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


[Bug tree-optimization/19794] [meta-bug] Jump threading related bugs

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

  BugsThisDependsOn||17116


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


[Bug tree-optimization/19794] [meta-bug] Jump threading related bugs

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

  BugsThisDependsOn||18046


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


[Bug tree-optimization/19794] [meta-bug] Jump threading related bugs

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

  BugsThisDependsOn||18076


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


[Bug tree-optimization/19794] [meta-bug] Jump threading related bugs

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

  BugsThisDependsOn||18832


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


[Bug tree-optimization/19794] [meta-bug] Jump threading related bugs

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

  BugsThisDependsOn||19516


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


[Bug tree-optimization/19794] [meta-bug] Jump threading related bugs

2005-02-06 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-02-06 17:57:10
   date||


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


[Bug tree-optimization/19789] tree optimizers do not know that constant global variables do not change

2005-02-06 Thread kazu at cs dot umass dot edu

--- Additional Comments From kazu at cs dot umass dot edu  2005-02-06 18:08 
---
Yes, global_constant is considered call clobbered.

Here is the full dump of .t18.alias1.

;; Function foo (foo)

foo: Total number of aliased vops: 1

Referenced variables in foo: 5

Variable: global_constant.0, UID 0, const int

Variable: global_constant, UID 1, const int, is an alias tag, is global, call
clobbered, default def: global_constant_1

Variable: D.1128, UID 2, union node *, type memory tag: TMT.1

Variable: p, UID 3, union node *, type memory tag: TMT.1, default def: p_3

Variable: TMT.1, UID 4, union node, is addressable, is global, call clobbered,
may aliases: { global_constant }



Pointed-to sets for pointers in foo

p_3, is dereferenced, points-to anything
D.1128_4, is dereferenced, its value escapes, points-to anything


Flow-insensitive alias information for foo

Aliased symbols

global_constant, UID 1, const int, is an alias tag, is global, call clobbered,
default def: global_constant_1
TMT.1, UID 4, union node, is addressable, is global, call clobbered, may
aliases: { global_constant }

Dereferenced pointers

D.1128, UID 2, union node *, type memory tag: TMT.1
p, UID 3, union node *, type memory tag: TMT.1, default def: p_3

Type memory tags

TMT.1, UID 4, union node, is addressable, is global, call clobbered, may
aliases: { global_constant }


Flow-sensitive alias information for foo

SSA_NAME pointers


Name memory tags


foo (p)
{
  union node * D.1128;
  const int global_constant.0;

:
  #   VUSE ;
  global_constant.0_2 = global_constant;
  if (global_constant.0_2 == 1) goto ; else goto ;

:;
  #   VUSE ;
  abort ();

:;
  #   VUSE ;
  D.1128_4 = p_3->ptr;
  #   global_constant_6 = V_MAY_DEF ;
  bar (D.1128_4);
  #   VUSE ;
  global_constant.0_5 = global_constant;
  if (global_constant.0_5 == 1) goto ; else goto ;

:;
  #   VUSE ;
  abort ();

:;
  return;

}


-- 


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


[Bug rtl-optimization/8361] [3.3/3.4/4.0 regression] C++ compile-time performance regression

2005-02-06 Thread ghazi at gcc dot gnu dot org

--- Additional Comments From ghazi at gcc dot gnu dot org  2005-02-06 18:08 
---
If you want to compare how the memory footprint has affected performance, use 
these flags in 3.3 and later:

--param ggc-min-expand=30 --param ggc-min-heapsize=4096

Those are the hardcoded values that 3.2 uses to tune how often the collector 
runs.  I would be interested to see how later versions behave when supplied 
these flags, this will simulate how fast we compile on memory constrained boxes 
relative to 3.2.

Another perhaps more interesting test (but one which will take slightly more 
effort for you) would be to see how raising these values in 3.2 will affect 
performance.  Some distros (RH?) did in fact raise them in their releases so 
users may be comparing their cranked distro gcc-3.2 to our FSF releases.

Of course since these values are hardcoded in 3.2, you'd have to rebuild that 
compiler, however I think an apples-to-apples comparsion is in order before 
closing this PR.


-- 


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


[Bug fortran/19754] Shape conformance not checked

2005-02-06 Thread sgk at troutmask dot apl dot washington dot edu

--- Additional Comments From sgk at troutmask dot apl dot washington dot 
edu  2005-02-06 18:12 ---
An updated patch that does not have the regression is here
http://gcc.gnu.org/ml/fortran/2005-02/msg00039.html

-- 


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


[Bug tree-optimization/19785] New: Aliasing optimisation bug

2005-02-06 Thread pinskia at gcc dot gnu dot org
The attached C++ program triggers an assertion violation when compiled with -O2
(it should not).
The assertion is not triggered when adding -fno-strict-aliasing, or when 
removing
-O2.  It is also working when slight changes to the program are made (see 
comments
in the source).  It is the smallest version of the program which allowed me to
reproduce the bug, but I did not try to look into the  header.

It might be an aliasing bug in , I don't know.
Note that g++ 3.4 works fine.
--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
18:34 ---


*** This bug has been marked as a duplicate of 19786 ***

-- 
   Summary: Aliasing optimisation bug
   Product: gcc
   Version: 4.0.0
Status: RESOLVED
  Severity: critical
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sylvain dot pion at sophia dot inria dot fr
CC: gcc-bugs at gcc dot gnu dot org
  GCC host triplet: i686-pc-linux-gnu


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


[Bug rtl-optimization/19786] [4.0 Regression] Aliasing optimisation bug

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
18:34 ---
*** Bug 19785 has been marked as a duplicate of this bug. ***

-- 


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


[Bug tree-optimization/19784] New: Aliasing optimisation bug

2005-02-06 Thread pinskia at gcc dot gnu dot org
The attached C++ program triggers an assertion violation when compiled with -O2
(it should not).
The assertion is not triggered when adding -fno-strict-aliasing, or when 
removing
-O2.  It is also working when slight changes to the program are made (see 
comments
in the source).  It is the smallest version of the program which allowed me to
reproduce the bug, but I did not try to look into the  header.

It might be an aliasing bug in , I don't know.
Note that g++ 3.4 works fine.
--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
18:34 ---


*** This bug has been marked as a duplicate of 19786 ***

-- 
   Summary: Aliasing optimisation bug
   Product: gcc
   Version: 4.0.0
Status: RESOLVED
  Severity: critical
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sylvain dot pion at sophia dot inria dot fr
CC: gcc-bugs at gcc dot gnu dot org,sylvain dot pion at
sophia dot inria dot fr
  GCC host triplet: i686-pc-linux-gnu


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


[Bug tree-optimization/19783] New: Aliasing optimisation bug

2005-02-06 Thread pinskia at gcc dot gnu dot org
The attached C++ program triggers an assertion violation when compiled with -O2
(it should not).
The assertion is not triggered when adding -fno-strict-aliasing, or when 
removing
-O2.  It is also working when slight changes to the program are made (see 
comments
in the source).  It is the smallest version of the program which allowed me to
reproduce the bug, but I did not try to look into the  header.

It might be an aliasing bug in , I don't know.
Note that g++ 3.4 works fine.
--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
18:34 ---


*** This bug has been marked as a duplicate of 19786 ***

-- 
   Summary: Aliasing optimisation bug
   Product: gcc
   Version: 4.0.0
Status: RESOLVED
  Severity: critical
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sylvain dot pion at sophia dot inria dot fr
CC: gcc-bugs at gcc dot gnu dot org,sylvain dot pion at
sophia dot inria dot fr
  GCC host triplet: i686-pc-linux-gnu


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


[Bug rtl-optimization/19786] [4.0 Regression] Aliasing optimisation bug

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
18:34 ---
*** Bug 19784 has been marked as a duplicate of this bug. ***
--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
18:34 ---
*** Bug 19783 has been marked as a duplicate of this bug. ***

-- 


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


[Bug rtl-optimization/19786] [4.0 Regression] Aliasing optimisation bug

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
18:35 ---
*** Bug 19782 has been marked as a duplicate of this bug. ***

-- 


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


[Bug rtl-optimization/19786] [4.0 Regression] Aliasing optimisation bug

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
18:34 ---
*** Bug 19784 has been marked as a duplicate of this bug. ***

-- 


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


[Bug tree-optimization/19782] New: Aliasing optimisation bug

2005-02-06 Thread pinskia at gcc dot gnu dot org
The attached C++ program triggers an assertion violation when compiled with -O2
(it should not).
The assertion is not triggered when adding -fno-strict-aliasing, or when 
removing
-O2.  It is also working when slight changes to the program are made (see 
comments
in the source).  It is the smallest version of the program which allowed me to
reproduce the bug, but I did not try to look into the  header.

It might be an aliasing bug in , I don't know.
Note that g++ 3.4 works fine.
--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
18:34 ---


*** This bug has been marked as a duplicate of 19786 ***

-- 
   Summary: Aliasing optimisation bug
   Product: gcc
   Version: 4.0.0
Status: RESOLVED
  Severity: critical
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sylvain dot pion at sophia dot inria dot fr
CC: gcc-bugs at gcc dot gnu dot org,sylvain dot pion at
sophia dot inria dot fr
  GCC host triplet: i686-pc-linux-gnu


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


[Bug fortran/19777] -fbounds-check catches non-existent bounds violation

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
18:38 ---
Confirmed.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Keywords||wrong-code
   Last reconfirmed|-00-00 00:00:00 |2005-02-06 18:38:47
   date||


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


[Bug fortran/18003] Parser failure in printing of array intrisics (lbound)

2005-02-06 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

   Keywords||rejects-valid
   Last reconfirmed|2004-11-06 16:09:59 |2005-02-06 18:44:13
   date||


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


[Bug other/18961] Large output causes testsuite failure

2005-02-06 Thread jsm28 at gcc dot gnu dot org

--- Additional Comments From jsm28 at gcc dot gnu dot org  2005-02-06 18:46 
---
Does your version of expect include the patch in bug 12096?  If not, and
if using a version with that patch fixes your problem, then this would be
a duplicate of that bug.


-- 
   What|Removed |Added

 CC||jsm28 at gcc dot gnu dot org


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


[Bug tree-optimization/18219] [4.0 Regression] gcc-4.0.0 bloats code by 31%

2005-02-06 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-02-06 
18:47 ---
Subject: Bug 18219

CVSROOT:/cvs/gcc
Module name:gcc
Changes by: [EMAIL PROTECTED]   2005-02-06 18:47:14

Modified files:
gcc: ChangeLog tree-ssa-loop-ivopts.c 

Log message:
PR tree-optimization/18219
* tree-ssa-loop-ivopts.c (get_computation_at): Produce computations
in distributed form.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.7394&r2=2.7395
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-loop-ivopts.c.diff?cvsroot=gcc&r1=2.42&r2=2.43



-- 


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


[Bug tree-optimization/19789] tree optimizers do not know that constant global variables do not change

2005-02-06 Thread dberlin at gcc dot gnu dot org

--- Additional Comments From dberlin at gcc dot gnu dot org  2005-02-06 
18:51 ---
This dump shows a number of problems.
For starters, global_constant should not be call clobbered.
This is something diego should look at.


-- 
   What|Removed |Added

 CC||dnovillo at gcc dot gnu dot
   ||org


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


[Bug c/19795] New: GCC needs mechanism to expose compile-time declared reserved global registers to asm programs.

2005-02-06 Thread schlie at comcast dot net
If such a mechanism existed, asm programs would able to be structured to
honor their declaration as such; thereby enable implementations of set/longjump
to exclude them from being otherwise improperly save/restored, for example, etc.

-- 
   Summary: GCC needs mechanism to expose compile-time declared
reserved global registers to asm programs.
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: schlie at comcast dot net
CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: *-*-*
  GCC host triplet: *-*-*
GCC target triplet: *-*-*


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


[Bug c/19795] GCC needs mechanism to expose compile-time declared reserved global registers to asm programs.

2005-02-06 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

   Severity|normal  |enhancement


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


[Bug other/7549] gcc3.1: Documentation glitches in info-files

2005-02-06 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-02-06 
19:37 ---
Subject: Bug 7549

CVSROOT:/cvs/gcc
Module name:gcc
Changes by: [EMAIL PROTECTED]   2005-02-06 19:37:25

Modified files:
gcc: ChangeLog 
gcc/doc: invoke.texi gcc.texi 

Log message:
PR other/7549
* doc/invoke.texi: Mention for each option included in -Wall that
it is included in -Wall.
* doc/gcc.texi: Update copyright and last modification date.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.7396&r2=2.7397
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/invoke.texi.diff?cvsroot=gcc&r1=1.573&r2=1.574
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/gcc.texi.diff?cvsroot=gcc&r1=1.65&r2=1.66



-- 


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


[Bug other/7549] gcc3.1: Documentation glitches in info-files

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-06 
19:42 ---
Fixed in 4.0.0.

-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.0.0


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


[Bug tree-optimization/17790] [4.0 Regression] Significant compile time increases for sixtrack with tree LICM and IV optimization

2005-02-06 Thread rakdver at gcc dot gnu dot org

--- Additional Comments From rakdver at gcc dot gnu dot org  2005-02-06 
20:25 ---
Updated version of the patch:

http://gcc.gnu.org/ml/gcc-patches/2005-02/msg00205.html

-- 


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


[Bug tree-optimization/19686] [4.0 Regression] loop performance decrease, not comparing against 0

2005-02-06 Thread andrewhutchinson at cox dot net

--- Additional Comments From andrewhutchinson at cox dot net  2005-02-06 
23:06 ---
Taking X as the initial value of x on function entry.

The loop is defined as i=X to 0, step -1. Which is a simple do loop.

It gets "optimized" as i=0 to -X, step -1. (Which is something bizarre!)

The code increase is due to 1) Computation of -X and  2) compare said -X



-- 


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


[Bug bootstrap/19796] New: Bootstrap fails: Unresolved data symbol "set_fpc_csr"

2005-02-06 Thread billingd at gcc dot gnu dot org
My mips-sgi-irix6.5 bootstraps have been failing since 25 Jan. (I have been 
travelling and didn't notice).
 - The last successful build was 2005-01-24 09:07 UTC
 - First failure was approx 2005-01-25 09:00 UTX

I suspect that the problem is due to:

2005-01-24  Richard Sandiford  <[EMAIL PROTECTED]>

* config/mips/irix-csr.c: New file.
* config/mips/t-iris6 (irix-csr.o): New rule to build it.
(EXTRA_MULTILIB_PARTS): Add irix-csr.o.
* config/mips/iris6.h (ENDFILE_SPEC): Include it in n32 and n64
executables.

The error I see is:

stage1/xgcc -Bstage1/ -B/disk4/billingd/tmp/gcc/mips-sgi-irix6.5/bin/   -g -
O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-
prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wold-style-
definition -Werror -fno-common   -DHAVE_CONFIG_H -DGENERATOR_FILE  -o 
build/genmodes \
 build/genmodes.o build/errors.o ../build-mips-sgi-
irix6.5/libiberty/libiberty.a
ld32: ERROR   33 : Unresolved data symbol "get_fpc_csr" -- 1st referenced by 
stage1/irix-csr.o.
Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved data symbol "set_fpc_csr" -- 1st referenced by 
stage1/irix-csr.o.
Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: INFO152: Output file removed because of error.
collect2: ld returned 2 exit status

Configured with:

configure flags: --enable-shared --enable-haifa --enable-threads=single --
enable-libjava --with-as=/disk4/billingd/tmp/binutils/bin/as --disable-nls --
with-gmp=/usr/local --disable-libmudflap --prefix=/disk4/billingd/tmp/gcc --
enable-languages=c,c++,f95,java,objc

-- 
   Summary: Bootstrap fails: Unresolved data symbol "set_fpc_csr"
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: billingd at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org,rsandifo at redhat dot
com
 GCC build triplet: mips-sgi-irix6.5
  GCC host triplet: mips-sgi-irix6.5
GCC target triplet: mips-sgi-irix6.5


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


[Bug c++/19797] New: [4.0 Regression] g++.dg/abi/inline1.C fails on hppa*-*-hpux*

2005-02-06 Thread jsm28 at gcc dot gnu dot org
The test g++.dg/abi/inline1.C scan-assembler-not _ZTV1S
fails on hppa{2.0w,64}-hp-hpux11.{11,23}.  This is a regression
from 3.4.x.

-- 
   Summary: [4.0 Regression] g++.dg/abi/inline1.C fails on hppa*-*-
hpux*
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jsm28 at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: hppa*-*-hpux11.*


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


[Bug c/19798] New: Prefix ++ doing wrong in an addition

2005-02-06 Thread ceniza666 at yahoo dot com
A program as simple as:
  int b = 10;
  int a;
  a = (++b) + (++b) + (++b);
  printf("%d", a);

shows the wrong answer.

It should be 36, it shows 37. Optimisations on or off throw the same result.

Source of the problem: Generated code.

Pseudo C/asm code:
++b;
++b;
%eax = b;
%edx = b;
%edx += %eax;
++b;
%edx += b
a = %edx

So, when it should be doing "a = 11 + 12 + 13;" it's doing "a = 12 + 12 + 13;".

-- 
   Summary: Prefix ++ doing wrong in an addition
   Product: gcc
   Version: 3.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ceniza666 at yahoo dot com
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug rtl-optimization/19799] New: sibcall-3.c and sibcall-4.c fail on hppa64-*-hpux*

2005-02-06 Thread jsm28 at gcc dot gnu dot org
The tests gcc.dg/sibcall-3.c and gcc.dg/sibcall-4.c (execution tests)
fail on hppa64-hp-hpux11.{11,23}.  Not a regression relative to 3.4.x.

-- 
   Summary: sibcall-3.c and sibcall-4.c fail on hppa64-*-hpux*
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: rtl-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jsm28 at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: hppa64-*-hpux11.*


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


[Bug c/19798] Prefix ++ doing wrong in an addition

2005-02-06 Thread pcarlini at suse dot de

--- Additional Comments From pcarlini at suse dot de  2005-02-07 00:19 
---


*** This bug has been marked as a duplicate of 11751 ***

-- 
   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


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


[Bug c/11751] wrong evaluation order of an expression

2005-02-06 Thread pcarlini at suse dot de

--- Additional Comments From pcarlini at suse dot de  2005-02-07 00:19 
---
*** Bug 19798 has been marked as a duplicate of this bug. ***

-- 
   What|Removed |Added

 CC||ceniza666 at yahoo dot com


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


[Bug other/18871] Should use -Wextra instead of -W during bootstrap

2005-02-06 Thread jsm28 at gcc dot gnu dot org

--- Additional Comments From jsm28 at gcc dot gnu dot org  2005-02-07 01:02 
---
I see no reason we'd ever want to carry the deprecation of the -W name
through to removing it or making it warn that it is deprecated; synonyms
for warning options don't cause any implementation problems or complexity
in the way the sort of features that are deprecated and then removed do.
Accordingly, I don't see any benefit to adding configure checks and using
a different name for the same option if compiling with newer GCC, rather
than just unconditionally using the older compatible name in bootstrap.


-- 
   What|Removed |Added

 CC||jsm28 at gcc dot gnu dot org
 Status|NEW |RESOLVED
 Resolution||INVALID


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


[Bug other/14402] gccbug confusion

2005-02-06 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-02-07 
01:10 ---
Subject: Bug 14402

CVSROOT:/cvs/gcc
Module name:gcc
Changes by: [EMAIL PROTECTED]   2005-02-07 01:10:14

Modified files:
gcc: ChangeLog 
gcc/doc: invoke.texi 

Log message:
PR other/14402
* doc/invoke.texi: Don't mention gccbug.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.7399&r2=2.7400
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/invoke.texi.diff?cvsroot=gcc&r1=1.574&r2=1.575



-- 


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


[Bug target/19800] New: mmix-knuth-mmixware broken

2005-02-06 Thread hp at gcc dot gnu dot org
With LAST_UPDATED: "Mon Feb  7 00:40:47 UTC 2005" I get:
/home/hp/combined/mmixware-sim/gcc/xgcc -B/home/hp/combined/mmixware-sim/gcc/
-nostdinc -B/home/hp/combined/mmixware-sim/mmix-knu\
th-mmixware/gnuabi/newlib/ -isystem
/home/hp/combined/mmixware-sim/mmix-knuth-mmixware/gnuabi/newlib/targ-include
-isystem /home/\
hp/combined/combined/newlib/libc/include -B/usr/local/mmix-knuth-mmixware/bin/
-B/usr/local/mmix-knuth-mmixware/lib/ -isystem /us\
r/local/mmix-knuth-mmixware/include -isystem
/usr/local/mmix-knuth-mmixware/sys-include -L/home/hp/combined/mmixware-sim/ld 
-mab\
i=gnu -DPACKAGE=\"newlib\" -DVERSION=\"1.13.0\"  -I.
-I/home/hp/combined/combined/newlib/libc/stdlib  -O2 -DCOMPACT_CTYPE -fno-bu\
iltin  -O2 -g -O2  -mabi=gnu -c
/home/hp/combined/combined/newlib/libc/stdlib/ldtoa.c
/home/hp/combined/combined/newlib/libc/stdlib/ldtoa.c: In function 'eiisnan':
/home/hp/combined/combined/newlib/libc/stdlib/ldtoa.c:711: internal compiler
error: in gen_lowpart_general, at rtlhooks.c:58
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html> for instructions.
make[9]: *** [ldtoa.o] Error 1
make[9]: Leaving directory
`/home/hp/combined/mmixware-sim/mmix-knuth-mmixware/gnuabi/newlib/libc/stdlib'

Last known to work on: "Thu Feb  3 17:34:05 UTC 2005".

-- 
   Summary: mmix-knuth-mmixware broken
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P2
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hp at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: mmix-knuth-mmixware


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


[Bug target/19800] [regression 4.0] mmix-knuth-mmixware broken

2005-02-06 Thread hp at gcc dot gnu dot org


-- 
   What|Removed |Added

Summary|mmix-knuth-mmixware broken  |[regression 4.0] mmix-knuth-
   ||mmixware broken


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


[Bug preprocessor/19801] New: cppinternals.texi references old file names

2005-02-06 Thread jsm28 at gcc dot gnu dot org
cppinternals.texi refers to old file names cpphash.h, cpplex.c, cppfiles.c.
In 4.0 the files have been renamed.

-- 
   Summary: cppinternals.texi references old file names
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: preprocessor
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jsm28 at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org


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


[Bug target/19800] [regression 4.0] mmix-knuth-mmixware broken

2005-02-06 Thread hp at gcc dot gnu dot org

--- Additional Comments From hp at gcc dot gnu dot org  2005-02-07 01:23 
---
Adding CC:s based on the accusation and description in
http://gcc.gnu.org/ml/gcc-patches/2005-02/msg00220.html>.
To repeat, build a combined tree for mmix-knuth-mmixware
(simtest-howto.html yadda yadda no simulator needed).

-- 
   What|Removed |Added

 CC||roger at eyesopen dot com,
   ||paolo dot bonzini at lu dot
   ||unisi dot ch, pinskia at
   ||physics dot uc dot edu


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


[Bug rtl-optimization/19800] [4.0 regression] mmix-knuth-mmixware broken, building newlib/libm/common/s_fmax.c

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-07 
01:49 ---
(In reply to comment #1)
> Adding CC:s based on the accusation and description in
> http://gcc.gnu.org/ml/gcc-patches/2005-02/msg00220.html>.
> To repeat, build a combined tree for mmix-knuth-mmixware
> (simtest-howto.html yadda yadda no simulator needed).

Note I only recommened the optimization and nothing else.

-- 
   What|Removed |Added

  Component|target  |rtl-optimization
Summary|[regression 4.0] mmix-knuth-|[4.0 regression] mmix-knuth-
   |mmixware broken |mmixware broken, building
   ||newlib/libm/common/s_fmax.c


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


[Bug rtl-optimization/19800] [4.0 regression] mmix-knuth-mmixware broken, building newlib/libm/common/s_fmax.c

2005-02-06 Thread pinskia at gcc dot gnu dot org


-- 
   What|Removed |Added

 CC|pinskia at physics dot uc   |pinskia at gcc dot gnu dot
   |dot edu |org


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


[Bug other/14402] gccbug confusion

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-07 
01:52 ---
Fixed.

-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.0.0


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


[Bug other/17135] -freorder-functions mis-documented

2005-02-06 Thread cvs-commit at gcc dot gnu dot org

--- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-02-07 
01:52 ---
Subject: Bug 17135

CVSROOT:/cvs/gcc
Module name:gcc
Changes by: [EMAIL PROTECTED]   2005-02-07 01:52:27

Modified files:
gcc: ChangeLog 
gcc/doc: invoke.texi 

Log message:
PR other/17135
* doc/invoke.texi: Correct documentation of -freorder-functions.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.7400&r2=2.7401
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/invoke.texi.diff?cvsroot=gcc&r1=1.575&r2=1.576



-- 


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


[Bug c++/19797] [4.0 Regression] g++.dg/abi/inline1.C fails on hppa*-*-hpux*

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-07 
01:54 ---
I want to say this is target bug, because there was a change to move 
hppa*-*-hpux* over to weak 
symbol support.

-- 


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


[Bug target/19799] sibcall-3.c and sibcall-4.c fail on hppa64-*-hpux*

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-07 
01:58 ---
Hmm, for sibcall-3.c (likewise for 4) we have the following comment:
This test is xfailed on targets without sibcall patterns
   (except targets where the test does not work due to the return address
   not saved on the regular stack). 

And in pa.c, we find this:
  /* Sibcalls are not ok because the arg pointer register is not a fixed
 register.  This prevents the sibcall optimization from occurring.  In
 addition, there are problems with stub placement using GNU ld.  This
 is because a normal sibcall branch uses a 17-bit relocation while
 a regular call branch uses a 22-bit relocation.  As a result, more
 care needs to be taken in the placement of long-branch stubs.  */
  if (TARGET_64BIT)
return false;

So these tests should be just xfailed.

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
  Component|rtl-optimization|target
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-02-07 01:58:21
   date||


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


[Bug other/17135] -freorder-functions mis-documented

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-07 
02:04 ---
Fixed.

-- 
   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.0.0


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


[Bug preprocessor/19801] [4.0 Regression] cppinternals.texi references old file names

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-07 
02:05 ---
Confirmed.

-- 
   What|Removed |Added

 CC||bonzini at gcc dot gnu dot
   ||org
   Keywords||documentation
Summary|cppinternals.texi references|[4.0 Regression]
   |old file names  |cppinternals.texi references
   ||old file names


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


[Bug rtl-optimization/19800] [4.0 regression] mmix-knuth-mmixware broken, building newlib/libm/common/s_fmax.c

2005-02-06 Thread roger at eyesopen dot com

--- Additional Comments From roger at eyesopen dot com  2005-02-07 02:08 
---
Untested fix here: http://gcc.gnu.org/ml/gcc-patches/2005-02/msg00223.html
HP, could you check whether it fixes mmix-knuth-mixware for you?

-- 


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


[Bug other/19802] New: scan-not-hidden breaks with unknown object format

2005-02-06 Thread jsm28 at gcc dot gnu dot org
testsuite/lib/scanasm.exp:hidden-scan-for returns an empty string
for object formats other than elf and mach-o.  This causes any
tests using scan-not-hidden to fail.  Instead, they should be
UNRESOLVED when how to test for hidden symbols on that object format
is not known.  Likewise, scan-hidden should also yield UNRESOLVED
in this case.

The problem arises for systems where objdump is unavailable or
fails to identify the file format - which may in fact be ELF with
visibility support but no working ELF objdump.  It can also be reproduced
on ELF systems with working objdump by changing the regexp
in hidden-scan-for to "" for ELF.

-- 
   Summary: scan-not-hidden breaks with unknown object format
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: other
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jsm28 at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org,janis187 at us dot ibm
dot com


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


[Bug rtl-optimization/19800] [4.0 regression] mmix-knuth-mmixware broken, building newlib/libm/common/s_fmax.c

2005-02-06 Thread hp at gcc dot gnu dot org

--- Additional Comments From hp at gcc dot gnu dot org  2005-02-07 02:13 
---
In reply to comment #3, will do, as soon as that machine is done with
cris-elf testing.
(In the meantime, let me remind that anyone, including you, can check
out a combined tree and try it.)

-- 


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


[Bug tree-optimization/19686] [4.0 Regression] loop performance decrease, not comparing against 0

2005-02-06 Thread schlie at comcast dot net

--- Additional Comments From schlie at comcast dot net  2005-02-07 02:42 
---
(In reply to comment #2)

Might it be possible to change the severity to at least "normal"
and possibly reclassify it as a "mis-optimization", as it's very
typical for folks who know processors to intentionally write
code such that compairs are agaisnt zero, as they are typically
free; having the compiler de-optimize an otherwise more effecient
explicit code fragment would seem like something that would be fairly
critical to remedy?


-- 


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


[Bug tree-optimization/19686] [4.0 Regression] loop performance decrease, not comparing against 0

2005-02-06 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-07 
02:46 ---
(In reply to comment #4)
> (In reply to comment #2)
It is minor because it is a missed optimization.  (this really is a target 
dependent bug in that different 
cost matrixes give different answers so it might be just avr's cost does not 
work at all which is a 
different bug too).

-- 


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


[Bug tree-optimization/19686] [4.0 Regression] loop performance decrease, not comparing against 0

2005-02-06 Thread schlie at comcast dot net

--- Additional Comments From schlie at comcast dot net  2005-02-07 03:01 
---
(In reply to comment #5)
> (In reply to comment #4)

Understood, Thanks (apparently it' becomming more important to get the costs 
more correct).


-- 


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


[Bug tree-optimization/19803] New: __builtin_expect doesnt modify branch prediction for power4 target

2005-02-06 Thread anton at samba dot org
gcc version 4.0.0 20050203 (experimental)

The following code snippet shows how branch prediction isnt used even when
specifying builtin_expect. flags used: -O2 -mcpu=power4

#if 1
#define likely(x)   __builtin_expect(!!(x), 1)
#else
#define likely(x) x
#endif

int i;

void foo(void)
{
while (likely(i--)) {
bar();
}

}

...

b .L2
.p2align 4,,15
.L3:
bl bar
nop
.L2:
lwz 9,0(31)
addi 9,9,-1
extsw 9,9
cmpwi 7,9,-1
stw 9,0(31)
bne 7,.L3

-- 
   Summary: __builtin_expect doesnt modify branch prediction for
power4 target
   Product: gcc
   Version: 4.0.0
Status: UNCONFIRMED
  Severity: enhancement
  Priority: P2
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: anton at samba dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: powerpc64-unknown-linux-gnu


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


[Bug tree-optimization/19794] [meta-bug] Jump threading related bugs

2005-02-06 Thread kazu at cs dot umass dot edu


-- 
   What|Removed |Added

  BugsThisDependsOn||19804


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


  1   2   >