1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=aarch64-none-linux-gnu -verify-machineinstrs | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker; Check that float 0 gets rematerialized with an fmov of zero reg instead 4*9880d681SAndroid Build Coastguard Worker; of spilled/filled. 5*9880d681SAndroid Build Coastguard Worker 6*9880d681SAndroid Build Coastguard Workerdeclare void @bar(float) 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Workerdefine void @foo() { 9*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: foo: 10*9880d681SAndroid Build Coastguard Worker; CHECK: fmov s0, wzr 11*9880d681SAndroid Build Coastguard Worker; CHECK: bl bar 12*9880d681SAndroid Build Coastguard Worker; CHECK: fmov s0, wzr 13*9880d681SAndroid Build Coastguard Worker; CHECK: bl bar 14*9880d681SAndroid Build Coastguard Worker call void @bar(float 0.000000e+00) 15*9880d681SAndroid Build Coastguard Worker call void asm sideeffect "", "~{s0},~{s1},~{s2},~{s3},~{s4},~{s5},~{s6},~{s7},~{s8},~{s9},~{s10},~{s11},~{s12},~{s13},~{s14},~{s15},~{s16},~{s17},~{s18},~{s19},~{s20},~{s21},~{s22},~{s23},~{s24},~{s25},~{s26},~{s27},~{s28},~{s29},~{s30},~{s31}"() 16*9880d681SAndroid Build Coastguard Worker call void @bar(float 0.000000e+00) 17*9880d681SAndroid Build Coastguard Worker ret void 18*9880d681SAndroid Build Coastguard Worker} 19