mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-23 02:29:18 +00:00
We do not need to create a label for external defs and decls,
just emit a comment for readability. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71544 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
050e25813c
commit
429185787a
@ -234,20 +234,6 @@ namespace PIC16CC {
|
|||||||
return o.str();
|
return o.str();
|
||||||
}
|
}
|
||||||
|
|
||||||
static std::string getDeclSectionName(void) {
|
|
||||||
std::string dsname = "section.0";
|
|
||||||
dsname = addPrefix(dsname);
|
|
||||||
return dsname;
|
|
||||||
}
|
|
||||||
|
|
||||||
// FIXME: currently decls for libcalls are into a separate section.
|
|
||||||
// merge the rest of decls to one.
|
|
||||||
static std::string getLibDeclSectionName(void) {
|
|
||||||
std::string dsname = "lib_decls.0";
|
|
||||||
dsname = addPrefix(dsname);
|
|
||||||
return dsname;
|
|
||||||
}
|
|
||||||
|
|
||||||
inline static bool isLocalName (const std::string &Name) {
|
inline static bool isLocalName (const std::string &Name) {
|
||||||
if (getSymbolTag(Name) == AUTOS_LABEL)
|
if (getSymbolTag(Name) == AUTOS_LABEL)
|
||||||
return true;
|
return true;
|
||||||
|
@ -157,8 +157,7 @@ void PIC16AsmPrinter::printDecls(void) {
|
|||||||
// If no libcalls used, return.
|
// If no libcalls used, return.
|
||||||
if (Decls.empty()) return;
|
if (Decls.empty()) return;
|
||||||
|
|
||||||
const Section *S = TAI->getNamedSection(PAN::getLibDeclSectionName().c_str());
|
O << TAI->getCommentString() << "External decls for libcalls - BEGIN." <<"\n";
|
||||||
SwitchToSection(S);
|
|
||||||
// Remove duplicate entries.
|
// Remove duplicate entries.
|
||||||
Decls.sort();
|
Decls.sort();
|
||||||
Decls.unique();
|
Decls.unique();
|
||||||
@ -169,6 +168,7 @@ void PIC16AsmPrinter::printDecls(void) {
|
|||||||
O << TAI->getExternDirective() << PAN::getArgsLabel(*I) << "\n";
|
O << TAI->getExternDirective() << PAN::getArgsLabel(*I) << "\n";
|
||||||
O << TAI->getExternDirective() << PAN::getRetvalLabel(*I) << "\n";
|
O << TAI->getExternDirective() << PAN::getRetvalLabel(*I) << "\n";
|
||||||
}
|
}
|
||||||
|
O << TAI->getCommentString() << "External decls for libcalls - END." <<"\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
bool PIC16AsmPrinter::doInitialization (Module &M) {
|
bool PIC16AsmPrinter::doInitialization (Module &M) {
|
||||||
@ -191,7 +191,7 @@ bool PIC16AsmPrinter::doInitialization (Module &M) {
|
|||||||
|
|
||||||
void PIC16AsmPrinter::EmitExternsAndGlobals (Module &M) {
|
void PIC16AsmPrinter::EmitExternsAndGlobals (Module &M) {
|
||||||
// Emit declarations for external functions.
|
// Emit declarations for external functions.
|
||||||
O << PAN::getDeclSectionName() <<"\n";
|
O << TAI->getCommentString() << "External defs and decls - BEGIN." <<"\n";
|
||||||
for (Module::iterator I = M.begin(), E = M.end(); I != E; I++) {
|
for (Module::iterator I = M.begin(), E = M.end(); I != E; I++) {
|
||||||
std::string Name = Mang->getValueName(I);
|
std::string Name = Mang->getValueName(I);
|
||||||
if (Name.compare("@abort") == 0)
|
if (Name.compare("@abort") == 0)
|
||||||
@ -233,6 +233,7 @@ void PIC16AsmPrinter::EmitExternsAndGlobals (Module &M) {
|
|||||||
TAI->getGlobalDirective();
|
TAI->getGlobalDirective();
|
||||||
O << directive << Name << "\n";
|
O << directive << Name << "\n";
|
||||||
}
|
}
|
||||||
|
O << TAI->getCommentString() << "External defs and decls - END." <<"\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
void PIC16AsmPrinter::EmitRomData (Module &M)
|
void PIC16AsmPrinter::EmitRomData (Module &M)
|
||||||
|
Loading…
Reference in New Issue
Block a user