diff --git a/test/CodeGen/X86/twoaddr-coalesce-3.ll b/test/CodeGen/X86/twoaddr-coalesce-3.ll index 69f7541784a..1a104e58dbd 100644 --- a/test/CodeGen/X86/twoaddr-coalesce-3.ll +++ b/test/CodeGen/X86/twoaddr-coalesce-3.ll @@ -1,4 +1,4 @@ -; RUN: llc < %s -march=x86-64 | FileCheck %s +; RUN: llc < %s -march=x86-64 -relocation-model=pic | FileCheck %s ; This test is to ensure the TwoAddrInstruction pass chooses the proper operands to ; merge and generates fewer mov insns. @@ -19,7 +19,7 @@ for.body.lr.ph: ; preds = %entry ; Check that only one mov will be generated in the kernel loop. ; CHECK-LABEL: foo: -; CHECK: [[LOOP1:^[a-zA-Z0-9_.]+]]: # %for.body +; CHECK: [[LOOP1:^[a-zA-Z0-9_.]+]]: {{#.*}} %for.body ; CHECK-NOT: mov ; CHECK: movl {{.*}}, [[REG1:%[a-z0-9]+]] ; CHECK-NOT: mov @@ -56,13 +56,14 @@ for.body.lr.ph: ; preds = %entry ; Check that only two mov will be generated in the kernel loop. ; CHECK-LABEL: goo: -; CHECK: [[LOOP2:^[a-zA-Z0-9_.]+]]: # %for.body +; CHECK: g@GOTPCREL(%rip), [[REG3:%[a-z0-0]+]] +; CHECK: [[LOOP2:^[a-zA-Z0-9_.]+]]: {{#.*}} %for.body ; CHECK-NOT: mov ; CHECK: movl {{.*}}, [[REG2:%[a-z0-9]+]] ; CHECK-NOT: mov ; CHECK: shrl $31, [[REG2]] ; CHECK-NOT: mov -; CHECK: movl {{.*}}, g(%rip) +; CHECK: movl {{.*}}, ([[REG3]]) ; CHECK: jl [[LOOP2]] for.body: ; preds = %for.body.lr.ph, %for.body %add5 = phi i32 [ %total.promoted, %for.body.lr.ph ], [ %add, %for.body ]