- Jan 08, 2013
-
-
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
-
- Dec 16, 2012
-
-
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
-
- Feb 17, 2012
- Feb 03, 2012
-
-
Akira Hatanaka authored
needed to emit a 64-bit gp-relative relocation entry. Make changes necessary for emitting jump tables which have entries with directive .gpdword. This patch does not implement the parts needed for direct object emission or JIT. llvm-svn: 149668
-
- Dec 20, 2011
-
-
Akira Hatanaka authored
llvm-svn: 147005
-
-
- Sep 21, 2011
-
-
Akira Hatanaka authored
llvm-svn: 140233
-
- Jul 15, 2011
-
-
Evan Cheng authored
solution but it is a small step towards removing the horror that is TargetAsmInfo. llvm-svn: 135237
-
Evan Cheng authored
Rename createAsmInfo to createMCAsmInfo and move registration code to MCTargetDesc to prepare for next round of changes. llvm-svn: 135219
-
- Jul 08, 2011
-
-
Akira Hatanaka authored
llvm-svn: 134661
-
- Jul 01, 2011
-
-
Akira Hatanaka authored
llvm-svn: 134224
-
- May 26, 2011
-
-
Akira Hatanaka authored
llvm-svn: 132131
-
Akira Hatanaka authored
llvm-svn: 132127
-
Akira Hatanaka authored
llvm-svn: 132098
-
- Apr 15, 2011
-
-
Akira Hatanaka authored
llvm-svn: 129612
-
Akira Hatanaka authored
Fix lines that have incorrect indentation or exceed 80 columns. There is no change in functionality. llvm-svn: 129606
-
- Jul 15, 2010
-
-
Benjamin Kramer authored
llvm-svn: 108366
-
- Jan 26, 2010
-
-
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
-
- Jan 25, 2010
-
-
Chris Lattner authored
make it clear what it is, instead of how it is used. llvm-svn: 94448
-
Chris Lattner authored
llvm-svn: 94411
-
- Jan 20, 2010
-
-
Chris Lattner authored
stomache MCAsmInfo having this, and I found a better solution to this layering issue. llvm-svn: 93985
-
- Jan 19, 2010
-
-
Chris Lattner authored
I really want clients of the streamer to be able to say "emit this 64-bit integer" and have it get broken down right by the streamer. I may change this in the future, we'll see how it works out. llvm-svn: 93934
-
- Aug 23, 2009
-
-
Benjamin Kramer authored
llvm-svn: 79779
-
- Aug 22, 2009
-
-
Chris Lattner authored
llvm-svn: 79763
-
- Aug 12, 2009
-
-
Chris Lattner authored
pair instead of from a virtual method on TargetMachine. This cuts the final ties of TargetAsmInfo to TargetMachine, meaning that MC can now use TargetAsmInfo. llvm-svn: 78802
-
- Aug 11, 2009
-
-
Chris Lattner authored
no longer needs a targetmachine to initialize itself. llvm-svn: 78710
-
Chris Lattner authored
version. This allows TAI implementations to specify the directive to use based on the mode being codegen'd for. The real fix for this is to remove JumpTableDirective, but I don't feel like diving into the jumptable snarl just now. llvm-svn: 78709
-
- Aug 03, 2009
-
-
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
-
- Aug 02, 2009
-
-
Chris Lattner authored
no longer depends on TM! llvm-svn: 77863
-
Chris Lattner authored
llvm-svn: 77827
-
Chris Lattner authored
llvm-svn: 77820
-
- Jul 28, 2009
-
-
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
-
- Jul 27, 2009
-
-
Chris Lattner authored
instead. llvm-svn: 77186
-
Chris Lattner authored
instead and drive things based off of that. llvm-svn: 77184
-
- Jul 26, 2009
-
-
Chris Lattner authored
'unnamed' bss section, but some impls would want a named one. Since they don't have consistent behavior, just make each target do their own thing, instead of doing something "sortof common" then having targets change immutable objects later. llvm-svn: 77165
-
- Jul 24, 2009
-
-
Chris Lattner authored
llvm-svn: 76937
-
Chris Lattner authored
a sad mistake that is regretted. :) llvm-svn: 76935
-
- Jul 23, 2009
-
-
Chris Lattner authored
a better solution for it in the future. llvm-svn: 76818
-
- May 09, 2009
-
-
Duncan Sands authored
will make it more obvious what it represents, and stop it being confused with the StoreSize. llvm-svn: 71349
-