diff options
Diffstat (limited to 'tools/objtool/arch/x86/decode.c')
| -rw-r--r-- | tools/objtool/arch/x86/decode.c | 13 | 
1 files changed, 9 insertions, 4 deletions
| diff --git a/tools/objtool/arch/x86/decode.c b/tools/objtool/arch/x86/decode.c index 4d6d7fc13255..c10ef78df050 100644 --- a/tools/objtool/arch/x86/decode.c +++ b/tools/objtool/arch/x86/decode.c @@ -531,6 +531,11 @@ int arch_decode_instruction(struct objtool_file *file, const struct section *sec  		}  		break; +	case 0xcc: +		/* int3 */ +		*type = INSN_TRAP; +		break; +  	case 0xe3:  		/* jecxz/jrcxz */  		*type = INSN_JUMP_CONDITIONAL; @@ -697,10 +702,10 @@ const char *arch_ret_insn(int len)  {  	static const char ret[5][5] = {  		{ BYTE_RET }, -		{ BYTE_RET, BYTES_NOP1 }, -		{ BYTE_RET, BYTES_NOP2 }, -		{ BYTE_RET, BYTES_NOP3 }, -		{ BYTE_RET, BYTES_NOP4 }, +		{ BYTE_RET, 0xcc }, +		{ BYTE_RET, 0xcc, BYTES_NOP1 }, +		{ BYTE_RET, 0xcc, BYTES_NOP2 }, +		{ BYTE_RET, 0xcc, BYTES_NOP3 },  	};  	if (len < 1 || len > 5) { |