Hi Jan, Uros, i386.md has
(define_insn "*sse_prologue_save_insn" [(set (mem:BLK (plus:DI (match_operand:DI 0 "register_operand" "R") (match_operand:DI 4 "const_int_operand" "n"))) (unspec:BLK [(reg:DI 21) (reg:DI 22) (reg:DI 23) (reg:DI 24) (reg:DI 25) (reg:DI 26) (reg:DI 27) (reg:DI 28)] UNSPEC_SSE_PROLOGUE_SAVE)) (use (match_operand:DI 1 "register_operand" "r")) (use (match_operand:DI 2 "const_int_operand" "i")) (use (label_ref:DI (match_operand 3 "" "X")))] "TARGET_64BIT && INTVAL (operands[4]) + SSE_REGPARM_MAX * 16 - 16 < 128 && INTVAL (operands[4]) + INTVAL (operands[2]) * 16 >= -128" { ... } [(set_attr "type" "other") (set_attr "length_immediate" "0") (set_attr "length_address" "0") (set_attr "length" "135") (set_attr "memory" "store") (set_attr "modrm" "0") (set_attr "mode" "DI")]) Why is the length 135? I saw jmp *%rdx # 12 *sse_prologue_save_insn [length = 135] movaps %xmm7, -15(%rax) movaps %xmm6, -31(%rax) movaps %xmm5, -47(%rax) movaps %xmm4, -63(%rax) movaps %xmm3, -79(%rax) movaps %xmm2, -95(%rax) movaps %xmm1, -111(%rax) movaps %xmm0, -127(%rax) which is 34 bytes. H.J.