1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py 2# RUN: llc -O0 -mtriple=mipsel-linux-gnu -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s -check-prefixes=FP32 3# RUN: llc -O0 -mtriple=mipsel-linux-gnu -mattr=+fp64,+mips32r2 -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s -check-prefixes=FP64 4--- | 5 6 define void @sqrt_f32() {entry: ret void} 7 define void @sqrt_f64() {entry: ret void} 8 9... 10--- 11name: sqrt_f32 12alignment: 4 13tracksRegLiveness: true 14body: | 15 bb.1.entry: 16 liveins: $f12 17 18 ; FP32-LABEL: name: sqrt_f32 19 ; FP32: liveins: $f12 20 ; FP32: [[COPY:%[0-9]+]]:_(s32) = COPY $f12 21 ; FP32: [[FSQRT:%[0-9]+]]:_(s32) = G_FSQRT [[COPY]] 22 ; FP32: $f0 = COPY [[FSQRT]](s32) 23 ; FP32: RetRA implicit $f0 24 ; FP64-LABEL: name: sqrt_f32 25 ; FP64: liveins: $f12 26 ; FP64: [[COPY:%[0-9]+]]:_(s32) = COPY $f12 27 ; FP64: [[FSQRT:%[0-9]+]]:_(s32) = G_FSQRT [[COPY]] 28 ; FP64: $f0 = COPY [[FSQRT]](s32) 29 ; FP64: RetRA implicit $f0 30 %0:_(s32) = COPY $f12 31 %1:_(s32) = G_FSQRT %0 32 $f0 = COPY %1(s32) 33 RetRA implicit $f0 34 35... 36--- 37name: sqrt_f64 38alignment: 4 39tracksRegLiveness: true 40body: | 41 bb.1.entry: 42 liveins: $d6 43 44 ; FP32-LABEL: name: sqrt_f64 45 ; FP32: liveins: $d6 46 ; FP32: [[COPY:%[0-9]+]]:_(s64) = COPY $d6 47 ; FP32: [[FSQRT:%[0-9]+]]:_(s64) = G_FSQRT [[COPY]] 48 ; FP32: $d0 = COPY [[FSQRT]](s64) 49 ; FP32: RetRA implicit $d0 50 ; FP64-LABEL: name: sqrt_f64 51 ; FP64: liveins: $d6 52 ; FP64: [[COPY:%[0-9]+]]:_(s64) = COPY $d6 53 ; FP64: [[FSQRT:%[0-9]+]]:_(s64) = G_FSQRT [[COPY]] 54 ; FP64: $d0 = COPY [[FSQRT]](s64) 55 ; FP64: RetRA implicit $d0 56 %0:_(s64) = COPY $d6 57 %1:_(s64) = G_FSQRT %0 58 $d0 = COPY %1(s64) 59 RetRA implicit $d0 60 61... 62