|
HAL
v4.5.0-83-g30c8f0afc
The Hardware Analyzer - a comprehensive reverse engineering and manipulation framework for gate-level netlists.
|
| BooleanFunction hal::BV_ConstantPropagation::Add | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1 | ||
| ) |
Helper function to simplify a constant ADD operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
Definition at line 135 of file simplification.cpp.
References hal::carry, and hal::BooleanFunction::Const().
Referenced by constant_propagation().
| BooleanFunction hal::BV_ConstantPropagation::And | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1 | ||
| ) |
Helper function to simplify a constant AND operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
Definition at line 20 of file simplification.cpp.
References hal::BooleanFunction::Const().
Referenced by constant_propagation().
| Result<BooleanFunction> hal::BV_ConstantPropagation::constant_propagation | ( | const BooleanFunction::Node & | node, |
| std::vector< BooleanFunction > && | p | ||
| ) |
Applies constant propagation for the node operation and the constant parameters
| [in] | node | - Boolean function node that specifies the operation type |
| [in] | p | - The parameters as a vector of constant Boolean functions |
Definition at line 379 of file simplification.cpp.
References hal::BooleanFunction::NodeType::Add, Add(), hal::BooleanFunction::NodeType::And, And(), hal::BooleanFunction::NodeType::Concat, hal::BooleanFunction::NodeType::Eq, ERR, hal::BooleanFunction::NodeType::Ite, hal::BooleanFunction::NodeType::Mul, Mul(), hal::BooleanFunction::NodeType::Not, Not(), OK, hal::BooleanFunction::NodeType::Or, Or(), hal::BooleanFunction::NodeType::Sdiv, hal::BooleanFunction::NodeType::Sext, hal::BooleanFunction::NodeType::Sle, hal::BooleanFunction::NodeType::Slice, hal::BooleanFunction::NodeType::Slt, hal::BooleanFunction::NodeType::Srem, hal::BooleanFunction::NodeType::Sub, Sub(), hal::BooleanFunction::Node::type, hal::BooleanFunction::NodeType::Udiv, hal::BooleanFunction::NodeType::Ule, hal::BooleanFunction::NodeType::Ult, hal::BooleanFunction::NodeType::Urem, hal::BooleanFunction::NodeType::Xor, Xor(), and hal::BooleanFunction::NodeType::Zext.
| BooleanFunction hal::BV_ConstantPropagation::Ite | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1, | ||
| const std::vector< BooleanFunction::Value > & | p2 | ||
| ) |
Helper function to simplify a constant ITE operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
| [in] | p2 | - Boolean function parameter 2. |
Definition at line 356 of file simplification.cpp.
References hal::BooleanFunction::Const().
| BooleanFunction hal::BV_ConstantPropagation::Mul | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1 | ||
| ) |
Helper function to simplify a constant MUL operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
Definition at line 189 of file simplification.cpp.
References hal::carry, and hal::BooleanFunction::Const().
Referenced by constant_propagation().
| BooleanFunction hal::BV_ConstantPropagation::Not | ( | const std::vector< BooleanFunction::Value > & | p | ) |
Helper function to simplify a constant NOT operation.
| [in] | p | - Boolean function parameter. |
Definition at line 77 of file simplification.cpp.
References hal::BooleanFunction::Const().
Referenced by constant_propagation().
| BooleanFunction hal::BV_ConstantPropagation::Or | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1 | ||
| ) |
Helper function to simplify a constant OR operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
Definition at line 49 of file simplification.cpp.
References hal::BooleanFunction::Const().
Referenced by constant_propagation().
| BooleanFunction hal::BV_ConstantPropagation::Sle | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1 | ||
| ) |
Helper function to simplify a constant SLE operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
Definition at line 219 of file simplification.cpp.
References hal::carry, and hal::BooleanFunction::Const().
| BooleanFunction hal::BV_ConstantPropagation::Slt | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1 | ||
| ) |
Helper function to simplify a constant SLT operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
Definition at line 259 of file simplification.cpp.
References hal::carry, and hal::BooleanFunction::Const().
| BooleanFunction hal::BV_ConstantPropagation::Sub | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1 | ||
| ) |
Helper function to simplify a constant SUB operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
Definition at line 162 of file simplification.cpp.
References hal::carry, and hal::BooleanFunction::Const().
Referenced by constant_propagation().
| BooleanFunction hal::BV_ConstantPropagation::Ule | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1 | ||
| ) |
Helper function to simplify a constant ULE operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
Definition at line 297 of file simplification.cpp.
References hal::BooleanFunction::Const().
| BooleanFunction hal::BV_ConstantPropagation::Ult | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1 | ||
| ) |
Helper function to simplify a constant ULT operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
Definition at line 326 of file simplification.cpp.
References hal::BooleanFunction::Const().
| BooleanFunction hal::BV_ConstantPropagation::Xor | ( | const std::vector< BooleanFunction::Value > & | p0, |
| const std::vector< BooleanFunction::Value > & | p1 | ||
| ) |
Helper function to simplify a constant XOR operation.
| [in] | p0 | - Boolean function parameter 0. |
| [in] | p1 | - Boolean function parameter 1. |
Definition at line 106 of file simplification.cpp.
References hal::BooleanFunction::Const().
Referenced by constant_propagation().