Skip to content
  1. Feb 17, 2009
  2. Feb 15, 2009
  3. Feb 12, 2009
  4. Feb 11, 2009
  5. Feb 07, 2009
  6. Feb 06, 2009
  7. Feb 05, 2009
  8. Feb 04, 2009
  9. Feb 03, 2009
  10. Jan 30, 2009
  11. Jan 28, 2009
  12. Jan 26, 2009
  13. Jan 24, 2009
  14. Jan 21, 2009
  15. Jan 16, 2009
  16. Jan 15, 2009
  17. Jan 14, 2009
  18. Jan 09, 2009
  19. Jan 07, 2009
  20. Jan 05, 2009
  21. Jan 03, 2009
  22. Jan 02, 2009
    • Chris Lattner's avatar
      Reimplement the old and horrible bison parser for .ll files with a nice · ac161bff
      Chris Lattner authored
      and clean recursive descent parser.
      
      This change has a couple of ramifications:
      1. The parser code is about 400 lines shorter (in what we maintain, not
         including what is autogenerated).
      2. The code should be significantly faster than the old code because we 
         don't have to work around bison's poor handling of datatypes with 
         ctors/dtors.  This also makes the code much more resistant to memory 
         leaks.
      3. We now get caret diagnostics from the .ll parser, woo.
      4. The actual diagnostics emited from the parser are completely different
         so a bunch of testcases had to be updated.
      5. I now disallow "%ty = type opaque %ty = type i32".  There was no good
         reason to support this, it was just an accident of the old 
         implementation.  I have no reason to think that anyone is actually using
         this.
      6. The syntax for sticking a global variable has changed to make it 
         unambiguous.  I don't think anyone is depending on this since only clang
         supports this and it is not solid yet, so I'm not worried about anything
         breaking.
      7. This gets rid of the last use of bison, and along with it the .cvs files.
         I'll prune this from the makefiles as a subsequent commit.
      
      There are a few minor cleanups that can be done after this commit (suggestions
      welcome!) but this passes dejagnu testing and is ready for its time in the
      limelight.
      
      llvm-svn: 61558
      ac161bff
Loading