Compare commits

...

4 Commits

5 changed files with 950 additions and 218 deletions

1
.gitignore vendored
View File

@@ -5,3 +5,4 @@ C/watl.v0.msvc.c.listing.txt
watl_exercise.user watl_exercise.user
watl_exercise.proj watl_exercise.proj
Odin/watl.v0.win32.odin.listing.txt Odin/watl.v0.win32.odin.listing.txt
C/watl.v0.lottes.c.listing.txt

File diff suppressed because it is too large Load Diff

View File

@@ -1366,7 +1366,6 @@ void arena_allocator_proc(AllocatorProc_In in, AllocatorProc_Out* out)
} }
#pragma endregion Arena #pragma endregion Arena
// Modern C+
#pragma region Key Table 1-Layer Linear (KT1L) #pragma region Key Table 1-Layer Linear (KT1L)
void kt1l__populate_slice_a2(KT1L_Byte*restrict kt, AllocatorInfo backing, KT1L_Meta m, Slice_Byte values, SSIZE num_values ) { void kt1l__populate_slice_a2(KT1L_Byte*restrict kt, AllocatorInfo backing, KT1L_Meta m, Slice_Byte values, SSIZE num_values ) {
assert(kt != nullptr); assert(kt != nullptr);

View File

@@ -115,10 +115,10 @@ $compiler_args += $flag_full_src_path
# $compiler_args += $flag_asm_listing_file # $compiler_args += $flag_asm_listing_file
# $compiler_args += $flag_optimize_speed_max # $compiler_args += $flag_optimize_speed_max
$compiler_args += $flag_optimize_fast # $compiler_args += $flag_optimize_fast
# $compiler_args += $flag_optimize_size # $compiler_args += $flag_optimize_size
# $compiler_args += $flag_optimize_intrinsics # $compiler_args += $flag_optimize_intrinsics
# $compiler_args += $flag_no_optimization $compiler_args += $flag_no_optimization
# Debug setup # Debug setup
$compiler_args += ($flag_define + 'BUILD_DEBUG') $compiler_args += ($flag_define + 'BUILD_DEBUG')

View File

@@ -93,7 +93,7 @@ $compiler_args += $flag_c11
# Constraints on C program code-gen # Constraints on C program code-gen
$compiler_args += $flag_exceptions_disabled $compiler_args += $flag_exceptions_disabled
$compiler_args += $flag_RTTI_disabled $compiler_args += $flag_RTTI_disabled
$compiler_args += $flag_preprocess_conform # $compiler_args += $flag_preprocess_conform
# $compiler_args += $flag_sanitize_address # $compiler_args += $flag_sanitize_address
$compiler_args += $flag_wall $compiler_args += $flag_wall
@@ -103,7 +103,7 @@ $compiler_args += $flag_charset_utf8
# Specifing output pathing # Specifing output pathing
$compiler_args += ( $flag_path_interm + $path_build + '\' ) $compiler_args += ( $flag_path_interm + $path_build + '\' )
$compiler_args += ( $flag_path_output + $path_build + '\' ) # $compiler_args += ( $flag_path_output + $path_build + '\' )
# Dump preprocess file # Dump preprocess file
if ($false) { if ($false) {
@@ -141,7 +141,10 @@ $compiler_args += $flag_compile, $unit
$compiler_args | ForEach-Object { Write-Host $_ } $compiler_args | ForEach-Object { Write-Host $_ }
# Compile the unit # Compile the unit
& $compiler $compiler_args $compilation_time = Measure-Command {
& $compiler $compiler_args
}
write-host "Compilation took $($compilation_time.TotalMilliseconds)ms"
write-host write-host
$binary = join-path $path_build "$unit_name.exe" $binary = join-path $path_build "$unit_name.exe"
@@ -174,8 +177,9 @@ if ($true) {
# Diagnoistc print for the args # Diagnoistc print for the args
$linker_args | ForEach-Object { Write-Host $_ } $linker_args | ForEach-Object { Write-Host $_ }
& $linker $linker_args $linking_time = Measure-Command { & $linker $linker_args }
# & $radlink $linker_args # & $radlink $linker_args
write-host "Linking took $($linking_time.TotalMilliseconds)ms"
write-host write-host
} }