Skip to content
  1. Oct 31, 2013
  2. Oct 30, 2013
    • Matt Arsenault's avatar
      Teach scalarrepl about address spaces · 38b8ecf3
      Matt Arsenault authored
      llvm-svn: 193720
      38b8ecf3
    • Rafael Espindola's avatar
      Add calls to doInitialization() and doFinalization() in verifyFunction() · 55fdcff4
      Rafael Espindola authored
      The function verifyFunction() in lib/IR/Verifier.cpp misses some
      calls. It creates a temporary FunctionPassManager that will run a
      single Verifier pass. Unfortunately, FunctionPassManager is no
      PassManager and does not call doInitialization() and doFinalization()
      by itself. Verifier does important tasks in doInitialization() such as
      collecting type information used to check DebugInfo metadata and
      doFinalization() does some additional checks. Therefore these checks
      were missed and debug info couldn't be verified at all, it just
      crashed if the function had some.
      
      verifyFunction() is currently not used in llvm unless -debug option is
      enabled, and in unittests/IR/VerifierTest.cpp
      
      VerifierTest had to be changed to create the function in a module from
      which the type debug info can be collected.
      
      Patch by Michael Kruse.
      
      llvm-svn: 193719
      55fdcff4
    • Rafael Espindola's avatar
      Produce .weak_def_can_be_hidden for some linkonce_odr values · 6f1b2852
      Rafael Espindola authored
      With this patch llvm produces a weak_def_can_be_hidden for linkonce_odr
      if they are also unnamed_addr or don't have their address taken.
      
      There is not a lot of documentation about .weak_def_can_be_hidden, but
      from the old discussion about linkonce_odr_auto_hide and the name of
      the directive this looks correct: these symbols can be hidden.
      
      Testing this with the ld64 in Xcode 5 linking clang reduces the number of
      exported symbols from 21053 to 19049.
      
      llvm-svn: 193718
      6f1b2852
    • Mark Lacey's avatar
      Add CodeGenABITypes.h for use in LLDB. · a8e7df36
      Mark Lacey authored
      CodeGenABITypes is a wrapper built on top of CodeGenModule that exposes
      some of the functionality of CodeGenTypes (held by CodeGenModule),
      specifically methods that determine the LLVM types appropriate for
      function argument and return values.
      
      I addition to CodeGenABITypes.h, CGFunctionInfo.h is introduced, and the
      definitions of ABIArgInfo, RequiredArgs, and CGFunctionInfo are moved
      into this new header from the private headers ABIInfo.h and CGCall.h.
      
      Exposing this functionality is one part of making it possible for LLDB
      to determine the actual ABI locations of function arguments and return
      values, making it possible for it to determine this for any supported
      target without hard-coding ABI knowledge in the LLDB code.
      
      llvm-svn: 193717
      a8e7df36
    • Greg Clayton's avatar
      <rdar://problem/14496092> · f32db51c
      Greg Clayton authored
      Fixed the expression parser to be able to iterate across all function name matches that it finds when it is looking for the address of a function that the IR is looking for. Also taught it to deal with reexported symbols.
      
      llvm-svn: 193716
      f32db51c
    • Andrew Kaylor's avatar
      Removing expected failure decorator for a test that's passing. · ba8ce041
      Andrew Kaylor authored
      llvm-svn: 193715
      ba8ce041
    • David Blaikie's avatar
      DebugInfo: Push header handling down into CompileUnit · 6b288cfa
      David Blaikie authored
      This is a preliminary step to handling type units by abstracting over
      all (type or compile) units.
      
      llvm-svn: 193714
      6b288cfa
Loading