Commit f94909ce authored by Peter Zijlstra's avatar Peter Zijlstra Committed by Borislav Petkov
Browse files

x86: Prepare asm files for straight-line-speculation



Replace all ret/retq instructions with RET in preparation of making
RET a macro. Since AS is case insensitive it's a big no-op without
RET defined.

  find arch/x86/ -name \*.S | while read file
  do
	sed -i 's/\<ret[q]*\>/RET/' $file
  done

Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
Link: https://lore.kernel.org/r/20211204134907.905503893@infradead.org
parent 22da5a07
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -93,7 +93,7 @@ SYM_FUNC_START(__efi64_thunk)


	pop	%rbx
	pop	%rbx
	pop	%rbp
	pop	%rbp
	ret
	RET
SYM_FUNC_END(__efi64_thunk)
SYM_FUNC_END(__efi64_thunk)


	.code32
	.code32
+4 −4
Original line number Original line Diff line number Diff line
@@ -813,7 +813,7 @@ SYM_FUNC_START(efi32_pe_entry)
2:	popl	%edi				// restore callee-save registers
2:	popl	%edi				// restore callee-save registers
	popl	%ebx
	popl	%ebx
	leave
	leave
	ret
	RET
SYM_FUNC_END(efi32_pe_entry)
SYM_FUNC_END(efi32_pe_entry)


	.section ".rodata"
	.section ".rodata"
@@ -868,7 +868,7 @@ SYM_FUNC_START(startup32_set_idt_entry)


	pop     %ecx
	pop     %ecx
	pop     %ebx
	pop     %ebx
	ret
	RET
SYM_FUNC_END(startup32_set_idt_entry)
SYM_FUNC_END(startup32_set_idt_entry)
#endif
#endif


@@ -884,7 +884,7 @@ SYM_FUNC_START(startup32_load_idt)
	movl	%eax, rva(boot32_idt_desc+2)(%ebp)
	movl	%eax, rva(boot32_idt_desc+2)(%ebp)
	lidt    rva(boot32_idt_desc)(%ebp)
	lidt    rva(boot32_idt_desc)(%ebp)
#endif
#endif
	ret
	RET
SYM_FUNC_END(startup32_load_idt)
SYM_FUNC_END(startup32_load_idt)


/*
/*
@@ -954,7 +954,7 @@ SYM_FUNC_START(startup32_check_sev_cbit)
	popl	%ebx
	popl	%ebx
	popl	%eax
	popl	%eax
#endif
#endif
	ret
	RET
SYM_FUNC_END(startup32_check_sev_cbit)
SYM_FUNC_END(startup32_check_sev_cbit)


/*
/*
+3 −3
Original line number Original line Diff line number Diff line
@@ -58,7 +58,7 @@ SYM_FUNC_START(get_sev_encryption_bit)


#endif	/* CONFIG_AMD_MEM_ENCRYPT */
#endif	/* CONFIG_AMD_MEM_ENCRYPT */


	ret
	RET
SYM_FUNC_END(get_sev_encryption_bit)
SYM_FUNC_END(get_sev_encryption_bit)


/**
/**
@@ -92,7 +92,7 @@ SYM_CODE_START_LOCAL(sev_es_req_cpuid)
	/* All good - return success */
	/* All good - return success */
	xorl	%eax, %eax
	xorl	%eax, %eax
1:
1:
	ret
	RET
2:
2:
	movl	$-1, %eax
	movl	$-1, %eax
	jmp	1b
	jmp	1b
@@ -221,7 +221,7 @@ SYM_FUNC_START(set_sev_encryption_mask)
#endif
#endif


	xor	%rax, %rax
	xor	%rax, %rax
	ret
	RET
SYM_FUNC_END(set_sev_encryption_mask)
SYM_FUNC_END(set_sev_encryption_mask)


	.data
	.data
+24 −24
Original line number Original line Diff line number Diff line
@@ -122,7 +122,7 @@ SYM_FUNC_START_LOCAL(__load_partial)
	pxor T0, MSG
	pxor T0, MSG


.Lld_partial_8:
.Lld_partial_8:
	ret
	RET
SYM_FUNC_END(__load_partial)
SYM_FUNC_END(__load_partial)


