From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS4713 221.184.0.0/13 X-Spam-Status: No, score=-3.0 required=3.0 tests=AWL,BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_BL_SPAMCOP_NET, RCVD_IN_DNSWL_MED,SPF_HELO_PASS,SPF_PASS,UNPARSEABLE_RELAY shortcircuit=no autolearn=no autolearn_force=no version=3.4.2 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id 2C5AB1F910 for ; Fri, 11 Nov 2022 23:38:51 +0000 (UTC) Authentication-Results: dcvr.yhbt.net; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=ruby-lang.org header.i=@ruby-lang.org header.b="Y+3DmZYS"; dkim-atps=neutral Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id B14B2120F0D; Sat, 12 Nov 2022 08:38:49 +0900 (JST) Received: from o1678948x4.outbound-mail.sendgrid.net (o1678948x4.outbound-mail.sendgrid.net [167.89.48.4]) by neon.ruby-lang.org (Postfix) with ESMTPS id D2429120EF6 for ; Sat, 12 Nov 2022 08:38:46 +0900 (JST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ruby-lang.org; h=from:references:subject:mime-version:content-type: content-transfer-encoding:list-id:to:cc; s=s1; bh=EunLlRPCu6rUz4zyovVYSVBm97Bdbd8XA09jhKhUNJY=; b=Y+3DmZYSL8rIyTnBh85mg5toLk78HY3XtbNrdeGDvOw6MmjsrxErJ5q7fLodotGx3UdR PMcjL/fbBFl8/9M00P6oolRPz/D9QxBy0kE9pgYzWga4bMiCUIkMqir2D9K8bw/21vpcnl mVq3GO+nnpL5xp2BRPYqTMjlfnpGlK5gCs1B6/xchLrmF/CVbZ/E0Vtw8hNQI3aQV8v4da 1htUrRDp4GvyNBU5BzDXNsce1jskHhF6BRD1pREEsCKiS4WlCNQVrW48IKv9WktAAWttdG djQ8au3IAaaTk7gU2hJ0FSU8NMQTSK46p66W7XbbMzRqW18q+CI365pVzZYjw6MA== Received: by filterdrecv-c8b658c76-26g4z with SMTP id filterdrecv-c8b658c76-26g4z-1-636EDD04-28 2022-11-11 23:38:44.90928542 +0000 UTC m=+100743.038934493 Received: from herokuapp.com (unknown) by geopod-ismtpd-3-0 (SG) with ESMTP id tsK4zOuxSBGSF7AB1foyyQ for ; Fri, 11 Nov 2022 23:38:44.869 +0000 (UTC) Date: Fri, 11 Nov 2022 23:38:44 +0000 (UTC) From: "byroot (Jean Boussier)" Message-ID: References: Mime-Version: 1.0 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Bug X-Redmine-Issue-Id: 18599 X-Redmine-Issue-Author: byroot X-Redmine-Sender: byroot X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-Redmine-MailingListIntegration-Message-Ids: 87169 X-SG-EID: =?us-ascii?Q?Dq8GNIcVqP8cs5uR+EIAabfg3LE9XdC6dZ5KYNrMpf6VzBWG6HqArcu5raQjXL?= =?us-ascii?Q?IGTFdxKHUt7++67+KD54pNYXheirMcsUIf3sdgF?= =?us-ascii?Q?Riq06jisw6GjY+=2F0eINf06d1NKHdwMhbXYpjoHV?= =?us-ascii?Q?T7zrBhVESncKxUWGWjzS0Drd=2FmOWINbNusSHavg?= =?us-ascii?Q?WwEVdHGkRuQm7YRDtDqseLHnUqRSv9qLPPYTs7h?= =?us-ascii?Q?T2ap4h4NiQjv4Co63CzEkx85QWrvQ3LYMAXVeYQ?= =?us-ascii?Q?fznBTL6IIFx0yXImJR2Sg=3D=3D?= To: ruby-core@neon.ruby-lang.org X-Entity-ID: b/2+PoftWZ6GuOu3b0IycA== X-ML-Name: ruby-core X-Mail-Count: 110713 Subject: [ruby-core:110713] [Ruby master Bug#18599] `vm->loaded_features_snapshot` became very inefficient in Ruby 3.1 X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Reply-To: Ruby developers Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" SXNzdWUgIzE4NTk5IGhhcyBiZWVuIHVwZGF0ZWQgYnkgYnlyb290IChKZWFuIEJvdXNzaWVyKS4K Cgo+IElzIHRoaXMgdGFyZ2V0ZWQgdG8gYmUgcG9ydGVkIHRvIFJ1YnkgMy4xPwoKWWVzLgoKLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpCdWcgIzE4NTk5OiBgdm0tPmxv YWRlZF9mZWF0dXJlc19zbmFwc2hvdGAgYmVjYW1lIHZlcnkgaW5lZmZpY2llbnQgaW4gUnVieSAz LjEKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE4NTk5I2NoYW5nZS0xMDAwNTQK CiogQXV0aG9yOiBieXJvb3QgKEplYW4gQm91c3NpZXIpCiogU3RhdHVzOiBDbG9zZWQKKiBQcmlv cml0eTogTm9ybWFsCiogcnVieSAtdjogcnVieSAzLjEuMXAxOCAoMjAyMi0wMi0xOCByZXZpc2lv biA1M2Y1ZmM0MjM2KSBbeDg2XzY0LWRhcndpbjIwXQoqIEJhY2twb3J0OiAyLjY6IFdPTlRGSVgs IDIuNzogUkVRVUlSRUQsIDMuMDogUkVRVUlSRUQsIDMuMTogUkVRVUlSRUQKLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpBIGNoYW5nZSBpbiBob3cgc2hhcmVkIGFycmF5 cyBiZWhhdmUgaGFzIGNhdXNlZCBhIGZhaXJseSBtYWpvciBwZXJmb3JtYW5jZSByZWdyZXNzaW9u IGluIGBLZXJuZWwucmVxdWlyZWAuIEluIHNob3J0IG9uIGV2ZXJ5IHNpbmdsZSBjYWxsLCBhIGZ1 bGwgY29weSBvZiBgJExPQURFRF9GRUFUVVJFU2AgaXMgbWFkZS4KCkluIG91ciBhcHAgdGhpcyBj YXVzZXMgb3ZlciA2R2lCIHdvcnRoIG9mIHVzZWxlc3MgYWxsb2NhdGlvbnMuCgojIyMgUmVwcm9k dWN0aW9uCgpgYGBydWJ5CiMgZnJvemVuX3N0cmluZ19saXRlcmFsOiB0cnVlCnJlcXVpcmUgIm9i anNwYWNlIgpmaWxlcyA9IDUudGltZXMubWFwIHsgfGl8ICIvdG1wL2Zvby0je2l9LnJiIiB9CmZp bGVzLmVhY2ggeyB8ZnwgRmlsZS53cml0ZShmLCAiIikgfQoKcmVxdWlyZSBmaWxlcy5zaGlmdAo0 LnRpbWVzIHsgR0Muc3RhcnQgfQpnZW5lcmF0aW9uID0gR0MuY291bnQKCk9iamVjdFNwYWNlLnRy YWNlX29iamVjdF9hbGxvY2F0aW9ucyBkbwogIGZpbGVzLmVhY2ggeyB8ZnwgcmVxdWlyZSBmIH0K ZW5kCgpPYmplY3RTcGFjZS5kdW1wX2FsbChvdXRwdXQ6IEZpbGUub3BlbigiL3RtcC9hbGxvY2F0 ZWQuaGVhcCIsICJ3KyIpLCBzaW5jZTogZ2VuZXJhdGlvbikKT2JqZWN0U3BhY2UuZHVtcF9hbGwo b3V0cHV0OiBGaWxlLm9wZW4oIi90bXAvZnVsbC5oZWFwIiwgIncrIikpCmBgYAoKSWYgeW91IGlu c3BlY3QgdGhlIGBhbGxvY2F0ZWQuaGVhcGAsIHlvdSdsbCBub3RpY2UgNCBhcnJheSwgZWFjaCBp bmNyZWFzaW5nbHkgYmlnZ2VyLgoKYGBgCiQgZ3JlcCBBUlJBWSAvdG1wL2FsbG9jYXRlZC5oZWFw IAp7ImFkZHJlc3MiOiIweDEwZmUyYjNiOCIsICJ0eXBlIjoiQVJSQVkiLCAiZnJvemVuIjp0cnVl LCAibGVuZ3RoIjo5MiwgInJlZmVyZW5jZXMiOlsiMHgxMGZjZDNkYTgiLCAiMHgxMGZjY2EyYTgi LCAiMHgxMGZjYzIxYzAiLCAuLi5dLCAiZmlsZSI6IjxpbnRlcm5hbDovb3B0L3J1Ymllcy8zLjEu MC9saWIvcnVieS8zLjEuMC9ydWJ5Z2Vtcy9jb3JlX2V4dC9rZXJuZWxfcmVxdWlyZS5yYj4iLCAi bGluZSI6ODUsICJtZXRob2QiOiJyZXF1aXJlIiwgImdlbmVyYXRpb24iOjEzLCAibWVtc2l6ZSI6 Nzc2LCAiZmxhZ3MiOnsid2JfcHJvdGVjdGVkIjp0cnVlfX0KLi4uCnsiYWRkcmVzcyI6IjB4MTBm ZTJiNjg4IiwgInR5cGUiOiJBUlJBWSIsICJmcm96ZW4iOnRydWUsICJsZW5ndGgiOjkxLCAicmVm ZXJlbmNlcyI6WyIweDEwZmNkM2RhOCIsICIweDEwZmNjYTJhOCIsICIweDEwZmNjMjFjMCIsIC4u Ll0sICJmaWxlIjoiPGludGVybmFsOi9vcHQvcnViaWVzLzMuMS4wL2xpYi9ydWJ5LzMuMS4wL3J1 YnlnZW1zL2NvcmVfZXh0L2tlcm5lbF9yZXF1aXJlLnJiPiIsICJsaW5lIjo4NSwgIm1ldGhvZCI6 InJlcXVpcmUiLCAiZ2VuZXJhdGlvbiI6MTMsICJtZW1zaXplIjo3NjgsICJmbGFncyI6eyJ3Yl9w cm90ZWN0ZWQiOnRydWV9fQouLi4KeyJhZGRyZXNzIjoiMHgxMGZlMmI5NTgiLCAidHlwZSI6IkFS UkFZIiwgImZyb3plbiI6dHJ1ZSwgImxlbmd0aCI6ODksICJyZWZlcmVuY2VzIjpbIjB4MTBmY2Qz ZGE4IiwgIjB4MTBmY2NhMmE4IiwgIjB4MTBmY2MyMWMwIiwgLi4uXSwgImZpbGUiOiI8aW50ZXJu YWw6L29wdC9ydWJpZXMvMy4xLjAvbGliL3J1YnkvMy4xLjAvcnVieWdlbXMvY29yZV9leHQva2Vy bmVsX3JlcXVpcmUucmI+IiwgImxpbmUiOjg1LCAibWV0aG9kIjoicmVxdWlyZSIsICJnZW5lcmF0 aW9uIjoxMywgIm1lbXNpemUiOjc1MiwgImZsYWdzIjp7IndiX3Byb3RlY3RlZCI6dHJ1ZX19Ci4u Lgp7ImFkZHJlc3MiOiIweDEwZmUyYmMyOCIsICJ0eXBlIjoiQVJSQVkiLCAiZnJvemVuIjp0cnVl LCAibGVuZ3RoIjo4OCwgInJlZmVyZW5jZXMiOlsiMHgxMGZjZDNkYTgiLCAiMHgxMGZjY2EyYTgi LCAiMHgxMGZjYzIxYzAiLCAuLi5dLCAiZmlsZSI6IjxpbnRlcm5hbDovb3B0L3J1Ymllcy8zLjEu MC9saWIvcnVieS8zLjEuMC9ydWJ5Z2Vtcy9jb3JlX2V4dC9rZXJuZWxfcmVxdWlyZS5yYj4iLCAi bGluZSI6ODUsICJtZXRob2QiOiJyZXF1aXJlIiwgImdlbmVyYXRpb24iOjEzLCAibWVtc2l6ZSI6 NzQ0LCAiZmxhZ3MiOnsid2JfcHJvdGVjdGVkIjp0cnVlfX0KLi4uCmBgYAoKQW5kIGlmIHlvdSBs b29rdXAgdGhlIGFkZHJlc3NlcyBpbiBgZnVsbC5oZWFwYCwgaXQgbWFrZXMgbm8gZG91YnQgdGhh dCBpdCdzIGAkTE9BREVEX0ZFQVRVUkVTYC4KCk5vdGUgaG93ZXZlciBob3cgdGhlIGFycmF5IGlz IGAiZnJvemVuIjp0cnVlYCwgc28gaXQncyBub3QgYCRMT0FERURfRkVBVFVSRVNgIGRpcmVjdGx5 LCBidXQgdGhlIHNoYXJlZCBhcnJheSB0aGF0IGJhY2tzIGB2bS0+bG9hZGVkX2ZlYXR1cmVzYCBh bmQgYHZtLT5sb2FkZWRfZmVhdHVyZXNfc25hcHNob3RgLgoKCiMjIyBNb3JlIHNjb3BlZCByZXBy b2R1Y3Rpb24KCklmIHdlIHNjb3BlIG9uIHNoYXJlZCBhcnJheXMgYmVoYXZpb3Igc3BlY2lmaWNh bGx5LCB3ZSBjYW4gZ2V0IGEgbXVjaCBzbWFsbGVyIHJlcHJvZHVjdGlvbjoKCmBgYHJ1YnkKYXJy YXkgPSAxMC50aW1lcy50b19hCmNvcHkgPSBhcnJheS5kdXAKYmVmb3JlID0gR0Muc3RhdCg6dG90 YWxfYWxsb2NhdGVkX29iamVjdHMpCmNvcHkgPDwgMQpwIEdDLnN0YXQoOnRvdGFsX2FsbG9jYXRl ZF9vYmplY3RzKSAtIGJlZm9yZSAjIDEgb24gUnVieSAzLjEsIDAgb24gMy4wIGFuZCBvbGRlcgpg YGAKCkluIHNob3J0LCBiYWNrIGluIDMuMCBhbmQgb2xkZXIsIGFwcGVuZGluZyB0byBhIHNoYXJl ZCBhcnJheSB3b3VsZG4ndCAidW5zaGFyZSIgdGhlIGFycmF5LCBidXQgc3RhcnRpbmcgaW4gMy4x IGl0IG5vdyBkb2VzLgpUaGUgcHJvYmxlbSBiZWluZyB0aGF0IGBLZXJuZWwucmVxdWlyZWAgaGVh dmlseSBhc3N1bWVkIHRoaXMgaW1wbGVtZW50YXRpb24gZGV0YWlsOgoKYGBgYwpzdGF0aWMgdm9p ZApyZXNldF9sb2FkZWRfZmVhdHVyZXNfc25hcHNob3QocmJfdm1fdCAqdm0pCnsKICAgIHJiX2Fy eV9yZXBsYWNlKHZtLT5sb2FkZWRfZmVhdHVyZXNfc25hcHNob3QsIHZtLT5sb2FkZWRfZmVhdHVy ZXMpOwp9CgpyYl9wcm92aWRlX2ZlYXR1cmUocmJfdm1fdCAqdm0sIFZBTFVFIGZlYXR1cmUpCnsK ICAgIC8vLi4uCiAgICBnZXRfbG9hZGVkX2ZlYXR1cmVzX2luZGV4KHZtKTsKICAgIHJiX2FyeV9w dXNoKGZlYXR1cmVzLCByYl9mc3RyaW5nKGZlYXR1cmUpKTsKICAgIGZlYXR1cmVzX2luZGV4X2Fk ZCh2bSwgZmVhdHVyZSwgSU5UMkZJWChSQVJSQVlfTEVOKGZlYXR1cmVzKS0xKSk7CiAgICByZXNl dF9sb2FkZWRfZmVhdHVyZXNfc25hcHNob3Qodm0pOwp9CmBgYAoKYHJiX3Byb3ZpZGVfZmVhdHVy ZWAgZmlyc3QgYXBwZW5kIHRvIGAkTE9BREVEX0ZFQVRVUkVTYCBhbmQgdGhlbiByZXNldHMgYHZt LT5sb2FkZWRfZmVhdHVyZXNfc25hcHNob3RgIHRvIGJlIGEgc2hhcmVkIGNvcHkgb2YgYCRMT0FE RURfRkVBVFVSRVNgLgoKCgoKCi0tIApodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8K