1. 13 Jun, 2016 2 commits
  2. 10 Jun, 2016 1 commit
    • Subzero: Improve effectiveness of local register availability peephole. · f531931f
      Jim Stichnoth authored
      X86 only.  The register availability peephole optimization during lowering disallows available register substitution when the variable is pre-colored.  This is for good reasons (too complex to be discussed here).  However, that leaves some potential substitutions on the table.
      
      Specifically, this happens a lot around register arguments to function calls, both at the call site and in the prolog.
      
      The simplest solution seems to be to launder the pre-colored variable through a separate infinite-weight variable, as implemented in this CL through a combination of such copies and extra legalize() calls.
      
      There are other situations where this technique can also work, which may be handled in a separate CL.
      
      This CL also fixes a problem where the stack pointer adjustment in the prolog is subject to dead-code elimination if the function has no epilog.  This would only happen in asm-verbose mode, in the final liveness analysis pass prior to code emission.
      
      BUG= none
      R=eholk@chromium.org
      
      Review URL: https://codereview.chromium.org/2052683003 .
  3. 09 Jun, 2016 1 commit
  4. 07 Jun, 2016 1 commit
  5. 02 Jun, 2016 1 commit
  6. 01 Jun, 2016 1 commit
  7. 31 May, 2016 3 commits
  8. 30 May, 2016 1 commit
  9. 27 May, 2016 1 commit
  10. 24 May, 2016 2 commits
  11. 18 May, 2016 1 commit
  12. 17 May, 2016 1 commit
  13. 12 May, 2016 1 commit
  14. 10 May, 2016 1 commit
  15. 09 May, 2016 2 commits
  16. 06 May, 2016 1 commit
  17. 02 May, 2016 2 commits
  18. 29 Apr, 2016 1 commit
  19. 27 Apr, 2016 1 commit
  20. 26 Apr, 2016 1 commit
  21. 25 Apr, 2016 2 commits
  22. 22 Apr, 2016 2 commits
  23. 21 Apr, 2016 4 commits
  24. 20 Apr, 2016 1 commit
    • Subzero: Allow overriding command-line args from the browser. · fd07ad08
      Jim Stichnoth authored
      In the browser build only, allows arguments to be explicitly passed to pnacl-sz, in two ways:
      
      1. The SZARGFILE envvar contains the name of a file with arguments, one per line.  For each line, initial whitespace is ignored, and lines starting with the '#' comment character are also ignored.
      
      2. The SZARGLIST envvar contains all the arguments, separated by the '|' character.
      
      Chrome needs to be started with special options to allow the envvars to be passed through, and also to allow access to the local file system.
      
      In addition, specifying "-log=/dev/stderr" or "-o /dev/stderr" gets mapped to std::cerr, in the same way "-" gets mapped to std::cout.
      
      BUG= https://bugs.chromium.org/p/nativeclient/issues/detail?id=4370
      R=jpp@chromium.org
      
      Review URL: https://codereview.chromium.org/1903553004 .
  25. 19 Apr, 2016 1 commit
  26. 18 Apr, 2016 3 commits
  27. 15 Apr, 2016 1 commit
    • Subzero. WASM. Additional progress. · 67c7c416
      Eric Holk authored
      This change includes a number of improvements since the last WASM
      CL. It compiles against a newer version of V8 that matches the current
      WASM binary format. Many more WASM instructions are supported, as well
      as global variable initializers.
      
      There is also the beginning of a runtime library that implements some
      system calls required by the WASM C library. The c2wasm-exe.sh script
      can be used to compile a C program to a .wasm module, which is then
      compiled by Subzero into a native executable.
      
      This change includes a new Breakpoint instruction, which inserts an
      unconditional breakpoint into the executable. This has been helpful in
      debugging code generation for some WASM instructions. The Breakpoint
      instruction is only completely implemented on X86.
      
      BUG= https://bugs.chromium.org/p/nativeclient/issues/detail?id=4369
      R=stichnot@chromium.org
      
      Review URL: https://codereview.chromium.org/1876413002 .