diff options
| author | Ryan Liptak <squeek502@hotmail.com> | 2021-11-01 00:54:04 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2021-11-04 14:54:25 -0400 |
| commit | e97feb96e4daf7d53538c9c8773d50459a59e5ee (patch) | |
| tree | 33474da46590a20370d970d033a3123b620b2f81 /src/codegen | |
| parent | d03e9d0b8347a74d674bdafadb71e7ddd8fdfad1 (diff) | |
| download | zig-e97feb96e4daf7d53538c9c8773d50459a59e5ee.tar.gz zig-e97feb96e4daf7d53538c9c8773d50459a59e5ee.zip | |
Replace ArrayList.init/ensureTotalCapacity pairs with initCapacity
Because ArrayList.initCapacity uses 'precise' capacity allocation, this should save memory on average, and definitely will save memory in cases where ArrayList is used where a regular allocated slice could have also be used.
Diffstat (limited to 'src/codegen')
| -rw-r--r-- | src/codegen/llvm.zig | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig index 683ee9b95b..c59c9058ba 100644 --- a/src/codegen/llvm.zig +++ b/src/codegen/llvm.zig @@ -849,8 +849,7 @@ pub const DeclGen = struct { assert(struct_obj.haveFieldTypes()); - var llvm_field_types: std.ArrayListUnmanaged(*const llvm.Type) = .{}; - try llvm_field_types.ensureTotalCapacity(gpa, struct_obj.fields.count()); + var llvm_field_types = try std.ArrayListUnmanaged(*const llvm.Type).initCapacity(gpa, struct_obj.fields.count()); defer llvm_field_types.deinit(gpa); for (struct_obj.fields.values()) |field| { @@ -1251,8 +1250,7 @@ pub const DeclGen = struct { const field_vals = tv.val.castTag(.@"struct").?.data; const gpa = self.gpa; - var llvm_fields: std.ArrayListUnmanaged(*const llvm.Value) = .{}; - try llvm_fields.ensureTotalCapacity(gpa, field_vals.len); + var llvm_fields = try std.ArrayListUnmanaged(*const llvm.Value).initCapacity(gpa, field_vals.len); defer llvm_fields.deinit(gpa); for (field_vals) |field_val, i| { |
