List of all items
Structs
- ast::function_definition::FunctionDefinition
- ast::function_definition::Parameter
- ast::global_definition::VariableDefinition
- ast::statement::assign::Assign
- ast::statement::compound::Compound
- ast::statement::declare::Declare
- ast::statement::expression::binary_operator::BinaryOperatorResult
- ast::statement::expression::field_access::FieldAccess
- ast::statement::expression::function_call::FunctionCall
- ast::statement::expression::in_brackets::InBrackets
- ast::statement::expression::integer_literal::IntegerLiteral
- ast::statement::expression::unary_operator::UnaryOperatorResult
- ast::statement::expression::variable_ref::VariableRef
- ast::statement::function_call::FunctionCall
- ast::statement::if_statement::If
- ast::statement::return_statement::Return
- ast::statement::while_statement::While
- ast::type_definition::FieldDefinition
- ast::type_definition::TypeDefinition
- backend::riscv::SimplePseudoTemplate
- backend::riscv::UnparsedInstruction
- backend::riscv::from_ir::Context
- backend::riscv::from_ir::function::FunctionCompileContext
- backend::riscv::simple_instruction::SimpleInstruction
- backend::riscv::simple_instruction::param_transformer::bit_at::BitAt
- backend::riscv::simple_instruction::param_transformer::bits_at::BitsAt
- backend::riscv::simple_instruction::param_transformer::branch_high::BranchHigh
- backend::riscv::simple_instruction::param_transformer::branch_low::BranchLow
- backend::riscv::simple_instruction::param_transformer::csr::Csr
- backend::riscv::simple_instruction::param_transformer::jal_form::JalForm
- backend::riscv::simple_instruction::param_transformer::register::Register
- backend::riscv::simple_instruction::template::Template
- backend::wasm::control_flow::selector::CFSelector
- binary_format::clef::Clef
- binary_format::clef::PendingSymbol
- binary_format::clef::Section
- binary_format::clef::SectionMeta
- binary_format::clef::Symbol
- ir::GlobalDefinition
- ir::IRGeneratingContext
- ir::TypeDefinition
- ir::editor::Editor
- ir::editor::action::insert_basic_block::InsertBasicBlock
- ir::editor::action::insert_statement::InsertStatement
- ir::editor::action::remove_basic_block::RemoveBasicBlock
- ir::editor::action::remove_statement::RemoveStatement
- ir::editor::action::rename_local::RenameLocal
- ir::editor::analyzer::Analyzer
- ir::editor::analyzer::BindedAnalyzer
- ir::editor::analyzer::BindedMemoryUsage
- ir::editor::analyzer::MemoryUsage
- ir::editor::analyzer::control_flow::BindedControlFlowGraph
- ir::editor::analyzer::control_flow::BindedScc
- ir::editor::analyzer::control_flow::ControlFlowGraph
- ir::editor::analyzer::control_flow::ControlFlowGraphContent
- ir::editor::analyzer::control_flow::scc::BindedScc
- ir::editor::analyzer::control_flow::structural::FoldedCFG
- ir::editor::analyzer::control_flow::structural::If
- ir::editor::analyzer::control_flow::structural::selector::CFSelector
- ir::editor::analyzer::memory_usage::BindedMemoryUsage
- ir::editor::analyzer::memory_usage::MemoryAccessInfo
- ir::editor::analyzer::memory_usage::MemoryUsage
- ir::editor::analyzer::register_usage::BindedRegisterUsage
- ir::editor::analyzer::register_usage::BindedRegisterUsageAnalyzer
- ir::editor::analyzer::register_usage::RegisterUsage
- ir::editor::analyzer::register_usage::RegisterUsageAnalyzer
- ir::function::FunctionDefinition
- ir::function::FunctionDefinitionIndex
- ir::function::FunctionDefinitionIndexEnumerate
- ir::function::FunctionHeader
- ir::function::Iter
- ir::function::basic_block::BasicBlock
- ir::function::ir_generator::IRGeneratingContext
- ir::function::ir_generator::SymbolTable
- ir::function::parameter::Parameter
- ir::function::statement::Alloca
- ir::function::statement::Jump
- ir::function::statement::Load
- ir::function::statement::Ret
- ir::function::statement::SetField
- ir::function::statement::Store
- ir::function::statement::alloca::Alloca
- ir::function::statement::branch::Branch
- ir::function::statement::calculate::binary::BinaryCalculate
- ir::function::statement::calculate::unary::UnaryCalculate
- ir::function::statement::call::Call
- ir::function::statement::jump::Jump
- ir::function::statement::load::Load
- ir::function::statement::load_field::LoadField
- ir::function::statement::phi::Phi
- ir::function::statement::phi::PhiSource
- ir::function::statement::ret::Ret
- ir::function::statement::set_field::SetField
- ir::function::statement::store::Store
- ir::global_definition::GlobalDefinition
- ir::integer_literal::IntegerLiteral
- ir::optimize::FunctionOptimizer
- ir::optimize::pass::FixIrreducible
- ir::optimize::pass::TopologicalSort
- ir::optimize::pass::fix_irreducible::EditPlan
- ir::optimize::pass::fix_irreducible::FixIrreducible
- ir::optimize::pass::memory_to_register::MemoryToRegister
- ir::optimize::pass::memory_to_register::PhiSubNode
- ir::optimize::pass::remove_load_directly_after_store::RemoveLoadDirectlyAfterStore
- ir::optimize::pass::remove_only_once_store::RemoveOnlyOnceStore
- ir::optimize::pass::remove_unused_register::RemoveUnusedRegister
- ir::optimize::pass::topological_sort::TopologicalSort
- ir::quantity::global::GlobalVariableName
- ir::quantity::local::RegisterName
- ir::type_definition::TypeDefinition
- ir::type_definition::TypeDefinitionMapping
- utility::data_type::Integer
- utility::graph::subgraph::CFSubGraph
Enums
- ast::ASTNode
- ast::statement::Statement
- ast::statement::expression::lvalue::LValue
- ast::statement::expression::rvalue::RValue
- backend::riscv::Directive
- backend::riscv::Line
- backend::riscv::from_ir::register_assign::RegisterAssign
- backend::riscv::section::SectionName
- backend::riscv::simple_instruction::param::Decided
- backend::riscv::simple_instruction::param::Param
- backend::riscv::simple_instruction::param_transformer::ParamTransformer
- backend::riscv::simple_instruction::template::Part
- backend::wasm::control_flow::ControlFlowElement
- backend::wasm::control_flow::selector::CFSelectorSegment
- binary_format::clef::Architecture
- binary_format::clef::Os
- ir::IR
- ir::editor::action::Action
- ir::editor::action::insert_basic_block::InsertPosition
- ir::editor::action::insert_statement::InsertPosition
- ir::editor::analyzer::control_flow::structural::RegionNode
- ir::editor::analyzer::control_flow::structural::selector::CFSelectorSegment
- ir::editor::analyzer::register_usage::RegisterDefinePosition
- ir::function::statement::IRStatement
- ir::function::statement::branch::BranchType
- ir::function::statement::calculate::binary::BinaryOperation
- ir::function::statement::calculate::unary::UnaryOperation
- ir::optimize::pass::Pass
- ir::optimize::pass::fix_irreducible::FixOtherBlockPlan
- ir::optimize::pass::fix_irreducible::IntoSccEdgeSource
- ir::quantity::Quantity
- utility::data_type::Type
Traits
- ast::statement::IsStatement
- ast::statement::expression::lvalue::IsLValue
- ast::statement::expression::rvalue::IsRValue
- backend::riscv::from_ir::HasSize
- backend::riscv::simple_instruction::param::AsParam
- backend::riscv::simple_instruction::param_transformer::IsParamTransformer
- ir::editor::action::IsAction
- ir::editor::analyzer::IsAnalyzer
- ir::function::statement::IsIRStatement
- ir::optimize::pass::IsPass
- ir::quantity::IsQuantity
Macros
Functions
- ast::from_source
- ast::function_definition::parse
- ast::function_definition::parse_parameter
- ast::global_definition::parse
- ast::parse
- ast::statement::assign::parse
- ast::statement::compound::parse
- ast::statement::declare::parse
- ast::statement::expression::binary_operator::level10::higher_than_level10
- ast::statement::expression::binary_operator::level10::parse
- ast::statement::expression::binary_operator::level3::higher_than_level3
- ast::statement::expression::binary_operator::level3::parse
- ast::statement::expression::binary_operator::level4::higher_than_level4
- ast::statement::expression::binary_operator::level4::parse
- ast::statement::expression::binary_operator::level5::higher_than_level5
- ast::statement::expression::binary_operator::level5::parse
- ast::statement::expression::binary_operator::level6::higher_than_level6
- ast::statement::expression::binary_operator::level6::parse
- ast::statement::expression::binary_operator::level7::higher_than_level7
- ast::statement::expression::binary_operator::level7::parse
- ast::statement::expression::binary_operator::level8::higher_than_level8
- ast::statement::expression::binary_operator::level8::parse
- ast::statement::expression::binary_operator::level9::higher_than_level9
- ast::statement::expression::binary_operator::level9::parse
- ast::statement::expression::binary_operator::parse
- ast::statement::expression::field_access::higher_than_field_access
- ast::statement::expression::field_access::parse
- ast::statement::expression::function_call::parse
- ast::statement::expression::in_brackets::parse
- ast::statement::expression::integer_literal::parse
- ast::statement::expression::lvalue::parse
- ast::statement::expression::rvalue::parse
- ast::statement::expression::unary_operator::higher_than_unary_operator_result
- ast::statement::expression::unary_operator::parse
- ast::statement::expression::variable_ref::parse
- ast::statement::function_call::parse
- ast::statement::if_statement::parse
- ast::statement::parse
- ast::statement::return_statement::parse
- ast::statement::while_statement::parse
- ast::type_definition::parse
- ast::type_definition::parse_field_definition
- backend::riscv::emit_clef
- backend::riscv::from_ir::emit_asm
- backend::riscv::from_ir::function::basic_block::append_phi_insert
- backend::riscv::from_ir::function::basic_block::emit_code
- backend::riscv::from_ir::function::collect_phi_constant_assign
- backend::riscv::from_ir::function::emit_code
- backend::riscv::from_ir::function::statement::binary_calculate::emit_code
- backend::riscv::from_ir::function::statement::branch::emit_code
- backend::riscv::from_ir::function::statement::call::emit_code
- backend::riscv::from_ir::function::statement::call::load_u32
- backend::riscv::from_ir::function::statement::call::store_u32
- backend::riscv::from_ir::function::statement::emit_code
- backend::riscv::from_ir::function::statement::load::emit_code
- backend::riscv::from_ir::function::statement::load_field::emit_code
- backend::riscv::from_ir::function::statement::ret::emit_code
- backend::riscv::from_ir::function::statement::set_field::emit_code
- backend::riscv::from_ir::function::statement::store::emit_code
- backend::riscv::from_ir::function::statement::unary_calculate::emit_code
- backend::riscv::from_ir::register_assign::active_block_intersection
- backend::riscv::from_ir::register_assign::assign_alloca
- backend::riscv::from_ir::register_assign::assign_param
- backend::riscv::from_ir::register_assign::assign_register
- backend::riscv::from_ir::register_assign::collect_phied_registers
- backend::riscv::from_ir::register_assign::register_groups
- backend::riscv::instruction_line
- backend::riscv::parse_directive
- backend::riscv::parse_single_section
- backend::riscv::preprocess
- backend::riscv::replace_complex_pseudo
- backend::riscv::replace_simple_pseudo
- backend::riscv::resolve_pending_symbol
- backend::riscv::section::parse_section
- backend::riscv::simple_instruction::param::parse
- backend::riscv::simple_instruction::param::parse_csr
- backend::riscv::simple_instruction::param::parse_csr_bytes
- backend::riscv::simple_instruction::param::parse_register
- backend::riscv::simple_instruction::param::parse_register_bytes
- backend::riscv::simple_instruction::param_transformer::bit_at::parse
- backend::riscv::simple_instruction::param_transformer::bits_at::parse
- backend::riscv::simple_instruction::param_transformer::branch_high::parse
- backend::riscv::simple_instruction::param_transformer::branch_low::parse
- backend::riscv::simple_instruction::param_transformer::csr::parse
- backend::riscv::simple_instruction::param_transformer::jal_form::parse
- backend::riscv::simple_instruction::param_transformer::parse
- backend::riscv::simple_instruction::param_transformer::register::parse
- backend::riscv::simple_instruction::parse
- backend::riscv::simple_instruction::parse_binary
- backend::riscv::simple_instruction::parse_whole_binary
- backend::riscv::simple_instruction::template::parse
- backend::riscv::simple_instruction::template::parse_param_transformer
- backend::riscv::simple_instruction::template::parse_template_part
- backend::riscv::simple_instruction::template::templates
- backend::wasm::collect_to_move
- backend::wasm::compile
- backend::wasm::fold
- backend::wasm::fold_if_else
- backend::wasm::fold_if_else_once
- backend::wasm::fold_loop
- backend::wasm::generate_function
- backend::wasm::lowering::alloca_stack
- backend::wasm::lowering::decide_branch_operation_type
- backend::wasm::lowering::generate_if_condition
- backend::wasm::lowering::lower_basic_block
- backend::wasm::lowering::lower_binary_calculate
- backend::wasm::lowering::lower_control_flow_element
- backend::wasm::lowering::lower_function_body
- backend::wasm::lowering::lower_function_type
- backend::wasm::lowering::lower_statement
- backend::wasm::lowering::lower_type
- backend::wasm::lowering::lower_unary_calculate
- backend::wasm::lowering::put_value_onto_stack
- binary_format::clef::resolve_pending_symbols
- ir::editor::analyzer::control_flow::remove_unreachable_nodes
- ir::editor::analyzer::control_flow::structural::back_edges
- ir::editor::analyzer::control_flow::structural::fold_block
- ir::editor::analyzer::control_flow::structural::fold_if_else
- ir::editor::analyzer::control_flow::structural::outgoing_nodes_from_condition
- ir::editor::analyzer::control_flow::structural::single_entry_single_exit_nodes
- ir::from_ast
- ir::from_ir_code
- ir::function::basic_block::parse
- ir::function::basic_block::parse_tag
- ir::function::formalize
- ir::function::from_ast
- ir::function::ir_generator::assign::field_chain_from_ast
- ir::function::ir_generator::assign::from_ast
- ir::function::ir_generator::assign::to_field_access
- ir::function::ir_generator::assign::to_variable
- ir::function::ir_generator::compound_from_ast
- ir::function::ir_generator::declare::from_ast
- ir::function::ir_generator::expression::rvalue_from_ast
- ir::function::ir_generator::if_statement::from_ast
- ir::function::ir_generator::return_statement::from_ast
- ir::function::ir_generator::while_statement::from_ast
- ir::function::parameter::from_ast
- ir::function::parameter::parse
- ir::function::parse
- ir::function::statement::alloca::parse
- ir::function::statement::branch::branch_type
- ir::function::statement::branch::parse
- ir::function::statement::calculate::binary::binary_operation
- ir::function::statement::calculate::binary::from_ast
- ir::function::statement::calculate::binary::parse
- ir::function::statement::calculate::unary::from_ast
- ir::function::statement::calculate::unary::parse
- ir::function::statement::calculate::unary::unary_operation
- ir::function::statement::call::from_ast
- ir::function::statement::call::parse
- ir::function::statement::jump::parse
- ir::function::statement::load::parse
- ir::function::statement::load_field::from_ast
- ir::function::statement::load_field::parse
- ir::function::statement::load_field::parse_field
- ir::function::statement::parse
- ir::function::statement::phi::parse
- ir::function::statement::phi::parse_phi_source
- ir::function::statement::ret::parse
- ir::function::statement::set_field::parse
- ir::function::statement::set_field::parse_field
- ir::function::statement::store::parse
- ir::global_definition::from_ast
- ir::global_definition::parse
- ir::integer_literal::parse
- ir::optimize::optimize
- ir::optimize::pass::fix_irreducible::execute_edit_plan
- ir::optimize::pass::fix_irreducible::extracted_condition
- ir::optimize::pass::fix_irreducible::fix_other_block
- ir::optimize::pass::fix_irreducible::generate_edit_plan
- ir::optimize::pass::fix_irreducible::generate_origin_target_to_source_map
- ir::optimize::pass::fix_irreducible::guard_block_name
- ir::optimize::pass::fix_irreducible::phi_target
- ir::optimize::pass::memory_to_register::create_phi_node
- ir::optimize::pass::memory_to_register::decide_values
- ir::optimize::pass::memory_to_register::decide_values_start_from
- ir::optimize::pass::memory_to_register::decide_variable_value
- ir::optimize::pass::memory_to_register::insert_phi_nodes
- ir::optimize::pass::memory_to_register::insert_phi_positions
- ir::optimize::pass::topological_sort::topological_order
- ir::optimize::pass::topological_sort::topological_order_dfs
- ir::parse
- ir::quantity::global::parse
- ir::quantity::local::parse
- ir::quantity::parse
- ir::type_definition::from_ast
- ir::type_definition::parse
- utility::data_type::parse
- utility::data_type::parse_integer
- utility::graph::collect_scc
- utility::graph::dominance_frontiers
- utility::graph::kosaraju_scc_with_filter
- utility::graph::sort_by_dfs_order
- utility::parsing::ident
- utility::parsing::in_multispace
- utility::parsing::integer