• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: llc  < %s -march=mips64el -mcpu=mips64 -mattr=n64 | FileCheck %s
2
3define i64 @zext64_32(i32 %a) nounwind readnone {
4entry:
5; CHECK: addiu $[[R0:[0-9]+]], ${{[0-9]+}}, 2
6; CHECK: dsll $[[R1:[0-9]+]], $[[R0]], 32
7; CHECK: dsrl ${{[0-9]+}}, $[[R1]], 32
8  %add = add i32 %a, 2
9  %conv = zext i32 %add to i64
10  ret i64 %conv
11}
12
13define i64 @sext64_32(i32 %a) nounwind readnone {
14entry:
15; CHECK: sll ${{[0-9]+}}, ${{[0-9]+}}, 0
16  %conv = sext i32 %a to i64
17  ret i64 %conv
18}
19
20define i64 @i64_float(float %f) nounwind readnone {
21entry:
22; CHECK: trunc.l.s
23  %conv = fptosi float %f to i64
24  ret i64 %conv
25}
26
27