source: icGREP/icgrep-devel/icgrep/toolchain.h @ 4984

Last change on this file since 4984 was 4984, checked in by cameron, 3 years ago

Refactor IDISA, re, pablo toolchain components

File size: 1.0 KB
Line 
1/*
2 *  Copyright (c) 2015 International Characters.
3 *  This software is licensed to the public under the Open Software License 3.0.
4 *  icgrep is a trademark of International Characters.
5 */
6
7#ifndef TOOLCHAIN_H
8#define TOOLCHAIN_H
9
10#include "utf_encoding.h"
11#include <llvm/IR/Function.h>
12#include <llvm/IR/Module.h>
13#include <llvm/IR/Type.h>
14#include <llvm/ExecutionEngine/ExecutionEngine.h>
15
16#include <re/re_re.h>
17#include <pablo/function.h>
18
19re::RE * regular_expression_passes(const Encoding encoding, re::RE * re_ast);
20
21pablo::PabloFunction * re2pablo_compiler(const Encoding encoding, re::RE * re_ast);
22
23void pablo_function_passes(pablo::PabloFunction * function);
24
25Module * grepIRGen(std::string moduleName, re::RE * re_ast, bool isNameExpression = false);
26
27ExecutionEngine * JIT_to_ExecutionEngine (Module * m);
28
29void icgrep_Linking(Module * m, ExecutionEngine * e);
30
31re::CC * getParsedCodePointSet();
32void setParsedCodePointSet();
33
34void initResult(std::vector<std::string> filenames, const int n);
35void PrintResult();
36
37#endif
Note: See TracBrowser for help on using the repository browser.