Skip to content

Commit 25a7f23

Browse files
committed
Move powif16 next to powif128
1 parent 66d6f7b commit 25a7f23

File tree

1 file changed

+7
-8
lines changed

1 file changed

+7
-8
lines changed

src/intrinsic/mod.rs

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -233,13 +233,6 @@ fn f16_builtin<'gcc, 'tcx>(
233233
sym::maxnumf16 => "__builtin_fmaxf",
234234
sym::minnumf16 => "__builtin_fminf",
235235
sym::powf16 => "__builtin_powf",
236-
sym::powif16 => {
237-
let func = cx.context.get_builtin_function("__builtin_powif");
238-
let arg0 = cx.context.new_cast(None, args[0].immediate(), f32_type);
239-
let args = [arg0, args[1].immediate()];
240-
let result = cx.context.new_call(None, func, &args);
241-
return cx.context.new_cast(None, result, cx.type_f16());
242-
}
243236
sym::roundf16 => "__builtin_roundf",
244237
sym::round_ties_even_f16 => "__builtin_rintf",
245238
sym::sqrtf16 => "__builtin_sqrtf",
@@ -300,7 +293,6 @@ impl<'a, 'gcc, 'tcx> IntrinsicCallBuilderMethods<'tcx> for Builder<'a, 'gcc, 'tc
300293
| sym::maxnumf16
301294
| sym::minnumf16
302295
| sym::powf16
303-
| sym::powif16
304296
| sym::roundf16
305297
| sym::round_ties_even_f16
306298
| sym::sqrtf16
@@ -325,6 +317,13 @@ impl<'a, 'gcc, 'tcx> IntrinsicCallBuilderMethods<'tcx> for Builder<'a, 'gcc, 'tc
325317
&args.iter().map(|arg| arg.immediate()).collect::<Vec<_>>(),
326318
)
327319
}
320+
sym::powif16 => {
321+
let func = self.cx.context.get_builtin_function("__builtin_powif");
322+
let arg0 = self.cx.context.new_cast(None, args[0].immediate(), self.cx.type_f32());
323+
let args = [arg0, args[1].immediate()];
324+
let result = self.cx.context.new_call(None, func, &args);
325+
self.cx.context.new_cast(None, result, self.cx.type_f16())
326+
}
328327
sym::powif128 => {
329328
let f128_type = self.cx.type_f128();
330329
let func = self.cx.context.new_function(

0 commit comments

Comments
 (0)