GCC Middle and Back End API Reference
vinsn_def Struct Reference

#include <sel-sched-ir.h>

Collaboration diagram for vinsn_def:

Data Fields

rtx_insninsn_rtx
 
struct idata_def id
 
unsigned hash
 
unsigned hash_rtx
 
int count
 
int cost
 
bool may_trap_p
 

Detailed Description

Type to represent all needed info to emit an insn.
This is a virtual equivalent of the insn.
Every insn in the stream has an associated vinsn.  This is used
to reduce memory consumption basing on the fact that many insns
don't change through the scheduler.

vinsn can be either normal or unique.
* Normal vinsn is the one, that can be cloned multiple times and typically
corresponds to normal instruction.

* Unique vinsn derivates from CALL, ASM, JUMP (for a while) and other
unusual stuff.  Such a vinsn is described by its INSN field, which is a
reference to the original instruction.   

Field Documentation

◆ cost

int vinsn_def::cost

◆ count

int vinsn_def::count

◆ hash

unsigned vinsn_def::hash

◆ hash_rtx

unsigned vinsn_def::hash_rtx

◆ id

struct idata_def vinsn_def::id

◆ insn_rtx

rtx_insn* vinsn_def::insn_rtx

◆ may_trap_p

bool vinsn_def::may_trap_p

The documentation for this struct was generated from the following file: