mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-05 13:26:55 +00:00
Eliminate asm parser's dependency on TargetMachine:
- Each target asm parser now creates its own MCSubtatgetInfo (if needed). - Changed AssemblerPredicate to take subtarget features which tablegen uses to generate asm matcher subtarget feature queries. e.g. "ModeThumb,FeatureThumb2" is translated to "(Bits & ModeThumb) != 0 && (Bits & FeatureThumb2) != 0". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134678 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -371,7 +371,8 @@ static int AssembleInput(const char *ProgName) {
|
||||
|
||||
OwningPtr<MCAsmParser> Parser(createMCAsmParser(*TheTarget, SrcMgr, Ctx,
|
||||
*Str.get(), *MAI));
|
||||
OwningPtr<TargetAsmParser> TAP(TheTarget->createAsmParser(*Parser, *TM));
|
||||
OwningPtr<TargetAsmParser>
|
||||
TAP(TheTarget->createAsmParser(TripleName, MCPU, FeaturesStr, *Parser));
|
||||
if (!TAP) {
|
||||
errs() << ProgName
|
||||
<< ": error: this target does not support assembly parsing.\n";
|
||||
|
@@ -619,7 +619,10 @@ bool LTOModule::addAsmGlobalSymbols(MCContext &Context) {
|
||||
Context, *Streamer,
|
||||
*_target->getMCAsmInfo()));
|
||||
OwningPtr<TargetAsmParser>
|
||||
TAP(_target->getTarget().createAsmParser(*Parser.get(), *_target.get()));
|
||||
TAP(_target->getTarget().createAsmParser(_target->getTargetTriple(),
|
||||
_target->getTargetCPU(),
|
||||
_target->getTargetFeatureString(),
|
||||
*Parser.get()));
|
||||
Parser->setTargetParser(*TAP);
|
||||
int Res = Parser->Run(false);
|
||||
if (Res)
|
||||
|
Reference in New Issue
Block a user