version 1.3, 2002/06/02 17:02:56
|
version 1.8, 2007/12/31 19:02:25
|
Line 1
|
Line 1
|
/* support functions and main() for vmgen example |
/* support functions and main() for vmgen example |
|
|
Copyright (C) 2001 Free Software Foundation, Inc. |
Copyright (C) 2001,2003,2007 Free Software Foundation, Inc. |
|
|
This file is part of Gforth. |
This file is part of Gforth. |
|
|
Gforth is free software; you can redistribute it and/or |
Gforth is free software; you can redistribute it and/or |
modify it under the terms of the GNU General Public License |
modify it under the terms of the GNU General Public License |
as published by the Free Software Foundation; either version 2 |
as published by the Free Software Foundation, either version 3 |
of the License, or (at your option) any later version. |
of the License, or (at your option) any later version. |
|
|
This program is distributed in the hope that it will be useful, |
This program is distributed in the hope that it will be useful, |
Line 15
|
Line 15
|
GNU General Public License for more details. |
GNU General Public License for more details. |
|
|
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
along with this program; if not, write to the Free Software |
along with this program; if not, see http://www.gnu.org/licenses/. |
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. |
|
*/ |
*/ |
|
|
#include <stdlib.h> |
#include <stdlib.h> |
Line 156 int main(int argc, char **argv)
|
Line 155 int main(int argc, char **argv)
|
int disassembling = 0; |
int disassembling = 0; |
int profiling = 0; |
int profiling = 0; |
int c; |
int c; |
Inst vm_code[CODE_SIZE]; |
Inst *vm_code=(Inst *)calloc(CODE_SIZE,sizeof(Inst)); |
Inst *start; |
Inst *start; |
Cell stack[STACK_SIZE]; |
Cell *stack=(Cell *)calloc(STACK_SIZE,sizeof(Cell)); |
engine_t runvm=engine; |
engine_t runvm=engine; |
|
|
while ((c = getopt(argc, argv, "hdpt")) != -1) { |
while ((c = getopt(argc, argv, "hdpt")) != -1) { |
Line 174 int main(int argc, char **argv)
|
Line 173 int main(int argc, char **argv)
|
break; |
break; |
case 'p': |
case 'p': |
profiling=1; |
profiling=1; |
|
use_super=0; /* we don't want superinstructions in the profile */ |
runvm = engine_debug; |
runvm = engine_debug; |
break; |
break; |
case 't': |
case 't': |