summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC
Commit message (Collapse)AuthorAgeFilesLines
* eliminate a use of strtoul.Chris Lattner2009-09-201-12/+2
| | | | llvm-svn: 82382
* Allow symbols to start from the digit if target requests it. This allows, ↵Anton Korobeynikov2009-09-182-6/+10
| | | | | | | | | e.g. pinning variables to specified absolute address. Make use of this feature for MSP430. This unbreaks PR4776. llvm-svn: 82227
* Big change #1 for personality function references:Chris Lattner2009-09-162-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | Eliminate the PersonalityPrefix/Suffix & NeedsIndirectEncoding fields from MAI: they aren't part of the asm syntax, they are related to the structure of the object file. To replace their functionality, add a new TLOF::getSymbolForDwarfGlobalReference method which asks targets to decide how to reference a global from EH in a pc-relative way. The default implementation just returns the symbol. The default darwin implementation references the symbol through an indirect $non_lazy_ptr stub. The bizarro x86-64 darwin specialization handles the weird "foo@GOTPCREL+4" hack. DwarfException.cpp now uses this to emit the reference to the symbol in the right way, and this also eliminates another horrible hack from DwarfException.cpp: - if (strcmp(MAI->getPersonalitySuffix(), "+4@GOTPCREL")) - O << "-" << MAI->getPCSymbol(); llvm-svn: 81991
* add a helper method for creating MCSymbol and MCSymbolRefExpr atChris Lattner2009-09-161-0/+6
| | | | | | the same time. llvm-svn: 81984
* remove some horrible MAI hooks which fortunately turn out to be always empty.Chris Lattner2009-09-151-4/+0
| | | | llvm-svn: 81946
* Update CMake.Daniel Dunbar2009-09-141-0/+1
| | | | llvm-svn: 81757
* Change MCAsmStreamer to take an MCInstPrinter instead of a Chris Lattner2009-09-141-8/+8
| | | | | | | | | | | full AsmPrinter, and change TargetRegistry to keep track of registered MCInstPrinters. llvm-mc is still linking in the entire target foo to get the code emitter stuff, but this is an important step in the right direction. llvm-svn: 81754
* add a new MCInstPrinter class, move the (trivial) MCDisassmbler ctor inline.Chris Lattner2009-09-142-3/+14
| | | | llvm-svn: 81745
* 'printMCInst' doesn't print newlines after instructions anymore.Chris Lattner2009-09-131-0/+1
| | | | llvm-svn: 81723
* remove MAI::JumpTableSpecialLabelPrefix now that MAI Chris Lattner2009-09-132-7/+0
| | | | | | has real information about linker private linkage. llvm-svn: 81695
* fix MCSymbol printing on darwin to exactly match the mangler (handling of \n ↵Chris Lattner2009-09-131-8/+28
| | | | | | and " in a symbol name). llvm-svn: 81683
* Make the MC symbol printer and llvm::Mangler exactly agree on manglingChris Lattner2009-09-131-20/+50
| | | | | | for systems that don't support quoting (PR4966). llvm-svn: 81682
* eliminate the "MBBLabel" MCOperand type, and just use a MCSymbol forChris Lattner2009-09-121-3/+0
| | | | | | MBB labels like everything else. llvm-svn: 81628
* Update CMake files.Ted Kremenek2009-09-111-0/+1
| | | | llvm-svn: 81577
* canonicalize namespace gymnasticsChris Lattner2009-09-091-2/+3
| | | | llvm-svn: 81402
* Added an abstract superclass, MCDisassembler, forSean Callanan2009-09-091-0/+16
| | | | | | | | | | | | | all disassemblers. Modified the MemoryObject to support 64-bit address spaces, regardless of the LLVM process's address width. Modified the Target class to allow extraction of a MCDisassembler. llvm-svn: 81392
* allow @ in symbol names without quoting the identifier. This Chris Lattner2009-09-091-1/+1
| | | | | | allows things like @PLT without quotes. llvm-svn: 81296
* parenthesize symbol names that start with $, fixing X86/dollar-name.ll withChris Lattner2009-09-081-2/+13
| | | | | | the new asmprinter. llvm-svn: 81269
* Print "X-42" instead of "X+-42".Chris Lattner2009-09-081-1/+11
| | | | llvm-svn: 81203
* make formatting of expressions more closely match the existing asmprinter.Chris Lattner2009-09-081-6/+19
| | | | llvm-svn: 81202
* tidy whitespace.Chris Lattner2009-09-081-7/+4
| | | | llvm-svn: 81201
* fix MCSymbol printing to exactly match the normal mangler rules soChris Lattner2009-09-031-19/+23
| | | | | | we can diff .s files. llvm-svn: 80894
* Thread an MCAsmInfo pointer through the various MC printing APIs, Chris Lattner2009-09-035-29/+38
| | | | | | | and fix a few things using << on MCSymbols to use ->print(). No functionality change other than unbreaking my previous patch. llvm-svn: 80890
* inline insertion operators.Chris Lattner2009-09-031-15/+9
| | | | llvm-svn: 80888
* output alignment value in hex so that we get:Chris Lattner2009-09-031-1/+2
| | | | | | | | | | .align 3, 0x90 instead of, .align 3, 144 suggested by eric. llvm-svn: 80875
* llvm-mc: Store MCSymbolData value as a pointer (to make MSVC happy).Daniel Dunbar2009-09-011-2/+2
| | | | llvm-svn: 80652
* llvm-mc: Pass values to MCStreamer as MCExprs, not MCValues.Daniel Dunbar2009-08-313-34/+37
| | | | llvm-svn: 80578
* llvm-mc: Simplify EmitAssignment ('.set' is identical to '=').Daniel Dunbar2009-08-313-25/+6
| | | | llvm-svn: 80577
* llvm-mc: Switch MCInst to storing an MCExpr* instead of an MCValue.Daniel Dunbar2009-08-313-27/+35
| | | | | | Also, use MCInst::print instead of custom code in MCAsmPrinter. llvm-svn: 80575
* llvm-mc: Make MCSymbolData symbol member const.Daniel Dunbar2009-08-312-6/+6
| | | | llvm-svn: 80573
* llvm-mc: Add MCContext to MCAssembler.Daniel Dunbar2009-08-312-4/+3
| | | | llvm-svn: 80572
* llvm-mc: Add MCExpr::{dump,print}.Daniel Dunbar2009-08-311-0/+67
| | | | llvm-svn: 80570
* llvm-mc: Switch MCExpr construction to using static member functions, and ↵Daniel Dunbar2009-08-311-8/+28
| | | | | | taking the MCContext (which now owns all MCExprs). llvm-svn: 80569
* llvm-mc: Move AsmExpr into MC lib (as MCExpr).Daniel Dunbar2009-08-312-0/+163
| | | | llvm-svn: 80567
* llvm-mc: MCStreamer cleanups. - Remove EmitLocalSymbol, this is unsupported ↵Daniel Dunbar2009-08-303-32/+16
| | | | | | | | for now. - Switch Emit{CommonSymbol,Zerofill} to take alignment in bytes (for consistency). llvm-svn: 80484
* llvm-mc: .lsym is more unsupported than unimplemented, pending a use case ↵Daniel Dunbar2009-08-281-5/+5
| | | | | | | | appearing. Also, all one of the file level flags are implemented. llvm-svn: 80352
* llvm-mc: Support .comm emission.Daniel Dunbar2009-08-282-14/+41
| | | | llvm-svn: 80351
* llvm-mc: Support .zerofill emission.Daniel Dunbar2009-08-282-4/+85
| | | | | | - I'm still trying to figure out the cleanest way to implement this and match the assembler, currently there are some substantial differences. llvm-svn: 80347
* llvm-mc: Tweak section alignment and size computation to match 'as' closer.Daniel Dunbar2009-08-281-20/+42
| | | | llvm-svn: 80345
* llvm-mc: Factor getSectionData out of SwitchSection.Daniel Dunbar2009-08-281-7/+11
| | | | llvm-svn: 80344
* llvm-mc: Emit .lcomm as .zerofill.Daniel Dunbar2009-08-283-10/+6
| | | | llvm-svn: 80343
* llvm-mc: Add const to EmitZeroFill section argument.Daniel Dunbar2009-08-283-5/+5
| | | | llvm-svn: 80341
* llvm-mc: Fix thinko in emitting values.Daniel Dunbar2009-08-281-1/+1
| | | | llvm-svn: 80340
* llvm-mc/Mach-O: Add MCCodeEmitter support, for encoding instructions.Daniel Dunbar2009-08-271-5/+24
| | | | | | - No relocations yet, of course. llvm-svn: 80235
* llvm-mc: Print encodings after the instruction, and only when we have an asmDaniel Dunbar2009-08-271-17/+18
| | | | | | printer. llvm-svn: 80233
* Add {MCInst,MCOperand}::{print,dump}Daniel Dunbar2009-08-272-0/+53
| | | | llvm-svn: 80231
* Update CMakeDaniel Dunbar2009-08-271-0/+1
| | | | llvm-svn: 80195
* llvm-mc: Tweak MCCodeEmitter skeleton.Daniel Dunbar2009-08-271-0/+18
| | | | llvm-svn: 80193
* Sketch TargetRegistry support for MCCodeEmitter abstract interface.Daniel Dunbar2009-08-271-4/+27
| | | | | | - Of course, nothing actually can provide this interface yet. llvm-svn: 80188
* Try to make MSVC just a little happier.Daniel Dunbar2009-08-271-2/+2
| | | | llvm-svn: 80187
OpenPOWER on IntegriCloud