; RUN: opt < %s -scalar-evolution -analyze \
-; RUN: | grep " --> (sext i. {.*,+,.*}<%bb1> to i64)" | count 5
+; RUN: | FileCheck %s
+
+; CHECK: --> (sext i{{.}} {{{.*}},+,{{.*}}}<%bb1> to i64)
+; CHECK: --> (sext i{{.}} {{{.*}},+,{{.*}}}<%bb1> to i64)
+; CHECK: --> (sext i{{.}} {{{.*}},+,{{.*}}}<%bb1> to i64)
+; CHECK: --> (sext i{{.}} {{{.*}},+,{{.*}}}<%bb1> to i64)
+; CHECK: --> (sext i{{.}} {{{.*}},+,{{.*}}}<%bb1> to i64)
+; CHECK-NOT: --> (sext
; Don't convert (sext {...,+,...}) to {sext(...),+,sext(...)} in cases
; where the trip count is not within range.
-; RUN: llvm-as < %s | llvm-dis | grep -- -0.0
+; RUN: llvm-as < %s | llvm-dis | FileCheck %s
; RUN: verify-uselistorder %s
+; CHECK: global double -0.000000e+00
global double 0x8000000000000000
+
+; CHECK: global float -0.000000e+00
global float -0.0
; Test for PR463. This program is erroneous, but should not crash llvm-as.
-; RUN: not llvm-as %s -o /dev/null 2>&1 | grep "use of undefined type named 'struct.none'"
+; RUN: not llvm-as %s -o /dev/null 2>&1 | FileCheck %s
+; CHECK: use of undefined type named 'struct.none'
@.FOO = internal global %struct.none zeroinitializer
-; RUN: llvm-as < %s | llvm-dis | grep 1.0
+; RUN: llvm-as < %s | llvm-dis | FileCheck %s
; RUN: verify-uselistorder %s
define double @test() {
+; CHECK: ret double 1.0
ret double 1.0 ;; This should not require hex notation
}
; The assembler should catch an undefined argument type .
-; RUN: not llvm-as %s -o /dev/null 2>&1 | grep "use of undefined type named 'typedef.bc_struct'"
+; RUN: not llvm-as %s -o /dev/null 2>&1 | FileCheck %s
+
+; CHECK: use of undefined type named 'typedef.bc_struct'
; %typedef.bc_struct = type opaque
; Test whether negative values > 64 bits retain their negativeness.
-; RUN: llvm-as < %s | llvm-dis | grep "add i65.*, -1"
+; RUN: llvm-as < %s | llvm-dis | FileCheck %s
; RUN: verify-uselistorder %s
define i65 @testConsts(i65 %N) {
+; CHECK: add i65 %N, -1
%a = add i65 %N, -1
ret i65 %a
}
-; RUN: llvm-as < %s | llvm-dis | grep "icmp.*test_weak.*null"
+; RUN: llvm-as < %s | llvm-dis | FileCheck %s
; RUN: verify-uselistorder %s
; PR1358
+
+; CHECK: icmp ne (i32 (...)* @test_weak, i32 (...)* null)
@G = global i1 icmp ne (i32 (...)* @test_weak, i32 (...)* null)
declare extern_weak i32 @test_weak(...)
-; RUN: llvm-as < %s | llvm-dis | grep "@f.*gc.*shadowstack"
-; RUN: llvm-as < %s | llvm-dis | grep "@g.*gc.*java"
+; RUN: llvm-as < %s | llvm-dis | FileCheck %s
; RUN: verify-uselistorder %s
+
+; CHECK: define void @f() gc "shadowstack"
+; CHECK: define void @g() gc "java"
+
define void @f() gc "shadowstack" {
entry:
ret void
-; RUN: llc < %s -march=arm -enable-tail-merge | grep bl.*baz | count 1
-; RUN: llc < %s -march=arm -enable-tail-merge | grep bl.*quux | count 1
+; RUN: llc < %s -enable-tail-merge | FileCheck %s
; Check that calls to baz and quux are tail-merged.
; PR1628
+; CHECK: bl _baz
+; CHECK-NOT: bl _baz
+; CHECK: bl _quux
+; CHECK-NOT: bl _quux
+
; ModuleID = 'tail.c'
-target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64"
-target triple = "i686-apple-darwin8"
+target triple = "arm-apple-darwin8"
define i32 @f(i32 %i, i32 %q) {
entry: