InstructionSource 클래스

생성자

InstructionSource()

메서드

add_node

명령 원본 그래프에 노드를 추가합니다.

add_root

명령 원본 그래프에 루트 노드를 추가합니다.

from_isa

ISA에서 InstructionSource 그래프를 생성합니다.

명령 원본 그래프는 컨텍스트의 출처 그래프보다 더 많은 정보를 포함하며, 명령을 생성한 변환 및 아키텍처에 연결합니다.

get

지정된 명령 ID를 사용하여 첫 번째 명령 원본 루트 노드를 검색합니다. 이러한 노드가 없으면 기본값을 반환합니다.

add_node

명령 원본 그래프에 노드를 추가합니다.

add_node(instruction: Instruction, transform: ISATransform | Architecture | None, children: list[int]) -> int

매개 변수

Name Description
instruction
필수
<xref:qdk.qre.Instruction>

이 노드에 대한 명령입니다.

transform
필수
<xref:Optional>[<xref:ISATransform | Architecture>]

명령을 생성한 변환입니다.

children
필수

자식 노드의 인덱스입니다.

반품

형식 Description
int

새로 추가된 노드의 인덱스입니다.

add_root

명령 원본 그래프에 루트 노드를 추가합니다.

add_root(node_id: int) -> None

매개 변수

Name Description
node_id
필수
int

루트로 추가할 노드의 인덱스입니다.

from_isa

ISA에서 InstructionSource 그래프를 생성합니다.

명령 원본 그래프는 컨텍스트의 출처 그래프보다 더 많은 정보를 포함하며, 명령을 생성한 변환 및 아키텍처에 연결합니다.

from_isa(ctx: ISAContext, isa: ISA) -> InstructionSource

매개 변수

Name Description
ctx
필수

출처 그래프를 포함하는 열거형 컨텍스트입니다.

isa
필수
ISA

ISA의 지침은 원본 그래프의 루트 노드 역할을 합니다.

반품

형식 Description

예측 결과에 대한 명령 원본 그래프입니다.

get

지정된 명령 ID를 사용하여 첫 번째 명령 원본 루트 노드를 검색합니다. 이러한 노드가 없으면 기본값을 반환합니다.

get(id: int, default: _InstructionSourceNodeReference | None = None) -> _InstructionSourceNodeReference | None

매개 변수

Name Description
id
필수
int

검색할 명령 ID입니다.

default
<xref:Optional>[<xref:_InstructionSourceNodeReference>]

지정된 ID를 가진 노드가 없는 경우 반환할 값입니다. 기본값은 None입니다.

Default value: None

반품

형식 Description
Optional[<xref:_InstructionSourceNodeReference>]

지정된 명령 ID가 있는 첫 번째 명령 원본 노드이거나, 해당 노드가 없는 경우 기본값입니다.

특성

nodes

nodes: list[qdk.qre._instruction._InstructionSourceNode]

roots

roots: list[int]