https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86680
Andrew Pinski changed:
What|Removed |Added
Target Milestone|8.0 |---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86680
Andrew Pinski changed:
What|Removed |Added
Target Milestone|--- |8.0
--- Comment #12 from Andrew Pinski
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86680
--- Comment #11 from Florian La Roche
---
Below my current code that disables optimization for this one function and thus
generates ok code length.
best regards,
Florian La Roche
#if __GNUC__ > 4
#define __gcc_no_ivopts __attribute__ ((opt
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86680
--- Comment #10 from Florian La Roche
---
In my optionion the result of
"end = (__bss_end - __bss_start) * sizeof (unsigned long)"
in my last testcase should show that the compile should be
able to optimize the test code of the original submitte
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86680
--- Comment #9 from Florian La Roche ---
Puh, even introduced an error here. This one works, but is
getting complex compared to the original code:
extern unsigned long __bss_start[];
extern unsigned long __bss_end[];
void clear_bss(void)
{
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86680
--- Comment #8 from Florian La Roche ---
I've found something the compiler optimized quite nicely:
(Good for the compiler, but I'd be happy to stay with the original code
that was much easier to read for humans.)
extern unsigned long __bss_sta
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86680
--- Comment #7 from Florian La Roche ---
Hello Andrew Pinski,
shouldn't the compiler see that both must be aligned to 8 bytes
and thus also their difference must be a multiple of 8 bytes?
I haven't looked into gcc sources, but maybe this inform
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86680
Jakub Jelinek changed:
What|Removed |Added
CC||jakub at gcc dot gnu.org
--- Comment #6
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86680
Andrew Pinski changed:
What|Removed |Added
Keywords||missed-optimization
Component|c