[前][次][番号順一覧][スレッド一覧]

ruby-changes:68915

From: Maxime <ko1@a...>
Date: Thu, 21 Oct 2021 08:13:10 +0900 (JST)
Subject: [ruby-changes:68915] d2ad0a1175 (master): Added synthetic torture test with 30K tiny methods

https://git.ruby-lang.org/ruby.git/commit/?id=d2ad0a1175

From d2ad0a1175a83392710a4248dc541492ba151e61 Mon Sep 17 00:00:00 2001
From: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@s...>
Date: Fri, 5 Feb 2021 15:07:06 -0500
Subject: Added synthetic torture test with 30K tiny methods

---
 bootstraptest/test_ujit_many_funs.rb | 121018 ++++++++++++++++++++++++++++++++
 misc/gen_call_test.rb                |     47 +
 2 files changed, 121065 insertions(+)
 create mode 100644 bootstraptest/test_ujit_many_funs.rb
 create mode 100644 misc/gen_call_test.rb

diff --git a/bootstraptest/test_ujit_many_funs.rb b/bootstraptest/test_ujit_many_funs.rb
new file mode 100644
index 0000000000..8109f4aa46
--- /dev/null
+++ b/bootstraptest/test_ujit_many_funs.rb
@@ -0,0 +1,121018 @@ https://github.com/ruby/ruby/blob/trunk/bootstraptest/test_ujit_many_funs.rb#L1
+# This is a torture test for the JIT.
+# There are 30K tiny methods in a 30-deep call hierarchy.
+assert_equal '1000000', %q{
+
+def fun_l0_n0()
+    fun_l1_n758
+end
+
+def fun_l0_n1()
+    fun_l1_n491
+end
+
+def fun_l0_n2()
+    fun_l1_n804
+end
+
+def fun_l0_n3()
+    fun_l1_n253
+end
+
+def fun_l0_n4()
+    fun_l1_n409
+end
+
+def fun_l0_n5()
+    fun_l1_n383
+end
+
+def fun_l0_n6()
+    fun_l1_n170
+end
+
+def fun_l0_n7()
+    fun_l1_n821
+end
+
+def fun_l0_n8()
+    fun_l1_n424
+end
+
+def fun_l0_n9()
+    fun_l1_n328
+end
+
+def fun_l0_n10()
+    fun_l1_n326
+end
+
+def fun_l0_n11()
+    fun_l1_n879
+end
+
+def fun_l0_n12()
+    fun_l1_n509
+end
+
+def fun_l0_n13()
+    fun_l1_n464
+end
+
+def fun_l0_n14()
+    fun_l1_n806
+end
+
+def fun_l0_n15()
+    fun_l1_n277
+end
+
+def fun_l0_n16()
+    fun_l1_n684
+end
+
+def fun_l0_n17()
+    fun_l1_n54
+end
+
+def fun_l0_n18()
+    fun_l1_n514
+end
+
+def fun_l0_n19()
+    fun_l1_n967
+end
+
+def fun_l0_n20()
+    fun_l1_n50
+end
+
+def fun_l0_n21()
+    fun_l1_n248
+end
+
+def fun_l0_n22()
+    fun_l1_n410
+end
+
+def fun_l0_n23()
+    fun_l1_n411
+end
+
+def fun_l0_n24()
+    fun_l1_n422
+end
+
+def fun_l0_n25()
+    fun_l1_n427
+end
+
+def fun_l0_n26()
+    fun_l1_n929
+end
+
+def fun_l0_n27()
+    fun_l1_n93
+end
+
+def fun_l0_n28()
+    fun_l1_n790
+end
+
+def fun_l0_n29()
+    fun_l1_n107
+end
+
+def fun_l0_n30()
+    fun_l1_n29
+end
+
+def fun_l0_n31()
+    fun_l1_n164
+end
+
+def fun_l0_n32()
+    fun_l1_n720
+end
+
+def fun_l0_n33()
+    fun_l1_n30
+end
+
+def fun_l0_n34()
+    fun_l1_n133
+end
+
+def fun_l0_n35()
+    fun_l1_n122
+end
+
+def fun_l0_n36()
+    fun_l1_n101
+end
+
+def fun_l0_n37()
+    fun_l1_n80
+end
+
+def fun_l0_n38()
+    fun_l1_n759
+end
+
+def fun_l0_n39()
+    fun_l1_n315
+end
+
+def fun_l0_n40()
+    fun_l1_n508
+end
+
+def fun_l0_n41()
+    fun_l1_n750
+end
+
+def fun_l0_n42()
+    fun_l1_n200
+end
+
+def fun_l0_n43()
+    fun_l1_n662
+end
+
+def fun_l0_n44()
+    fun_l1_n2
+end
+
+def fun_l0_n45()
+    fun_l1_n864
+end
+
+def fun_l0_n46()
+    fun_l1_n482
+end
+
+def fun_l0_n47()
+    fun_l1_n196
+end
+
+def fun_l0_n48()
+    fun_l1_n867
+end
+
+def fun_l0_n49()
+    fun_l1_n942
+end
+
+def fun_l0_n50()
+    fun_l1_n179
+end
+
+def fun_l0_n51()
+    fun_l1_n442
+end
+
+def fun_l0_n52()
+    fun_l1_n613
+end
+
+def fun_l0_n53()
+    fun_l1_n282
+end
+
+def fun_l0_n54()
+    fun_l1_n624
+end
+
+def fun_l0_n55()
+    fun_l1_n514
+end
+
+def fun_l0_n56()
+    fun_l1_n59
+end
+
+def fun_l0_n57()
+    fun_l1_n401
+end
+
+def fun_l0_n58()
+    fun_l1_n693
+end
+
+def fun_l0_n59()
+    fun_l1_n643
+end
+
+def fun_l0_n60()
+    fun_l1_n104
+end
+
+def fun_l0_n61()
+    fun_l1_n407
+end
+
+def fun_l0_n62()
+    fun_l1_n418
+end
+
+def fun_l0_n63()
+    fun_l1_n775
+end
+
+def fun_l0_n64()
+    fun_l1_n351
+end
+
+def fun_l0_n65()
+    fun_l1_n320
+end
+
+def fun_l0_n66()
+    fun_l1_n181
+end
+
+def fun_l0_n67()
+    fun_l1_n878
+end
+
+def fun_l0_n68()
+    fun_l1_n404
+end
+
+def fun_l0_n69()
+    fun_l1_n660
+end
+
+def fun_l0_n70()
+    fun_l1_n644
+end
+
+def fun_l0_n71()
+    fun_l1_n416
+end
+
+def fun_l0_n72()
+    fun_l1_n372
+end
+
+def fun_l0_n73()
+    fun_l1_n525
+end
+
+def fun_l0_n74()
+    fun_l1_n468
+end
+
+def fun_l0_n75()
+    fun_l1_n652
+end
+
+def fun_l0_n76()
+    fun_l1_n418
+end
+
+def fun_l0_n77()
+    fun_l1_n935
+end
+
+def fun_l0_n78()
+    fun_l1_n170
+end
+
+def fun_l0_n79()
+    fun_l1_n805
+end
+
+def fun_l0_n80()
+    fun_l1_n405
+end
+
+def fun_l0_n81()
+    fun_l1_n994
+end
+
+def fun_l0_n82()
+    fun_l1_n395
+end
+
+def fun_l0_n83()
+    fun_l1_n399
+end
+
+def fun_l0_n84()
+    fun_l1_n503
+end
+
+def fun_l0_n85()
+    fun_l1_n451
+end
+
+def fun_l0_n86()
+    fun_l1_n920
+end
+
+def fun_l0_n87()
+    fun_l1_n446
+end
+
+def fun_l0_n88()
+    fun_l1_n637
+end
+
+def fun_l0_n89()
+    fun_l1_n732
+end
+
+def fun_l0_n90()
+    fun_l1_n823
+end
+
+def fun_l0_n91()
+    fun_l1_n347
+end
+
+def fun_l0_n92()
+    fun_l1_n808
+end
+
+def fun_l0_n93()
+    fun_l1_n941
+end
+
+def fun_l0_n94()
+    fun_l1_n808
+end
+
+def fun_l0_n95()
+    fun_l1_n575
+end
+
+def fun_l0_n96()
+    fun_l1_n835
+end
+
+def fun_l0_n97()
+    fun_l1_n601
+end
+
+def fun_l0_n98()
+    fun_l1_n522
+end
+
+def fun_l0_n99()
+    fun_l1_n884
+end
+
+def fun_l0_n100()
+    fun_l1_n234
+end
+
+def fun_l0_n101()
+    fun_l1_n58
+end
+
+def fun_l0_n102()
+    fun_l1_n702
+end
+
+def fun_l0_n103()
+    fun_l1_n816
+end
+
+def fun_l0_n104()
+    fun_l1_n92
+end
+
+def fun_l0_n105()
+    fun_l1_n673
+end
+
+def fun_l0_n106()
+    fun_l1_n360
+end
+
+def fun_l0_n107()
+    fun_l1_n305
+end
+
+def fun_l0_n108()
+    fun_l1_n202
+end
+
+def fun_l0_n109()
+    fun_l1_n879
+end
+
+def fun_l0_n110()
+    fun_l1_n84
+end
+
+def fun_l0_n111()
+    fun_l1_n50
+end
+
+def fun_l0_n112()
+    fun_l1_n648
+end
+
+def fun_l0_n113()
+    fun_l1_n786
+end
+
+def fun_l0_n114()
+    fun_l1_n627
+end
+
+def fun_l0_n115()
+    fun_l1_n404
+end
+
+def fun_l0_n116()
+    fun_l1_n496
+end
+
+def fun_l0_n117()
+    fun_l1_n778
+end
+
+def fun_l0_n118()
+    fun_l1_n119
+end
+
+def fun_l0_n119()
+    fun_l1_n350
+end
+
+def fun_l0_n120()
+    fun_l1_n767
+end
+
+def fun_l0_n121()
+    fun_l1_n463
+end
+
+def fun_l0_n122()
+    fun_l1_n481
+end
+
+def fun_l0_n123()
+    fun_l1_n80
+end
+
+def fun_l0_n124()
+    fun_l1_n271
+end
+
+def fun_l0_n125()
+    fun_l1_n315
+end
+
+def fun_l0_n126()
+    fun_l1_n545
+end
+
+def fun_l0_n127()
+    fun_l1_n598
+end
+
+def fun_l0_n128()
+    fun_l1_n599
+end
+
+def fun_l0_n129()
+    fun_l1_n263
+end
+
+def fun_l0_n130()
+    fun_l1_n514
+end
+
+def fun_l0_n131()
+    fun_l1_n779
+end
+
+def fun_l0_n132()
+    fun_l1_n585
+end
+
+def fun_l0_n133()
+    fun_l1_n919
+end
+
+def fun_l0_n134()
+    fun_l1_n665
+end
+
+def fun_l0_n135()
+    fun_l1_n442
+end
+
+def fun_l0_n136()
+    fun_l1_n84
+end
+
+def fun_l0_n137()
+    fun_l1_n74
+end
+
+def fun_l0_n138()
+    fun_l1_n606
+end
+
+def fun_l0_n139()
+    fun_l1_n655
+end
+
+def fun_l0_n140()
+    fun_l1_n130
+end
+
+def fun_l0_n141()
+    fun_l1_n626
+end
+
+def fun_l0_n142()
+    fun_l1_n605
+end
+
+def fun_l0_n143()
+    fun_l1_n420
+end
+
+def fun_l0_n144()
+    fun_l1_n100
+end
+
+def fun_l0_n145()
+    fun_l1_n961
+end
+
+def fun_l0_n146()
+    fun_l1_n721
+end
+
+def fun_l0_n147()
+    fun_l1_n453
+end
+
+def fun_l0_n148()
+    fun_l1_n737
+end
+
+def fun_l0_n149()
+    fun_l1_n230
+end
+
+def fun_l0_n150()
+    fun_l1_n881
+end
+
+def fun_l0_n151()
+    fun_l1_n471
+end
+
+def fun_l0_n152()
+    fun_l1_n72
+end
+
+def fun_l0_n153()
+    fun_l1_n221
+end
+
+def fun_l0_n154()
+    fun_l1_n504
+end
+
+def fun_l0_n155()
+    fun_l1_n222
+end
+
+def fun_l0_n156()
+    fun_l1_n348
+end
+
+def fun_l0_n157()
+    fun_l1_n738
+end
+
+def fun_l0_n158()
+    fun_l1_n588
+end
+
+def fun_l0_n159()
+    fun_l1_n64
+end
+
+def fun_l0_n160()
+    fun_l1_n829
+end
+
+def fun_l0_n161()
+    fun_l1_n265
+end
+
+def fun_l0_n162()
+    fun_l1_n471
+end
+
+def fun_l0_n163()
+    fun_l1_n304
+end
+
+def fun_l0_n164()
+    fun_l1_n518
+end
+
+def fun_l0_n165()
+    fun_l1_n89
+end
+
+def fun_l0_n166()
+    fun_l1_n728
+end
+
+def fun_l0_n167()
+    fun_l1_n292
+end
+
+def fun_l0_n168()
+    fun_l1_n142
+end
+
+def fun_l0_n169()
+    fun_l1_n374
+end
+
+def fun_l0_n170()
+    fun_l1_n371
+end
+
+def fun_l0_n171()
+    fun_l1_n904
+end
+
+def fun_l0_n172()
+    fun_l1_n519
+end
+
+def fun_l0_n173()
+    fun_l1_n239
+end
+
+def fun_l0_n174()
+    fun_l1_n664
+end
+
+def fun_l0_n175()
+    fun_l1_n701
+end
+
+def fun_l0_n176()
+    fun_l1_n586
+end
+
+def fun_l0_n177()
+    fun_l1_n78
+end
+
+def fun_l0_n178()
+    fun_l1_n663
+end
+
+def fun_l0_n179()
+    fun_l1_n46
+end
+
+def fun_l0_n180()
+    fun_l1_n273
+end
+
+def fun_l0_n181()
+    fun_l1_n250
+end
+
+def fun_l0_n182()
+    fun_l1_n362
+end
+
+def fun_l0_n183()
+    fun_l1_n69
+end
+
+def fun_l0_n184()
+    fun_l1_n874
+end
+
+def fun_l0_n185()
+    fun_l1_n135
+end
+
+def fun_l0_n186()
+    fun_l1_n634
+end
+
+def fun_l0_n187()
+    fun_l1_n885
+end
+
+def fun_l0_n188()
+    fun_l1_n589
+end
+
+def fun_l0_n189()
+    fun_l1_n21
+end
+
+def fun_l0_n190()
+    fun_l1_n962
+end
+
+def fun_l0_n191()
+    fun_l1_n267
+end
+
+def fun_l0_n192()
+    fun_l1_n569
+end
+
+def fun_l0_n193()
+    fun_l1_n921
+end
+
+def fun_l0_n194()
+    fun_l1_n535
+end
+
+def fun_l0_n195()
+    fun_l1_n362
+end
+
+def fun_l0_n196()
+    fun_l1_n862
+end
+
+def fun_l0_n197()
+    fun_l1_n565
+end
+
+def fun_l0_n198()
+    fun_l1_n779
+end
+
+def fun_l0_n199()
+    fun_l1_n848
+end
+
+def fun_l0_n200()
+    fun_l1_n755
+end
+
+def fun_l0_n201()
+    fun_l1_n493
+end
+
+def fun_l0_n202()
+    fun_l1_n574
+end
+
+def fun_l0_n203()
+    fun_l1_n172
+end
+
+def fun_l0_n204()
+    fun_l1_n388
+end
+
+def fun_l0_n205()
+    fun_l1_n67
+end
+
+def fun_l0_n206()
+    fun_l1_n449
+end
+
+def fun_l0_n207()
+    fun_l1_n883
+end
+
+def fun_l0_n208()
+    fun_l1_n749
+end
+
+def fun_l0_n209()
+    fun_l1_n425
+end
+
+def fun_l0_n210()
+    fun_l1_n848
+end
+
+def fun_l0_n211()
+    fun_l1_n320
+end
+
+def fun_l0_n212()
+    fun_l1_n122
+end
+
+def fun_l0_n213()
+    fun_l1_n878
+ (... truncated)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]