Severity: normal
Priority: P3
Component: lto
Assignee: unassigned at gcc dot gnu.org
Reporter: jwerner at chromium dot org
Target Milestone: ---
We're using `__builtin_constant_p()` in combination with generating a function
call to an undefined reference
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112573
--- Comment #2 from Julius Werner ---
Sorry, I don't really know what reassociation means in this context. Are you
saying that the behavior is WAI?
Note that the problem also exists when you write the accesses in h() as:
*(a + (y + 3))
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: jwerner at chromium dot org
Target Milestone: ---
Target: aarch64
I noticed some weird code generation behavior in aarch64 that seems to be a new
regression in GCC 13 or 12
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578
Julius Werner changed:
What|Removed |Added
CC||jwerner at chromium dot org
--- Comment
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: jwerner at chromium dot org
Target Milestone: ---
I found a pretty simple case where GCC cannot optimize out a redundant check.
I've reduced it to the following minimal test case:
unsigned int random_number
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92903
--- Comment #1 from Julius Werner ---
For reference, clang 10.0.0 manages to do this optimization correctly:
(File Offset: 0x40):
0: b8 01 00 00 00 mov$0x1,%eax
5: 81 ff 23 45 67 89 cmp$0x896745
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: jwerner at chromium dot org
Target Milestone: ---
I compiled the following test code on GCC 8.3.0:
int test(int a
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92716
--- Comment #1 from Julius Werner ---
edit: Just noticed that when I implement it as
static inline unsigned int byteswap(unsigned int x)
{
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: jwerner at chromium dot org
Target Milestone: ---
I compiled the following test code for both x86_64 and aarch64 on gcc 8.3.0:
static inline unsigned int byteswap(unsi
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: jwerner at chromium dot org
Target Milestone: ---
See the following minimal test case:
int main(int argc, char **argv)
{
switch (argc) {
case "C"[0]:
return 1;
Assignee: unassigned at gcc dot gnu.org
Reporter: jwerner at chromium dot org
Target Milestone: ---
Compile the following test file for the x86_64 target:
struct {
void *a;
void *b;
} mystruct __attribute__((__section__(".data.mystruct"));
Then run objdump -x on the o
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67701
--- Comment #3 from Julius Werner ---
> I suspect this is an armv7 issue only where there is missing support for
> misaligned load/stores.
Did a quick test on aarch64 and you're right, neither of the two issues appears
there.
> Also testvalue
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67701
Julius Werner changed:
What|Removed |Added
Target||armv7a
--- Comment #1 from Julius Werner
: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: jwerner at chromium dot org
Target Milestone: ---
Consider the following sample program:
static inline void write32(void *addr, unsigned int
14 matches
Mail list logo