perf: replace `std.debug.assert` with inlined version

See doc comment in `quirks.zig` for reasoning
pull/9645/head
Qwerasd 2025-11-17 12:13:56 -07:00
parent 995a7377c1
commit 6d5b4a3426
162 changed files with 177 additions and 161 deletions

View File

@ -5,7 +5,7 @@ const App = @This();
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const build_config = @import("build_config.zig");
const apprt = @import("apprt.zig");

View File

@ -17,7 +17,7 @@ pub const Message = apprt.surface.Message;
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator;
const global_state = &@import("global.zig").state;

View File

@ -1,6 +1,6 @@
const std = @import("std");
const build_config = @import("../build_config.zig");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const apprt = @import("../apprt.zig");
const configpkg = @import("../config.zig");
const input = @import("../input.zig");

View File

@ -6,7 +6,7 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const objc = @import("objc");
const apprt = @import("../apprt.zig");

View File

@ -1,7 +1,7 @@
/// Contains all the logic for putting the Ghostty process and
/// each individual surface into its own cgroup.
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const gio = @import("gio");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const builtin = @import("builtin");
const adw = @import("adw");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const adw = @import("adw");
const glib = @import("glib");
const gobject = @import("gobject");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const adw = @import("adw");
const gio = @import("gio");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const cimgui = @import("cimgui");
const gl = @import("opengl");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const adw = @import("adw");
const glib = @import("glib");
const gobject = @import("gobject");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const build_config = @import("../../../build_config.zig");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const adw = @import("adw");
const gio = @import("gio");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const adw = @import("adw");
const gdk = @import("gdk");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const adw = @import("adw");
const glib = @import("glib");
const gobject = @import("gobject");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const adw = @import("adw");
const gobject = @import("gobject");
const gtk = @import("gtk");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const build_config = @import("../../../build_config.zig");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const adw = @import("adw");
const gio = @import("gio");
const glib = @import("glib");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const build_config = @import("../../../build_config.zig");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const adw = @import("adw");
const gdk = @import("gdk");
const gio = @import("gio");

View File

@ -4,7 +4,7 @@
//! helpers.
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const testing = std.testing;
const gio = @import("gio");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const testing = std.testing;
const gio = @import("gio");

View File

