mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-01 15:11:24 +00:00
Added header file declarations and .exports entries
for the new APIs offered by the enhanced disassembler for inspecting operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95606 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
3c280fccf9
commit
01cd79fe1b
@ -368,10 +368,55 @@ int EDNumOperands(EDInstRef inst);
|
||||
int EDGetOperand(EDOperandRef *operand,
|
||||
EDInstRef inst,
|
||||
int index);
|
||||
|
||||
/*!
|
||||
@function EDOperandIsRegister
|
||||
@param operand The operand to be queried.
|
||||
@result 1 if the operand names a register; 0 if not; -1 on error.
|
||||
*/
|
||||
int EDOperandIsRegister(EDOperandRef operand);
|
||||
|
||||
/*!
|
||||
@function EDOperandIsImmediate
|
||||
@param operand The operand to be queried.
|
||||
@result 1 if the operand specifies an immediate value; 0 if not; -1 on error.
|
||||
*/
|
||||
int EDOperandIsImmediate(EDOperandRef operand);
|
||||
|
||||
/*!
|
||||
@function EDOperandIsMemory
|
||||
@param operand The operand to be queried.
|
||||
@result 1 if the operand specifies a location in memory; 0 if not; -1 on error.
|
||||
*/
|
||||
int EDOperandIsMemory(EDOperandRef operand);
|
||||
|
||||
/*!
|
||||
@function EDRegisterOperandValue
|
||||
@param value A pointer whose target will be filled in with the LLVM register ID
|
||||
of the register named by the operand.
|
||||
@param operand The operand to be queried.
|
||||
@result 0 on success; -1 otherwise.
|
||||
*/
|
||||
int EDRegisterOperandValue(unsigned *value,
|
||||
EDOperandRef operand);
|
||||
|
||||
/*!
|
||||
@function EDImmediateOperandValue
|
||||
@param value A pointer whose target will be filled in with the value of the
|
||||
immediate.
|
||||
@param operand The operand to be queried.
|
||||
@result 0 on success; -1 otherwise.
|
||||
*/
|
||||
int EDImmediateOperandValue(uint64_t *value,
|
||||
EDOperandRef operand);
|
||||
|
||||
/*!
|
||||
@function EDEvaluateOperand
|
||||
Evaluates an operand using a client-supplied register state accessor.
|
||||
Evaluates an operand using a client-supplied register state accessor. Register
|
||||
operands are evaluated by reading the value of the register; immediate operands
|
||||
are evaluated by reporting the immediate value; memory operands are evaluated
|
||||
by computing the target address (with only those relocations applied that were
|
||||
already applied to the original bytes).
|
||||
@param result A pointer whose target is to be filled with the result of
|
||||
evaluating the operand.
|
||||
@param operand The operand to be evaluated.
|
||||
|
@ -221,7 +221,7 @@ int EDRegisterOperandValue(unsigned *value,
|
||||
return 0;
|
||||
}
|
||||
|
||||
int EDImmedateOperandValue(uint64_t *value,
|
||||
int EDImmediateOperandValue(uint64_t *value,
|
||||
EDOperandRef operand) {
|
||||
if(!operand->isImmediate())
|
||||
return -1;
|
||||
|
@ -25,6 +25,11 @@ _EDLiteralTokenAbsoluteValue
|
||||
_EDRegisterTokenValue
|
||||
_EDNumOperands
|
||||
_EDGetOperand
|
||||
_EDOperandIsRegister
|
||||
_EDOperandIsImmediate
|
||||
_EDOperandIsMemory
|
||||
_EDRegisterOperandValue
|
||||
_EDImmediateOperandValue
|
||||
_EDEvaluateOperand
|
||||
_EDBlockCreateInsts
|
||||
_EDBlockEvaluateOperand
|
||||
|
Loading…
Reference in New Issue
Block a user