mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-11-03 14:21:30 +00:00 
			
		
		
		
	distinguish between objects and register names, now we can have stuff
with names like "f84", "in6" etc etc. this should fix one or two tests git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26232 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
		@@ -235,10 +235,16 @@ void IA64AsmPrinter::printOp(const MachineOperand &MO,
 | 
			
		||||
    if (Needfptr)
 | 
			
		||||
      O << "@fptr(";
 | 
			
		||||
    O << Mang->getValueName(MO.getGlobal());
 | 
			
		||||
    if (Needfptr)
 | 
			
		||||
      O << ")"; // close fptr(
 | 
			
		||||
    if (!isBRCALLinsn)
 | 
			
		||||
      O << ")"; // close ltoff(
 | 
			
		||||
    
 | 
			
		||||
    if (Needfptr && !isBRCALLinsn)
 | 
			
		||||
      O << "#))"; // close both fptr( and ltoff(
 | 
			
		||||
    else {
 | 
			
		||||
      if (Needfptr)
 | 
			
		||||
        O << "#)"; // close only fptr(
 | 
			
		||||
      if (!isBRCALLinsn)
 | 
			
		||||
        O << "#)"; // close only ltoff(
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    int Offset = MO.getOffset();
 | 
			
		||||
    if (Offset > 0)
 | 
			
		||||
      O << " + " << Offset;
 | 
			
		||||
@@ -293,11 +299,11 @@ bool IA64AsmPrinter::doFinalization(Module &M) {
 | 
			
		||||
           I->hasWeakLinkage() /* FIXME: Verify correct */)) {
 | 
			
		||||
        SwitchSection(".data", I);
 | 
			
		||||
        if (I->hasInternalLinkage()) {
 | 
			
		||||
          O << "\t.lcomm " << name << "," << TD.getTypeSize(C->getType())
 | 
			
		||||
          O << "\t.lcomm " << name << "#," << TD.getTypeSize(C->getType())
 | 
			
		||||
          << "," << (1 << Align);
 | 
			
		||||
          O << "\t\t// ";
 | 
			
		||||
        } else {
 | 
			
		||||
          O << "\t.common " << name << "," << TD.getTypeSize(C->getType())
 | 
			
		||||
          O << "\t.common " << name << "#," << TD.getTypeSize(C->getType())
 | 
			
		||||
          << "," << (1 << Align);
 | 
			
		||||
          O << "\t\t// ";
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user