1. 10 Agu, 2018 1 kayıt (commit)
  2. 06 Tem, 2018 1 kayıt (commit)
    • Michael Stahl's avatar
      compilerplugins: try to make these work with icecream · ff002524
      Michael Stahl yazdı
      There are some problems here, this should fix one of them: the
      getFilename function returns "<stdin>" for spelling locations, because
      the input to clang is sort of preprocessed via -frewrite-includes if
      icecream is used and the file is built on a remote host (whereas it's
      apparently not preprocessed if the file is compiled locally by icecream).
      
      Using getPresumedLoc() uses the #line directives in the preprocessed
      input, which avoids the problem but is more expensive, so try to use it
      only when necessary.
      
      The getFileEntry(getMainFileID())->getName() pattern will also result
      in "<stdin>", but fortunately icecream passes -main-file-name,
      which oddly enough isn't used by the SourceManager's spelling locations,
      but is available separately via CodeGenOptions.
      
      This builds everything successfully with clang version 6.0.0:
      ICECC_PREFERRED_HOST=myremote make check gb_SUPPRESS_TESTS=t
      
      Change-Id: Ic121511683e5302d7b9d85186c8b9c4a5443fa1b
      Reviewed-on: https://gerrit.libreoffice.org/54993
      Tested-by: Jenkins
      Reviewed-by: 's avatarThorsten Behrens <Thorsten.Behrens@CIB.de>
      ff002524
  3. 23 Mar, 2018 1 kayıt (commit)
  4. 10 Şub, 2018 1 kayıt (commit)
  5. 21 Ara, 2017 1 kayıt (commit)
  6. 08 Ara, 2017 1 kayıt (commit)
    • Stephan Bergmann's avatar
      New --enable-compiler-plugins=debug mode · 32c31c03
      Stephan Bergmann yazdı
      ...to enable debug-only code in the plugins.  Some situations in the plugin code
      should never happen, yet must not by default report errors or trigger
      assertions, as some newly written LO code could trigger them nevertheless (in
      which case the plugin code will likely need to be adapted, to cater for these
      presumed-impossible situations).
      
      Such code can now be included in the plugins behind an if(isDebugMode()) guard,
      and can explicitly be enabled with --enable-compiler-plugins=debug.
      
      I deliberately made this a runtime rather than a compile time option (using
      some #ifdef guards in the plugin code, say), as it IMO keeps the code more
      readable, and also allows overridding COMPILER_PLUGINS_DEBUG=... on the make
      command line.
      
      Change-Id: Iea4f0c2783ad968a0de097fa710b3be1a248de73
      Reviewed-on: https://gerrit.libreoffice.org/46096Tested-by: 's avatarJenkins <ci@libreoffice.org>
      Reviewed-by: 's avatarStephan Bergmann <sbergman@redhat.com>
      32c31c03
  7. 10 Kas, 2017 1 kayıt (commit)
  8. 07 Kas, 2017 2 kayıt (commit)
    • Stephan Bergmann's avatar
      Clean away temporarily added using declarations · b35bb38f
      Stephan Bergmann yazdı
      Change-Id: I26734c13515394162d88351a1cbe2b20abdac865
      b35bb38f
    • Stephan Bergmann's avatar
      Memoize ignoreLocation results · 07b87115
      Stephan Bergmann yazdı
      ...which, according to callgrind, reduces instruction fetch count spent on
      compiling sw/source/core/layout/paintfrm.cxx (randomly selected because it is
      rather large) by 5% from 41,992,064,226 to 39,861,989,855 (function main() in
      clang-6.0).
      
      This is best done by forwarding ignoreLocation calls from Plugin to the
      PluginHandler signleton, but due to the tight mutual coupling between plugin.hxx
      and pluginhandler.hxx that unfortunately required some reorganization (and two
      outstanding TODO clean-ups of temporarily introduced using declarations in
      plugin.hxx).
      
      Change-Id: Ia4270517d194def7db7ed80cb6894e9c473e9499
      07b87115
  9. 27 Eki, 2017 5 kayıt (commit)
  10. 02 Agu, 2017 1 kayıt (commit)
  11. 22 Tem, 2017 1 kayıt (commit)
  12. 20 Haz, 2017 2 kayıt (commit)
  13. 18 May, 2017 2 kayıt (commit)
  14. 25 Mar, 2017 1 kayıt (commit)
  15. 18 Eki, 2016 1 kayıt (commit)
  16. 27 Eyl, 2016 1 kayıt (commit)
  17. 28 Haz, 2016 1 kayıt (commit)
  18. 27 Nis, 2016 1 kayıt (commit)
  19. 26 Şub, 2016 1 kayıt (commit)
  20. 24 Haz, 2014 1 kayıt (commit)
  21. 27 Şub, 2014 1 kayıt (commit)
  22. 21 Şub, 2014 1 kayıt (commit)
  23. 20 Şub, 2014 1 kayıt (commit)
    • Stephan Bergmann's avatar
      Don't attempt to actually do double code removals · 5dcb634d
      Stephan Bergmann yazdı
      ...that easily works around the problem that in a rewriter rewriting types of
      VarDecls like
      
         T x, y;
      
      it would try to replace T twice.  Also, keep the list of removals globally with
      the (global) rewriter.
      
      Change-Id: I55b8d11986c2a29e09ff40132fd114a0cc48dc90
      5dcb634d
  24. 14 Şub, 2014 1 kayıt (commit)
  25. 27 Ock, 2014 1 kayıt (commit)
    • Stephan Bergmann's avatar
      Prepare dual-mode compiler plugin feature · 1f078fca
      Stephan Bergmann yazdı
      ...which can act as either a rewriter or a non-rewriter that emits warnings.
      
      Also added COMPILER_PLUGIN_WARNINGS_ONLY=X to demote warnings from plugin X from
      errors to warnings, even under --enable-werror.
      
      Change-Id: I05361936240a890515c6bba2459565417c1746b7
      1f078fca
  26. 22 Eyl, 2013 1 kayıt (commit)
  27. 21 Agu, 2013 2 kayıt (commit)
  28. 06 Agu, 2013 1 kayıt (commit)
  29. 20 Haz, 2013 1 kayıt (commit)
    • Luboš Luňák's avatar
      make it easy to get a parent of an AST node · ade47d3d
      Luboš Luňák yazdı
      Clang API doesn't provide this, but it's occasionally needed, and so far
      the way has been inspecting the highest possible node in AST and walking down
      and remembering, which is complicated, error-prone and annoying.
      
      Change-Id: Id5b72cb5ebfc069e90efe6d673c0ef18ebcdab61
      ade47d3d
  30. 06 May, 2013 3 kayıt (commit)