llvm/lib/MC
Hans Wennborg 22f9dd4591 MC asm parser: allow ?'s in symbol names, and handle @'s in names in MS asm
This is another (final?) stab at making us able to parse our own asm output
on Windows.

Symbols on Windows often contain @'s and ?'s in their names. Our asm parser
didn't like this. ?'s were not allowed, and @'s were intepreted as trying to
reference PLT/GOT/etc.

We can't just add quotes around the bad names, since e.g. for MinGW, we use gas
to assemble, and it doesn't like quotes in some places (notably in .def
directives).

This commit makes us allow ?'s in symbol names, and @'s in symbol names for MS
assembly.

Differential Revision: http://llvm-reviews.chandlerc.com/D1978

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193000 91177308-0d34-0410-b5e6-96231b3b80d8
2013-10-18 20:46:28 +00:00
..
MCDisassembler [llvm-c][Disassembler] When printing latency information, fall back to the 2013-10-03 17:51:49 +00:00
MCParser MC asm parser: allow ?'s in symbol names, and handle @'s in names in MS asm 2013-10-18 20:46:28 +00:00
CMakeLists.txt Add a MCAsmInfoELF class and factor some code into it. 2013-10-16 01:34:32 +00:00
ELFObjectWriter.cpp Provide basic type safety for array_pod_sort comparators. 2013-09-22 14:09:50 +00:00
LLVMBuild.txt
MachObjectWriter.cpp MachO: Improve backend diagnostic for overalignment. 2013-09-24 23:56:31 +00:00
Makefile
MCAsmBackend.cpp Use llvm::array_lengthof to replace sizeof(array)/sizeof(array[0]). 2013-07-15 04:27:47 +00:00
MCAsmInfo.cpp MC asm parser: allow ?'s in symbol names, and handle @'s in names in MS asm 2013-10-18 20:46:28 +00:00
MCAsmInfoCOFF.cpp
MCAsmInfoDarwin.cpp
MCAsmInfoELF.cpp Add a MCAsmInfoELF class and factor some code into it. 2013-10-16 01:34:32 +00:00
MCAsmStreamer.cpp Move .ident handling to MCStreamer. 2013-10-16 01:05:45 +00:00
MCAssembler.cpp Move assert above first use of variable that we'd be asserting on. 2013-08-07 18:51:09 +00:00
MCAtom.cpp Fix MCDataAtom never calling remap when adding data. 2013-10-16 18:26:16 +00:00
MCCodeEmitter.cpp
MCCodeGenInfo.cpp
MCContext.cpp MC: Implement COFF .linkonce directive 2013-07-06 12:13:10 +00:00
MCDisassembler.cpp Follow up of the introduction of MCSymbolizer. 2013-05-24 22:51:52 +00:00
MCDwarf.cpp Implements parsing and emitting of .cfi_window_save in MC. 2013-09-26 14:49:40 +00:00
MCELF.cpp
MCELFObjectTargetWriter.cpp Provide basic type safety for array_pod_sort comparators. 2013-09-22 14:09:50 +00:00
MCELFStreamer.cpp Move .ident handling to MCStreamer. 2013-10-16 01:05:45 +00:00
MCExpr.cpp [PowerPC] Revert r185476 and fix up TLS variant kinds 2013-07-09 16:41:09 +00:00
MCExternalSymbolizer.cpp Follow up of the introduction of MCSymbolizer. 2013-05-24 22:51:52 +00:00
MCFunction.cpp Style cleanup following David's review for r188876. 2013-08-21 19:40:25 +00:00
MCInst.cpp
MCInstPrinter.cpp [MC] When MCInstPrint::printAnnotation uses a comment stream, it has to ensure 2013-10-01 19:21:24 +00:00
MCInstrAnalysis.cpp MC: Disassembled CFG reconstruction. 2013-05-24 01:07:04 +00:00
MCLabel.cpp
MCMachObjectTargetWriter.cpp
MCMachOStreamer.cpp Move .ident handling to MCStreamer. 2013-10-16 01:05:45 +00:00
MCModule.cpp MC CFG: Split MCBasicBlocks to mirror atom splitting. 2013-08-21 07:28:24 +00:00
MCModuleYAML.cpp MC CFG: Add YAML MCModule representation to enable MC CFG testing. 2013-08-21 07:29:02 +00:00
MCNullStreamer.cpp Add a MCTargetStreamer interface. 2013-10-08 13:08:17 +00:00
MCObjectDisassembler.cpp Create an atom with just the data that failed to disassemble. 2013-10-16 19:03:14 +00:00
MCObjectFileInfo.cpp Initialize BSSSection explicitly in InitMachOMCObjectFileInfo() to appease msvc. 2013-09-21 02:34:45 +00:00
MCObjectStreamer.cpp Add a MCTargetStreamer interface. 2013-10-08 13:08:17 +00:00
MCObjectSymbolizer.cpp Move everything depending on Object/MachOFormat.h over to Support/MachO.h. 2013-09-01 04:28:48 +00:00
MCObjectWriter.cpp
MCPureStreamer.cpp Move .ident handling to MCStreamer. 2013-10-16 01:05:45 +00:00
MCRegisterInfo.cpp Make SubRegIndex size mandatory, following r183020. 2013-05-31 23:45:26 +00:00
MCRelocationInfo.cpp Follow up of the introduction of MCSymbolizer. 2013-05-24 22:51:52 +00:00
MCSection.cpp
MCSectionCOFF.cpp Revert "Re-commit r192758 - MC: quote tricky symbol names in asm output" 2013-10-18 02:14:40 +00:00
MCSectionELF.cpp ELF: Add support for the exclude section bit for gas compat. 2013-09-15 19:53:20 +00:00
MCSectionMachO.cpp
MCStreamer.cpp Add a MCTargetStreamer interface. 2013-10-08 13:08:17 +00:00
MCSubtargetInfo.cpp MC: Don't assume incoming StringRef's are null terminated. 2013-10-13 22:09:26 +00:00
MCSymbol.cpp Revert "Re-commit r192758 - MC: quote tricky symbol names in asm output" 2013-10-18 02:14:40 +00:00
MCSymbolizer.cpp Add MCSymbolizer for symbolic/annotated disassembly. 2013-05-24 00:39:57 +00:00
MCValue.cpp
MCWin64EH.cpp Fix alignment of unwind data. 2013-09-15 18:01:09 +00:00
SubtargetFeature.cpp MC: Don't assume incoming StringRef's are null terminated. 2013-10-13 22:09:26 +00:00
WinCOFFObjectWriter.cpp COFF: Ensure that objects produced by LLVM link with /safeseh 2013-09-17 23:18:05 +00:00
WinCOFFStreamer.cpp Move .ident handling to MCStreamer. 2013-10-16 01:05:45 +00:00