Skip to content
  1. Jan 08, 2013
    • Jack Carter's avatar
      This patch produces the correct pointer size · 9e28cd3f
      Jack Carter authored
      value in the 64 bit .eh_frame section.
      
      It doesn't however allow exception handling to work
      yet since it depends on the correct relocation model
      being set in the ELF header flags.
      
      
      Contributer: Jack Carter
      llvm-svn: 171881
      9e28cd3f
  2. Dec 16, 2012
    • 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
  3. Feb 17, 2012
  4. Feb 03, 2012
  5. Dec 20, 2011
  6. Sep 21, 2011
  7. Jul 15, 2011
  8. Jul 08, 2011
  9. Jul 01, 2011
  10. May 26, 2011
  11. Apr 15, 2011
  12. Jul 15, 2010
  13. Jan 26, 2010
    • Chris Lattner's avatar
      Eliminate SetDirective, and replace it with HasSetDirective. · ff234e09
      Chris Lattner authored
      Default HasSetDirective to true, since most targets have it.
      
      The targets that claim to not have it probably do, or it is
      spelled differently. These include Blackfin, Mips, Alpha, and
      PIC16.  All of these except pic16 are normal ELF targets, so
      they almost certainly have it.
      
      llvm-svn: 94585
      ff234e09
  14. Jan 25, 2010
  15. Jan 20, 2010
  16. Jan 19, 2010
  17. Aug 23, 2009
  18. Aug 22, 2009
  19. Aug 12, 2009
  20. Aug 11, 2009
  21. Aug 03, 2009
    • Eli Friedman's avatar
      Remove -disable-mips-abicall and -enable-mips-absolute-call command-line · 57c11da8
      Eli Friedman authored
      options, which don't appear to be useful.  -enable-mips-absolute-call is
      completely unused (and unless I'm mistaken, is supposed to have the 
      same effect that -relocation-model=dynamic-no-pic should have), 
      and -disable-mips-abicall appears to be effectively a 
      synonym for -relocation-model=static. Adjust the few users of hasABICall
      to checks which seem more appropriate.  Update MipsSubtarget, 
      MipsTargetMachine, and MipselTargetMachine to synchronize with recent 
      changes.
      
      llvm-svn: 77938
      57c11da8
  22. Aug 02, 2009
  23. Jul 28, 2009
    • Chris Lattner's avatar
      Rip all of the global variable lowering logic out of TargetAsmInfo. Since · 5e693ed0
      Chris Lattner authored
      it is highly specific to the object file that will be generated in the end,
      this introduces a new TargetLoweringObjectFile interface that is implemented
      for each of ELF/MachO/COFF/Alpha/PIC16 and XCore.
      
      Though still is still a brutal and ugly refactoring, this is a major step
      towards goodness.
      
      This patch also:
      1. fixes a bunch of dangling pointer problems in the PIC16 backend.
      2. disables the TargetLowering copy ctor which PIC16 was accidentally using.
      3. gets us closer to xcore having its own crazy target section flags and
         pic16 not having to shadow sections with its own objects.
      4. fixes wierdness where ELF targets would set CStringSection but not
         CStringSection_.  Factor the code better.
      5. fixes some bugs in string lowering on ELF targets.
      
      llvm-svn: 77294
      5e693ed0
  24. Jul 27, 2009
  25. Jul 26, 2009
  26. Jul 24, 2009
  27. Jul 23, 2009
  28. May 09, 2009
Loading