authorgravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2022-11-01 02:28:55-04:00
committergravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2022-11-01 20:38:52-04:00
log8e52be1602f0b7953332d2e5e9a2b6f23e5410ce
treef9f0560bfad4b7c6d0e552151d52de4c810cc697
parentfb8c08d4acec2ec0d9f06862276cfd6c1c32cd7f

cbe: avoid emitting code for zero-bit field access


1 files changed, 3 insertions(+), 1 deletions(-)

src/codegen/c.zig+3-1
......@@ -4223,9 +4223,11 @@ fn airStructFieldVal(f: *Function, inst: Air.Inst.Index) !CValue {
42234223 if (f.liveness.isUnused(inst))
42244224 return CValue.none;
42254225
4226 const inst_ty = f.air.typeOfIndex(inst);
4227 if (!inst_ty.hasRuntimeBitsIgnoreComptime()) return CValue.none;
4228
42264229 const ty_pl = f.air.instructions.items(.data)[inst].ty_pl;
42274230 const extra = f.air.extraData(Air.StructField, ty_pl.payload).data;
4228 const inst_ty = f.air.typeOfIndex(inst);
42294231 const target = f.object.dg.module.getTarget();
42304232 const struct_byval = try f.resolveInst(extra.struct_operand);
42314233 const struct_ty = f.air.typeOf(extra.struct_operand);