summaryrefslogtreecommitdiff
path: root/tools/tform.scm
diff options
context:
space:
mode:
Diffstat (limited to 'tools/tform.scm')
-rw-r--r--tools/tform.scm429
1 files changed, 429 insertions, 0 deletions
diff --git a/tools/tform.scm b/tools/tform.scm
index 9107ffe..6ae67c3 100644
--- a/tools/tform.scm
+++ b/tools/tform.scm
@@ -146,6 +146,435 @@
))
(f)
+(exit)
+
+;;; --------------------------------------------------------------------------------
+;;; these tests are not currently used
+
+(define size 1000000)
+
+(define (f1) ; [116] -> [78] (fixed c_function_chooser) -> [54] opt_p_call_cc
+ (let ((str ""))
+ (do ((i 0 (+ i 1)))
+ ((= i size) str)
+ (set! str (format #f "just a bare string!"))))) ; ~% is turned into \n so that doesn't cost anything
+
+;(unless (string=? (f1) "just a bare string!") (format *stderr* "f1: ~S~%" (f1)))
+
+#|
+15,951,020 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+11,000,000 s7.c:opt_p_call_cc [/home/bil/motif-snd/repl]
+ 9,000,000 s7.c:g_format_just_control_string [/home/bil/motif-snd/repl]
+ 9,000,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+ 6,895,119 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f2) ; [309] -> [277 opt_p_call_ccs]
+ (let ((str "asdf")
+ (res ""))
+ (do ((i 0 (+ i 1)))
+ ((= i size) res)
+ (set! res (format #f "~a" str))))) ; isn't this just copy? (for a string) and opt_p_call_ccs
+
+;(unless (string=? (f2) "asdf") (format *stderr* "f2: ~S~%" (f2)))
+
+#|
+67,538,352 s7.c:s7_object_to_string [/home/bil/motif-snd/repl]
+46,000,000 s7.c:string_to_port [/home/bil/motif-snd/repl]
+36,000,164 s7.c:block_to_string [/home/bil/motif-snd/repl]
+29,103,257 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+24,000,000 s7.c:string_write_string [/home/bil/motif-snd/repl]
+15,951,020 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+15,149,728 memcpy
+15,000,000 s7.c:g_format_as_objstr [/home/bil/motif-snd/repl]
+15,000,000 s7.c:opt_p_call_ccs [/home/bil/motif-snd/repl]
+ 9,000,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f3) ; [469]
+ (let ((str "asdf")
+ (res ""))
+ (do ((i 0 (+ i 1)))
+ ((= i size) res)
+ (set! res (format #f "str: ~A" str))))) ; maybe extend g_format_as_objstr to include prestring?
+
+;(unless (string=? (f3) "str: asdf") (format *stderr* "f3: ~S~%" (f3)))
+
+#|
+237,610,187 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 46,000,000 s7.c:string_to_port [/home/bil/motif-snd/repl]
+ 30,149,775 memcpy
+ 29,103,615 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 29,000,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 24,000,000 s7.c:string_write_string [/home/bil/motif-snd/repl]
+ 21,001,261 strchr
+ 15,951,020 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 15,000,000 s7.c:opt_p_call_ccs [/home/bil/motif-snd/repl]
+ 9,000,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f4) ; [717]
+ (let ((str "asdf")
+ (res ""))
+ (do ((i 0 (+ i 1)))
+ ((= i size) res)
+ (set! res (format #f "str: ~A ~C" str (string-ref str 0))))))
+
+;(unless (string=? (f4) "str: asdf a") (format *stderr* "f4: ~S~%" (f4)))
+
+#|
+333,610,119 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 71,000,000 s7.c:opt_p_call_any [/home/bil/motif-snd/repl] ; ccsc ideally
+ 46,149,893 memcpy
+ 46,000,000 s7.c:string_to_port [/home/bil/motif-snd/repl]
+ 42,001,811 strchr
+ 29,104,716 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 29,000,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 24,000,000 s7.c:string_write_string [/home/bil/motif-snd/repl]
+ 18,000,000 s7.c:string_write_char [/home/bil/motif-snd/repl]
+ 15,951,020 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 10,000,000 s7.c:string_ref_p_pi_unchecked [/home/bil/motif-snd/repl] ; str not set so string-ref is constant
+ 9,000,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+ 8,000,000 s7.c:opt_p_pi_sc [/home/bil/motif-snd/repl] ; calls string_ref_p_pi_unchecked
+ 6,002,360 ?
+ 6,000,000 format_to_port_1?
+ 6,000,000 s7.c:opt_p_c [/home/bil/motif-snd/repl] ; for opt_p_pi_sc! why not just embed it?
+ 4,000,098 ?
+ 4,000,004 ./ctype/../include/ctype.h:__ctype_b_loc [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 4,000,000 s7.c:opt_p_s [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f5) ; [666]
+ (let ((str (list 1 2 3))
+ (res "")
+ (size2 (/ size 2)))
+ (do ((i 0 (+ i 1)))
+ ((= i size2) res)
+ (set! res (format #f "(~{~A~^ ~})" str)))))
+
+;(unless (string=? (f5) "(1 2 3)") (format *stderr* "f5: ~S~%" (f5)))
+
+#|
+256,000,000 s7.c:format_to_port_1'2 [/home/bil/motif-snd/repl]
+204,109,962 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 58,500,000 s7.c:integer_to_port [/home/bil/motif-snd/repl]
+ 27,000,000 s7.c:string_write_char [/home/bil/motif-snd/repl]
+ 15,650,121 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 15,000,000 /usr/include/x86_64-linux-gnu/bits/string_fortified.h:integer_to_port
+ 14,500,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 14,113,341 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 12,000,584 s7.c:s7_list_length [/home/bil/motif-snd/repl]
+ 11,000,000 s7.c:object_to_list [/home/bil/motif-snd/repl]
+ 10,502,830 ./string/../sysdeps/x86_64/multiarch/strchr-avx2.S:__strchr_avx2 [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 7,950,972 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 7,500,000 s7.c:opt_p_call_ccs [/home/bil/motif-snd/repl]
+ 4,500,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f6) ; [943]
+ (let ((res "")
+ (size2 (/ size 2)))
+ (do ((i 0 (+ i 1)))
+ ((= i size2) res)
+ (set! res (format #f "~1,4F" pi)))))
+
+;(unless (string=? (f6) "3.1416") (format *stderr* "f6: ~S~%" (f6)))
+
+#|
+225,500,000 ./stdio-common/./stdio-common/printf_fp.c:__printf_fp_buffer_1.constprop.0.isra.0 [/usr/lib/x86_64-linux-gnu/libc.so.6]
+122,109,960 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+114,524,056 ./stdio-common/./stdio-common/vfprintf-internal.c:__printf_buffer [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 63,000,000 ./stdlib/../sysdeps/x86_64/mul_1.S:__mpn_mul_1 [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 40,000,000 s7.c:format_numeric_arg [/home/bil/motif-snd/repl]
+ 36,519,357 ./stdio-common/./stdio-common/Xprintf_buffer_write.c:__printf_buffer_write [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 32,500,012 s7.c:number_to_string_base_10.isra.0 [/home/bil/motif-snd/repl]
+ 30,500,000 s7.c:format_number [/home/bil/motif-snd/repl]
+ 27,500,000 ./stdio-common/./stdio-common/printf_fp.c:__printf_fp_l_buffer [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 25,000,000 ./stdio-common/./stdio-common/printf_fp.c:hack_digit [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 19,507,657 ./debug/./debug/snprintf_chk.c:__snprintf_chk [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 19,009,424 ./string/../sysdeps/x86_64/multiarch/strchr-avx2.S:__strchrnul_avx2 [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 15,149,924 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 14,500,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 14,113,761 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 14,006,916 ./libio/./libio/vsnprintf.c:__vsnprintf_internal [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 12,000,000 s7.c:string_write_string [/home/bil/motif-snd/repl]
+ 11,000,000 ./stdlib/../sysdeps/ieee754/dbl-64/dbl2mpn.c:__mpn_extract_double [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 10,503,772 ./string/../sysdeps/x86_64/multiarch/strchr-avx2.S:__strchr_avx2 [/usr/lib/x86_64-linux-gnu/libc.
+|#
+
+
+(define (f7) ; [362]
+ (let ((res "")
+ (size2 (/ size 2)))
+ (do ((i 0 (+ i 1)))
+ ((= i size2) res)
+ (set! res (format #f "~D is ~:D" 3 3)))))
+
+;(unless (string=? (f7) "3 is third") (format *stderr* "f7: ~S~%" (f7)))
+
+#|
+151,609,892 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 35,500,000 s7.c:format_number [/home/bil/motif-snd/repl]
+ 35,500,000 s7.c:opt_p_call_any [/home/bil/motif-snd/repl]
+ 24,000,000 s7.c:string_write_string [/home/bil/motif-snd/repl]
+ 23,500,012 s7.c:number_to_string_base_10.isra.0 [/home/bil/motif-snd/repl]
+ 23,149,965 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 14,500,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 14,114,301 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 10,503,830 ./string/../sysdeps/x86_64/multiarch/strchr-avx2.S:__strchr_avx2 [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 7,950,930 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 6,000,000 s7.c:opt_p_c [/home/bil/motif-snd/repl]
+ 4,500,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f8) ; [375]
+ (let ((res "")
+ (size2 (/ size 2)))
+ (do ((i 0 (+ i 1)))
+ ((= i size2) res)
+ (set! res (format #f "~ND" 20 1234))))) ; "width field so string is 20 wide
+
+;(unless (string=? (f8) " 1234") (format *stderr* "f8: ~S~%" (f8)))
+
+#|
+114,109,824 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 37,500,000 s7.c:integer_to_string [/home/bil/motif-snd/repl]
+ 35,500,000 s7.c:format_number [/home/bil/motif-snd/repl]
+ 35,500,000 s7.c:opt_p_call_any [/home/bil/motif-snd/repl]
+ 27,500,012 s7.c:number_to_string_base_10.isra.0 [/home/bil/motif-snd/repl]
+ 21,000,000 s7.c:local_memset [/home/bil/motif-snd/repl]
+ 14,500,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 14,114,316 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 13,500,000 s7.c:insert_spaces [/home/bil/motif-snd/repl]
+ 13,149,880 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 12,000,000 s7.c:string_write_string [/home/bil/motif-snd/repl]
+ 8,500,000 s7.c:format_n_arg [/home/bil/motif-snd/repl]
+ 7,950,930 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 6,000,000 s7.c:opt_p_c [/home/bil/motif-snd/repl]
+ 4,500,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f9) ; [424]
+ (let ((res "")
+ (size2 (/ size 2)))
+ (do ((i 0 (+ i 1)))
+ ((= i size2) res)
+ (set! res (format #f "~NC~D" 20 #\space 1234))))) ; 20 spaces then 1234
+
+;(unless (string=? (f9) " 1234") (format *stderr* "f9: ~S~%" (f9)))
+
+#|
+146,609,756 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 39,500,000 s7.c:opt_p_call_any [/home/bil/motif-snd/repl]
+ 37,500,000 s7.c:integer_to_string [/home/bil/motif-snd/repl]
+ 35,500,000 s7.c:format_number [/home/bil/motif-snd/repl]
+ 35,500,000 s7.c:local_memset [/home/bil/motif-snd/repl]
+ 24,000,012 s7.c:number_to_string_base_10.isra.0 [/home/bil/motif-snd/repl]
+ 18,500,000 s7.c:format_append_chars [/home/bil/motif-snd/repl]
+ 14,500,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 14,114,451 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 12,000,000 s7.c:string_write_string [/home/bil/motif-snd/repl]
+ 8,500,000 s7.c:format_n_arg [/home/bil/motif-snd/repl]
+ 7,950,930 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 7,650,071 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 7,500,000 s7.c:opt_p_c [/home/bil/motif-snd/repl]
+ 4,500,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f10) ; [768]
+ (let ((res "")
+ (size2 (/ size 2)))
+ (do ((i 0 (+ i 1)))
+ ((= i size2) res)
+ (set! res (format #f "~{~C~^ ~}" "hiho")))))
+
+;(unless (string=? (f10) "h i h o") (format *stderr* "f10: ~S~%" (f10)))
+
+#|
+367,000,000 s7.c:format_to_port_1'2 [/home/bil/motif-snd/repl]
+189,703,539 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 63,000,000 s7.c:string_write_char [/home/bil/motif-snd/repl]
+ 42,500,000 s7.c:object_to_list [/home/bil/motif-snd/repl]
+ 29,094,117 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 18,000,000 s7.c:opt_p_call_ppp [/home/bil/motif-snd/repl]
+ 14,500,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 8,000,004 ./ctype/../include/ctype.h:__ctype_b_loc [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 7,950,930 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 7,650,227 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 4,500,000 s7.c:opt_p_c [/home/bil/motif-snd/repl]
+ 4,500,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+ 4,000,002 ???:0x0000000000116e20 [???]
+ 3,000,000 s7.c:check_free_heap_size [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f11) ; [345]
+ (let ((res "")
+ (size10 (/ size 10)))
+ (do ((i 0 (+ i 1)))
+ ((= i size10) res)
+ (set! res (format #f "~{~{~C~^ ~}~^...~}" (list "hiho" "test"))))))
+
+;(unless (string=? (f11) "h i h o...t e s t") (format *stderr* "f11: ~S~%" (f11)))
+
+#|
+217,500,010 s7.c:format_to_port_1'2 [/home/bil/motif-snd/repl]
+ 39,898,225 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 25,200,000 s7.c:string_write_char [/home/bil/motif-snd/repl]
+ 19,200,000 s7.c:object_to_list [/home/bil/motif-snd/repl]
+ 9,714,210 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 6,184,807 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 3,600,000 s7.c:opt_p_call_ppp [/home/bil/motif-snd/repl]
+ 3,200,004 ./ctype/../include/ctype.h:__ctype_b_loc [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 2,900,085 s7.c:list_p_pp [/home/bil/motif-snd/repl]
+ 2,900,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 2,108,641 ./string/../sysdeps/x86_64/multiarch/strchr-avx2.S:__strchr_avx2 [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 1,900,692 s7.c:s7_list_length [/home/bil/motif-snd/repl]
+ 1,600,002 ???:0x0000000000116e20 [???]
+ 1,550,930 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 1,200,000 s7.c:check_free_heap_size [/home/bil/motif-snd/repl]
+ 900,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+ 802,400 ???:0x0000000000116b00 [???]
+ 700,000 /usr/include/x86_64-linux-gnu/bits/string_fortified.h:format_to_port_1'2
+ 700,000 s7.c:opt_p_pp_cc [/home/bil/motif-snd/repl]
+ 600,000 s7.c:opt_p_c [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f12) ; [443]
+ (let-temporarily (((*s7* 'print-length) 4))
+ (let ((res "")
+ (size4 (/ size 4)))
+ (do ((i 0 (+ i 1)))
+ ((= i size4) res)
+ (set! res (format #f "~{~A~| ~}" #(0 1 2 3 4 5 6 7 8)))))))
+
+;(unless (string=? (f12) "0 1 2 3 ...") (format *stderr* "f12: ~S~%" (f12)))
+
+#|
+178,750,000 s7.c:format_to_port_1'2 [/home/bil/motif-snd/repl]
+ 94,858,241 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 39,000,000 s7.c:integer_to_port [/home/bil/motif-snd/repl]
+ 32,750,000 s7.c:s7_vector_to_list [/home/bil/motif-snd/repl]
+ 23,501,027 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 13,500,000 s7.c:string_write_char [/home/bil/motif-snd/repl]
+ 10,000,000 /usr/include/x86_64-linux-gnu/bits/string_fortified.h:integer_to_port
+ 9,000,000 s7.c:opt_p_call_ppp [/home/bil/motif-snd/repl]
+ 7,584,709 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 7,250,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 6,500,000 s7.c:object_to_list [/home/bil/motif-snd/repl]
+ 6,000,000 s7.c:string_write_string [/home/bil/motif-snd/repl]
+ 3,950,936 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 2,250,000 s7.c:opt_p_c [/home/bil/motif-snd/repl]
+ 2,250,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+ 1,500,000 s7.c:check_free_heap_size [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f13) ; [352]
+ (let ((res "")
+ (size2 (/ size 2)))
+ (do ((i 0 (+ i 1)))
+ ((= i size2) res)
+ (set! res (format #f "~B" 1234)))))
+
+;(unless (string=? (f13) "10011010010") (format *stderr* "f13: ~S~%" (f13)))
+
+#|
+108,000,144 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 78,500,000 s7.c:integer_to_string_any_base [/home/bil/motif-snd/repl]
+ 43,000,000 s7.c:format_number [/home/bil/motif-snd/repl]
+ 32,967,791 s7.c:number_to_string_with_radix [/home/bil/motif-snd/repl]
+ 18,000,000 s7.c:opt_p_call_ppp [/home/bil/motif-snd/repl]
+ 14,500,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 14,114,539 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 12,000,000 s7.c:string_write_string [/home/bil/motif-snd/repl]
+ 7,950,972 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 6,781,191 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 4,500,000 s7.c:opt_p_c [/home/bil/motif-snd/repl]
+ 4,500,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f14) ; [357]
+ (let ((res "")
+ (size2 (/ size 2)))
+ (do ((i 0 (+ i 1)))
+ ((= i size2) res)
+ (set! res (format #f "~A ~* ~A" 1 2 3)))))
+
+;(unless (string=? (f14) "1 3") (format *stderr* "f14: ~S~%" (f14)))
+
+#|
+173,609,289 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 39,500,000 s7.c:opt_p_call_any [/home/bil/motif-snd/repl]
+ 39,000,000 s7.c:integer_to_port [/home/bil/motif-snd/repl]
+ 21,011,634 ./string/../sysdeps/x86_64/multiarch/strchr-avx2.S:__strchr_avx2 [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 16,281,614 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 14,500,000 s7.c:g_format_no_column [/home/bil/motif-snd/repl]
+ 14,114,923 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 10,000,000 /usr/include/x86_64-linux-gnu/bits/string_fortified.h:integer_to_port
+ 7,950,972 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 7,500,000 s7.c:opt_p_c [/home/bil/motif-snd/repl]
+ 4,500,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+|#
+
+
+(define (f15) ; [478]
+ (let ((res "")
+ (size2 (/ size 2)))
+ (do ((i 0 (+ i 1)))
+ ((= i size2) res)
+ (set! res (format #f "~A:~8T~A" 100 'a)))))
+
+;(unless (string=? (f15) "100: a") (format *stderr* "f15: ~S~%" (f15)))
+
+#|
+217,609,212 s7.c:format_to_port_1 [/home/bil/motif-snd/repl]
+ 35,500,000 s7.c:opt_p_call_any [/home/bil/motif-snd/repl]
+ 33,150,402 ./string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:__memcpy_avx_unaligned_erms [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 24,000,024 s7.c:string_write_string [/home/bil/motif-snd/repl]
+ 21,000,000 s7.c:format_numeric_arg [/home/bil/motif-snd/repl]
+ 19,500,012 s7.c:integer_to_port [/home/bil/motif-snd/repl]
+ 18,500,000 s7.c:format_append_chars [/home/bil/motif-snd/repl]
+ 18,000,037 s7.c:symbol_to_port [/home/bil/motif-snd/repl]
+ 15,500,000 s7.c:local_memset [/home/bil/motif-snd/repl]
+ 14,114,921 s7.c:gc.isra.0 [/home/bil/motif-snd/repl]
+ 10,512,314 ./string/../sysdeps/x86_64/multiarch/strchr-avx2.S:__strchr_avx2 [/usr/lib/x86_64-linux-gnu/libc.so.6]
+ 9,500,000 s7.c:g_format_f [/home/bil/motif-snd/repl]
+ 7,950,972 s7.c:opt_dotimes [/home/bil/motif-snd/repl]
+ 6,500,001 /usr/include/x86_64-linux-gnu/bits/string_fortified.h:integer_to_port
+ 6,000,000 s7.c:opt_p_c [/home/bil/motif-snd/repl]
+ 4,500,000 s7.c:opt_set_p_p_f [/home/bil/motif-snd/repl]
+|#
+
+
+(define (test-all)
+ (unless (string=? (f1) "just a bare string!") (format *stderr* "f1: ~S~%" (f1)))
+ (unless (string=? (f2) "asdf") (format *stderr* "f2: ~S~%" (f2)))
+ (unless (string=? (f3) "str: asdf") (format *stderr* "f3: ~S~%" (f3)))
+ (unless (string=? (f4) "str: asdf a") (format *stderr* "f4: ~S~%" (f4)))
+ (unless (string=? (f5) "(1 2 3)") (format *stderr* "f5: ~S~%" (f5)))
+ (unless (string=? (f6) "3.1416") (format *stderr* "f6: ~S~%" (f6)))
+ (unless (string=? (f7) "3 is third") (format *stderr* "f7: ~S~%" (f7)))
+ (unless (string=? (f8) " 1234") (format *stderr* "f8: ~S~%" (f8)))
+ (unless (string=? (f9) " 1234") (format *stderr* "f9: ~S~%" (f9)))
+ (unless (string=? (f10) "h i h o") (format *stderr* "f10: ~S~%" (f10)))
+ (unless (string=? (f11) "h i h o...t e s t") (format *stderr* "f11: ~S~%" (f11)))
+ (unless (string=? (f13) "10011010010") (format *stderr* "f13: ~S~%" (f13)))
+ (unless (string=? (f14) "1 3") (format *stderr* "f14: ~S~%" (f14)))
+ (unless (string=? (f15) "100: a") (format *stderr* "f15: ~S~%" (f15)))
+ )
+
+;(test-all) ; [6556]
(when (> (*s7* 'profile) 0)
(show-profile 200))