diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2013-04-19 11:43:21 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2013-04-19 11:43:21 +0000 |
commit | e94e4ca5fd94de185a840e9237b3b483f62342a8 (patch) | |
tree | d8db790a2eb2026ae9ccf044a2d6fe88e3d11452 | |
parent | db5f9270207292b62ea847560c5dd4e9873b57f5 (diff) | |
download | external_llvm-e94e4ca5fd94de185a840e9237b3b483f62342a8.zip external_llvm-e94e4ca5fd94de185a840e9237b3b483f62342a8.tar.gz external_llvm-e94e4ca5fd94de185a840e9237b3b483f62342a8.tar.bz2 |
Attributes: Don't print trailing whitespace on the function attribute comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179849 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/IR/Attributes.cpp | 9 | ||||
-rw-r--r-- | test/Other/attribute-comment.ll | 9 |
2 files changed, 13 insertions, 5 deletions
diff --git a/lib/IR/Attributes.cpp b/lib/IR/Attributes.cpp index 98dcecf..44fa78e 100644 --- a/lib/IR/Attributes.cpp +++ b/lib/IR/Attributes.cpp @@ -482,14 +482,13 @@ unsigned AttributeSetNode::getStackAlignment() const { std::string AttributeSetNode::getAsString(bool TargetIndependent, bool InAttrGrp) const { - std::string Str = ""; + std::string Str; for (SmallVectorImpl<Attribute>::const_iterator I = AttrList.begin(), - E = AttrList.end(); I != E; ) { + E = AttrList.end(); I != E; ++I) { if (TargetIndependent || !I->isStringAttribute()) { + if (I != AttrList.begin()) + Str += ' '; Str += I->getAsString(InAttrGrp); - if (++I != E) Str += " "; - } else { - ++I; } } return Str; diff --git a/test/Other/attribute-comment.ll b/test/Other/attribute-comment.ll new file mode 100644 index 0000000..7354e7f --- /dev/null +++ b/test/Other/attribute-comment.ll @@ -0,0 +1,9 @@ +; RUN: opt -S < %s | FileCheck %s -strict-whitespace + +; CHECK: {{^}}; Function Attrs: nounwind readnone ssp uwtable{{$}} +; CHECK-NEXT: define void @test1() #0 +define void @test1() #0 { + ret void +} + +attributes #0 = { nounwind ssp "less-precise-fpmad"="false" uwtable "no-frame-pointer-elim"="true" readnone "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" } |