MCPcopy Create free account

hub / github.com/Amanieu/regalloc3 / functions

Functions705 in github.com/Amanieu/regalloc3

↓ 3 callersMethodlog2_bytes
(self)
src/reginfo.rs:253
↓ 3 callersMethodmake_available
Makes the given register available for use as a scratch register. This should be called after writing to a move destination which, since we are emitt
src/internal/parallel_moves.rs:183
↓ 3 callersMethodmembers
Returns the members of the `ValueGroup`, or the single `Value`.
src/debug_utils/validate_func.rs:83
↓ 3 callersMethodnext_absent_from
(&self, from: T)
src/entity/set.rs:191
↓ 3 callersFunctionnormalize_spill_weight
Computes a normalized spill weight from the total weights of all uses in a virtual register and the total number of live instructions in that virtual
src/internal/virt_regs/builder.rs:45
↓ 3 callersMethodnum_classes
(&self)
src/debug_utils/generic_reginfo/mod.rs:168
↓ 3 callersMethodoutput_insts
(&self, block: Block)
src/output.rs:208
↓ 3 callersFunctionparse_entity
(pair: Pair<'_, Rule>)
src/debug_utils/generic_reginfo/parse.rs:52
↓ 3 callersFunctionparse_number
(pair: Pair<'_, Rule>)
src/debug_utils/generic_function/parse.rs:47
↓ 3 callersMethodprocess_segment
(&mut self, segment: &ValueSegment, alloc: Option<Allocation>)
src/internal/move_resolver.rs:1050
↓ 3 callersMethodqueue_new_vregs
(&mut self)
src/internal/allocator/split.rs:1398
↓ 3 callersMethodreg_groups
(&self)
src/reginfo.rs:473
↓ 3 callersMethodremove_value
Removes the given value from all `AllocationUnit`s. This is used at value definition points to remove any stale versions of a value (e.g. from a prev
src/debug_utils/checker.rs:89
↓ 3 callersMethodreserve_fixed_def
Indicates that a portion of the given register is reserved for a fixed def or clobber constraint for the given live range. Unlike fixed uses, these c
src/internal/reg_matrix.rs:312
↓ 3 callersMethodset_liveout
Sets the live-out bit to the given value.
src/internal/uses.rs:390
↓ 3 callersMethodspilled_segments
Returns all segments that have been spilled along with the `SpillSlot` that they have been spilled to. The spill slot is only valid after `allocate`
src/internal/spill_allocator.rs:144
↓ 3 callersMethodtry_reuse_value
Check if the given value is reused by a def operand in the same instruction. This also checks if the class of the def operand is compatible with that
src/internal/value_live_ranges.rs:401
↓ 3 callersMethodunevict_for_reg
Restore all evicted registers that conflict with the given register.
src/internal/parallel_moves.rs:219
↓ 3 callersFunctionuse_spill_cost
Computes the spill cost for a single use after applying allocator-level rematerialization heuristics.
src/internal/virt_regs/builder.rs:61
↓ 3 callersMethodvalues_mut
( &mut self, )
src/entity/sparse.rs:270
↓ 2 callersMethodacquire
( &mut self, size: SpillSlotSize, alloc_emergency_spillslot: &mut impl FnMut(SpillSlot
src/internal/parallel_moves.rs:41
↓ 2 callersMethodadd_fixed_def
Records a fixed definition at the given instruction. This adds an incoming fixed register hint at all successor instructions.
src/internal/hints.rs:91
↓ 2 callersMethodadd_use_list
Adds a new `UseList` from an iterator.
src/internal/uses.rs:492
↓ 2 callersMethodadvance_right
( &mut self, gap_idx: usize, interference_weight: &mut f32,
src/internal/allocator/split.rs:644
↓ 2 callersMethodallocate
Attempts to assign the given virtual register to a physical register.
src/internal/allocator/mod.rs:521
↓ 2 callersMethodas_mut_slice
(&self, pool: &'a mut CompactListPool<T>)
src/entity/compact_list.rs:67
↓ 2 callersMethodblock_frequency
Generates a reasonable block frequency.
src/debug_utils/generic_function/arbitrary.rs:218
↓ 2 callersMethodblockparam_allocs
Returns the locations for block parameter values at the start of a block.
src/internal/move_resolver.rs:558
↓ 2 callersMethodbuild
Constructs virtual registers from the given live range segments. If `split_placement` is `None` then there must be no constraint conflicts.
src/internal/virt_regs/builder.rs:124
↓ 2 callersMethodbytes
(self)
src/reginfo.rs:246
↓ 2 callersMethodcalc_spill_weight
Calculates the spill weight of the virtual register currently being built. This also detects cases where a virtual register only spans a single instr
src/internal/virt_regs/builder.rs:750
↓ 2 callersMethodcheck_bank
Checks that the allocation can hold values of the given bank.
src/debug_utils/checker.rs:582
↓ 2 callersMethodcheck_class
Checks that the allocation is compatible with the given register class.
src/debug_utils/checker.rs:675
↓ 2 callersMethodcheck_indirect_remat_input_value
Check dominance constraints on an indirect-rematerialization input.
src/debug_utils/validate_func.rs:667
↓ 2 callersMethodcheck_skipped_inst
Checks that no instructions were skipped and that instructions are processed in order. An exception is made for pure instructions which are allowed t
src/debug_utils/checker.rs:561
↓ 2 callersMethodclear
(&mut self)
src/entity/sparse.rs:102
↓ 2 callersMethodclear_and_resize_with
(&mut self, max_index: usize, f: impl FnMut() -> V)
src/entity/secondary_map.rs:79
↓ 2 callersMethodclobber_unit
Updates the state of an `AllocationUnit` to indicate it no longer holds a value.
src/debug_utils/checker.rs:130
↓ 2 callersMethodclone_from
(&mut self, source: &Self)
src/entity/set.rs:40
↓ 2 callersMethodcount_ones
(self)
src/entity/small_set.rs:41
↓ 2 callersMethoddisplay_operand
Displays an operand, expanding value groups to their members.
src/debug_utils/display.rs:57
↓ 2 callersMethoddo_move
Performs a move operation from one allocation to another. This handles details like stack-to-stack moves and conflicts with evicted registers.
src/internal/parallel_moves.rs:440
↓ 2 callersMethodedits
Returns the full list of edits.
src/internal/move_resolver.rs:540
↓ 2 callersMethodedits_from
Returns the list of edits starting from the given instruction.
src/internal/move_resolver.rs:534
↓ 2 callersMethodemit_vreg
Commits the current contents of `segments` and the current constraints to a virtual register.
src/internal/virt_regs/builder.rs:814
↓ 2 callersMethodevict
Evicts all segments of the given virtual register from a physical register.
src/internal/reg_matrix.rs:430
↓ 2 callersMethodevict_interfering_vregs
Evicts all the virtual registers in `interfering_vregs` from their current assignment.
src/internal/allocator/evict.rs:247
↓ 2 callersMethodgen_def
Generates an operand which defines a value.
src/debug_utils/generic_function/arbitrary.rs:625
↓ 2 callersMethodgen_inst
Generates a single instruction in the given block.
src/debug_utils/generic_function/arbitrary.rs:742
↓ 2 callersMethodgen_subclass
Generates a sub-class of an existing class.
src/debug_utils/generic_reginfo/arbitrary.rs:184
↓ 2 callersMethodgen_use
Generates an operand which uses a value.
src/debug_utils/generic_function/arbitrary.rs:519
↓ 2 callersMethodget
(&self)
fuzz/src/lib.rs:22
↓ 2 callersMethodgroup_for_reg
(&self, reg: PhysReg, group_index: usize, class: RegClass)
src/debug_utils/generic_reginfo/mod.rs:238
↓ 2 callersMethodgroups
Iterator over all virtual register groups.
src/internal/virt_regs/mod.rs:137
↓ 2 callersMethodhandle_block_live_in
Handle live-ins at the start of a block.
src/internal/move_resolver.rs:607
↓ 2 callersMethodhandle_block_live_out
Handle live-outs at the end of a block.
src/internal/move_resolver.rs:678
↓ 2 callersMethodhas_fixeddef
Indicates that the first use in this list is a `FixedDef`.
src/internal/uses.rs:376
↓ 2 callersMethodhas_livein
Indicates that the live range that contains this use list is live-in from a preceding segment at the start of the live range.
src/internal/uses.rs:359
↓ 2 callersMethodindex
(entity: T)
src/entity/set.rs:73
↓ 2 callersMethodinitial_value
Simpler version of `def_value` used for to set up the initial block entry state. This is always called on a clean state and therefore doesn't need to
src/internal/move_optimizer.rs:520
↓ 2 callersMethodinsert
(&mut self, entity: T)
src/entity/small_set.rs:123
↓ 2 callersMethodinsts
(&self)
src/function.rs:608
↓ 2 callersMethodinvalidate_operand_group_mapping
Invalidate any existing operand to group mappings for a vreg: the group they point to will no longer be valid after it is spilled. New mappings will b
src/internal/allocator/split.rs:1059
↓ 2 callersMethoditer_mut
(&mut self)
src/entity/primary_map.rs:125
↓ 2 callersMethoditer_mut
(&mut self)
src/entity/secondary_map.rs:118
↓ 2 callersMethodkey
(&self)
src/entity/sparse.rs:423
↓ 2 callersMethodkind
(self)
src/allocation_unit.rs:75
↓ 2 callersFunctionload_function
(path: &Path, reginfo: &GenericRegInfo)
regalloc3-tool/src/main.rs:134
↓ 2 callersMethodmark_spillslot
(&mut self, alloc: Allocation)
src/internal/dead_spill_elimination.rs:236
↓ 2 callersMethodnew_block
Resets the state tracker to a clean slate with no live values.
src/internal/move_optimizer.rs:454
↓ 2 callersMethodnext_present_from
(&self, from: T)
src/entity/set.rs:165
↓ 2 callersMethodnum_insts
Number of instructions covered by this live range segment.
src/internal/live_range.rs:194
↓ 2 callersMethodnum_value_groups
(&self)
src/debug_utils/generic_function/mod.rs:235
↓ 2 callersFunctionparse_constraint
(pair: Pair<'_, Rule>)
src/debug_utils/generic_function/parse.rs:307
↓ 2 callersFunctionparse_expected_entity
(pair: Pair<'_, Rule>, expected: T)
src/debug_utils/generic_function/parse.rs:61
↓ 2 callersFunctionparse_operand
( pair: Pair<'_, Rule>, groups: &mut PrimaryMap<ValueGroup, Vec<Value>>, )
src/debug_utils/generic_function/parse.rs:267
↓ 2 callersFunctionparse_reg_group_list
(pair: Pair<'_, Rule>, is_group: &mut Option<bool>)
src/debug_utils/generic_reginfo/parse.rs:88
↓ 2 callersMethodpreference_weight
Returns the preference weight associated with a virtual register. The assignment must currently be assigned.
src/internal/allocator/mod.rs:299
↓ 2 callersMethodprepare
(&mut self, func: &impl Function, num_spill_slots: usize)
src/internal/parallel_moves.rs:577
↓ 2 callersMethodprepare
(&mut self, reginfo: &impl RegInfo)
src/internal/allocator/order.rs:57
↓ 2 callersMethodprocess_block
( &mut self, block: Block, move_resolver: &mut MoveResolver, allocations: &All
src/internal/dead_spill_elimination.rs:104
↓ 2 callersMethodprocess_edit
Applies the effects of an edit on the state.
src/internal/move_optimizer.rs:572
↓ 2 callersMethodpropagate_to_succs
Propagates the current `StateTracker` state to successor blocks.
src/internal/move_optimizer.rs:237
↓ 2 callersMethodrebuild_mapping
(&mut self)
src/entity/sparse.rs:236
↓ 2 callersMethodreset_constraints
Resets the current constraints to their most generic form.
src/internal/virt_regs/builder.rs:444
↓ 2 callersMethodscore
Score used to select the best split proposal.
src/internal/allocator/split.rs:128
↓ 2 callersMethodset_fixeddef
Sets the fixed-def bit to the given value.
src/internal/uses.rs:408
↓ 2 callersMethodspill_cost
Generates a reasonable spill cost for a register class.
src/debug_utils/generic_reginfo/arbitrary.rs:96
↓ 2 callersMethodspill_segment
Spills the given `ValueSegment` to a spill slot.
src/internal/spill_allocator.rs:122
↓ 2 callersMethodspillslots
(&self)
src/output.rs:305
↓ 2 callersMethodsplit_at_index
Splits the given use list at the given `UseIndex`. The fixed-hint flag is cleared by this operation.
src/internal/uses.rs:459
↓ 2 callersMethodtake
(&mut self)
src/entity/packed_option.rs:91
↓ 2 callersMethodtry_evict
(&mut self, vreg: V)
src/internal/allocator/evict.rs:80
↓ 2 callersMethodunevict_all
Restore all evicted registers.
src/internal/parallel_moves.rs:203
↓ 2 callersMethodvirt_regs
Iterator over all virtual registers.
src/internal/virt_regs/mod.rs:127
↓ 1 callersMethodadd_blockparams
Adds incoming block parameters to blocks that allow them.
src/debug_utils/generic_function/arbitrary.rs:338
↓ 1 callersMethodadd_fixed_use
Records a fixed use at the given instruction. This adds an outgoing fixed register hint at all predecessor instructions. If this use is at the first
src/internal/hints.rs:122
↓ 1 callersMethodadd_move
( &mut self, source: Allocation, dest: Allocation, value: Value, func:
src/internal/parallel_moves.rs:612
↓ 1 callersMethodadd_remat
( &mut self, dest: Allocation, value: Value, func: &impl Function, reg
src/internal/parallel_moves.rs:590
↓ 1 callersMethodadd_value
Adds the given value to the set of values for an `AllocationUnit`.
src/debug_utils/checker.rs:98
← previousnext →201–300 of 705, ranked by callers