@ -2,7 +2,7 @@
//! process.
const std = @import("std");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
pub const Errors = error{
/// The IPC failed. If a function returns this error, it's expected that

View File

@ -1,6 +1,6 @@
const std = @import("std");
const mem = std.mem;
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator;
const diags = @import("diagnostics.zig");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const build_config = @import("../build_config.zig");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const args = @import("args.zig");
const Allocator = std.mem.Allocator;
const Action = @import("ghostty.zig").Action;

View File

@ -5,7 +5,7 @@ const DiskCache = @This();
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const internal_os = @import("../../os/main.zig");
const xdg = internal_os.xdg;

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const cli = @import("../cli.zig");
const inputpkg = @import("../input.zig");
const state = &@import("../global.zig").state;

View File

@ -4,7 +4,7 @@
const ClipboardCodepointMap = @This();
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
// To ease our usage later, we map it directly to formatter entries.

View File

@ -13,7 +13,7 @@ const Config = @This();
const std = @import("std");
const builtin = @import("builtin");
const build_config = @import("../build_config.zig");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator;
const global_state = &@import("../global.zig").state;

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
/// Conditionals in Ghostty configuration are based on a static, typed

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator;
const internal_os = @import("../os/main.zig");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const internal_os = @import("../os/main.zig");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator;
const string = @import("string.zig");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator;

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const global_state = &@import("../global.zig").state;
const internal_os = @import("../os/main.zig");

View File

@ -3,7 +3,7 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
/// Returns a blocking queue implementation for type T.

View File

@ -1,7 +1,7 @@
const fastmem = @import("../fastmem.zig");
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
/// An associative data structure used for efficiently storing and
/// retrieving values which are able to be recomputed if necessary.

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const fastmem = @import("../fastmem.zig");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
/// Create a HashMap for a key type that can be automatically hashed.

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const testing = std.testing;

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const build_config = @import("../build_config.zig");
const ArenaAllocator = std.heap.ArenaAllocator;
const Allocator = std.mem.Allocator;

View File

@ -1,6 +1,5 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
/// Same as @memmove but prefers libc memmove if it is
/// available because it is generally much faster?.

View File

@ -16,7 +16,7 @@
const Atlas = @This();
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const testing = std.testing;
const fastmem = @import("../fastmem.zig");

View File

@ -4,7 +4,7 @@
const CodepointMap = @This();
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const discovery = @import("discovery.zig");

View File

@ -16,7 +16,7 @@
const Collection = @This();
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const config = @import("../config.zig");
const comparison = @import("../datastruct/comparison.zig");

View File

@ -7,7 +7,7 @@
const DeferredFace = @This();
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const fontconfig = @import("fontconfig");
const macos = @import("macos");

View File

@ -19,7 +19,7 @@
const SharedGrid = @This();
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const renderer = @import("../renderer.zig");
const font = @import("main.zig");

View File

@ -11,7 +11,7 @@ const SharedGridSet = @This();
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator;
const font = @import("main.zig");

View File

@ -1,7 +1,7 @@
const std = @import("std");
const builtin = @import("builtin");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const fontconfig = @import("fontconfig");
const macos = @import("macos");
const opentype = @import("opentype.zig");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const macos = @import("macos");
const harfbuzz = @import("harfbuzz");

View File

@ -9,7 +9,7 @@ const builtin = @import("builtin");
const freetype = @import("freetype");
const harfbuzz = @import("harfbuzz");
const stb = @import("../../stb/main.zig");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const testing = std.testing;
const Allocator = std.mem.Allocator;
const font = @import("../main.zig");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const testing = std.testing;
const Allocator = std.mem.Allocator;
const js = @import("zig-js");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const sfnt = @import("sfnt.zig");
/// Font Header Table

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const sfnt = @import("sfnt.zig");
/// Horizontal Header Table

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const sfnt = @import("sfnt.zig");
pub const FSSelection = packed struct(sfnt.uint16) {

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const sfnt = @import("sfnt.zig");
/// PostScript Table

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
/// 8-bit unsigned integer.

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const font = @import("../main.zig");
/// SVG glyphs description table.

View File

@ -11,7 +11,7 @@
pub const Cache = @This();
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const font = @import("../main.zig");
const CacheTable = @import("../../datastruct/main.zig").CacheTable;

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const macos = @import("macos");
const trace = @import("tracy").trace;

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const log = std.log.scoped(.font_shaper);

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const harfbuzz = @import("harfbuzz");
const font = @import("../main.zig");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const trace = @import("tracy").trace;
const font = @import("../main.zig");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const font = @import("../main.zig");
const shape = @import("../shape.zig");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const font = @import("../main.zig");
const terminal = @import("../../terminal/main.zig");

View File

@ -14,7 +14,7 @@ const Face = @This();
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const wuffs = @import("wuffs");
const z2d = @import("z2d");

View File

@ -1,7 +1,7 @@
//! This exposes primitives to draw 2D graphics and export the graphic to
//! a font atlas.
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const z2d = @import("z2d");
const font = @import("../main.zig");

View File

@ -6,7 +6,7 @@
//!
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const z2d = @import("z2d");

View File

@ -12,7 +12,7 @@
//!
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const z2d = @import("z2d");

View File

@ -23,7 +23,7 @@
//!
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const font = @import("../../main.zig");

View File

@ -16,7 +16,7 @@
//!
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const common = @import("common.zig");

View File

@ -4,7 +4,7 @@
//! rather than being single-use.
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const z2d = @import("z2d");

View File

@ -7,7 +7,7 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const font = @import("../../main.zig");
const Sprite = font.sprite.Sprite;

View File

@ -21,7 +21,7 @@
const std = @import("std");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const z2d = @import("z2d");

View File

@ -49,7 +49,7 @@
const std = @import("std");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../../../quirks.zig").inlineAssert;
const z2d = @import("z2d");

View File

@ -4,7 +4,7 @@ const Binding = @This();
const std = @import("std");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const build_config = @import("../build_config.zig");
const uucode = @import("uucode");
const EntryFormatter = @import("../config/formatter.zig").EntryFormatter;

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const Action = @import("Binding.zig").Action;

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Terminal = @import("../terminal/Terminal.zig");
pub const Options = struct {

View File

@ -4,7 +4,7 @@
const Inspector = @This();
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const builtin = @import("builtin");
const cimgui = @import("cimgui");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const cimgui = @import("cimgui");
const terminal = @import("../terminal/main.zig");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const cimgui = @import("cimgui");
const terminal = @import("../terminal/main.zig");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const testing = std.testing;
const Target = @import("target.zig").Target;

View File

@ -8,7 +8,7 @@
// it could be expanded to be general purpose in the future.
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("quirks.zig").inlineAssert;
const posix = std.posix;
const builtin = @import("builtin");
const build_config = @import("build_config.zig");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const objc = @import("objc");
const macos = @import("macos");

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const linux = std.os.linux;
const posix = std.posix;
const Allocator = std.mem.Allocator;

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const builtin = @import("builtin");
const posix = std.posix;

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const passwd = @import("passwd.zig");
const posix = std.posix;
const objc = @import("objc");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const macos = @import("macos");
const objc = @import("objc");
const internal_os = @import("main.zig");

View File

@ -1,7 +1,7 @@
const std = @import("std");
const builtin = @import("builtin");
const build_config = @import("../build_config.zig");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const objc = @import("objc");
const Allocator = std.mem.Allocator;

View File

@ -1,6 +1,6 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const objc = @import("objc");
const log = std.log.scoped(.os);

View File

@ -3,7 +3,7 @@
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const posix = std.posix;
const homedir = @import("homedir.zig");

View File

@ -27,3 +27,20 @@ pub fn disableDefaultFontFeatures(face: *const font.Face) bool {
// error.OutOfMemory => return false,
// };
}
/// We use our own assert function instead of `std.debug.assert`.
///
/// The only difference between this and the one in
/// the stdlib is that this version is marked inline.
///
/// The reason for this is that, despite the promises of the doc comment
/// on the stdlib function, the function call to `std.debug.assert` isn't
/// always optimized away in `ReleaseFast` mode, at least in Zig 0.15.2.
///
/// In the majority of places, the overhead from calling an empty function
/// is negligible, but we have some asserts inside tight loops and hotpaths
/// that cause significant overhead (as much as 15-20%) when they don't get
/// optimized out.
pub inline fn inlineAssert(ok: bool) void {
if (!ok) unreachable;
}

View File

@ -2,7 +2,7 @@
pub const Metal = @This();
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const builtin = @import("builtin");
const objc = @import("objc");

View File

@ -2,7 +2,7 @@
pub const OpenGL = @This();
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const builtin = @import("builtin");
const gl = @import("opengl");

View File

@ -4,7 +4,7 @@ pub const Thread = @This();
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const xev = @import("../global.zig").xev;
const crash = @import("../crash/main.zig");
const internal_os = @import("../os/main.zig");

View File

@ -1,6 +1,6 @@
const std = @import("std");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const font = @import("../font/main.zig");
const terminal = @import("../terminal/main.zig");
const renderer = @import("../renderer.zig");

View File

@ -20,7 +20,7 @@ const Image = imagepkg.Image;
const ImageMap = imagepkg.ImageMap;
const ImagePlacementList = std.ArrayListUnmanaged(imagepkg.Placement);
const shadertoy = @import("shadertoy.zig");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator;
const Terminal = terminal.Terminal;

View File

@ -1,6 +1,6 @@
const std = @import("std");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const wuffs = @import("wuffs");
const Renderer = @import("../renderer.zig").Renderer;

View File

@ -1,5 +1,5 @@
const std = @import("std");
const assert = std.debug.assert;
const assert = @import("../quirks.zig").inlineAssert;
const Allocator = std.mem.Allocator;
const configpkg = @import("../config.zig");
const font = @import("../font/main.zig");

View File

@ -3,7 +3,7 @@ const Self = @This();
const std = @import("std");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const builtin = @import("builtin");
const objc = @import("objc");

View File

@ -4,7 +4,7 @@ const IOSurfaceLayer = @This();
const std = @import("std");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const builtin = @import("builtin");
const objc = @import("objc");
const macos = @import("macos");

View File

@ -3,7 +3,7 @@ const Self = @This();
const std = @import("std");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const builtin = @import("builtin");
const macos = @import("macos");
const objc = @import("objc");

View File

@ -3,7 +3,7 @@ const Self = @This();
const std = @import("std");
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
const assert = @import("../../quirks.zig").inlineAssert;
const builtin = @import("builtin");
const objc = @import("objc");

Some files were not shown because too many files have changed in this diff Show More