1 ; RUN: llc <%s -O2 -mcpu=atom -mtriple=i686-- -relocation-model=static | FileCheck -check-prefix=atom %s 2 ; RUN: llc <%s -O2 -mcpu=slm -mtriple=i686-- -relocation-model=static | FileCheck -check-prefix=slm %s 3 ; RUN: llc <%s -O2 -mcpu=goldmont -mtriple=i686-- -relocation-model=static | FileCheck -check-prefix=slm %s 4 ; RUN: llc <%s -O2 -mcpu=core2 -mtriple=i686-- -relocation-model=static | FileCheck %s 5 ; 6 7 @a = common global i32 0, align 4 8 @b = common global i32 0, align 4 9 @c = common global i32 0, align 4 10 @d = common global i32 0, align 4 11 @e = common global i32 0, align 4 12 @f = common global i32 0, align 4 13 14 define void @func() nounwind uwtable { 15 ; atom: imull 16 ; atom-NOT: movl 17 ; atom: imull 18 ; slm: imull 19 ; slm-NOT: movl 20 ; slm: imull 21 ; CHECK: imull 22 ; CHECK: movl 23 ; CHECK: imull 24 entry: 25 %0 = load i32, i32* @b, align 4 26 %1 = load i32, i32* @c, align 4 27 %mul = mul nsw i32 %0, %1 28 store i32 %mul, i32* @a, align 4 29 %2 = load i32, i32* @e, align 4 30 %3 = load i32, i32* @f, align 4 31 %mul1 = mul nsw i32 %2, %3 32 store i32 %mul1, i32* @d, align 4 33 ret void 34 } 35