https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115054
--- Comment #1 from Andrew Pinski ---
What does msvc do?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115051
Andrew Pinski changed:
What|Removed |Added
Resolution|--- |DUPLICATE
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113506
--- Comment #1 from Andrew Pinski ---
*** Bug 115051 has been marked as a duplicate of this bug. ***
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115050
--- Comment #1 from Andrew Pinski ---
Note there is an alignment missing on the data field.
dot gnu.org |pinskia at gcc dot
gnu.org
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed||2024-05-11
--- Comment #2 from Andrew Pinski ---
I have someone working on this,
|1
Status|UNCONFIRMED |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |pinskia at gcc dot
gnu.org
--- Comment #1 from Andrew Pinski ---
I have someone working on this.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115040
--- Comment #4 from Andrew Pinski ---
(In reply to Sam James from comment #3)
> (In reply to Andrew Pinski from comment #2)
> > > clang lowers both the calls to (w)memchr
> >
> > Is that with libc++ or libstdc++?
>
> It's libc++. Checked
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115040
--- Comment #2 from Andrew Pinski ---
> clang lowers both the calls to (w)memchr
Is that with libc++ or libstdc++?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115040
Andrew Pinski changed:
What|Removed |Added
Severity|normal |enhancement
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115037
--- Comment #4 from Andrew Pinski ---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94293#c4
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115037
Andrew Pinski changed:
What|Removed |Added
See Also||https://gcc.gnu.org/bugzill
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115037
--- Comment #1 from Andrew Pinski ---
This might be a dup of another bug which talks about the same thing.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115033
Andrew Pinski changed:
What|Removed |Added
Ever confirmed|1 |0
Status|WAITING
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115034
--- Comment #1 from Andrew Pinski ---
Note there is some memory model requirements here that I always forget if this
can happen or not.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115033
Andrew Pinski changed:
What|Removed |Added
Last reconfirmed||2024-05-10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115014
--- Comment #10 from Andrew Pinski ---
int f(int *a)
{
int b;
size_t t = (size_t)
size_t t1 = (size_t)a;
return *(int*)(((size_t))+(t-t1));
}
Is kinda of valid c but might fail with your definition.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115014
--- Comment #8 from Andrew Pinski ---
I didn't misunderstanding it. I just think it is not a valid request.
Especially when it comes to it is only this special kvm kernel.
Someone in theory could also use an offset from esp and run into a
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115023
Andrew Pinski changed:
What|Removed |Added
Assignee|unassigned at gcc dot gnu.org |pinskia at gcc dot
gnu.org
Keywords: documentation
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: pinskia at gcc dot gnu.org
Target Milestone: ---
Take:
```
float foo(float a, float b, float c) {
return __builtin_assoc_barrier
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115022
Andrew Pinski changed:
What|Removed |Added
Assignee|unassigned at gcc dot gnu.org |pinskia at gcc dot
gnu.org
: documentation
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: pinskia at gcc dot gnu.org
Target Milestone: ---
See https://gcc.gnu.org/onlinedocs/gcc-14.1.0/gcc/Option-Index.html .
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114528
Andrew Pinski changed:
What|Removed |Added
Assignee|unassigned at gcc dot gnu.org |pinskia at gcc dot
gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115019
--- Comment #3 from Andrew Pinski ---
(In reply to Andrew Pinski from comment #2)
> /app/example.cpp:36:24: runtime error: negation of
> 0x8000 cannot be represented in type '__int128';
> cast to an unsigned type to
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115019
--- Comment #2 from Andrew Pinski ---
/app/example.cpp:36:24: runtime error: negation of
0x8000 cannot be represented in type '__int128';
cast to an unsigned type to negate this value to itself
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115019
Andrew Pinski changed:
What|Removed |Added
Resolution|--- |INVALID
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115009
--- Comment #12 from Andrew Pinski ---
(In reply to Aldy Hernandez from comment #10)
> I can test my proposed patch on a cross for avr, but for this testcase on
> rl78-none and rl78-elf, I get:
That was not a testcase but rather a copy of the
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115018
Andrew Pinski changed:
What|Removed |Added
Last reconfirmed||2024-05-09
Ever confirmed|0
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115018
--- Comment #1 from Andrew Pinski ---
First I can't reproduce it with the official releases GCC 13.2.0.
Second with the trunk, I am not sure if this is a bug or not.
With the trunk with `-O3 -Wall -Wextra -fno-strict-aliasing -fwrapv
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115009
--- Comment #7 from Andrew Pinski ---
For rl78:
static scalar_int_mode
rl78_addr_space_address_mode (addr_space_t addrspace)
{
switch (addrspace)
{
case ADDR_SPACE_GENERIC:
return HImode;
case ADDR_SPACE_NEAR:
return
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115009
--- Comment #6 from Andrew Pinski ---
rl78 has __far which is a 32bit pointer (the normal ptr size there is 16bit).
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115009
Andrew Pinski changed:
What|Removed |Added
CC||law at gcc dot gnu.org
--- Comment #4
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115017
Andrew Pinski changed:
What|Removed |Added
Resolution|--- |DUPLICATE
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112659
--- Comment #9 from Andrew Pinski ---
(In reply to Andrew Pinski from comment #8)
> Thinking about this slightly more, we should be able to handle (which LLVM
> does not currently handles):
> ```
> int optb(int v, int b) {
> // b = 8;
>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113859
Andrew Pinski changed:
What|Removed |Added
Keywords||patch
URL|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115009
Andrew Pinski changed:
What|Removed |Added
Severity|normal |blocker
CC|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115009
--- Comment #2 from Andrew Pinski ---
Reduced testcase:
```
void
pgm_copystring(const char __memx * p)
{
unsigned char c;
c = *p;
}
```
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115009
Andrew Pinski changed:
What|Removed |Added
Last reconfirmed||2024-05-09
Ever confirmed|0
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115004
--- Comment #1 from Andrew Pinski ---
Note this works with the IR coming out of the C front-end but NOT the IR coming
out from the C++ front-end.
Yes the front-ends are different.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115010
Andrew Pinski changed:
What|Removed |Added
Status|WAITING |UNCONFIRMED
Ever confirmed|1
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115005
--- Comment #2 from Andrew Pinski ---
Folding statement: _336 = cmd_8bits[numbits_181];
Folded into: _336 = cmd_8bits[4294967295];
Which comes from:
uint32 d = get_bits(in, numbits+1, );
if (d >=
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115010
Andrew Pinski changed:
What|Removed |Added
Target||m68k-linux-gnu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115013
Andrew Pinski changed:
What|Removed |Added
Target Milestone|--- |15.0
Component|c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115014
--- Comment #3 from Andrew Pinski ---
(In reply to Martin Doucha from comment #2)
>
> This is certainly not wanted in the most common case where the flat memory
> assumption is correct. But it should be used for compiling embedded binaries
>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115014
Andrew Pinski changed:
What|Removed |Added
Ever confirmed|0 |1
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115009
Andrew Pinski changed:
What|Removed |Added
CC||pinskia at gcc dot gnu.org
Target
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104292
--- Comment #5 from Andrew Pinski ---
Note LLVM started to do this "trick" in 17.1.0.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115011
--- Comment #4 from Andrew Pinski ---
So depends on PR 104292.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115011
Andrew Pinski changed:
What|Removed |Added
Depends on||104292
--- Comment #3 from Andrew
|ASSIGNED
Assignee|unassigned at gcc dot gnu.org |pinskia at gcc dot
gnu.org
--- Comment #2 from Andrew Pinski ---
Confirmed. this was "exposed/caused" by my r14-3486-gd9a0d692ffc695 .
We miss this in previous releases too (LLVM is only able to optimize it f
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114998
Andrew Pinski changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Summary|ICE on valid
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110386
Andrew Pinski changed:
What|Removed |Added
Status|ASSIGNED|RESOLVED
Known to work|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114997
Andrew Pinski changed:
What|Removed |Added
Target Milestone|--- |11.5
Summary|ICE:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114997
--- Comment #4 from Andrew Pinski ---
My reduced testcase has failed since 4.8.0 and started to pass in GCC 13.1.0.
I wonder what fixed it (I suspect r13-3438 and if so I doubt that can be
backported).
Note the issue is with constexpr and
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114997
--- Comment #3 from Andrew Pinski ---
Reduced testcase:
```
typedef int vv __attribute__((__vector_size__(sizeof(int;
constexpr vv ff(int code) { return vv{code}; }
template struct h {
typedef _Tp type;
};
template void f() {
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115000
--- Comment #3 from Andrew Pinski ---
I suspect all of the see also bugs here are the same issue, I described my try
of fixing that in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104113#c8 .
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115000
--- Comment #2 from Andrew Pinski ---
Reduced:
```
template
concept bool c = false;
template
struct ts{};
struct S {};
S s;
ts t33{s};
```
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115000
Andrew Pinski changed:
What|Removed |Added
Ever confirmed|0 |1
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114999
--- Comment #5 from Andrew Pinski ---
The following patterns could be improved/removed while doing this:
```
/* (A - B) == 0 ? (A - B) : (B - A)same as (B - A) */
/* (A - B) != 0 ? (A - B) : (B - A)same as (A - B) */
/* (A - B) >=/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114999
Andrew Pinski changed:
What|Removed |Added
Blocks||113265
--- Comment #4 from Andrew
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114999
--- Comment #3 from Andrew Pinski ---
(In reply to Andrew Pinski from comment #2)
> Another one:
> ```
> int f(int a, int b, int x)
> {
> x = a - b;
> int y = -x;
> return (x >= 0 ? x : 0) + (x <= 0 ? y : 0);
> }
> ```
>
> This should be
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114999
Andrew Pinski changed:
What|Removed |Added
Summary|`a - b == b - a` -> `a == |A few missing optimizations
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114999
Andrew Pinski changed:
What|Removed |Added
Status|UNCONFIRMED |ASSIGNED
Ever confirmed|0
ent
Priority: P3
Component: tree-optimization
Assignee: pinskia at gcc dot gnu.org
Reporter: pinskia at gcc dot gnu.org
Target Milestone: ---
Take:
```
int f(int a, int b, int c)
{
c = a - b;
int d = -c;
int t = c == d;
int t1 = c =
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112659
--- Comment #8 from Andrew Pinski ---
(In reply to Andrew Pinski from comment #7)
> This is the pattern I added for the plus case:
> ```
> (for cnd (cond vec_cond)
> ...
> /* (a != CST1) ? (a + CST2) : 0 -> (a + CST2) iff CST1 == -CST2 */
>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114992
Andrew Pinski changed:
What|Removed |Added
Summary|ICE during IPA pass:|[13/14/15 Regression] ICE
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114994
Andrew Pinski changed:
What|Removed |Added
Summary|fmtlib named argument |[14/15 Regression] fmtlib
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114995
Andrew Pinski changed:
What|Removed |Added
Severity|normal |enhancement
Keywords|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114995
--- Comment #4 from Andrew Pinski ---
Oh this is the more correct syntax:
[[assume((uintptr_t(x_array) & (32-1)) == 0)]];
[[assume((uintptr_t(mul_array) & (32-1)) == 0)]];
[[assume((uintptr_t(add_array) & (32-1)) == 0)]];
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114995
--- Comment #2 from Andrew Pinski ---
I suspect the syntax you want instead is:
[[assume(uintptr_t(x_array) & (32-1) == 0]];
Becuase __builtin_assume_aligned takes a pointer and returns a pointer that has
the assumed alignment
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114995
--- Comment #1 from Andrew Pinski ---
Created attachment 58135
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=58135=edit
testcase
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114994
--- Comment #3 from Andrew Pinski ---
Trying my hand at reducing this slightly.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114994
--- Comment #2 from Andrew Pinski ---
Note lambdas is not need can happen in any template function:
```
#include
#define FMT_HEADER_ONLY
#include
using namespace fmt::literals;
template
auto test(int a)
{
return fmt::format("{foo}
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114872
Andrew Pinski changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
See Also|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109804
Andrew Pinski changed:
What|Removed |Added
Summary|[11/12 Regression] internal |[11 Regression] internal
||needs-reduction
CC||pinskia at gcc dot gnu.org
Component|bootstrap |ipa
--- Comment #5 from Andrew Pinski ---
(In reply to Aldy Hernandez from comment #4)
>
> If = OP_EQUAL is valid gimple, then we
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114989
--- Comment #2 from Andrew Pinski ---
(In reply to Andrew Pinski from comment #1)
> So expand is usually fast. The only slow part I know of that might be
> hitting here is division by constant where we are trying to find if it is
> better to
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114989
Andrew Pinski changed:
What|Removed |Added
Component|c |middle-end
Keywords|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111331
Andrew Pinski changed:
What|Removed |Added
Known to work||12.3.1
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95351
Andrew Pinski changed:
What|Removed |Added
Status|ASSIGNED|RESOLVED
Known to work|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109762
--- Comment #11 from Andrew Pinski ---
The patch does not apply directly to GCC 12.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110066
Andrew Pinski changed:
What|Removed |Added
Resolution|--- |FIXED
Status|ASSIGNED
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112392
Andrew Pinski changed:
What|Removed |Added
Status|ASSIGNED|RESOLVED
Target Milestone|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112659
--- Comment #7 from Andrew Pinski ---
This is the pattern I added for the plus case:
```
(for cnd (cond vec_cond)
...
/* (a != CST1) ? (a + CST2) : 0 -> (a + CST2) iff CST1 == -CST2 */
(simplify
(cnd (ne @0 uniform_integer_cst_p@1)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112659
--- Comment #6 from Andrew Pinski ---
Vector testcase (C++ only) for the missing add case:
```
#define vector4 __attribute__((vector_size(4*sizeof(int
void unopt(vector4 int *v) {
vector4 int t = *v;
vector4 int t1 = t + 8;
*v
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114982
--- Comment #3 from Andrew Pinski ---
Looks like the testcase should also be skipped for mingw/cygwin too.
```
/* External public symbols, which aren't weakref-s,
have local-binding for PE targets. */
if (DECL_P (exp)
&&
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114982
--- Comment #2 from Andrew Pinski ---
So I was going for the elf semantics here but Mach-O semantics says the
function is NOT replacable unless it was weak.
Anyways this is just a dg-skip-if for darwin and I will add it with a note
saying
|unassigned at gcc dot gnu.org |pinskia at gcc dot
gnu.org
Last reconfirmed||2024-05-08
Ever confirmed|0 |1
Status|UNCONFIRMED |ASSIGNED
--- Comment #1 from Andrew Pinski ---
I think this is just
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114967
--- Comment #3 from Andrew Pinski ---
I had a patch for this which I didn't finish up and I hope to get it done for
GCC 15.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114969
Andrew Pinski changed:
What|Removed |Added
See Also||https://gcc.gnu.org/bugzill
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114967
Andrew Pinski changed:
What|Removed |Added
See Also||https://gcc.gnu.org/bugzill
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112392
Andrew Pinski changed:
What|Removed |Added
Keywords||patch
URL|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89224
Andrew Pinski changed:
What|Removed |Added
Known to work||11.4.1
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88670
Bug 88670 depends on bug 89224, which changed state.
Bug 89224 Summary: [11/12/13/14/15 Regression] subscript of const vector has
the wrong type
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89224
What|Removed
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114980
--- Comment #4 from Andrew Pinski ---
-fdiagnostics-plain-output does:
/* If you have changed the default diagnostics output, and this new
output is not appropriately "plain" (e.g., the change needs to be
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114980
--- Comment #2 from Andrew Pinski ---
I have not seen this failure ...
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114972
Andrew Pinski changed:
What|Removed |Added
Ever confirmed|0 |1
Status|UNCONFIRMED
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114974
Andrew Pinski changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89224
Andrew Pinski changed:
What|Removed |Added
Known to work||15.0
--- Comment #18 from Andrew Pinski
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84411
Bug 84411 depends on bug 19661, which changed state.
Bug 19661 Summary: unnecessary atexit calls emitted for static objects with
empty destructors
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=19661
What|Removed
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=19661
Andrew Pinski changed:
What|Removed |Added
Status|ASSIGNED|RESOLVED
Target Milestone|---
701 - 800 of 35210 matches
Mail list logo