authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-07-26 05:58:40+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-07-30 01:32:48+02:00
logf29967f46c2508668c568fdbb834a3c396485ab8
treef2070a2fd00b166b1bdc8b3bb17616632d968833
parent264b83096411f0fb948cd399ef99c4f4883a838d
signature Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

generate_linux_syscalls: Skip some reserved syscalls on mips and xtensa.


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

tools/generate_linux_syscalls.zig+10-1
...@@ -42,6 +42,12 @@ fn getOverridenNameNew(value: []const u8) ?[]const u8 {...@@ -42,6 +42,12 @@ fn getOverridenNameNew(value: []const u8) ?[]const u8 {
42 }42 }
43}43}
4444
45fn isReservedNameOld(name: []const u8) bool {
46 return std.mem.startsWith(u8, name, "available") or
47 std.mem.startsWith(u8, name, "reserved") or
48 std.mem.startsWith(u8, name, "unused");
49}
50
45pub fn main() !void {51pub fn main() !void {
46 var arena = std.heap.ArenaAllocator.init(std.heap.page_allocator);52 var arena = std.heap.ArenaAllocator.init(std.heap.page_allocator);
47 defer arena.deinit();53 defer arena.deinit();
...@@ -224,7 +230,7 @@ pub fn main() !void {...@@ -224,7 +230,7 @@ pub fn main() !void {
224 // abi is always o32230 // abi is always o32
225 _ = fields.next() orelse return error.Incomplete;231 _ = fields.next() orelse return error.Incomplete;
226 const name = fields.next() orelse return error.Incomplete;232 const name = fields.next() orelse return error.Incomplete;
227 if (mem.startsWith(u8, name, "unused")) continue;233 if (isReservedNameOld(name)) continue;
228 const fixed_name = if (stdlib_renames.get(name)) |fixed| fixed else name;234 const fixed_name = if (stdlib_renames.get(name)) |fixed| fixed else name;
229235
230 try writer.print(" {p} = linux_base + {s},\n", .{ zig.fmtId(fixed_name), number });236 try writer.print(" {p} = linux_base + {s},\n", .{ zig.fmtId(fixed_name), number });
...@@ -250,6 +256,7 @@ pub fn main() !void {...@@ -250,6 +256,7 @@ pub fn main() !void {
250 // abi is always n64256 // abi is always n64
251 _ = fields.next() orelse return error.Incomplete;257 _ = fields.next() orelse return error.Incomplete;
252 const name = fields.next() orelse return error.Incomplete;258 const name = fields.next() orelse return error.Incomplete;
259 if (isReservedNameOld(name)) continue;
253 const fixed_name = if (stdlib_renames.get(name)) |fixed| fixed else name;260 const fixed_name = if (stdlib_renames.get(name)) |fixed| fixed else name;
254261
255 try writer.print(" {p} = linux_base + {s},\n", .{ zig.fmtId(fixed_name), number });262 try writer.print(" {p} = linux_base + {s},\n", .{ zig.fmtId(fixed_name), number });
...@@ -275,6 +282,7 @@ pub fn main() !void {...@@ -275,6 +282,7 @@ pub fn main() !void {
275 // abi is always n32282 // abi is always n32
276 _ = fields.next() orelse return error.Incomplete;283 _ = fields.next() orelse return error.Incomplete;
277 const name = fields.next() orelse return error.Incomplete;284 const name = fields.next() orelse return error.Incomplete;
285 if (isReservedNameOld(name)) continue;
278 const fixed_name = if (stdlib_renames.get(name)) |fixed| fixed else name;286 const fixed_name = if (stdlib_renames.get(name)) |fixed| fixed else name;
279287
280 try writer.print(" {p} = linux_base + {s},\n", .{ zig.fmtId(fixed_name), number });288 try writer.print(" {p} = linux_base + {s},\n", .{ zig.fmtId(fixed_name), number });
...@@ -351,6 +359,7 @@ pub fn main() !void {...@@ -351,6 +359,7 @@ pub fn main() !void {
351 // abi is always common359 // abi is always common
352 _ = fields.next() orelse return error.Incomplete;360 _ = fields.next() orelse return error.Incomplete;
353 const name = fields.next() orelse return error.Incomplete;361 const name = fields.next() orelse return error.Incomplete;
362 if (isReservedNameOld(name)) continue;
354 const fixed_name = if (stdlib_renames.get(name)) |fixed| fixed else name;363 const fixed_name = if (stdlib_renames.get(name)) |fixed| fixed else name;
355364
356 try writer.print(" {p} = {s},\n", .{ zig.fmtId(fixed_name), number });365 try writer.print(" {p} = {s},\n", .{ zig.fmtId(fixed_name), number });