llvm-6502/projects/Stacker/lib/compiler
Chris Lattner 3251973d4a Stacker uses EH.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29032 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-07 00:20:39 +00:00
..
.cvsignore Ignore generated files. 2006-03-23 23:51:43 +00:00
Lexer.cpp.cvs Convert over to the new way of handling lex/bison checked into cvs 2006-02-15 07:26:07 +00:00
Lexer.l
Lexer.l.cvs Convert over to the new way of handling lex/bison checked into cvs 2006-02-15 07:26:07 +00:00
Makefile Stacker uses EH. 2006-07-07 00:20:39 +00:00
README
StackerCompiler.cpp Don't pass target name into TargetData anymore, it is never used or needed. 2006-06-16 18:23:49 +00:00
StackerCompiler.h Eliminate tabs and trailing spaces 2005-04-23 21:26:11 +00:00
StackerParser.cpp.cvs Convert over to the new way of handling lex/bison checked into cvs 2006-02-15 07:26:07 +00:00
StackerParser.h.cvs Convert over to the new way of handling lex/bison checked into cvs 2006-02-15 07:26:07 +00:00
StackerParser.y Changes For Bug 352 2004-09-01 22:55:40 +00:00
StackerParser.y.cvs Convert over to the new way of handling lex/bison checked into cvs 2006-02-15 07:26:07 +00:00

This directory contains a sample language front end for LLVM.

It is a *very* simple/crude implementation of FORTH. It has many
deficiencies but provides enough basics to give you an idea of 
what programming a new language front end for LLVM  looks like.

To keep things simple, Stacker has the following limitations:
1. Only a single, global stack is manipulated.
2. There is no interpretation, everything is compiled.
3. There's no type/bounds checking .. you're on your own.
4. There's no floating point support.
5. Only stdin can be read. Only stdout can be written. No other 
   file I/O is supported.

As such, this isn't a very useful language for anything other than
the most trivial of programs. It is, however, a good learning tool
(for both the author and the student).

Reid Spencer
16 November 2003