OSDN Git Service

Move and add comments to the top for tailcall-string-rvo.ll
authorTim Shen <timshen91@gmail.com>
Wed, 25 May 2016 17:01:09 +0000 (17:01 +0000)
committerTim Shen <timshen91@gmail.com>
Wed, 25 May 2016 17:01:09 +0000 (17:01 +0000)
Differential Revision: http://reviews.llvm.org/D20311

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@270722 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/PowerPC/tailcall-string-rvo.ll

index b6b5fb9..3f850e6 100644 (file)
@@ -1,5 +1,13 @@
 ; RUN: llc -O2 < %s | FileCheck %s
 
+; The call to function TestBar should be a tail call, when in C++ the string
+; `ret` is RVO returned.
+; string TestFoo() {
+;   string ret = undef;
+;   TestBar(&ret);  // tail call optimized
+;   return ret;
+; }
+
 target triple = "powerpc64le-linux-gnu"
 
 %class.basic_string.11.42.73 = type { %"class.__gnu_cxx::__versa_string.10.41.72" }
@@ -16,11 +24,6 @@ bb:
   ret void
 }
 
-; string TestFoo() {
-;   string ret = undef;
-;   TestBar(&ret);  // tail call optimized
-;   return ret;
-; }
 define void @TestFoo(%class.basic_string.11.42.73* noalias sret %arg) {
 ; CHECK-LABEL: TestFoo:
 ; CHECK: #TC_RETURNd8 TestBar 0