source: icGREP/icgrep-devel/icgrep/pablo/optimizers/pablo_simplifier.hpp @ 4852

Last change on this file since 4852 was 4829, checked in by nmedfort, 4 years ago

Back-up check in

File size: 604 bytes
RevLine 
[4416]1#ifndef PABLO_SIMPLIFIER_HPP
2#define PABLO_SIMPLIFIER_HPP
3
4#include <pablo/codegenstate.h>
5
6namespace pablo {
7
8struct ExpressionTable;
[4657]9class PabloFunction;
[4416]10
11class Simplifier {
12public:
[4657]13    static bool optimize(PabloFunction & function);
[4768]14    static void deadCodeElimination(PabloBlock & block);
[4416]15protected:
[4829]16    Simplifier() = default;
[4416]17private:
[4419]18    static void eliminateRedundantCode(PabloBlock & block, ExpressionTable * predecessor = nullptr);
[4829]19    static void eliminateRedundantEquations(PabloBlock & block);
[4658]20    static bool isSuperfluous(const Assign * const assign);
[4416]21};
22
23}
24#endif // PABLO_SIMPLIFIER_HPP
Note: See TracBrowser for help on using the repository browser.