1. Nov 03, 2018
  2. Nov 02, 2018
    • Kristof Umann's avatar
      [analyzer] New flag to print all -analyzer-config options · f1f351c9
      Kristof Umann authored
      A new -cc1 flag is avaible for the said purpose: -analyzer-config-help
      
      Differential Revision: https://reviews.llvm.org/D53296
      
      llvm-svn: 345989
      f1f351c9
    • Sanjay Patel's avatar
      [ValueTracking] allow non-canonical shuffles when computing signbits · a68096c7
      Sanjay Patel authored
      This possibility is noted in D53987 for a different case,
      so we need to adjust the existing code.
      
      llvm-svn: 345988
      a68096c7
    • Cameron McInally's avatar
      [NFC] Remove some extra characters from docs/LangRef.rst · 1005679a
      Cameron McInally authored
      llvm-svn: 345987
      1005679a
    • Kristof Umann's avatar
      [analyzer][NFC] Collect all -analyzer-config options in a .def file · e390633d
      Kristof Umann authored
      I'm in the process of refactoring AnalyzerOptions. The main motivation behind
      here is to emit warnings if an invalid -analyzer-config option is given from the
      command line, and be able to list them all.
      
      In this patch, I'm moving all analyzer options to a def file, and move 2 enums
      to global namespace.
      
      Differential Revision: https://reviews.llvm.org/D53277
      
      llvm-svn: 345986
      e390633d
    • Kristof Umann's avatar
      [analyzer][NFC] Fix some incorrect uses of -analyzer-config options · c83b0dda
      Kristof Umann authored
      I'm in the process of refactoring AnalyzerOptions. The main motivation behind
      here is to emit warnings if an invalid -analyzer-config option is given from
      the command line, and be able to list them all.
      
      In this patch, I found some flags that should've been used as checker options,
      or have absolutely no mention of in AnalyzerOptions, or are nonexistent.
      
      - NonLocalizedStringChecker now uses its "AggressiveReport" flag as a checker
          option
      - lib/StaticAnalyzer/Frontend/ModelInjector.cpp now accesses the "model-path"
          option through a getter in AnalyzerOptions
      - -analyzer-config path-diagnostics-alternate=false is not a thing, I removed it,
      - lib/StaticAnalyzer/Checkers/AllocationDiagnostics.cpp and
          lib/StaticAnalyzer/Checkers/AllocationDiagnostics.h are weird, they actually
          only contain an option getter. I deleted them, and fixed RetainCountChecker
          to get it's "leak-diagnostics-reference-allocation" option as a checker option,
      - "region-store-small-struct-limit" has a proper getter now.
      
      Differential Revision: https://reviews.llvm.org/D53276
      
      llvm-svn: 345985
      c83b0dda
    • Alexander Kornienko's avatar
      [clang-tidy] Fixed code sample in a comment. NFC · 3444cb99
      Alexander Kornienko authored
      llvm-svn: 345984
      3444cb99
    • Dan Liew's avatar
      [NFC] Refactor initialisation of Darwin malloc zone fields into separate... · a8eaaa80
      Dan Liew authored
      [NFC] Refactor initialisation of Darwin malloc zone fields into separate function called `InitMallocZoneFields()` which is now called from `ReplaceSystemMalloc()`.
      
      Summary:
      The motivation here is to be able support initialisation of the
      malloc zone on other code paths.
      
      rdar://problem/45284065
      
      Reviewers: kubamracek, george.karpenkov
      
      Subscribers: llvm-commits, #sanitizers
      
      Differential Revision: https://reviews.llvm.org/D54037
      
      llvm-svn: 345983
      a8eaaa80
    • Alexey Bataev's avatar
      [OPENMP]Change the mapping type for lambda captures. · 2dc07d0c
      Alexey Bataev authored
      The previously used combination `PTR_AND_OBJ | PRIVATE` could be used for mapping of some data in Fortran. Changed it to `PTR_AND_OBJ | LITERAL`.
      
      llvm-svn: 345982
      2dc07d0c
    • Alexey Bataev's avatar
      [OPENMP][OFFLOADING]Change the lambda capturing flags. · 9476ca7d
      Alexey Bataev authored
      Summary:
      The previously used combination `PTR_AND_OBJ | PRIVATE` could be used
      for mapping of some data in Fortran. Changed it to `PTR_AND_OBJ |
        LITERAL`.
      
      Reviewers: gtbercea
      
      Subscribers: guansong, caomhin, openmp-commits
      
      Differential Revision: https://reviews.llvm.org/D54035
      
      llvm-svn: 345981
      9476ca7d
    • Teresa Johnson's avatar
      Revert "Change the timestamp of llvmcache-foo file to meet the thinLTO prune policy" · 366d7285
      Teresa Johnson authored
      This reverts commit r345977.
      
      A few bots failing because the invocation of "touch" is not accepted on
      a couple other OSes. Specifically the -d argument is not accepted or requires
      a different format.
      
      http://lab.llvm.org:8011/builders/lld-x86_64-darwin13/builds/27103/steps/test_lld/logs/stdio
      http://lab.llvm.org:8011/builders/lld-x86_64-freebsd/builds/24974/steps/test_lld/logs/stdio
      
      llvm-svn: 345980
      366d7285
    • Alexander Kornienko's avatar
      8f810c3c
    • Alexey Bataev's avatar
      [OPENMP][NVPTX]Improve emission of the globalized variables for · e4090180
      Alexey Bataev authored
      target/teams/distribute regions.
      
      Target/teams/distribute regions exist for all the time the kernel is
      executed. Thus, if the variable is declared in their context and then
      escape it, we can allocate global memory statically instead of
      allocating it dynamically.
      Patch captures all the globalized variables in target/teams/distribute
      contexts, merges them into the records, one per each target region.
      Those records are then joined into the union, one per compilation unit
      (to save the global memory). Those units are organized into
      2 x dimensional arrays, where the first dimension is
      the number of blocks per SM and the second one is the number of SMs.
      Runtime functions manage this global memory space between the executing
      teams.
      
      llvm-svn: 345978
      e4090180
    • Teresa Johnson's avatar
      Change the timestamp of llvmcache-foo file to meet the thinLTO prune policy · c8325b4b
      Teresa Johnson authored
      Summary:
      
      The case may randomly fail if we test it with command "
       while llvm-lit tools/lld/test/ELF/lto/cache.ll; do true; done". It is because the llvmcache-foo file is younger than llvmcache-349F039B8EB076D412007D82778442BED3148C4E and llvmcache-A8107945C65C2B2BBEE8E61AA604C311D60D58D6. But due to timestamp precision reason their timestamp is the same. Given the same timestamp, the file prune policy is to remove bigger size file first, so mostly foo file is removed for its bigger size. And the files size is under threshold after deleting foo file. That's what test case expect.
      
      However sometimes, the precision is enough to measure that timestamp of llvmcache-349F039B8EB076D412007D82778442BED3148C4E and llvmcache-A8107945C65C2B2BBEE8E61AA604C311D60D58D6 are smaller than foo, so llvmcache-349F039B8EB076D412007D82778442BED3148C4E and llvmcache-A8107945C65C2B2BBEE8E61AA604C311D60D58D6 are deleted first. Since the files size is still above the file size threshold after deleting the 2 files, the foo file is also deleted. And then the test case fails, because it expect only one file should be deleted instead of 3.
      
      The fix is to change the timestamp of llvmcache-foo file to meet the thinLTO prune policy.
      The same fix is applied to llvm code at https://reviews.llvm.org/D52452.
      
      Patch by Luo Yuanke.
      
      Reviewers: ruiu, craig.topper, smaslov, Jianping, espindola, LuoYuanke
      
      Subscribers: rupprecht, bjope, emaste, inglorion, arichardson, steven_wu, dexonsmith, llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D53123
      
      llvm-svn: 345977
      c8325b4b
    • Alexey Bataev's avatar
      [OPENMP][NVPTX]Fixed/improved support for globalization in team contexts. · 463e9f32
      Alexey Bataev authored
      Summary:
      Current globalization scheme works correctly only for SPMD+lightweight
      runtime mode and does not work for full runtime. Patch improves support
      for the globalization scheme + reduces global memory consumption in
        lightweight runtime mode.
      Patch adds runtime functions to work with the statically allocated
      global memory. It allows to improve performance and memory consumption.
      This global memory must be allocated by the compiler.
      
      Reviewers: grokos, kkwli0, gtbercea, caomhin
      
      Subscribers: guansong, jfb, openmp-commits
      
      Differential Revision: https://reviews.llvm.org/D53943
      
      llvm-svn: 345976
      463e9f32
    • Krzysztof Parzyszek's avatar
      [Hexagon] Do not reduce load size for globals in small-data · f070544f
      Krzysztof Parzyszek authored
      Small-data (i.e. GP-relative) loads and stores allow 16-bit scaled
      offset. For a load of a value of type T, the small-data area is
      equivalent to an array "T sdata[65536]". This implies that objects
      of smaller sizes need to be closer to the beginning of sdata,
      while larger objects may be farther away, or otherwise the offset
      may be insufficient to reach it. Similarly, an object of a larger
      size should not be accessed via a load of a smaller size.
      
      llvm-svn: 345975
      f070544f
    • Aleksandr Urakov's avatar
      [NativePDB] Make tests work on x86 too · 86746bd1
      Aleksandr Urakov authored
      Summary:
      This patch fixes the NativePDB tests to make them work from x86 command line too
      
      Reviewers: zturner, stella.stamenova
      
      Subscribers: aleksandr.urakov, teemperor, lldb-commits
      
      Tags: #lldb
      
      Differential Revision: https://reviews.llvm.org/D54031
      
      llvm-svn: 345974
      86746bd1
    • Sam McCall's avatar
      [clangd] Add fallbackFlags initialization extension. · 6980edb8
      Sam McCall authored
      Summary:
      This allows customizing the flags used when no compile database is
      available. It addresses some uses of the old extraFlags extension.
      
      Reviewers: ilya-biryukov
      
      Subscribers: ioeric, MaskRay, jkorous, arphaman, kadircet, cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D53688
      
      llvm-svn: 345973
      6980edb8