|
Micro C Compiler - MCC
|
estrutura para um operando. More...
#include <ir.h>
Public Attributes | ||
| OperandType | type | |
| Tipo do operando, conforme definido em OperandType. | ||
| int | owns_label | |
| Flag que indica se este operando é o "dono" da string do label (evita double free). | ||
| union { | ||
| Simbolo * symbol | ||
| int temp_id | ||
| int const_val | ||
| char * label_name | ||
| } | data | |
| União para armazenar o valor ou a referência do operando. | ||
| char * | string_content | |
| Conteúdo literal da string (usado apenas por OPERAND_STRING_LBL). | ||
estrutura para um operando.
| int IROperand::const_val |
O valor da constante inteira.
| union { ... } IROperand::data |
União para armazenar o valor ou a referência do operando.
| char* IROperand::label_name |
O nome textual do rótulo (ex: "L0", "main").
| int IROperand::owns_label |
Flag que indica se este operando é o "dono" da string do label (evita double free).
| char* IROperand::string_content |
Conteúdo literal da string (usado apenas por OPERAND_STRING_LBL).
| Simbolo* IROperand::symbol |
Ponteiro para o símbolo na tabela (para variáveis/parâmetros).
| int IROperand::temp_id |
ID da variável temporária (ex: 0 para t0).
| OperandType IROperand::type |
Tipo do operando, conforme definido em OperandType.