Skip to content
  1. Jan 08, 2013
  2. Jan 07, 2013
  3. 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
  4. Jan 04, 2013
  5. 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
  6. Dec 30, 2012
  7. Dec 27, 2012
  8. 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
  9. Dec 20, 2012
  10. Dec 19, 2012
  11. 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
  12. Dec 15, 2012
  13. Dec 13, 2012
  14. 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
  15. Dec 11, 2012
  16. Dec 10, 2012
  17. Dec 06, 2012
  18. 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
  19. 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
Loading