https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79723
Bug ID: 79723 Summary: Another case of dropped gs: prefix Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: me at manueljacob dot de CC: rguenth at gcc dot gnu.org Target Milestone: --- void memset_pattern_seg_gs(unsigned char * __seg_gs *s, long n) { for (long i = 0; i < n; ++i) s[i] = 0; } On x86-64, gcc -O3 emits this instruction, missing the gs: prefix: movaps %xmm0, -16(%rdx) It works when replacing "unsigned char *" with "long", even though they have the same size and alignment.