/*
/*
@@ -180,7 +180,7 @@ SYM_FUNC_START_LOCAL(__store_partial)
	mov %r10b, (%r9)
	mov %r10b, (%r9)


.Lst_partial_1:
.Lst_partial_1:
	ret
	RET
SYM_FUNC_END(__store_partial)
SYM_FUNC_END(__store_partial)


/*
/*
@@ -225,7 +225,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_init)
	movdqu STATE4, 0x40(STATEP)
	movdqu STATE4, 0x40(STATEP)


	FRAME_END
	FRAME_END
	ret
	RET
SYM_FUNC_END(crypto_aegis128_aesni_init)
SYM_FUNC_END(crypto_aegis128_aesni_init)


/*
/*
@@ -337,7 +337,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_ad)
	movdqu STATE3, 0x30(STATEP)
	movdqu STATE3, 0x30(STATEP)
	movdqu STATE4, 0x40(STATEP)
	movdqu STATE4, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Lad_out_1:
.Lad_out_1:
	movdqu STATE4, 0x00(STATEP)
	movdqu STATE4, 0x00(STATEP)
@@ -346,7 +346,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_ad)
	movdqu STATE2, 0x30(STATEP)
	movdqu STATE2, 0x30(STATEP)
	movdqu STATE3, 0x40(STATEP)
	movdqu STATE3, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Lad_out_2:
.Lad_out_2:
	movdqu STATE3, 0x00(STATEP)
	movdqu STATE3, 0x00(STATEP)
@@ -355,7 +355,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_ad)
	movdqu STATE1, 0x30(STATEP)
	movdqu STATE1, 0x30(STATEP)
	movdqu STATE2, 0x40(STATEP)
	movdqu STATE2, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Lad_out_3:
.Lad_out_3:
	movdqu STATE2, 0x00(STATEP)
	movdqu STATE2, 0x00(STATEP)
@@ -364,7 +364,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_ad)
	movdqu STATE0, 0x30(STATEP)
	movdqu STATE0, 0x30(STATEP)
	movdqu STATE1, 0x40(STATEP)
	movdqu STATE1, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Lad_out_4:
.Lad_out_4:
	movdqu STATE1, 0x00(STATEP)
	movdqu STATE1, 0x00(STATEP)
@@ -373,11 +373,11 @@ SYM_FUNC_START(crypto_aegis128_aesni_ad)
	movdqu STATE4, 0x30(STATEP)
	movdqu STATE4, 0x30(STATEP)
	movdqu STATE0, 0x40(STATEP)
	movdqu STATE0, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Lad_out:
.Lad_out:
	FRAME_END
	FRAME_END
	ret
	RET
SYM_FUNC_END(crypto_aegis128_aesni_ad)
SYM_FUNC_END(crypto_aegis128_aesni_ad)


.macro encrypt_block a s0 s1 s2 s3 s4 i
.macro encrypt_block a s0 s1 s2 s3 s4 i
@@ -452,7 +452,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_enc)
	movdqu STATE2, 0x30(STATEP)
	movdqu STATE2, 0x30(STATEP)
	movdqu STATE3, 0x40(STATEP)
	movdqu STATE3, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Lenc_out_1:
.Lenc_out_1:
	movdqu STATE3, 0x00(STATEP)
	movdqu STATE3, 0x00(STATEP)
@@ -461,7 +461,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_enc)
	movdqu STATE1, 0x30(STATEP)
	movdqu STATE1, 0x30(STATEP)
	movdqu STATE2, 0x40(STATEP)
	movdqu STATE2, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Lenc_out_2:
.Lenc_out_2:
	movdqu STATE2, 0x00(STATEP)
	movdqu STATE2, 0x00(STATEP)
@@ -470,7 +470,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_enc)
	movdqu STATE0, 0x30(STATEP)
	movdqu STATE0, 0x30(STATEP)
	movdqu STATE1, 0x40(STATEP)
	movdqu STATE1, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Lenc_out_3:
.Lenc_out_3:
	movdqu STATE1, 0x00(STATEP)
	movdqu STATE1, 0x00(STATEP)
@@ -479,7 +479,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_enc)
	movdqu STATE4, 0x30(STATEP)
	movdqu STATE4, 0x30(STATEP)
	movdqu STATE0, 0x40(STATEP)
	movdqu STATE0, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Lenc_out_4:
.Lenc_out_4:
	movdqu STATE0, 0x00(STATEP)
	movdqu STATE0, 0x00(STATEP)
@@ -488,11 +488,11 @@ SYM_FUNC_START(crypto_aegis128_aesni_enc)
	movdqu STATE3, 0x30(STATEP)
	movdqu STATE3, 0x30(STATEP)
	movdqu STATE4, 0x40(STATEP)
	movdqu STATE4, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Lenc_out:
.Lenc_out:
	FRAME_END
	FRAME_END
	ret
	RET
SYM_FUNC_END(crypto_aegis128_aesni_enc)
SYM_FUNC_END(crypto_aegis128_aesni_enc)


/*
/*
@@ -532,7 +532,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_enc_tail)
	movdqu STATE3, 0x40(STATEP)
	movdqu STATE3, 0x40(STATEP)


	FRAME_END
	FRAME_END
	ret
	RET
SYM_FUNC_END(crypto_aegis128_aesni_enc_tail)
SYM_FUNC_END(crypto_aegis128_aesni_enc_tail)


.macro decrypt_block a s0 s1 s2 s3 s4 i
.macro decrypt_block a s0 s1 s2 s3 s4 i
@@ -606,7 +606,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_dec)
	movdqu STATE2, 0x30(STATEP)
	movdqu STATE2, 0x30(STATEP)
	movdqu STATE3, 0x40(STATEP)
	movdqu STATE3, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Ldec_out_1:
.Ldec_out_1:
	movdqu STATE3, 0x00(STATEP)
	movdqu STATE3, 0x00(STATEP)
@@ -615,7 +615,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_dec)
	movdqu STATE1, 0x30(STATEP)
	movdqu STATE1, 0x30(STATEP)
	movdqu STATE2, 0x40(STATEP)
	movdqu STATE2, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Ldec_out_2:
.Ldec_out_2:
	movdqu STATE2, 0x00(STATEP)
	movdqu STATE2, 0x00(STATEP)
@@ -624,7 +624,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_dec)
	movdqu STATE0, 0x30(STATEP)
	movdqu STATE0, 0x30(STATEP)
	movdqu STATE1, 0x40(STATEP)
	movdqu STATE1, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Ldec_out_3:
.Ldec_out_3:
	movdqu STATE1, 0x00(STATEP)
	movdqu STATE1, 0x00(STATEP)
@@ -633,7 +633,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_dec)
	movdqu STATE4, 0x30(STATEP)
	movdqu STATE4, 0x30(STATEP)
	movdqu STATE0, 0x40(STATEP)
	movdqu STATE0, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Ldec_out_4:
.Ldec_out_4:
	movdqu STATE0, 0x00(STATEP)
	movdqu STATE0, 0x00(STATEP)
@@ -642,11 +642,11 @@ SYM_FUNC_START(crypto_aegis128_aesni_dec)
	movdqu STATE3, 0x30(STATEP)
	movdqu STATE3, 0x30(STATEP)
	movdqu STATE4, 0x40(STATEP)
	movdqu STATE4, 0x40(STATEP)
	FRAME_END
	FRAME_END
	ret
	RET


.Ldec_out:
.Ldec_out:
	FRAME_END
	FRAME_END
	ret
	RET
SYM_FUNC_END(crypto_aegis128_aesni_dec)
SYM_FUNC_END(crypto_aegis128_aesni_dec)


/*
/*
@@ -696,7 +696,7 @@ SYM_FUNC_START(crypto_aegis128_aesni_dec_tail)
	movdqu STATE3, 0x40(STATEP)
	movdqu STATE3, 0x40(STATEP)


	FRAME_END
	FRAME_END
	ret
	RET
SYM_FUNC_END(crypto_aegis128_aesni_dec_tail)
SYM_FUNC_END(crypto_aegis128_aesni_dec_tail)


/*
/*
@@ -743,5 +743,5 @@ SYM_FUNC_START(crypto_aegis128_aesni_final)
	movdqu MSG, (%rsi)
	movdqu MSG, (%rsi)


	FRAME_END
	FRAME_END
	ret
	RET
SYM_FUNC_END(crypto_aegis128_aesni_final)
SYM_FUNC_END(crypto_aegis128_aesni_final)
+1 −1
Original line number Original line Diff line number Diff line
@@ -525,7 +525,7 @@ ddq_add_8:
	/* return updated IV */
	/* return updated IV */
	vpshufb	xbyteswap, xcounter, xcounter
	vpshufb	xbyteswap, xcounter, xcounter
	vmovdqu	xcounter, (p_iv)
	vmovdqu	xcounter, (p_iv)
	ret
	RET
.endm
.endm


/*
/*
Loading