authorgravatar for bjorn.linse@gmail.combfredl <bjorn.linse@gmail.com> 2023-09-14 23:08:27+02:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-09-15 01:05:52-07:00
log1a0e6bcdb140c844384d62b78a7f4247753f9ffd
tree16b1706a67195a96fe91c3cf798c9b77cdaa47f8
parentcba7e8a4e95aa2a2031d0fbaa8247de37e61fd78

bpf: remove unhelpful "comptime" and fix union order

Insn.st() can be used with dynamic size just like Insn.stx(), which is relevant in a code generation context. using ImmOrReg caused an error as its fields were ordered differently than Source.

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

lib/std/os/linux/bpf.zig+2-2
...@@ -455,8 +455,8 @@ pub const Insn = packed struct {...@@ -455,8 +455,8 @@ pub const Insn = packed struct {
455 };455 };
456456
457 const ImmOrReg = union(Source) {457 const ImmOrReg = union(Source) {
458 imm: i32,
459 reg: Reg,458 reg: Reg,
459 imm: i32,
460 };460 };
461461
462 fn imm_reg(code: u8, dst: Reg, src: anytype, off: i16) Insn {462 fn imm_reg(code: u8, dst: Reg, src: anytype, off: i16) Insn {
...@@ -673,7 +673,7 @@ pub const Insn = packed struct {...@@ -673,7 +673,7 @@ pub const Insn = packed struct {
673 return ld_imm_impl2(@as(u64, @intCast(map_fd)));673 return ld_imm_impl2(@as(u64, @intCast(map_fd)));
674 }674 }
675675
676 pub fn st(comptime size: Size, dst: Reg, off: i16, imm: i32) Insn {676 pub fn st(size: Size, dst: Reg, off: i16, imm: i32) Insn {
677 return Insn{677 return Insn{
678 .code = MEM | @intFromEnum(size) | ST,678 .code = MEM | @intFromEnum(size) | ST,
679 .dst = @intFromEnum(dst),679 .dst = @intFromEnum(dst),