Add a note
authorChris Lattner <sabre@nondot.org>
Fri, 19 May 2006 21:01:38 +0000 (21:01 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 19 May 2006 21:01:38 +0000 (21:01 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28402 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/README.txt

index 92fc8d036dd297242ca33bbcc5c7ef51228f68c4..24fb24d3867bbef8334052d83be17976e08aae23 100644 (file)
@@ -220,3 +220,22 @@ Doing so could allow SROA of the destination pointers.  See also:
 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17687
 
 //===---------------------------------------------------------------------===//
+
+Scalar Repl cannot currently promote this testcase to 'ret long cst':
+
+        %struct.X = type { int, int }
+        %struct.Y = type { %struct.X }
+ulong %bar() {
+        %retval = alloca %struct.Y, align 8             ; <%struct.Y*> [#uses=3]
+        %tmp12 = getelementptr %struct.Y* %retval, int 0, uint 0, uint 0                ; <int*> [#uses=1]
+        store int 0, int* %tmp12
+        %tmp15 = getelementptr %struct.Y* %retval, int 0, uint 0, uint 1                ; <int*> [#uses=1]
+        store int 1, int* %tmp15
+        %retval = cast %struct.Y* %retval to ulong*             ; <ulong*> [#uses=1]
+        %retval = load ulong* %retval           ; <ulong> [#uses=1]
+        ret ulong %retval
+}
+
+it should be extended to do so.
+
+//===---------------------------------------------------------------------===//