RE: [PATCH 1/2] genopinit: Distribute generated code across multiple files

Tamar Christina <[email protected]> Wed, 5 Aug 2026 08:11:10 +0000
Newsgroups gmane.comp.gcc.patches
Message-ID <GVXPR08MB104055010A1D25F47E9F49378FFD32@GVXPR08MB10405.eurprd08.prod.outlook.com>
PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBSb2JpbiBEYXBwIDxyZGFwcC5n
Y2NAZ21haWwuY29tPg0KPiBTZW50OiAwNCBBdWd1c3QgMjAyNiAyMDoyMQ0KPiBUbzogVGFtYXIg
Q2hyaXN0aW5hIDxUYW1hci5DaHJpc3RpbmFAYXJtLmNvbT47IEplZmZyZXkgTGF3DQo+IDxqZWZm
cmV5Lmxhd0Bvc3MucXVhbGNvbW0uY29tPjsga3RrYWNob3ZAbnZpZGlhLmNvbTsgZ2NjLQ0KPiBw
YXRjaGVzQGdjYy5nbnUub3JnDQo+IENjOiByZHNhbmRpZm9yZEBnb29nbGVtYWlsLmNvbTsgUm9i
aW4gRGFwcCA8cmRhcHAuZ2NjQGdtYWlsLmNvbT4NCj4gU3ViamVjdDogUmU6IFtQQVRDSCAxLzJd
IGdlbm9waW5pdDogRGlzdHJpYnV0ZSBnZW5lcmF0ZWQgY29kZSBhY3Jvc3MgbXVsdGlwbGUNCj4g
ZmlsZXMNCj4gDQo+ID4gQnV0IGluIG15IG9waW5pb24gd2UgZG9uJ3Qgd2FudCB0byBrZWVwIGFk
ZGluZyBzcGxpdCBjb2RlIHRvIGV2ZXJ5DQo+ID4gZ2VuKiBmaWxlIGluZGl2aWR1YWxseQ0KPiA+
IGJ1dCBjb25jZW50cmF0ZSB0aGF0IGNvZGUgaW4gZ2Vuc3VwcG9ydCBzbyBldmVyIGdlbiogY2Fu
IHVzZSBpdC4NCj4gDQo+IFRoZSBpbmRpdmlkdWFsIHNwbGl0cyBhcmUgdGhlcmUgYmVjYXVzZSBJ
IHN0YXJ0ZWQgb3V0IHdpdGggb25lDQo+IChnZW5lbWl0KSwgdGhlbiBsYXRlciByZWFsaXplZCBn
ZW5yZWNvZyBpcyBsYXJnZSBhcyB3ZWxsLiAgSXQgd2FzDQo+IGNlcnRhaW5seSBub3QgdGhlIGlu
aXRpYWwgaW50ZW50aW9uIHRvIHNwbGl0IGV2ZXJ5dGhpbmcgaW5kaXZpZHVhbGx5Lg0KPiBCdXQg
SSBhZ3JlZSB0aGF0IGJ5IG5vdyB3ZSBoYXZlIHJlYWNoZWQgYSB0aXBwaW5nIHBvaW50Lg0KPiAN
Cj4gQlRXIEkgYWxzbyB0b3VjaGVkIG9waW5pdCBiZWZvcmUsIHNwbGl0dGluZyBvbmUgZnVuY3Rp
b24gaW50byBzZXZlcmFsLA0KPiBiZWNhdXNlIGl0IHdvdWxkIHRyaWdnZXIgcGF0aG9sb2dpY2Fs
IGNvbXBpbGVyIGJlaGF2aW9yLg0KPiBTbyB3ZSBhbHJlYWR5IHBlcmZvcm0gc29tZSBraW5kIG9m
IHNwbGl0dGluZy4gIEFyZSB3ZSBzdXJlIHdlJ3JlIG5vdA0KPiBhY3R1YWxseSBzZWVpbmcgcGF0
aG9sb2dpY2FsIGJlaGF2aW9yIGFnYWluIHRoYXQgY291bGQgYmUgaGVscGVkIGJ5DQo+IHNvbWV0
aGluZyBlbHNlIHRoYW4gZmlsZS1sZXZlbCBzcGxpdHRpbmc/DQoNCmdlbmluaXQgaXMgYWxzbyBv
bmUgdGhhdCBJIHRoaW5rIGNhbiBiZW5lZml0IGZyb20gYSBkaWZmZXJlbnQgd2F5IG9mIGdlbmVy
YXRpbmcNCnRoZSB2YWx1ZXMuDQoNCklmIHlvdSBsb29rIGF0IHRoZSBsYXJnZSBhcnJheXMgaXQg
Z2VuZXJhdGVzIGZvciBsaWtlIGluaXRfYWxsX29wdGFicw0KDQpUaGVzZSBhcmUgaHVnZSwgYW5k
IGFsc28gcmVzdWx0IGluIGF0IHJ1bnRpbWUganVzdCBhIHNlcmllcyBvZiBicmFuY2hlcyBhbmQg
Y2FsbHMuDQoNCmkuZS4NCg0Kc3RhdGljIHZvaWQNCmluaXRfb3B0YWJzXzAxIChzdHJ1Y3QgdGFy
Z2V0X29wdGFicyAqb3B0YWJzKQ0Kew0KICBib29sICplbmEgPSBvcHRhYnMtPnBhdF9lbmFibGU7
DQogIGVuYVsxMDAwXSA9IEhBVkVfdWRvdF9wcm9kdjJzaXY4cWk7DQogIGVuYVsxMDAxXSA9IEhB
VkVfdWRvdF9wcm9kdjRzaXYxNnFpOw0KICBlbmFbMTAwMl0gPSBIQVZFX3Vkb3RfcHJvZHZueDho
aXZueDE2cWk7DQogIGVuYVsxMDAzXSA9IEhBVkVfdWRvdF9wcm9kdm54NHNpdm54MTZxaTsNCiAg
ZW5hWzEwMDRdID0gSEFWRV91ZG90X3Byb2R2bng0c2l2bng4aGk7DQogIGVuYVsxMDA1XSA9IEhB
VkVfdWRvdF9wcm9kdm54MmRpdm54OGhpOw0KICBlbmFbMTAwNl0gPSBIQVZFX3VzZG90X3Byb2R2
MnNpdjhxaTsNCiAgZW5hWzEwMDddID0gSEFWRV91c2RvdF9wcm9kdjRzaXYxNnFpOw0KICBlbmFb
MTAwOF0gPSBIQVZFX3VzZG90X3Byb2R2bng0c2l2bngxNnFpOw0KICBlbmFbMTAwOV0gPSBIQVZF
X3doaWxlX3VsdHNpdm54MTZiaTsNCiAgZW5hWzEwMTBdID0gSEFWRV93aGlsZV91bHRkaXZueDE2
Ymk7DQogIGVuYVsxMDExXSA9IEhBVkVfd2hpbGVfdWx0c2l2bng4Ymk7DQogIGVuYVsxMDEyXSA9
IEhBVkVfd2hpbGVfdWx0ZGl2bng4Ymk7DQogIGVuYVsxMDEzXSA9IEhBVkVfd2hpbGVfdWx0c2l2
bng0Ymk7DQogIGVuYVsxMDE0XSA9IEhBVkVfd2hpbGVfdWx0ZGl2bng0Ymk7DQogIGVuYVsxMDE1
XSA9IEhBVkVfd2hpbGVfdWx0c2l2bngyYmk7DQogIGVuYVsxMDE2XSA9IEhBVkVfd2hpbGVfdWx0
ZGl2bngyYmk7DQogIGVuYVsxMDE3XSA9IEhBVkVfYWRkc2kzOw0KICBlbmFbMTAxOF0gPSBIQVZF
X2FkZGRpMzsNCiAgZW5hWzEwMTldID0gSEFWRV9hZGR0aTM7DQogIGVuYVsxMDIwXSA9IEhBVkVf
YWRkaGYzOw0KICBlbmFbMTAyMV0gPSBIQVZFX2FkZHNmMzsNCiAgZW5hWzEwMjJdID0gSEFWRV9h
ZGRkZjM7DQogIGVuYVsxMDIzXSA9IEhBVkVfYWRkdjhxaTM7DQogIGVuYVsxMDI0XSA9IEhBVkVf
YWRkdjRoaTM7DQogIGVuYVsxMDI1XSA9IEhBVkVfYWRkdjJzaTM7DQogIGVuYVsxMDI2XSA9IEhB
VkVfYWRkdjE2cWkzOw0KICBlbmFbMTAyN10gPSBIQVZFX2FkZHY4aGkzOw0KICBlbmFbMTAyOF0g
PSBIQVZFX2FkZHY0c2kzOw0KICBlbmFbMTAyOV0gPSBIQVZFX2FkZHYyZGkzOw0KICBlbmFbMTAz
MF0gPSBIQVZFX2FkZHZueDE2cWkzOw0KICBlbmFbMTAzMV0gPSBIQVZFX2FkZHZueDhoaTM7DQog
IGVuYVsxMDMyXSA9IEhBVkVfYWRkdm54NHNpMzsNCiAgZW5hWzEwMzNdID0gSEFWRV9hZGR2bngy
ZGkzOw0KICBlbmFbMTAzNF0gPSBIQVZFX2FkZHZueDJxaTM7DQogIGVuYVsxMDM1XSA9IEhBVkVf
YWRkdm54NHFpMzsNCiAgZW5hWzEwMzZdID0gSEFWRV9hZGR2bngyaGkzOw0KICBlbmFbMTAzN10g
PSBIQVZFX2FkZHZueDhxaTM7DQogIGVuYVsxMDM4XSA9IEhBVkVfYWRkdm54NGhpMzsNCiAgZW5h
WzEwMzldID0gSEFWRV9hZGR2bngyc2kzOw0KICBlbmFbMTA0MF0gPSBIQVZFX2FkZHY0aGYzOw0K
ICBlbmFbMTA0MV0gPSBIQVZFX2FkZHYyc2YzOw0KICBlbmFbMTA0Ml0gPSBIQVZFX2FkZHY4aGYz
Ow0KICBlbmFbMTA0M10gPSBIQVZFX2FkZHY0c2YzOw0KICBlbmFbMTA0NF0gPSBIQVZFX2FkZHYy
ZGYzOw0KDQpldGMuDQoNCkhvd2V2ZXIgaWYgeW91IGxvb2sgYXQgaW5zbi1mbGFncy5oIHlvdSds
bCBzZWUgdGhhdA0KVGhlc2UgZmxhZ3MgbW9zdGx5IGhhdmUgdGhlIHNhbWUgZGVmaW5pdGlvbnMN
Cg0KRm9yIGluc3RhbmNlIA0KDQo+IGdyZXAgIkhBVkVfd2hpbGVfdWx0IiAuLi8uLi9idWlsZC1h
YXJjaDY0LW5vbmUtZWxmL29iai9nY2MyL2djYy9pbnNuLWZsYWdzLmgNCg0KI2RlZmluZSBIQVZF
X3doaWxlX3VsdHNpdm54MTZiaSAoVEFSR0VUX1NWRSkNCiNkZWZpbmUgSEFWRV93aGlsZV91bHRk
aXZueDE2YmkgKFRBUkdFVF9TVkUpDQojZGVmaW5lIEhBVkVfd2hpbGVfdWx0c2l2bng4YmkgKFRB
UkdFVF9TVkUpDQojZGVmaW5lIEhBVkVfd2hpbGVfdWx0ZGl2bng4YmkgKFRBUkdFVF9TVkUpDQoj
ZGVmaW5lIEhBVkVfd2hpbGVfdWx0c2l2bng0YmkgKFRBUkdFVF9TVkUpDQojZGVmaW5lIEhBVkVf
d2hpbGVfdWx0ZGl2bng0YmkgKFRBUkdFVF9TVkUpDQojZGVmaW5lIEhBVkVfd2hpbGVfdWx0c2l2
bngyYmkgKFRBUkdFVF9TVkUpDQojZGVmaW5lIEhBVkVfd2hpbGVfdWx0ZGl2bngyYmkgKFRBUkdF
VF9TVkUpDQojZGVmaW5lIEhBVkVfd2hpbGVfdWx0c2l2bngxNmJpX3B0ZXN0IChUQVJHRVRfU1ZF
KQ0KI2RlZmluZSBIQVZFX3doaWxlX3VsdGRpdm54MTZiaV9wdGVzdCAoVEFSR0VUX1NWRSkNCiNk
ZWZpbmUgSEFWRV93aGlsZV91bHRzaXZueDhiaV9wdGVzdCAoVEFSR0VUX1NWRSkNCiNkZWZpbmUg
SEFWRV93aGlsZV91bHRkaXZueDhiaV9wdGVzdCAoVEFSR0VUX1NWRSkNCiNkZWZpbmUgSEFWRV93
aGlsZV91bHRzaXZueDRiaV9wdGVzdCAoVEFSR0VUX1NWRSkNCiNkZWZpbmUgSEFWRV93aGlsZV91
bHRkaXZueDRiaV9wdGVzdCAoVEFSR0VUX1NWRSkNCiNkZWZpbmUgSEFWRV93aGlsZV91bHRzaXZu
eDJiaV9wdGVzdCAoVEFSR0VUX1NWRSkNCiNkZWZpbmUgSEFWRV93aGlsZV91bHRkaXZueDJiaV9w
dGVzdCAoVEFSR0VUX1NWRSkNCg0KU28gd2UncmUgc3BlbmRpbmcgcXVpdGUgYSBiaXQgb2YgdGlt
ZSByZWFkaW5nIGFuZCBjb21waWxpbmcgdGhlc2UgZmlsZXMgdG8ganVzdCBzZXQNCnRoZSBzYW1l
IGZsYWcgb3ZlciBhbmQgb3ZlciBhZ2Fpbi4NCg0KSWYgd2Ugd2VyZSB0byBncm91cCB0aGUgZ2Vu
ZXJhdGVkIGNvZGUgYnkgdGhlIGRlZmluZXMgaW5zdGVhZCwgd2Ugd291bGRuJ3QNCm5lZWQgZ2lh
bnQgYXJyYXkgYXNzaWdubWVudHMuDQoNCkluaXRfYWxsX29wdGFicyB3b3VsZCBqdXN0IGJlY29t
ZToNCg0KYm9vbCAqZW5hID0gb3B0YWJzLT5wYXRfZW5hYmxlDQoNCm1lbXNldCAoZW5hLCAwLCBz
aXplb2Ygb3B0YWJzLT5wYXRfZW5hYmxlKTsNCg0KaWYgKFRBUkdFVF9TVkUpDQogICBtZW1zZXQg
KGVuYSArIG9mZnNldCwgMSwgY291bnQpOw0KDQp3aGljaCBJIHRoaW5rIHdvdWxkIGJlIGJvdGgg
YSBydW50aW1lIGFuZCBhIGNvbXBpbGUgdGltZSB3aW4gYmVjYXVzZQ0KcXVpdGUgYSBmZXcgaW5z
biBoYXZlIGVpdGhlciBubyBjb25kaXRpb24sIG9yIGFyZSBqdXN0IFRBUkdFVF9TVkUgb3INClRB
UkdFVF9TVkUyIGV0Yy4gIEFuZCBJIGFzc3VtZSB0aGlzIGlzIGNvbW1vbiBhY3Jvc3MgbWFueSBv
dGhlcg0KdGFyZ2V0cy4NCg0KVGhvdWdoIEkgaGF2ZSBvbmx5IGV4cGVyaW1lbnRlZCB3aXRoIGEg
c21hbGwgdmVyc2lvbiB5ZWFycyBhZ28uDQoNCk90aGVyIGZpbGVzIGhhdmUgc2ltaWxhciB0aGlu
Z3MgdGhhdCBpbnRlcmVzdGluZyB0byBldmFsdWF0ZSB3cnQgdG8gdGhlDQpzY2FsZSB0aGUgZ2Vu
ZXJhdG9ycyBhcmUgYXQgbm93Lg0KDQpUaGFua3MsDQpUYW1hcg0KDQo+IA0KPiA+IExhc3RseSBJ
IGFsc28gZG9uJ3QgdGhpbmsgc3BsaXR0aW5nIG9uIGFuIGl0ZXJhdGl2ZSB3YXkgaXMgZ29pbmcg
dG8NCj4gPiBnaXZlIHlvdSB0aGUgYmVzdCBjb21waWxlDQo+ID4gdGltZSBpbmNyZWFzZS4gIEJl
Y2F1c2UgdGhhdCB0ZW5kcyB0byBiaWFzIHRoZSBvdXRwdXQuDQo+ID4NCj4gPiBJbiBnZW5tYXRj
aCBJIHVzZSBmdGVsbCB0byB0ZWxsIGhvdyBiaWcgdGhlIGZpbGVzIGlzIHNvIGZhciBhbiBwaWNr
IHRoZSBzbWFsbGVzdA0KPiBmaWxlLiBUaGlzIGFsbG93cw0KPiA+IG1lIHRvIGJhbGFuY2Ugb3V0
IHRoZSBjb21waWxlIHRpbWUgb3ZlciBhbGwgZmlsZXMuIEkgYmVsaWV2ZSBSb2JpbiBldmVudHVh
bGx5DQo+IHJlc3B1biBoaXMNCj4gPiBnZW48c29tZXRoaW5nPiBtYXRjaCB0byBkbyB0aGlzIGEg
c3dlbGwgYXMgdGhhdCBhbGxvd3MgeW91IHRvIGFtb3J0aXplIHRoZQ0KPiBjb21waWxlIHRpbWUN
Cj4gPiBvdmVyIGNvcmVzLg0KPiANCj4gWWVhaCwgSSBhZGRlZCB5b3VyIHN1Z2dlc3Rpb24gdG8g
dGhlIGluaXRpYWwgZ2VuZW1pdCBzcGxpdC4gIEFuZCBhdA0KPiBsZWFzdCB0aGUgIndoaWNoIGZp
bGUgdG8gd3JpdGUgdG8gbmV4dCIvZnRlbGwgZnVuY3Rpb25hbGl0eSBpcyBub3QgbG9jYWwNCj4g
dG8gZ2VuZW1pdCBidXQgYWxyZWFkeSBpbiBnZW5zdXBwb3J0LiAgVGhlIGZ1bmN0aW9uIGlzIGNo
b29zZV9vdXRwdXQgYW5kDQo+IEt5cnlsbCdzIHBhdGNoIGV2ZW4gdXNlcyBpdCBhbHJlYWR5IHNv
IGl0IHNob3VsZG4ndCBkbyBpdGVyYXRpdmUNCj4gc3BsaXR0aW5nIGlmIEknbSBub3QgbWlzdGFr
ZW4uDQo+IA0KPiBFYWNoIGdlbiogc3RpbGwga2VlcCB0cmFjayBvZiBpdHMgb3duIGZpbGVzLCB0
aG91Z2gsIGFuZCB0aGF0IHBhcnQgY291bGQNCj4gYmUgdW5pZmllZCBzdGlsbC4gIEkgZG9uJ3Qg
dGhpbmsgaXQncyB0ZXJyaWJseSBkaWZmaWN1bHQgYnV0IHdpbGwNCj4gcmVxdWlyZSBzb21lIHBs
dW1iaW5nLg0KPiANCj4gDQo+IC0tDQo+IFJlZ2FyZHMNCj4gIFJvYmluDQoNCg==