ignore this 2 master
authorhgn <hgodden00@gmail.com>
Sat, 12 Jul 2025 18:19:32 +0000 (19:19 +0100)
committerhgn <hgodden00@gmail.com>
Sat, 12 Jul 2025 18:19:32 +0000 (19:19 +0100)
build.c
temp.c

diff --git a/build.c b/build.c
index 9d442f2db573af05fecf7b1ed5c8596a3e29b940..bedb1e0739ea15ee5a99f1050c061d2bdb2a7022 100644 (file)
--- a/build.c
+++ b/build.c
@@ -507,12 +507,14 @@ void s_dbtest_build(void)
 }
 
 #include "vg/vg_mem_pool.c"
+#include "vg_kv.c"
 
 int main( int argc, const char *argv[] )
 {
    vg_log_init();
    _vg_opt_init( argc, argv );
 
+
    const char *arg;
 
    if( (arg = vg_long_opt_arg( "glsl-dir", "Specify output directory for preprocessed GLSL" )) )
diff --git a/temp.c b/temp.c
index 81403b83a1961a0c75258010d3fa15e824fc06f4..552841a67ac437077bfa6e6c52a151e9018362a3 100644 (file)
--- a/temp.c
+++ b/temp.c
    return 0;
 #endif
 
+
+
+
+
+
+
+
+
+
+
+   f64 std_worst_error = 0.0,
+       vg_worst_error = 0.0;
+
+   u32 dps = 6;
+
+   vg_rand rando;
+   vg_rand_seed( &rando, 92323 );
+   for( u32 i=0; i<100000; i ++ )
+   {
+      f64 number = (vg_randf64( &rando )*2.0-1.0)*1231773.443334311;
+      
+      char std_buf[ 256 ];
+      snprintf( std_buf, 64, "%.*f", dps, number );
+      f64 std_readback_number = atof( std_buf );
+      f64 std_err = std_readback_number - number;
+      if( fabs(std_err) > fabs(std_worst_error) )
+         std_worst_error = std_err;
+      
+      /* VG's turn */
+      char vg_buf[ 256 ];
+      vg_str str;
+      vg_strnull( &str, vg_buf, sizeof(vg_buf) );
+      vg_strcatf64( &str, number, 10, dps );
+
+      f64 vg_readback_number;
+      vg_strp strp = { .buffer = vg_buf };
+      vg_strp_f64( &strp, &vg_readback_number );
+
+      f64 vg_err = vg_readback_number - number;
+      if( fabs(vg_err) > fabs(vg_worst_error) )
+         vg_worst_error = vg_err;
+
+      
+      vg_strnull( &str, vg_buf, sizeof(vg_buf) );
+      vg_strcatf64( &str, number, 30, dps );
+      puts( vg_buf );
+   }
+
+   printf( "worst error (vgstrp): %.20f\n", vg_worst_error );
+   printf( "worst error (std):    %.20f\n", std_worst_error );
+
+   return 0;