PandA-2024.02
Data Fields
algorithm Struct Reference

This structure records a sequence of operations. More...

Collaboration diagram for algorithm:
Collaboration graph
[legend]

Data Fields

struct mult_cost cost
 
short ops
 
enum alg_code op [64]
 
char log [64]
 

Detailed Description

This structure records a sequence of operations.

`ops' is the number of operations recorded. `cost' is their total cost. The operations are stored in `op' and the corresponding logarithms of the integer coefficients in `log'.

These are the operations: alg_zero total := 0; alg_m total := multiplicand; alg_shift total := total * coeff alg_add_t_m2 total := total + multiplicand * coeff; alg_sub_t_m2 total := total - multiplicand * coeff; alg_add_factor total := total * coeff + total; alg_sub_factor total := total * coeff - total; alg_add_t2_m total := total * coeff + multiplicand; alg_sub_t2_m total := total * coeff - multiplicand;

The first operand must be either alg_zero or alg_m.

Definition at line 214 of file IR_lowering.cpp.

Field Documentation

◆ cost

struct mult_cost algorithm::cost

Definition at line 216 of file IR_lowering.cpp.

Referenced by choose_mult_variant(), and synth_mult().

◆ log

char algorithm::log[64]

Definition at line 224 of file IR_lowering.cpp.

Referenced by IR_lowering::expand_mult_const(), and synth_mult().

◆ op

enum alg_code algorithm::op[64]

Definition at line 223 of file IR_lowering.cpp.

Referenced by IR_lowering::expand_mult_const(), and synth_mult().

◆ ops

short algorithm::ops

Definition at line 217 of file IR_lowering.cpp.

Referenced by IR_lowering::expand_mult_const(), and synth_mult().


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

Generated on Mon Feb 12 2024 13:03:43 for PandA-2024.02 by doxygen 1.8.13