source: icGREP/icgrep-devel/icgrep/pablo/pe_call.h @ 4257

Last change on this file since 4257 was 4257, checked in by nmedfort, 5 years ago

Pablo Compiler now generates phi nodes created for carry variables. zStarHeight showed 33% improvement. Had to manually merge in last check-in's changes.

File size: 695 bytes
Line 
1#ifndef PE_CALL_H
2#define PE_CALL_H
3
4#include <pablo/pabloAST.h>
5#include <pablo/pe_string.h>
6#include <iostream>
7
8namespace pablo {
9
10class Call : public PabloAST {
11    friend class PabloBlock;
12public:
13    static inline bool classof(const PabloAST * e) {
14        return e->getClassTypeId() == ClassTypeId::Call;
15    }
16    static inline bool classof(const void *) {
17        return false;
18    }
19    virtual ~Call() {
20    }
21    inline const String * getCallee() const {
22        return mCallee;
23    }
24protected:   
25    Call(const PabloAST * callee)
26    : PabloAST(ClassTypeId::Call)
27    , mCallee(cast<String>(callee)) {
28
29    }
30private:
31    const String * const mCallee;
32};
33}
34
35#endif // PE_CALL_H
36
37
Note: See TracBrowser for help on using the repository browser.