summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2008-09-03 22:10:21 +0000
committerDevang Patel <dpatel@apple.com>2008-09-03 22:10:21 +0000
commit52e89dd4e2c0e32877eb9157b3cd0d402a2b6194 (patch)
tree14eb87eb94d012bfb5647c1312add4e1e360d7f8 /lib
parentcf996d4b5613616f9de3a816751e2a128dac7d8a (diff)
downloadllvm-52e89dd4e2c0e32877eb9157b3cd0d402a2b6194.tar.gz
llvm-52e89dd4e2c0e32877eb9157b3cd0d402a2b6194.tar.bz2
llvm-52e89dd4e2c0e32877eb9157b3cd0d402a2b6194.tar.xz
Parse and print opt_size note.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55740 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/AsmParser/LLLexer.cpp2
-rw-r--r--lib/VMCore/AsmWriter.cpp13
2 files changed, 12 insertions, 3 deletions
diff --git a/lib/AsmParser/LLLexer.cpp b/lib/AsmParser/LLLexer.cpp
index 6af0ab4c84..51e63a8971 100644
--- a/lib/AsmParser/LLLexer.cpp
+++ b/lib/AsmParser/LLLexer.cpp
@@ -501,7 +501,7 @@ int LLLexer::LexIdentifier() {
KEYWORD("inline", INLINE);
KEYWORD("always", ALWAYS);
KEYWORD("never", NEVER);
- KEYWORD("optimizeforsize", OPTIMIZEFORSIZE);
+ KEYWORD("opt_size", OPTIMIZEFORSIZE);
KEYWORD("type", TYPE);
KEYWORD("opaque", OPAQUE);
diff --git a/lib/VMCore/AsmWriter.cpp b/lib/VMCore/AsmWriter.cpp
index b518b2c177..0c5a9fc1d3 100644
--- a/lib/VMCore/AsmWriter.cpp
+++ b/lib/VMCore/AsmWriter.cpp
@@ -1398,10 +1398,19 @@ void AssemblyWriter::printFunction(const Function *F) {
FunctionNotes FNotes = F->getNotes();
if (FNotes != FN_NOTE_None) {
Out << " notes(";
- if (FNotes & FN_NOTE_AlwaysInline)
+ bool NeedComma = false;
+ if (FNotes & FN_NOTE_AlwaysInline) {
+ NeedComma = true;
Out << "inline=always";
- else if (FNotes & FN_NOTE_NoInline)
+ }
+ else if (FNotes & FN_NOTE_NoInline) {
+ NeedComma = true;
Out << "inline=never";
+ }
+ if (NeedComma)
+ Out << ",";
+ if (FNotes & FN_NOTE_OptimizeForSize)
+ Out << "opt_size";
Out << ")";
}
if (F->isDeclaration()) {