1. 04 Jan, 2016 2 commits
    • Subzero. Code organization. · 4a56686b
      John Porto authored
      This CL does more than any CL should.
      
      First, it moves all target-specific classes (TargetLowering, Assembler,
      and Instructions) to a target-specific namespace. For example, the
      ::Ice::TargetX8632 class now lives in ::Ice::X8632::TargetX8632. Same
      goes for ARM32, X8664, and MIPS32. Now, we have a ton of redundant
      prefixes (it should be pretty obvious that ::Ice::X8632::TargetLowering
      is an X8632 target lowering), but this is definitively not something
      for this CL.
      
      Second, this CL gets rid of the excessive use of 'typename Foo::Bar'
      in the X86 templates. These changes appear more intimidating than they
      really are, and they were fairly mechanical.
      
      Third, the x86?? Traitses (gollum!) classes are no longer template
      instatiation. The previous X86 templates were parameterized with a
      X86 TargetLowering, and they assumed that a MachineTraits<Target>
      was defined for that TargetLowering. The X86 templates are now
      parameterized with a TraitsType, and different backends may have
      completely unrelated traits.
      
      Fourth, the X86 templates are no longer members of
      ::Ice::X86Internal. Instead, each file #include'ing a Ice*X86Base.h
      file need to #define X86NAMESPACE to the namespace where the backend
      is being defined. With this change, the template instantiation for
      X8632 live in ::Ice::X8632, and, for X8664, in ::Ice::X8664.
      
      BUG=
      R=stichnot@chromium.org
      
      Review URL: https://codereview.chromium.org/1548363002 .
  2. 30 Dec, 2015 2 commits
    • Subzero. X86. Refactors initRegisterSet. · 4a308ced
      John Porto authored
      initRegisterSet() for x8632 and x8664 were both huge. This CL refactors
      those methods to use a pre-initialized table instead of the result of
      expanding the x-macros.
      
      BUG=
      R=stichnot@chromium.org
      
      Review URL: https://codereview.chromium.org/1546373003 .
    • Subzero. Refactoring. · 53611e2c
      John Porto authored
      This is the first step towards hiding backend-specific stuff from the
      rest of subzero. In this CL, all the references to target-specific files
      (e.g., IceTargetLoweringX8632.h) are removed from target-independent
      files.
      
      This CL also changes the named constructors in the Target-specific
      classes (e.g., TargetX8632::create()) to return unique_ptrs.
      
      BUG=
      R=stichnot@chromium.org
      
      Review URL: https://codereview.chromium.org/1551633002 .
  3. 28 Dec, 2015 2 commits
    • misc cleanup of Compiler::run · 93d85ce0
      Reed Kotler authored
      This assumes patch from 1534883005 though still needs to rename
      validateAndGenerateBuildAttributes to  dumpBuildAttributes
      
      BUG=
      R=stichnot@chromium.org
      
      Review URL: https://codereview.chromium.org/1541063002 .
      
      Patch from Reed Kotler <rkotlerimgtec@gmail.com>.
    • doxygenize IceClFlags.cpp · 2233987b
      Reed Kotler authored
      This is a first cut at this. More can be done and much of this is just moving what is already in the help for the
      commands into Doxygen comments. The documentation can be
      expanded to better describe the role of the various
      command line options.
      
      BUG=
      R=stichnot@chromium.org
      
      Review URL: https://codereview.chromium.org/1547743002 .
      
      Patch from Reed Kotler <rkotlerimgtec@gmail.com>.
  4. 24 Dec, 2015 1 commit
  5. 22 Dec, 2015 2 commits
  6. 20 Dec, 2015 1 commit
  7. 18 Dec, 2015 9 commits
  8. 17 Dec, 2015 5 commits
  9. 16 Dec, 2015 5 commits
  10. 15 Dec, 2015 2 commits
  11. 14 Dec, 2015 1 commit
  12. 12 Dec, 2015 1 commit
  13. 11 Dec, 2015 5 commits
  14. 10 Dec, 2015 2 commits