diff options
author | Lauro Ramos Venancio <lauro.venancio@gmail.com> | 2008-02-28 20:26:04 +0000 |
---|---|---|
committer | Lauro Ramos Venancio <lauro.venancio@gmail.com> | 2008-02-28 20:26:04 +0000 |
commit | 9781aee03c78a4f260bb9fa8a227eab601efcf60 (patch) | |
tree | 8de8f12212cc6a8e37d5054cb0cc714fb8b42fbd /llvm/lib/Target/CBackend/CBackend.cpp | |
parent | 0c2f26dd172958198e2778f89cd246794dc01ab9 (diff) | |
download | bcm5719-llvm-9781aee03c78a4f260bb9fa8a227eab601efcf60.tar.gz bcm5719-llvm-9781aee03c78a4f260bb9fa8a227eab601efcf60.zip |
Avoid collisions in value names.
llvm-svn: 47725
Diffstat (limited to 'llvm/lib/Target/CBackend/CBackend.cpp')
-rw-r--r-- | llvm/lib/Target/CBackend/CBackend.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Target/CBackend/CBackend.cpp b/llvm/lib/Target/CBackend/CBackend.cpp index 5b1391bc0ba..4816ba2682f 100644 --- a/llvm/lib/Target/CBackend/CBackend.cpp +++ b/llvm/lib/Target/CBackend/CBackend.cpp @@ -1156,9 +1156,11 @@ std::string CWriter::GetValueName(const Value *Operand) { char ch = *I; if (!((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z') || - (ch >= '0' && ch <= '9') || ch == '_')) - VarName += '_'; - else + (ch >= '0' && ch <= '9') || ch == '_')) { + char buffer[5]; + sprintf(buffer, "_%x_", ch); + VarName += buffer; + } else VarName += ch; } |