(In reply to Jon Brightwell from comment #8) > I maybe reading it wrong but rsi isn't 16b aligned > > ���0x7ffff785b360 <__strcmp_ssse3> mov %esi,%ecx > > ���0x7ffff785b362 <__strcmp_ssse3+2> mov %edi,%eax > > ���0x7ffff785b364 <__strcmp_ssse3+4> and $0x3f,%rcx > > ���0x7ffff785b368 <__strcmp_ssse3+8> and $0x3f,%rax > > ���0x7ffff785b36c <__strcmp_ssse3+12> cmp $0x30,%ecx > > ���0x7ffff785b36f <__strcmp_ssse3+15> ja 0x7ffff785b3b0 > <__strcmp_ssse3+80> > > ���0x7ffff785b371 <__strcmp_ssse3+17> cmp $0x30,%eax > > ���0x7ffff785b374 <__strcmp_ssse3+20> ja 0x7ffff785b3b0 > <__strcmp_ssse3+80> > > b+>���0x7ffff785b376 <__strcmp_ssse3+22> movlpd (%rdi),%xmm1 > > ���0x7ffff785b37a <__strcmp_ssse3+26> movlpd (%rsi),%xmm2 > > ���0x7ffff785b37e <__strcmp_ssse3+30> movhpd 0x8(%rdi),%xmm1 > > ���0x7ffff785b383 <__strcmp_ssse3+35> movhpd 0x8(%rsi),%xmm2 > > ���0x7ffff785b388 <__strcmp_ssse3+40> pxor %xmm0,%xmm0 > > rax 0x0 0 > rbx 0x7fffffffb5d0 140737488336336 > rcx 0x0 0 > rdx 0x7fffffffb46c 140737488335980 > rsi 0x555556c12b40 93825016081216 > rdi 0x0 0 > rbp 0x7fffffffb46c 0x7fffffffb46c > rsp 0x7fffffffb458 0x7fffffffb458 > r8 0x5555569b0550 93825013581136 > r9 0x7fffec1e12b8 140737154781880 > r10 0x848 2120 > r11 0x7ffff785b360 140737346122592 > r12 0x7fffbe81ddc0 140736389569984 > r13 0x0 0 > r14 0xffffffff 4294967295 > r15 0x7fffffffb668 140737488336488 > rip 0x7ffff785b376 0x7ffff785b376 <__strcmp_ssse3+22> > eflags 0x10283 [ CF SF IF RF ] > cs 0x33 51 > ss 0x2b 43 > ds 0x0 0 > es 0x0 0 > fs 0x0 0 > gs 0x0 0 rdi is 0 so this is a NULL pointer dereference rather than an alignment issue. Something does strcmp (..., NULL).