[ruby-core:110085] [Ruby master Feature#14900] Extra allocation in String#byteslice
From:
"ioquatix (Samuel Williams)" <noreply@...>
Date:
2022-09-26 11:26:31 UTC
List:
ruby-core #110085
SXNzdWUgIzE0OTAwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgaW9xdWF0aXggKFNhbXVlbCBXaWxsaWFt cykuDQoNCg0KSSB1cGRhdGVkIG15IFBSIGFuZCBzdGFydGVkIGludmVzdGlnYXRpbmcgdGhlIGNo YW5nZXMgYmV0d2VlbiB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBhbmQgdGhlIHByb3Bvc2Vk IGltcGxlbWVudGF0aW9uLCBhbmQgYWZ0ZXIgZGlzY3Vzc2luZyBpdCB3aXRoIEBieXJvb3Qgd2Ug Zm91bmQgYSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5L3J1YnkvcHVsbC82NDQzDQoNClRo aXMgYWN0dWFsbHkgaXMgZmFyIHdvcnNlIGluIHRlcm1zIG9mIG92ZXItYWxsb2NhdGlvbiwgc28g Zml4aW5nIHRoaXMgaXMgYSBnb29kIGZpcnN0IHN0ZXAuDQoNCldlIGFyZSBhbHNvIGNvbnNpZGVy aW5nIGludHJvZHVjaW5nIGBieXRlc2xpY2UhYCB3aGljaCBzaG91bGQgYmUgYSBiZXR0ZXIgaW50 ZXJmYWNlIGZvciB3aGVuIHlvdSAiZG9uJ3QgY2FyZSBhYm91dCB0aGUgc291cmNlIGJ1ZmZlciIg YW5kIHRodXMgY2FuICJpbnRlcm5hbGx5IGZyZWV6ZSBpdCB0byBhdm9pZCBtZW1vcnkgYWxsb2Nh dGlvbnMiLiBodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTM2MjYNCg0KVGhhdCBi ZWluZyBzYWlkLCBJJ2xsIHVwZGF0ZSB0aGUgUFIgaGVyZSAoaW1wYWN0aW5nIGBieXRlc2xpY2Vg KSBhbmQgY2hlY2sgd2hldGhlciBpdCBzdGlsbCBtYWtlcyBzZW5zZS4NCg0KLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KRmVhdHVyZSAjMTQ5MDA6IEV4dHJhIGFsbG9j YXRpb24gaW4gU3RyaW5nI2J5dGVzbGljZQ0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNz dWVzLzE0OTAwI2NoYW5nZS05OTM0MA0KDQoqIEF1dGhvcjogamFua28gKEphbmtvIE1hcm9obmnE hykNCiogU3RhdHVzOiBPcGVuDQoqIFByaW9yaXR5OiBOb3JtYWwNCi0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCldoZW4gZXhlY3V0aW5nIGBTdHJpbmcjYnl0ZXNsaWNl YCB3aXRoIGEgcmFuZ2UsIEkgbm90aWNlZCB0aGF0IHNvbWV0aW1lcyB0aGUgb3JpZ2luYWwgc3Ry aW5nIGlzIGFsbG9jYXRlZCBhZ2Fpbi4gV2hlbiBJIHJ1biB0aGUgZm9sbG93aW5nIHNjcmlwdDoN Cg0Kfn5+IHJ1YnkNCnJlcXVpcmUgIm9ianNwYWNlIg0KDQpzdHJpbmcgPSAiYSIgKiAxMDBfMDAw DQoNCkdDLnN0YXJ0DQpHQy5kaXNhYmxlDQpnZW5lcmF0aW9uID0gR0MuY291bnQNCg0KT2JqZWN0 U3BhY2UudHJhY2Vfb2JqZWN0X2FsbG9jYXRpb25zIGRvDQogIHN0cmluZy5ieXRlc2xpY2UoNTBf MDAwLi4tMSkNCg0KICBPYmplY3RTcGFjZS5lYWNoX29iamVjdChTdHJpbmcpIGRvIHxzdHJpbmd8 DQogICAgcCBzdHJpbmcuYnl0ZXNpemUgaWYgT2JqZWN0U3BhY2UuYWxsb2NhdGlvbl9nZW5lcmF0 aW9uKHN0cmluZykgPT0gZ2VuZXJhdGlvbg0KICBlbmQNCmVuZA0Kfn5+DQoNCml0IG91dHB1dHMN Cg0Kfn5+DQo1MDAwMA0KMTAwMDAwDQo2DQo1DQp+fn4NCg0KVGhlIG9uZSB3aXRoIDUwMDAwIGJ5 dGVzIGlzIHRoZSByZXN1bHQgb2YgYFN0cmluZyNieXRlc2xpY2VgLCBidXQgdGhlIG9uZSB3aXRo IDEwMDAwMCBieXRlcyBpcyB0aGUgZHVwbGljYXRlZCBvcmlnaW5hbCBzdHJpbmcuIEkgZXhwZWN0 ZWQgb25seSB0aGUgcmVzdWx0IG9mIGBTdHJpbmcjYnl0ZXNsaWNlYCB0byBiZSBhbW9uZ3N0IG5l dyBhbGxvY2F0aW9ucy4NCg0KSWYgaW5zdGVhZCBvZiB0aGUgbGFzdCA1MDAwMCBieXRlcyBJIHNs aWNlIHRoZSAqZmlyc3QqIDUwMDAwIGJ5dGVzLCB0aGUgZXh0cmEgZHVwbGljYXRpb24gZG9lc24n dCBvY2N1ci4NCg0Kfn5+IHJ1YnkNCiMgLi4uDQogIHN0cmluZy5ieXRlc2xpY2UoMCwgNTBfMDAw KQ0KIyAuLi4NCn5+fg0KDQp+fn4NCjUwMDAwDQo1DQp+fn4NCg0KSXQncyBkZWZpbml0ZWx5IG9r IGlmIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBgU3RyaW5nI2J5dGVzaXplYCBhbGxvY2F0ZXMgZXh0 cmEgc3RyaW5ncyBhcyBwYXJ0IG9mIHRoZSBpbXBsZW1lbnRhdGlvbiwgYnV0IGl0IHdvdWxkIGJl IG5pY2UgaWYgdGhleSB3ZXJlIGRlYWxsb2NhdGVkIGJlZm9yZSByZXR1cm5pbmcgdGhlIHJlc3Vs dC4NCg0KRURJVDogSXQgc2VlbXMgdGhhdCBgU3RyaW5nI3NsaWNlYCBoYXMgdGhlIHNhbWUgaXNz dWUuDQoNCg0KDQotLSANCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLw0KClVuc3Vic2NyaWJl OiA8bWFpbHRvOnJ1YnktY29yZS1yZXF1ZXN0QHJ1YnktbGFuZy5vcmc/c3ViamVjdD11bnN1YnNj cmliZT4KPGh0dHA6Ly9saXN0cy5ydWJ5LWxhbmcub3JnL2NnaS1iaW4vbWFpbG1hbi9vcHRpb25z L3J1YnktY29yZT4K