Skip to content
  1. Sep 20, 2013
  2. Sep 19, 2013
  3. Sep 18, 2013
  4. Sep 15, 2013
  5. Sep 12, 2013
    • Joey Gouly's avatar
      [LTO] Fix the LTO tool, after my API breakage. · db6144e3
      Joey Gouly authored
      Thanks to Zonr Chang!
      
      llvm-svn: 190602
      db6144e3
    • Joey Gouly's avatar
      Add an instruction deprecation feature to TableGen. · 0e76fa7d
      Joey Gouly authored
      The 'Deprecated' class allows you to specify a SubtargetFeature that the
      instruction is deprecated on.
      
      The 'ComplexDeprecationPredicate' class allows you to define a custom
      predicate that is called to check for deprecation.
      For example:
        ComplexDeprecationPredicate<"MCR">
      
      would mean you would have to define the following function:
        bool getMCRDeprecationInfo(MCInst &MI, MCSubtargetInfo &STI,
                                   std::string &Info)
      
      Which returns 'false' for not deprecated, and 'true' for deprecated
      and store the warning message in 'Info'.
      
      The MCTargetAsmParser constructor was chaned to take an extra argument of
      the MCInstrInfo class, so out-of-tree targets will need to be changed.
      
      llvm-svn: 190598
      0e76fa7d
  6. Sep 09, 2013
    • Manman Ren's avatar
      Debug Info: Use DIScopeRef for DIType::getContext. · 116868ea
      Manman Ren authored
          
      In DIBuilder, the context field of a TAG_member is updated to use the
      scope reference. Verifier is updated accordingly.
          
      DebugInfoFinder now needs to generate a type identifier map to have
      access to the actual scope. Same applies for BreakpointPrinter.
          
      processModule of DebugInfoFinder is called during initialization phase
      of the verifier to make sure the type identifier map is constructed early
      enough.
          
      We are now able to unique a simple class as demonstrated by the added
      testing case.
      
      llvm-svn: 190334
      116868ea
    • Bob Wilson's avatar
      Revert patches to add case-range support for PR1255. · e407736a
      Bob Wilson authored
      The work on this project was left in an unfinished and inconsistent state.
      Hopefully someone will eventually get a chance to implement this feature, but
      in the meantime, it is better to put things back the way the were.  I have
      left support in the bitcode reader to handle the case-range bitcode format,
      so that we do not lose bitcode compatibility with the llvm 3.3 release.
      
      This reverts the following commits: 155464, 156374, 156377, 156613, 156704,
      156757, 156804 156808, 156985, 157046, 157112, 157183, 157315, 157384, 157575,
      157576, 157586, 157612, 157810, 157814, 157815, 157880, 157881, 157882, 157884,
      157887, 157901, 158979, 157987, 157989, 158986, 158997, 159076, 159101, 159100,
      159200, 159201, 159207, 159527, 159532, 159540, 159583, 159618, 159658, 159659,
      159660, 159661, 159703, 159704, 160076, 167356, 172025, 186736
      
      llvm-svn: 190328
      e407736a
    • Bill Wendling's avatar
      Generate compact unwind encoding from CFI directives. · 58e2d3d8
      Bill Wendling authored
      We used to generate the compact unwind encoding from the machine
      instructions. However, this had the problem that if the user used `-save-temps'
      or compiled their hand-written `.s' file (with CFI directives), we wouldn't
      generate the compact unwind encoding.
      
      Move the algorithm that generates the compact unwind encoding into the
      MCAsmBackend. This way we can generate the encoding whether the code is from a
      `.ll' or `.s' file.
      
      <rdar://problem/13623355>
      
      llvm-svn: 190290
      58e2d3d8
  7. Sep 06, 2013
  8. Sep 05, 2013
  9. Sep 04, 2013
  10. Sep 03, 2013
  11. Sep 02, 2013
    • Dmitri Gribenko's avatar
      Added std:: qualifier to find() invocation · 6e0520e9
      Dmitri Gribenko authored
      Iterator of std::vector may be implemented as a raw pointer. In
      this case ADL does not find the find() function in the std namespace.
      For example, this is the case with STDCXX implementation of vector.
      
      Patch by Konstantin Tokarev.
      
      llvm-svn: 189733
      6e0520e9
  12. Sep 01, 2013
  13. Aug 30, 2013
  14. Aug 29, 2013
  15. Aug 28, 2013
    • Rafael Espindola's avatar
      Fix name matching to work on windows. · 0642df3f
      Rafael Espindola authored
      llvm-svn: 189517
      0642df3f
    • Hal Finkel's avatar
      Disable unrolling in the loop vectorizer when disabled in the pass manager · 6d09904c
      Hal Finkel authored
      When unrolling is disabled in the pass manager, the loop vectorizer should also
      not unroll loops. This will allow the -fno-unroll-loops option in Clang to
      behave as expected (even for vectorizable loops). The loop vectorizer's
      -force-vector-unroll option will (continue to) override the pass-manager
      setting (including -force-vector-unroll=0 to force use of the internal
      auto-selection logic).
      
      In order to test this, I added a flag to opt (-disable-loop-unrolling) to force
      disable unrolling through opt (the analog of -fno-unroll-loops in Clang). Also,
      this fixes a small bug in opt where the loop vectorizer was enabled only after
      the pass manager populated the queue of passes (the global_alias.ll test needed
      a slight update to the RUN line as a result of this fix).
      
      llvm-svn: 189499
      6d09904c
    • Hans Wennborg's avatar
      cmake: Prevent semicolon separated lists in llvm-config (PR17020) · 5c623596
      Hans Wennborg authored
      llvm-svn: 189491
      5c623596
    • Rafael Espindola's avatar
      Add a minimal implementation of ranlib. · 0c8a3524
      Rafael Espindola authored
      This is just enough to get "llvm-ranlib foo.a" working and tested. Making
      llvm-ranlib a symbolic link to llvm-ar doesn't work so well with llvm's option
      parsing, but ar's option parsing is mostly custom anyway.
      
      This patch also removes the -X32_64 option. Looks like it was just added in
      r10297 as part of implementing the current command line parsing. I can add it
      back (with a test) if someone really has AIX portability problems without it.
      
      llvm-svn: 189489
      0c8a3524
    • Hans Wennborg's avatar
      cmake: Add msbuild integration to the install · d2cbe22b
      Hans Wennborg authored
      This adds the msbuild integration files to the install, provides batch scripts
      for (un)installing it in a convenient way, and hooks up the nsis installer to
      run those scripts.
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D1537
      
      llvm-svn: 189434
      d2cbe22b
    • Argyrios Kyrtzidis's avatar
      [CMake] Put back the add_llvm_external_project() calls for specific projects. · dba67a22
      Argyrios Kyrtzidis authored
      This allows setting-up the LLVM_EXTERNAL_* CMake variables that some people are using,
      e.g. to set the source directory of the project in a different place.
      
      llvm-svn: 189415
      dba67a22
    • Reid Kleckner's avatar
      Add xml files for msbuild integration · 8f4524a7
      Reid Kleckner authored
      These files are intended to live in the msbuild toolset directory, which
      is somewhere like:
      
      C:\Program Files (x86)\MSBuild\Microsoft.Cpp\
        v4.0\Platforms\Win32\PlatformToolsets\llvm
      
      More work is needed to install them as part of the NSIS installer.
      
      Patch by Warren Hunt!
      
      llvm-svn: 189411
      8f4524a7
  16. Aug 27, 2013
    • Shuxin Yang's avatar
      Revert 189297, the original commit message is following. · 388b52c0
      Shuxin Yang authored
      ----
        Add new API lto_codegen_compile_parallel().
      
        This API is proposed by Nick Kledzik. The semantic is:
      
        --------------------------------------------------------------------------
         Generate code for merged module into an array of native object files. On 
         success returns a pointer to an array of NativeObjectFile.  The count 
         parameter returns the number of elements in the array.  Each element is 
         a pointer/length for a generated mach-o/ELF buffer.  The buffer is owned
         by the lto_code_gen_t and will be freed when lto_codegen_dispose() is called, 
         or lto_codegen_compile() is called again. On failure, returns NULL 
         (check lto_get_error_message() for details).
      
         extern const struct  NativeObjectFile*
         lto_codegen_compile_parallel(lto_code_gen_t cg, size_t *count);
        ---------------------------------------------------------------------------
      
        This API is currently only called on OSX platform. Linux or other Unixes
      using GNU gold are not supposed to call this function, because on these systems, 
      object files are fed back to linker via disk file instead of memory buffer.
      
        In this commit, lto_codegen_compile_parallel() simply calls
      lto_codegen_compile() to return a single object file. In the near future,
      this function is the entry point for compilation with partition. Linker can
      blindly call this function even if partition is turned off; in this case,
      compiler will return only one object file.
      
      llvm-svn: 189386
      388b52c0
    • Charles Davis's avatar
      Revert "Fix the build broken by r189315." and "Move everything depending on... · 1827bd8a
      Charles Davis authored
      Revert "Fix the build broken by r189315." and "Move everything depending on Object/MachOFormat.h over to Support/MachO.h."
      
      This reverts commits r189319 and r189315. r189315 broke some tests on what I
      believe are big-endian platforms.
      
      llvm-svn: 189321
      1827bd8a
    • David Blaikie's avatar
      Fix the build broken by r189315. · ed80aa55
      David Blaikie authored
      (this triggered Clang's -Wsometimes-uninitialized on the default path
      through the switch)
      
      llvm-svn: 189319
      ed80aa55
    • Charles Davis's avatar
      0c6f71b4
    • Shuxin Yang's avatar
      Add new API lto_codegen_compile_parallel(). · a44362e4
      Shuxin Yang authored
        This API is proposed by Nick Kledzik. The semantic is:
      
        --------------------------------------------------------------------------
         Generate code for merged module into an array of native object files. On 
         success returns a pointer to an array of NativeObjectFile.  The count 
         parameter returns the number of elements in the array.  Each element is 
         a pointer/length for a generated mach-o/ELF buffer.  The buffer is owned
         by the lto_code_gen_t and will be freed when lto_codegen_dispose() is called, 
         or lto_codegen_compile() is called again. On failure, returns NULL 
         (check lto_get_error_message() for details).
      
         extern const struct  NativeObjectFile*
         lto_codegen_compile_parallel(lto_code_gen_t cg, size_t *count);
        ---------------------------------------------------------------------------
      
        This API is currently only called on OSX platform. Linux or other Unixes
      using GNU gold are not supposed to call this function, because on these systems, 
      object files are fed back to linker via disk file instead of memory buffer.
      
        In this commit, lto_codegen_compile_parallel() simply calls
      lto_codegen_compile() to return a single object file. In the near future,
      this function is the entry point for compilation with partition. Linker can
      blindly call this function even if partition is turned off; in this case,
      compiler will return only one object file.
      
      llvm-svn: 189297
      a44362e4
  17. Aug 26, 2013
  18. Aug 23, 2013
  19. Aug 21, 2013
    • Argyrios Kyrtzidis's avatar
      [CMake] Automatically pick up subdirectories in llvm/tools as 'external... · 7eec9d0c
      Argyrios Kyrtzidis authored
      [CMake] Automatically pick up subdirectories in llvm/tools as 'external projects' if they contain a 'CMakeLists.txt' file.
      
      Allow CMake to pick up external projects in llvm/tools without the need to modify the "llvm/tools/CMakeLists.txt" file.
      This makes it easier to work with projects that live in other repositories, without needing to specify each one in "llvm/tools/CMakeLists.txt".
      
      llvm-svn: 188921
      7eec9d0c
Loading