- Refactored asmlint.py: moved all parsing stuff to asm_parser.py, and kept
  only command-line interface stuff in asmlint.py.
- Added lots of simple data files
- Some clearer error reporting, so I know when to look for lex or yacc errors.

Getting closer to having simple regression tests, which I want badly.

asm_parser.py is still a mess, because I'm not 100% solid on python's scoping
rules, and what PLY wants in the file's global scope.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@15 95607343-5b32-0410-8de2-c730a8ef6fd9
- Updated unit tests to run after asmlint --> asm_parser package change.
- split "Errors to catch" list off into README
- corrected file headers


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@16 95607343-5b32-0410-8de2-c730a8ef6fd9
* Pull the running the parser out of main() and put into into run() in asmlint.py.
* Allow the parser to be ran multiple times by calling an init_parser() method first.  (This might not be the best way to do this)
* Add a unit test for running a single line of assembly through the parser.  Made test cases for the single line files in tests/data.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@17 95607343-5b32-0410-8de2-c730a8ef6fd9
Added 'verbosity' flag to both asmlint.py and testrunner.py. Defaults to 2
(full debug) in asmlint, and -1 (totally quiet) on testrunner.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@20 95607343-5b32-0410-8de2-c730a8ef6fd9
Made TestRegexes obey testrunner's verbosity flag.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@21 95607343-5b32-0410-8de2-c730a8ef6fd9
Add tests from sample files that we need to pass:
cmp     %l5, NUM_OF_BANKS*4
set     0x80000000, %l3
ld      [%i0 + %o0], %l0
A=0x41


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@22 95607343-5b32-0410-8de2-c730a8ef6fd9
Allow hex integers.  Octal is given for free.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@23 95607343-5b32-0410-8de2-c730a8ef6fd9
Update list of errors/suspicious things to check for.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@24 95607343-5b32-0410-8de2-c730a8ef6fd9
New grammar.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@25 95607343-5b32-0410-8de2-c730a8ef6fd9
No more shift/reduce conflicts.  Forgot about newlines.  Doh.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@26 95607343-5b32-0410-8de2-c730a8ef6fd9
Warning free parser.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@27 95607343-5b32-0410-8de2-c730a8ef6fd9
- Added simple support for variable assignment (to ints, floats, and symbols).
- Expanded symbols to full range (I think) of legal names.
- Float constants must be prefixed with '0r' (didn't know that...)


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@28 95607343-5b32-0410-8de2-c730a8ef6fd9
First pass for more arguments (reg_or_imm, const13).  Need more complex regexes for registers and expressions to complete this.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@29 95607343-5b32-0410-8de2-c730a8ef6fd9
'varassign' --> 'macro'


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@30 95607343-5b32-0410-8de2-c730a8ef6fd9
- Added assembler pseudo-ops (.section, .align, .word, etc). Pseudo-ops with
  simple arg lists are recognized (strings, lists of strings, lists of ints).
- Put 'if seen_opcode' logic back in t_IDENTIFIER to allow symbols that are
  reserved words.
- Commented out unused rules (p_freq and p_address) that were generating
  warnings.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@31 95607343-5b32-0410-8de2-c730a8ef6fd9
- Added support for loads. (With bracket address notation.)
- Test cases to cover loads.
- Made testrunner more complicated. It uses reflection now, and supports
  --test=SUITE to run only the named test suite (right now those are just
  'regexes' and 'lines').


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@32 95607343-5b32-0410-8de2-c730a8ef6fd9
- Added support for proper integer expressions. Haven't fully tested them. They
  ignore precedence, since we're not actually calculating values. They don't
  handle assembler variables in expressions yet.
- Added 'save' tests to test out basic expression handling.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@33 95607343-5b32-0410-8de2-c730a8ef6fd9
Assembler variables can be part of integer expressions. Tests for same.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@34 95607343-5b32-0410-8de2-c730a8ef6fd9
Formatting things.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@35 95607343-5b32-0410-8de2-c730a8ef6fd9
***MERGE*** branches/rewritegrammar R36:58 into trunk.


git-svn-id: file:///home/mkelly/bak/balin-svn/asmlint.repo/trunk@59 95607343-5b32-0410-8de2-c730a8ef6fd9