Skip to content
  1. Apr 01, 2018
  2. Mar 31, 2018
  3. Mar 30, 2018
    • Peter Collingbourne's avatar
      ELF: Place ordered sections in the middle of the unordered section list on... · 5ea6d50a
      Peter Collingbourne authored
      ELF: Place ordered sections in the middle of the unordered section list on targets with limited-range branches.
      
      It generally does not matter much where we place sections ordered
      by --symbol-ordering-file relative to other sections. But if the
      ordered sections are hot (which is the case already for some users
      of --symbol-ordering-file, and is increasingly more likely to be
      the case once profile-guided section layout lands) and the target
      has limited-range branches, it is beneficial to place the ordered
      sections in the middle of the output section in order to decrease
      the likelihood that a range extension thunk will be required to call
      a hot function from a cold function or vice versa.
      
      That is what this patch does. After D44966 it reduces the size of
      Chromium for Android's .text section by 60KB.
      
      Differential Revision: https://reviews.llvm.org/D44969
      
      llvm-svn: 328905
      5ea6d50a
    • Ekaterina Romanova's avatar
      Prevent data races in concurrent ThinLTO processes. · 0b01dfbb
      Ekaterina Romanova authored
      Make sure ThinLTO with caching doesn't use non-atomic writes to the cache file (to prevent data races and cache files corruption).
      
      1. Place temp file to the same place where the caching directory is (instead of creating it the directory pointed to by TMP/TEMP variable). This will help to prevent using non-atomic rename and falling back to non-atomic "direct" write to the cache file.
      2. if rename failed do not write to the cache file directly (direct write to the file is non-atomic and could cause data race conditions).
      3. if cache file doesn't exist (e.g., because 'rename' failed or because some other reasons), bypass using the cache altogether.
      
      Differential Revision:  https://reviews.llvm.org/D45076
      
      llvm-svn: 328904
      0b01dfbb
    • Artem Dergachev's avatar
      [analyzer] Fix test triple in missing-bind-temporary.cpp. · d1fe360b
      Artem Dergachev authored
      Otherwise the default triple for x86-windows-msvc2015 auto-inserts
      __attribute__((thiscall)) to some calls.
      
      Fixes the respective buildbot.
      
      llvm-svn: 328903
      d1fe360b
    • Rumeet Dhindsa's avatar
      Initialize Elf Header to zero to ensure that bytes not assigned any value... · 7588a8e8
      Rumeet Dhindsa authored
      Initialize Elf Header to zero to ensure that bytes not assigned any value later on are initialized properly.
      
      Differential Revision: https://reviews.llvm.org/D44986
      
      llvm-svn: 328902
      7588a8e8
    • Jacob Gravelle's avatar
      [WebAssembly] Register wasm passes with the PassRegistry · 40926451
      Jacob Gravelle authored
      Summary:
      This exposes WebAssembly passes for use on the command line (as
      arguments to -print-before and the like).
      
      Reviewers: dschuff, sunfish
      
      Subscribers: MatzeB, jfb, sbc100, llvm-commits, aheejin
      
      Differential Revision: https://reviews.llvm.org/D45103
      
      llvm-svn: 328901
      40926451
    • Jonathan Peyton's avatar
      Minor cleanup in __kmp_atfork_child() · 1e6bb8d5
      Jonathan Peyton authored
      This change removes the unnecessary lock operation on __kmp_initz_lock inside
      the __kmp_atfork_child() function for Linux; the lock variable is initialized
      in the same function later.
      
      Patch by Hansang Bae
      
      Differential Revision: https://reviews.llvm.org/D44949
      
      llvm-svn: 328900
      1e6bb8d5
    • Krzysztof Parzyszek's avatar
      [Hexagon] Fix testcase · 526fbf8e
      Krzysztof Parzyszek authored
      llvm-svn: 328899
      526fbf8e
Loading