Skip to content
  1. Jan 07, 2013
    • Eric Christopher's avatar
      Add support for separating strings for the split debug info DWARF5 · 2cbd5767
      Eric Christopher authored
      proposal. This leaves the strings in the skeleton die as strp,
      but in all dwo files they're accessed now via DW_FORM_GNU_str_index.
      
      Add support for dumping these sections and modify the fission-cu.ll
      testcase to have the correct strings and form. Fix a small bug
      in the fixed form sizes routine that involved out of array accesses
      for the table and add a FIXME in the extractFast routine to fix
      this up.
      
      llvm-svn: 171779
      2cbd5767
    • David Blaikie's avatar
      PR14759: Debug info support for C++ member pointers. · 5d3249b5
      David Blaikie authored
      This works fine with GDB for member variable pointers, but GDB's support for
      member function pointers seems to be quite unrelated to
      DW_TAG_ptr_to_member_type. (see GDB bug 14998 for details)
      
      llvm-svn: 171698
      5d3249b5
  2. Jan 05, 2013
    • David Blaikie's avatar
      Emit DW_TAG_formal_parameter for unnamed parameters. · 800a916f
      David Blaikie authored
      This change essentially reverts r87069 which came without a test case. It
      causes no regressions in the GDB 7.5 test suite & fixes 25 xfails (commit
      to the test suite to follow). If anyone can present a test case that
      demonstrates why this check is necessary I'd be happy to account for it in one
      way or another.
      
      llvm-svn: 171609
      800a916f
  3. Jan 04, 2013
  4. Jan 02, 2013
    • Chandler Carruth's avatar
      Move all of the header files which are involved in modelling the LLVM IR · 9fb823bb
      Chandler Carruth authored
      into their new header subdirectory: include/llvm/IR. This matches the
      directory structure of lib, and begins to correct a long standing point
      of file layout clutter in LLVM.
      
      There are still more header files to move here, but I wanted to handle
      them in separate commits to make tracking what files make sense at each
      layer easier.
      
      The only really questionable files here are the target intrinsic
      tablegen files. But that's a battle I'd rather not fight today.
      
      I've updated both CMake and Makefile build systems (I think, and my
      tests think, but I may have missed something).
      
      I've also re-sorted the includes throughout the project. I'll be
      committing updates to Clang, DragonEgg, and Polly momentarily.
      
      llvm-svn: 171366
      9fb823bb
  5. Dec 30, 2012
  6. Dec 27, 2012
  7. Dec 25, 2012
    • Bob Wilson's avatar
      Rename LLVMContext diagnostic handler types and functions. · fe73ac34
      Bob Wilson authored
      These are now generally used for all diagnostics from the backend, not just
      for inline assembly, so this drops the "InlineAsm" from the names.  No
      functional change.  (I've left aliases for the old names but only for long
      enough to let me switch over clang to use the new ones.)
      
      llvm-svn: 171047
      fe73ac34
  8. Dec 20, 2012
  9. Dec 19, 2012
  10. Dec 16, 2012
    • Dmitri Gribenko's avatar
      Declare class DwarfDebug before use instead of relying on a forward declaration · 2943ce80
      Dmitri Gribenko authored
      from some other unrelated header.
      
      Patch by Kai.
      
      llvm-svn: 170284
      2943ce80
    • Reed Kotler's avatar
      This patch is needed to make c++ exceptions work for mips16. · aee4d5d1
      Reed Kotler authored
      Mips16 is really a processor decoding mode (ala thumb 1) and in the same
      program, mips16 and mips32 functions can exist and can call each other.
      
      If a jal type instruction encounters an address with the lower bit set, then
      the processor switches to mips16 mode (if it is not already in it). If the
      lower bit is not set, then it switches to mips32 mode.
      
      The linker knows which functions are mips16 and which are mips32.
      When relocation is performed on code labels, this lower order bit is
      set if the code label is a mips16 code label.
      
      In general this works just fine, however when creating exception handling
      tables and dwarf, there are cases where you don't want this lower order
      bit added in.
      
      This has been traditionally distinguished in gas assembly source by using a
      different syntax for the label.
      
      lab1:      ; this will cause the lower order bit to be added
      lab2=.     ; this will not cause the lower order bit to be added
      
      In some cases, it does not matter because in dwarf and debug tables
      the difference of two labels is used and in that case the lower order
      bits subtract each other out.
      
      To fix this, I have added to mcstreamer the notion of a debuglabel.
      The default is for label and debug label to be the same. So calling
      EmitLabel and EmitDebugLabel produce the same result.
      
      For various reasons, there is only one set of labels that needs to be
      modified for the mips exceptions to work. These are the "$eh_func_beginXXX" 
      labels.
      
      Mips overrides the debug label suffix from ":" to "=." .
      
      This initial patch fixes exceptions. More changes most likely
      will be needed to DwarfCFException to make all of this work
      for actual debugging. These changes will be to emit debug labels in some
      places where a simple label is emitted now.
      
      Some historical discussion on this from gcc can be found at:
      http://gcc.gnu.org/ml/gcc-patches/2008-08/msg00623.html
      http://gcc.gnu.org/ml/gcc-patches/2008-11/msg01273.html 
      
      llvm-svn: 170279
      aee4d5d1
  11. Dec 15, 2012
  12. Dec 13, 2012
  13. Dec 12, 2012
    • Pedro Artigas's avatar
      · 7212ee45
      Pedro Artigas authored
      Make the MCStreamer have a reset method and call that after finalization of the asm printer, 
      also changed MCContext to a single reset only method for simplicity as requested on the list
      
      llvm-svn: 170041
      7212ee45
  14. Dec 11, 2012
  15. Dec 10, 2012
  16. Dec 06, 2012
  17. Dec 04, 2012
    • David Blaikie's avatar
      Comment change made in r169304 as requested by Eric Christopher. · 67cb31eb
      David Blaikie authored
      llvm-svn: 169315
      67cb31eb
    • Bill Wendling's avatar
      Use the 'count' attribute to calculate the upper bound of an array. · d7767125
      Bill Wendling authored
      The count attribute is more accurate with regards to the size of an array. It
      also obviates the upper bound attribute in the subrange. We can also better
      handle an unbound array by setting the count to -1 instead of the lower bound to
      1 and upper bound to 0.
      
      llvm-svn: 169312
      d7767125
    • David Blaikie's avatar
      Reapply r160148 (reverted in r163570) fixing spurious breakpoints in modern GDB · 5a773bb6
      David Blaikie authored
      This reapplies the fix for PR13303 now with more justification. Based on my
      execution of the GDB 7.5 test suite this results in:
      
      expected passes: 16101 -> 20890 (+30%)
      unexpected failures: 4826 -> 637 (-77%)
      
      There are 23 checks that used to pass and now fail. They are all in
      gdb.reverse. Investigating a few looks like they were accidentally passing
      due to extra breakpoints being set by this bug. They're generally due to the
      difference in end location between gcc and clang, the test suite is trying to
      set breakpoints on the closing '}' that clang doesn't associate with any
      instructions.
      
      llvm-svn: 169304
      5a773bb6
    • Chandler Carruth's avatar
      Sort includes for all of the .h files under the 'lib' tree. These were · 802d7555
      Chandler Carruth authored
      missed in the first pass because the script didn't yet handle include
      guards.
      
      Note that the script is now able to handle all of these headers without
      manual edits. =]
      
      llvm-svn: 169224
      802d7555
    • Bill Wendling's avatar
      Add a 'count' field to the DWARF subrange. · bfc0e572
      Bill Wendling authored
      The count field is necessary because there isn't a difference between the 'lo'
      and 'hi' attributes for a one-element array and a zero-element array. When the
      count is '0', we know that this is a zero-element array. When it's >=1, then
      it's a normal constant sized array. When it's -1, then the array is unbounded.
      
      llvm-svn: 169218
      bfc0e572
  18. Dec 03, 2012
    • Eli Bendersky's avatar
      Fix PR12942: Allow two CUs to be generated from the same source file. · b42d1466
      Eli Bendersky authored
      Thanks Eric for the review.
      
      llvm-svn: 169142
      b42d1466
    • Chandler Carruth's avatar
      Use the new script to sort the includes of every file under lib. · ed0881b2
      Chandler Carruth authored
      Sooooo many of these had incorrect or strange main module includes.
      I have manually inspected all of these, and fixed the main module
      include to be the nearest plausible thing I could find. If you own or
      care about any of these source files, I encourage you to take some time
      and check that these edits were sensible. I can't have broken anything
      (I strictly added headers, and reordered them, never removed), but they
      may not be the headers you'd really like to identify as containing the
      API being implemented.
      
      Many forward declarations and missing includes were added to a header
      files to allow them to parse cleanly when included first. The main
      module rule does in fact have its merits. =]
      
      llvm-svn: 169131
      ed0881b2
  19. Dec 01, 2012
  20. Nov 29, 2012
  21. Nov 27, 2012
Loading