pub fn un( self: *WipFunction, tag: Instruction.Tag, val: Value, name: []const u8, ) Allocator.Error!Value
self: *WipFunction
tag: Instruction.Tag
val: Value
name: []const u8
6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 6582
pub fn un( self: *WipFunction, tag: Instruction.Tag, val: Value, name: []const u8, ) Allocator.Error!Value { switch (tag) { .fneg, .@"fneg fast", => assert(val.typeOfWip(self).scalarType(self.builder).isFloatingPoint()), else => unreachable, } try self.ensureUnusedExtraCapacity(1, NoExtra, 0); const instruction = try self.addInst(name, .{ .tag = tag, .data = @backingInt(val) }); return instruction.toValue(); }