https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66152
Jakub Jelinek changed:
What|Removed |Added
CC||jakub at gcc dot gnu.org
--- Comment #5
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66152
--- Comment #4 from SztfG at yandex dot ru ---
GCC from trunk doing this:
.Ltext0:
.LC0:
.string ""
.ascii "\001\002\003\004\005\006\007"
bar:
.LFB0:
sub rsp, 24
mov rax, QWORD PTR .LC0[rip]
lea rdi, [rsp+8]
mov QWORD PTR [rsp+8], rax
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66152
Tomasz Konojacki changed:
What|Removed |Added
CC||me at xenu dot pl
--- Comment #3 from
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66152
--- Comment #2 from Andrew Pinski ---
I think there might be already another bug about this same exact thing but I
can't seem to find it right now.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66152
--- Comment #1 from SztfG at yandex dot ru ---
If array of char is initialized using string, gcc can use larger mov
instruction, like movabsq, movq, movl etc. but not movdqa, movaps or other xmm
But if zero byte appears in string, compiler always