Mercurial > hg > CbC > CbC_llvm
comparison examples/BrainF/BrainF.h @ 148:63bd29f05246
merged
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 14 Aug 2019 19:46:37 +0900 |
parents | c2174574ed3a |
children |
comparison
equal
deleted
inserted
replaced
146:3fc4d5c3e21e | 148:63bd29f05246 |
---|---|
1 //===-- BrainF.h - BrainF compiler class ------------------------*- C++ -*-===// | 1 //===-- BrainF.h - BrainF compiler class ------------------------*- C++ -*-===// |
2 // | 2 // |
3 // The LLVM Compiler Infrastructure | 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
4 // | 4 // See https://llvm.org/LICENSE.txt for license information. |
5 // This file is distributed under the University of Illinois Open Source | 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
6 // License. See LICENSE.TXT for details. | |
7 // | 6 // |
8 //===----------------------------------------------------------------------===// | 7 //===----------------------------------------------------------------------===// |
9 // | 8 // |
10 // This class stores the data for the BrainF compiler so it doesn't have | 9 // This class stores the data for the BrainF compiler so it doesn't have |
11 // to pass all of it around. The main method is parse. | 10 // to pass all of it around. The main method is parse. |
78 int memtotal; | 77 int memtotal; |
79 CompileFlags comflag; | 78 CompileFlags comflag; |
80 std::istream *in; | 79 std::istream *in; |
81 Module *module; | 80 Module *module; |
82 Function *brainf_func; | 81 Function *brainf_func; |
83 Function *getchar_func; | 82 FunctionCallee getchar_func; |
84 Function *putchar_func; | 83 FunctionCallee putchar_func; |
85 Value *ptr_arr; | 84 Value *ptr_arr; |
86 Value *ptr_arrmax; | 85 Value *ptr_arrmax; |
87 BasicBlock *endbb; | 86 BasicBlock *endbb; |
88 BasicBlock *aberrorbb; | 87 BasicBlock *aberrorbb; |
89 | 88 |