Skip to content
  1. Dec 22, 2008
  2. Dec 19, 2008
    • Rafael Espindola's avatar
      Fix bug 3202. · 770b4b83
      Rafael Espindola authored
      The EH_frame and .eh symbols are now private, except for darwin9 and earlier.
      The patch also fixes the definition of PrivateGlobalPrefix on pcc linux.
      
      llvm-svn: 61242
      770b4b83
  3. Dec 12, 2008
  4. Dec 10, 2008
    • Evan Cheng's avatar
      Fix a couple of Dwarf bugs. · 288fbd21
      Evan Cheng authored
      - Emit DW_AT_byte_size for struct and union of size zero.
      - Emit DW_AT_declaration for forward type declaration.
      
      llvm-svn: 60812
      288fbd21
  5. Dec 09, 2008
  6. Dec 03, 2008
    • Rafael Espindola's avatar
      Fix bug 3140. · cda011b5
      Rafael Espindola authored
      Print a single parameter .file directive if we have an ELF target.
      
      llvm-svn: 60480
      cda011b5
  7. Nov 22, 2008
  8. Nov 10, 2008
  9. Nov 09, 2008
  10. Nov 08, 2008
  11. Oct 17, 2008
  12. Oct 10, 2008
  13. Oct 09, 2008
  14. Oct 08, 2008
  15. Oct 03, 2008
  16. Sep 26, 2008
    • Bill Wendling's avatar
      If we have a function with an unreachable statement such that the ending debug · 374d7f2b
      Bill Wendling authored
      information is in an unreachable block, then it's possible that the high/low pc
      values won't be set for the dwarf information. E.g., this function:
      
      void abort(void) __attribute__((__noreturn__));
      void dead_beef(void) __attribute__ ((noreturn));
      
      int *b;
      
      void dead_beef(void) {
        *b=0xdeadbeef;
        abort();
      }
      
      has a call to "@llvm.dbg.region.end" only in the unreachable block:
      
      define void @dead_beef() noreturn nounwind  {
      entry:
      	call void @llvm.dbg.func.start(...)
      	call void @llvm.dbg.stoppoint(...)
      ...
      	call void @abort( ) noreturn nounwind 
      	unreachable
      
      return:		; No predecessors!
      	call void @llvm.dbg.stoppoint(...)
      	call void @llvm.dbg.region.end(...)
      	ret void
      }
      
      The dwarf information emitted is something like:
      
      0x00000084:     TAG_subprogram [5]  
                       AT_name( "dead_beef" )
                       AT_external( 0x01 )
                       AT_prototyped( 0x01 )
                       AT_decl_file( 0x01 )
                       AT_decl_line( 0x08 )
      
      Note that this is *not* the best fix for this problem, but a band-aid for an
      gaping wound. This code needs to be changed when we revamp our debugging
      information.
      
      llvm-svn: 56628
      374d7f2b
  17. Sep 25, 2008
  18. Sep 24, 2008
  19. Sep 22, 2008
  20. Sep 17, 2008
    • Dale Johannesen's avatar
      Add a bit to mark operands of asm's that conflict · f8610ebe
      Dale Johannesen authored
      with an earlyclobber operand elsewhere.  Propagate
      this bit and the earlyclobber bit through SDISel.
      Change linear-scan RA not to allocate regs in a way 
      that conflicts with an earlyclobber.  See also comments.
      
      llvm-svn: 56290
      f8610ebe
  21. Sep 10, 2008
    • Dale Johannesen's avatar
      Move the uglier parts of deciding not to emit a · abb1e777
      Dale Johannesen authored
      UsedDirective for some symbols in llvm.used into
      Darwin-specific code.  I've decided LessPrivateGlobal
      is potentially a useful abstraction and left it in
      the target-independent area, with improved comment.
      
      llvm-svn: 56024
      abb1e777
  22. Sep 09, 2008
    • Dale Johannesen's avatar
      Fix logic for not emitting no-dead-strip for some · f0802254
      Dale Johannesen authored
      objects in llvm.used (thanks Anton).  Makes visible
      the magic 'l' prefix for symbols on Darwin which are
      to be passed through the assembler, then removed at
      linktime (previously all references to this had been
      hidden in the ObjC FE code, oh well).
      
      llvm-svn: 55973
      f0802254
  23. Sep 08, 2008
  24. Sep 04, 2008
  25. Sep 03, 2008
  26. Aug 21, 2008
  27. Aug 19, 2008
  28. Aug 17, 2008
    • Gordon Henriksen's avatar
      Drop an unnecessary include. · 86e7d0a1
      Gordon Henriksen authored
      llvm-svn: 54901
      86e7d0a1
    • Gordon Henriksen's avatar
      Rename some GC classes so that their roll will hopefully be clearer. · d930f913
      Gordon Henriksen authored
      In particular, Collector was confusing to implementors. Several
      thought that this compile-time class was the place to implement
      their runtime GC heap. Of course, it doesn't even exist at runtime.
      Specifically, the renames are:
      
        Collector               -> GCStrategy
        CollectorMetadata       -> GCFunctionInfo
        CollectorModuleMetadata -> GCModuleInfo
        CollectorRegistry       -> GCRegistry
        Function::getCollector  -> getGC (setGC, hasGC, clearGC)
      
      Several accessors and nested types have also been renamed to be
      consistent. These changes should be obvious.
      
      llvm-svn: 54899
      d930f913
Loading