diff --git a/include/aeb_opcodes.hrl b/include/aeb_opcodes.hrl index 9d0638c..5cb22cc 100644 --- a/include/aeb_opcodes.hrl +++ b/include/aeb_opcodes.hrl @@ -146,6 +146,7 @@ -define( 'DBG_LOC', 16#b1). -define( 'DBG_DEF', 16#b2). -define( 'DBG_UNDEF', 16#b3). +-define( 'DBG_CONTRACT', 16#b4). -define( 'STATICCALL', 16#fa). diff --git a/src/aeb_fate_generate_ops.erl b/src/aeb_fate_generate_ops.erl index c5f873c..66347e1 100644 --- a/src/aeb_fate_generate_ops.erl +++ b/src/aeb_fate_generate_ops.erl @@ -245,6 +245,7 @@ ops_defs() -> , { 'DBG_LOC', 16#b1, false, true, true, ?GAS(0), [a, a], dbg_loc, {string, integer}, none, "Debug Op: Execution location. Args = {file_name, line_num}" } , { 'DBG_DEF', 16#b2, false, true, true, ?GAS(0), [a, a], dbg_def, {string, any}, none, "Debug Op: Define a variable. Args = {var_name, register}" } , { 'DBG_UNDEF', 16#b3, false, true, true, ?GAS(0), [a, a], dbg_undef, {string, any}, none, "Debug Op: Undefine a variable. Args = {var_name, register}" } + , { 'DBG_CONTRACT', 16#b4, false, true, true, ?GAS(0), [a], dbg_contract, {string}, none, "Debug Op: Name the current contract. Args: {contract_name}"} , { 'DEACTIVATE', 16#fa, false, true, true, ?GAS(10), [], deactivate, {}, none, "Mark the current contract for deactivation."} , { 'ABORT', 16#fb, true, true, true, ?GAS(10), [a], abort, {string}, none, "Abort execution (dont use all gas) with error message in Arg0."} diff --git a/src/aeb_opcodes.erl b/src/aeb_opcodes.erl index 417abfe..e4f90b5 100644 --- a/src/aeb_opcodes.erl +++ b/src/aeb_opcodes.erl @@ -165,6 +165,7 @@ opcode({comment,X}) -> ?COMMENT(X); opcode(?DBG_LOC) -> ?DBG_LOC; opcode(?DBG_DEF) -> ?DBG_DEF; opcode(?DBG_UNDEF) -> ?DBG_UNDEF; +opcode(?DBG_CONTRACT) -> ?DBG_CONTRACT; opcode(?SUICIDE) -> ?SUICIDE. @@ -309,6 +310,7 @@ mnemonic({comment,_}) -> 'COMMENT' ; mnemonic(?DBG_LOC) -> 'DBG_LOC' ; mnemonic(?DBG_DEF) -> 'DBG_DEF' ; mnemonic(?DBG_UNDEF) -> 'DBG_UNDEF' ; +mnemonic(?DBG_CONTRACT) -> 'DBG_CONTRACT' ; mnemonic(?SUICIDE) -> 'SUICIDE' . @@ -455,6 +457,7 @@ m_to_op('SUICIDE') -> ?SUICIDE ; m_to_op('DBG_LOC') -> ?DBG_LOC ; m_to_op('DBG_DEF') -> ?DBG_DEF ; m_to_op('DBG_UNDEF') -> ?DBG_UNDEF ; +m_to_op('DBG_CONTRACT') -> ?DBG_CONTRACT ; m_to_op(Data) when 0= Data .