While this test is testing a problem in the generic part of codegen,
authorDuncan Sands <baldrick@free.fr>
Fri, 27 Nov 2009 16:04:14 +0000 (16:04 +0000)
committerDuncan Sands <baldrick@free.fr>
Fri, 27 Nov 2009 16:04:14 +0000 (16:04 +0000)
the problem only shows for msp430 and pic16 which is why it specifies
them using -march.  But it is wrong to put such tests in CodeGen/Generic,
since not everyone builds these targets.  Put a copy of the test in each
of the target test directories.

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

test/CodeGen/Generic/2009-11-20-NewNode.ll [deleted file]
test/CodeGen/MSP430/2009-11-20-NewNode.ll [new file with mode: 0644]
test/CodeGen/PIC16/2009-11-20-NewNode.ll [new file with mode: 0644]

diff --git a/test/CodeGen/Generic/2009-11-20-NewNode.ll b/test/CodeGen/Generic/2009-11-20-NewNode.ll
deleted file mode 100644 (file)
index 92d7628..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-; RUN: llc -march=msp430 < %s
-; RUN: llc -march=pic16 < %s
-; PR5558
-
-define i64 @_strtoll_r(i16 %base) nounwind {
-entry:
-  br i1 undef, label %if.then, label %if.end27
-
-if.then:                                          ; preds = %do.end
-  br label %if.end27
-
-if.end27:                                         ; preds = %if.then, %do.end
-  %cond66 = select i1 undef, i64 -9223372036854775808, i64 9223372036854775807 ; <i64> [#uses=3]
-  %conv69 = sext i16 %base to i64                 ; <i64> [#uses=1]
-  %div = udiv i64 %cond66, %conv69                ; <i64> [#uses=1]
-  br label %for.cond
-
-for.cond:                                         ; preds = %if.end116, %if.end27
-  br i1 undef, label %if.then152, label %if.then93
-
-if.then93:                                        ; preds = %for.cond
-  br i1 undef, label %if.end116, label %if.then152
-
-if.end116:                                        ; preds = %if.then93
-  %cmp123 = icmp ugt i64 undef, %div              ; <i1> [#uses=1]
-  %or.cond = or i1 undef, %cmp123                 ; <i1> [#uses=0]
-  br label %for.cond
-
-if.then152:                                       ; preds = %if.then93, %for.cond
-  br i1 undef, label %if.end182, label %if.then172
-
-if.then172:                                       ; preds = %if.then152
-  ret i64 %cond66
-
-if.end182:                                        ; preds = %if.then152
-  ret i64 %cond66
-}
diff --git a/test/CodeGen/MSP430/2009-11-20-NewNode.ll b/test/CodeGen/MSP430/2009-11-20-NewNode.ll
new file mode 100644 (file)
index 0000000..887c7d6
--- /dev/null
@@ -0,0 +1,36 @@
+; RUN: llc -march=msp430 < %s
+; PR5558
+
+define i64 @_strtoll_r(i16 %base) nounwind {
+entry:
+  br i1 undef, label %if.then, label %if.end27
+
+if.then:                                          ; preds = %do.end
+  br label %if.end27
+
+if.end27:                                         ; preds = %if.then, %do.end
+  %cond66 = select i1 undef, i64 -9223372036854775808, i64 9223372036854775807 ; <i64> [#uses=3]
+  %conv69 = sext i16 %base to i64                 ; <i64> [#uses=1]
+  %div = udiv i64 %cond66, %conv69                ; <i64> [#uses=1]
+  br label %for.cond
+
+for.cond:                                         ; preds = %if.end116, %if.end27
+  br i1 undef, label %if.then152, label %if.then93
+
+if.then93:                                        ; preds = %for.cond
+  br i1 undef, label %if.end116, label %if.then152
+
+if.end116:                                        ; preds = %if.then93
+  %cmp123 = icmp ugt i64 undef, %div              ; <i1> [#uses=1]
+  %or.cond = or i1 undef, %cmp123                 ; <i1> [#uses=0]
+  br label %for.cond
+
+if.then152:                                       ; preds = %if.then93, %for.cond
+  br i1 undef, label %if.end182, label %if.then172
+
+if.then172:                                       ; preds = %if.then152
+  ret i64 %cond66
+
+if.end182:                                        ; preds = %if.then152
+  ret i64 %cond66
+}
diff --git a/test/CodeGen/PIC16/2009-11-20-NewNode.ll b/test/CodeGen/PIC16/2009-11-20-NewNode.ll
new file mode 100644 (file)
index 0000000..d68f0f4
--- /dev/null
@@ -0,0 +1,36 @@
+; RUN: llc -march=pic16 < %s
+; PR5558
+
+define i64 @_strtoll_r(i16 %base) nounwind {
+entry:
+  br i1 undef, label %if.then, label %if.end27
+
+if.then:                                          ; preds = %do.end
+  br label %if.end27
+
+if.end27:                                         ; preds = %if.then, %do.end
+  %cond66 = select i1 undef, i64 -9223372036854775808, i64 9223372036854775807 ; <i64> [#uses=3]
+  %conv69 = sext i16 %base to i64                 ; <i64> [#uses=1]
+  %div = udiv i64 %cond66, %conv69                ; <i64> [#uses=1]
+  br label %for.cond
+
+for.cond:                                         ; preds = %if.end116, %if.end27
+  br i1 undef, label %if.then152, label %if.then93
+
+if.then93:                                        ; preds = %for.cond
+  br i1 undef, label %if.end116, label %if.then152
+
+if.end116:                                        ; preds = %if.then93
+  %cmp123 = icmp ugt i64 undef, %div              ; <i1> [#uses=1]
+  %or.cond = or i1 undef, %cmp123                 ; <i1> [#uses=0]
+  br label %for.cond
+
+if.then152:                                       ; preds = %if.then93, %for.cond
+  br i1 undef, label %if.end182, label %if.then172
+
+if.then172:                                       ; preds = %if.then152
+  ret i64 %cond66
+
+if.end182:                                        ; preds = %if.then152
+  ret i64 %cond66
+}