aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar wangao <jameslahm17@gmail.com> 2022-04-19 12:25:53 +0800
committerGravatar GitHub <noreply@github.com> 2022-04-18 21:25:53 -0700
commit0aacddb971fc7eb7994fa66aa825a1c69c25a730 (patch)
tree8db4139590a482e97eb7c3655b987f96a74f9b43
parent7e866bb441b1870d8d8e1916693f6acfaf7d8525 (diff)
downloadbun-0aacddb971fc7eb7994fa66aa825a1c69c25a730.tar.gz
bun-0aacddb971fc7eb7994fa66aa825a1c69c25a730.tar.zst
bun-0aacddb971fc7eb7994fa66aa825a1c69c25a730.zip
[timer] Remove timer.zig and use system_timer.zig (#149)
-rw-r--r--src/bundler.zig3
-rw-r--r--src/bundler/generate_node_modules_bundle.zig1
-rw-r--r--src/output.zig2
-rw-r--r--src/resolver/resolver.zig12
-rw-r--r--src/system_timer.zig2
-rw-r--r--src/timer.zig20
6 files changed, 7 insertions, 33 deletions
diff --git a/src/bundler.zig b/src/bundler.zig
index 0f69ea06e..13c83434b 100644
--- a/src/bundler.zig
+++ b/src/bundler.zig
@@ -35,7 +35,6 @@ const allocators = @import("./allocators.zig");
const MimeType = @import("./http/mime_type.zig");
const resolve_path = @import("./resolver/resolve_path.zig");
const runtime = @import("./runtime.zig");
-const Timer = @import("./timer.zig");
const hash_map = @import("hash_map.zig");
const PackageJSON = @import("./resolver/package_json.zig").PackageJSON;
const MacroRemap = @import("./resolver/package_json.zig").MacroMap;
@@ -56,7 +55,7 @@ const Resolver = _resolver.Resolver;
const TOML = @import("./toml/toml_parser.zig").TOML;
const EntryPoints = @import("./bundler/entry_points.zig");
-const SystemTimer = @import("./system_timer.zig");
+const SystemTimer = @import("./system_timer.zig").Timer;
pub usingnamespace EntryPoints;
// How it works end-to-end
// 1. Resolve a file path from input using the resolver
diff --git a/src/bundler/generate_node_modules_bundle.zig b/src/bundler/generate_node_modules_bundle.zig
index 32fba8664..44cb2618a 100644
--- a/src/bundler/generate_node_modules_bundle.zig
+++ b/src/bundler/generate_node_modules_bundle.zig
@@ -37,7 +37,6 @@ const allocators = @import("../allocators.zig");
const MimeType = @import("../http/mime_type.zig");
const resolve_path = @import("../resolver/resolve_path.zig");
const runtime = @import("../runtime.zig");
-const Timer = @import("../timer.zig");
const PackageJSON = @import("../resolver/package_json.zig").PackageJSON;
const MacroRemap = @import("../resolver/package_json.zig").MacroMap;
const DebugLogs = _resolver.DebugLogs;
diff --git a/src/output.zig b/src/output.zig
index 1f778d1c0..1323cfa5c 100644
--- a/src/output.zig
+++ b/src/output.zig
@@ -9,7 +9,7 @@ const Global = @import("./global.zig").Global;
const ComptimeStringMap = @import("./global.zig").ComptimeStringMap;
const use_mimalloc = @import("./global.zig").use_mimalloc;
-const SystemTimer = @import("./system_timer.zig");
+const SystemTimer = @import("./system_timer.zig").Timer;
// These are threadlocal so we don't have stdout/stderr writing on top of each other
threadlocal var source: Source = undefined;
diff --git a/src/resolver/resolver.zig b/src/resolver/resolver.zig
index a8a4e2bbe..8351a07dd 100644
--- a/src/resolver/resolver.zig
+++ b/src/resolver/resolver.zig
@@ -302,7 +302,7 @@ var bin_folders: BinFolderArray = undefined;
var bin_folders_lock: Mutex = Mutex.init();
var bin_folders_loaded: bool = false;
-const Timer = @import("../timer.zig");
+const Timer = @import("../system_timer.zig").Timer;
pub fn ResolveWatcher(comptime Context: type) type {
return struct {
context: *Context,
@@ -395,7 +395,7 @@ pub const Resolver = struct {
.mutex = &resolver_Mutex,
.caches = CacheSet.init(allocator),
.opts = opts,
- .timer = if (comptime Timer != void) Timer.start() catch @panic("Timer error!") else Timer{},
+ .timer = Timer.start() catch @panic("Timer fail"),
.fs = _fs,
.node_module_bundle = opts.node_modules_bundle,
.log = log,
@@ -579,17 +579,13 @@ pub const Resolver = struct {
else => r.opts.extension_order,
};
- var timer: Timer = undefined;
if (FeatureFlags.tracing) {
- timer = Timer.start() catch null;
+ r.timer.reset();
}
defer {
if (FeatureFlags.tracing) {
- if (timer) |*time| {
- // technically, this should be an atomic op
- r.elapsed += time.read();
- }
+ r.elapsed += r.timer.read();
}
}
if (r.log.level == .verbose) {
diff --git a/src/system_timer.zig b/src/system_timer.zig
index 993f10e3f..1c7b88cb6 100644
--- a/src/system_timer.zig
+++ b/src/system_timer.zig
@@ -24,4 +24,4 @@ fn NewTimer() type {
return std.time.Timer;
}
-pub usingnamespace NewTimer();
+pub const Timer = NewTimer();
diff --git a/src/timer.zig b/src/timer.zig
deleted file mode 100644
index 39e4a7822..000000000
--- a/src/timer.zig
+++ /dev/null
@@ -1,20 +0,0 @@
-const std = @import("std");
-
-const Timer = @This();
-
-begin: i128 = 0,
-elapsed: i128 = 0,
-
-pub fn start(timer: *Timer) void {
- timer.begin = std.time.nanoTimestamp();
-}
-
-pub fn stop(timer: *Timer) void {
- timer.elapsed = std.time.nanoTimestamp() - timer.begin;
-}
-
-pub fn seconds(timer: *const Timer) f64 {
- return @intToFloat(f64, timer.elapsed) / std.time.ns_per_s;
-}
-
-pub const Group = struct {};