diff options
Diffstat (limited to 'tools/objtool/arch/x86/decode.c')
| -rw-r--r-- | tools/objtool/arch/x86/decode.c | 9 | 
1 files changed, 9 insertions, 0 deletions
diff --git a/tools/objtool/arch/x86/decode.c b/tools/objtool/arch/x86/decode.c index c0c0b265e88e..b63a31be1218 100644 --- a/tools/objtool/arch/x86/decode.c +++ b/tools/objtool/arch/x86/decode.c @@ -98,6 +98,15 @@ int arch_decode_instruction(struct elf *elf, struct section *sec,  			*type = INSN_FP_SETUP;  		break; +	case 0x8d: +		if (insn.rex_prefix.bytes && +		    insn.rex_prefix.bytes[0] == 0x48 && +		    insn.modrm.nbytes && insn.modrm.bytes[0] == 0x2c && +		    insn.sib.nbytes && insn.sib.bytes[0] == 0x24) +			/* lea %(rsp), %rbp */ +			*type = INSN_FP_SETUP; +		break; +  	case 0x90:  		*type = INSN_NOP;  		break;  |