[meta] Port all the Cranelift instructions to the meta crate;
This commit is contained in:
3107
cranelift/codegen/meta/src/shared/instructions.rs
Normal file
3107
cranelift/codegen/meta/src/shared/instructions.rs
Normal file
File diff suppressed because it is too large
Load Diff
@@ -3,15 +3,18 @@
|
|||||||
pub mod entities;
|
pub mod entities;
|
||||||
pub mod formats;
|
pub mod formats;
|
||||||
pub mod immediates;
|
pub mod immediates;
|
||||||
|
pub mod instructions;
|
||||||
pub mod settings;
|
pub mod settings;
|
||||||
pub mod types;
|
pub mod types;
|
||||||
|
|
||||||
use crate::cdsl::formats::FormatRegistry;
|
use crate::cdsl::formats::FormatRegistry;
|
||||||
|
use crate::cdsl::inst::InstructionGroup;
|
||||||
use crate::cdsl::operands::OperandKind;
|
use crate::cdsl::operands::OperandKind;
|
||||||
use crate::cdsl::settings::SettingGroup;
|
use crate::cdsl::settings::SettingGroup;
|
||||||
|
|
||||||
pub struct Definitions {
|
pub struct Definitions {
|
||||||
pub settings: SettingGroup,
|
pub settings: SettingGroup,
|
||||||
|
pub instructions: InstructionGroup,
|
||||||
pub operand_kinds: OperandKinds,
|
pub operand_kinds: OperandKinds,
|
||||||
pub format_registry: FormatRegistry,
|
pub format_registry: FormatRegistry,
|
||||||
}
|
}
|
||||||
@@ -49,6 +52,7 @@ pub fn define() -> Definitions {
|
|||||||
let format_registry = formats::define(&immediates, &entities);
|
let format_registry = formats::define(&immediates, &entities);
|
||||||
Definitions {
|
Definitions {
|
||||||
settings: settings::define(),
|
settings: settings::define(),
|
||||||
|
instructions: instructions::define(&format_registry, &immediates, &entities),
|
||||||
operand_kinds: immediates,
|
operand_kinds: immediates,
|
||||||
format_registry,
|
format_registry,
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user