Skip to content

Commit b46f441

Browse files
nicholasbishoptgross35
authored andcommitted
Add f16/f128 handling in a couple places
1 parent f00f850 commit b46f441

File tree

2 files changed

+4
-0
lines changed
  • compiler

2 files changed

+4
-0
lines changed

compiler/rustc_codegen_llvm/src/abi.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,10 @@ impl LlvmType for Reg {
121121
match self.kind {
122122
RegKind::Integer => cx.type_ix(self.size.bits()),
123123
RegKind::Float => match self.size.bits() {
124+
16 => cx.type_f16(),
124125
32 => cx.type_f32(),
125126
64 => cx.type_f64(),
127+
128 => cx.type_f128(),
126128
_ => bug!("unsupported float: {:?}", self),
127129
},
128130
RegKind::Vector => cx.type_vector(cx.type_i8(), self.size.bytes()),

compiler/rustc_target/src/abi/call/mod.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,8 +237,10 @@ impl Reg {
237237
_ => panic!("unsupported integer: {self:?}"),
238238
},
239239
RegKind::Float => match self.size.bits() {
240+
16 => dl.f16_align.abi,
240241
32 => dl.f32_align.abi,
241242
64 => dl.f64_align.abi,
243+
128 => dl.f128_align.abi,
242244
_ => panic!("unsupported float: {self:?}"),
243245
},
244246
RegKind::Vector => dl.vector_align(self.size).abi,

0 commit comments

Comments
 (0)