https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117684

Xi Ruoyao <xry111 at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |WONTFIX
             Status|UNCONFIRMED                 |RESOLVED
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=113190
                 CC|                            |xry111 at gcc dot gnu.org

--- Comment #7 from Xi Ruoyao <xry111 at gcc dot gnu.org> ---
GCC 8 is EOL, so WONTFIX.

> We understand that initializing a large memory segment takes time, but 
> generating the binary code for doing this task should not last long.

Also note that we cannot "generate the binary code for doing this task" in
general.  For example a simple

int x[1145141919] = {1};
int main() {};

is already enough to "blow up" the compiler (so it's called a "compiler bomb")
and that's one of the reasons SECURITY.txt tells to build untrusted source
files in a sandbox.  "Optimizing" this to

int x[1145141919];
void __init_x(void) __attribute__((constructor))
{
  x[0] = 1;
}
int main() {}

is not always correct, see
https://gcc.gnu.org/pipermail/gcc-help/2020-July/139234.html.  If you want this
"optimization" you need to do it yourself.

Reply via email to