https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115912
--- Comment #6 from Sam James <sjames at gcc dot gnu.org> --- There's only a handful of notable looking differences: ``` │ - and $0xfffd,%ecx │ + and $0xfffffffd,%edx │ + or $0x2,%ecx │ cmpb $0x0,0xac8(%rsi) │ - je 144f0 <bool _subset<OT::glyf const>(hb_subset_plan_t*, hb_vector_t<char, false>&)+0x1900> │ - or $0x2,%edx │ - movzwl %dx,%ecx │ - movbe %cx,0x10(%rax) │ + cmovne %ecx,%edx │ + movbe %dx,0x10(%rax) │ mov 0x78(%rsp),%rax │ mov %r13,%rdx │ mov $0x68656164,%esi │ mov 0x50(%rax),%rdi ``` ``` │ - mov 0x20(%rsp),%r9d │ + mov 0x20(%rsp),%ecx │ vroundss $0x9,%xmm0,%xmm0,%xmm0 │ vroundss $0x9,%xmm5,%xmm5,%xmm5 │ vcvttss2si %xmm0,%edx │ - movzwl %dx,%edx │ - vcvttss2si %xmm5,%ecx │ - movzwl %cx,%ecx │ - movswl %cx,%eax │ + vcvttss2si %xmm5,%r9d │ + movswl %r9w,%eax │ vcvtsi2ss %eax,%xmm2,%xmm0 │ vaddss %xmm4,%xmm0,%xmm0 ``` ``` │ vmovdqu %ymm0,-0x70(%rbp) │ vmovq -0x250(%rbp),%xmm0 │ - jmp 5c6 <OT::Layout::GPOS_impl::SinglePosFormat2::subset(hb_subset_context_t*) const+0x5c6> │ - data16 cs nopw 0x0(%rax,%rax,1) │ - nopl 0x0(%rax) │ + jmp 5b6 <OT::Layout::GPOS_impl::SinglePosFormat2::subset(hb_subset_context_t*) const+0x5b6> │ + xchg %ax,%ax │ movbe 0x2(%rcx),%si ```