blob: e0ef4138af74381fadc793df865afd16a54cd98e [file] [log] [blame]
Wesley Pecka70f28c2010-02-23 19:15:24 +00001; Ensure that multiplication is lowered to function calls when the 64-bit
2; multiplier unit is not available in the hardware and that function calls
3; are not used when the 64-bit multiplier unit is available in the hardware.
4;
5; RUN: llc < %s -march=mblaze | FileCheck -check-prefix=FUN %s
6; RUN: llc < %s -march=mblaze -mattr=+mul,+mul64 | \
7; RUN: FileCheck -check-prefix=MUL %s
8
9define i64 @test_i64(i64 %a, i64 %b) {
10 ; FUN: test_i64:
11 ; MUL: test_i64:
12
13 %tmp.1 = mul i64 %a, %b
14 ; FUN-NOT: mul
15 ; FUN: brlid
16 ; MUL-NOT: brlid
17 ; MUL: mulh
18 ; MUL: mul
19
20 ret i64 %tmp.1
21 ; FUN: rtsd
22 ; MUL: rtsd
23}