blob: d5ff9bdf36087c128c00e2224f1bb35da099eb84 [file] [log] [blame]
Kai Nacke93fe5e82014-03-20 11:51:58 +00001; RUN: llc -O1 < %s -march=mips64 -mcpu=octeon | FileCheck %s -check-prefix=OCTEON
2; RUN: llc -O1 < %s -march=mips64 -mcpu=mips64 | FileCheck %s -check-prefix=MIPS64
3
Kai Nacke13673ac2014-04-02 18:40:43 +00004define i64 @addi64(i64 %a, i64 %b) nounwind {
5entry:
6; OCTEON-LABEL: addi64:
7; OCTEON: jr $ra
8; OCTEON: baddu $2, $4, $5
9; MIPS64-LABEL: addi64:
10; MIPS64: daddu
11; MIPS64: jr
12; MIPS64: andi
13 %add = add i64 %a, %b
14 %and = and i64 %add, 255
15 ret i64 %and
16}
17
Kai Nacke93fe5e82014-03-20 11:51:58 +000018define i64 @mul(i64 %a, i64 %b) nounwind {
19entry:
20; OCTEON-LABEL: mul:
21; OCTEON: jr $ra
22; OCTEON: dmul $2, $4, $5
23; MIPS64-LABEL: mul:
24; MIPS64: dmult
25; MIPS64: jr
26; MIPS64: mflo
27 %res = mul i64 %a, %b
28 ret i64 %res
29}