aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/gen_stubs.zig9
-rw-r--r--tools/generate_linux_syscalls.zig25
-rw-r--r--tools/update_cpu_features.zig2
3 files changed, 35 insertions, 1 deletions
diff --git a/tools/gen_stubs.zig b/tools/gen_stubs.zig
index a22ce492db..89d7a40228 100644
--- a/tools/gen_stubs.zig
+++ b/tools/gen_stubs.zig
@@ -592,8 +592,10 @@ const blacklisted_symbols = [_][]const u8{
"__addtf3",
"__addxf3",
"__ashldi3",
+ "__ashlsi3",
"__ashlti3",
"__ashrdi3",
+ "__ashrsi3",
"__ashrti3",
"__atomic_compare_exchange",
"__atomic_compare_exchange_1",
@@ -664,6 +666,7 @@ const blacklisted_symbols = [_][]const u8{
"__divkf3",
"__divmoddi4",
"__divmodsi4",
+ "__divmodti4",
"__divsf3",
"__divsi3",
"__divtf3",
@@ -786,6 +789,7 @@ const blacklisted_symbols = [_][]const u8{
"__logh",
"__logx",
"__lshrdi3",
+ "__lshrsi3",
"__lshrti3",
"__ltdf2",
"__ltkf2",
@@ -829,6 +833,11 @@ const blacklisted_symbols = [_][]const u8{
"__popcountdi2",
"__popcountsi2",
"__popcountti2",
+ "__powidf2",
+ "__powihf2",
+ "__powisf2",
+ "__powitf2",
+ "__powixf2",
"__roundh",
"__roundx",
"__sincosh",
diff --git a/tools/generate_linux_syscalls.zig b/tools/generate_linux_syscalls.zig
index 67f098ac4f..11b18ae3bf 100644
--- a/tools/generate_linux_syscalls.zig
+++ b/tools/generate_linux_syscalls.zig
@@ -168,6 +168,31 @@ pub fn main() !void {
try writer.writeAll("};\n\n");
}
{
+ try writer.writeAll(
+ \\pub const Mips64 = enum(usize) {
+ \\ pub const Linux = 5000;
+ \\
+ \\
+ );
+
+ const table = try linux_dir.readFile("arch/mips/kernel/syscalls/syscall_n64.tbl", buf);
+ var lines = mem.tokenize(u8, table, "\n");
+ while (lines.next()) |line| {
+ if (line[0] == '#') continue;
+
+ var fields = mem.tokenize(u8, line, " \t");
+ const number = fields.next() orelse return error.Incomplete;
+ // abi is always n64
+ _ = fields.next() orelse return error.Incomplete;
+ const name = fields.next() orelse return error.Incomplete;
+ const fixed_name = if (stdlib_renames.get(name)) |fixed| fixed else name;
+
+ try writer.print(" {s} = Linux + {s},\n", .{ zig.fmtId(fixed_name), number });
+ }
+
+ try writer.writeAll("};\n\n");
+ }
+ {
try writer.writeAll("pub const PowerPC = enum(usize) {\n");
const table = try linux_dir.readFile("arch/powerpc/kernel/syscalls/syscall.tbl", buf);
diff --git a/tools/update_cpu_features.zig b/tools/update_cpu_features.zig
index 65f0afdaba..70696e3f1a 100644
--- a/tools/update_cpu_features.zig
+++ b/tools/update_cpu_features.zig
@@ -1385,7 +1385,7 @@ fn usageAndExit(file: fs.File, arg0: []const u8, code: u8) noreturn {
\\
\\Updates lib/std/target/<target>.zig from llvm/lib/Target/<Target>/<Target>.td .
\\
- \\On a less beefy system, or when debugging, compile with --single-threaded.
+ \\On a less beefy system, or when debugging, compile with -fsingle-threaded.
\\
, .{arg0}) catch std.process.exit(1);
std.process.exit(code);