v6-36: Record alignment of class in dictionary and use in TStreamerInfo#21976
v6-36: Record alignment of class in dictionary and use in TStreamerInfo#21976pcanal wants to merge 29 commits intoroot-project:v6-36-00-patchesfrom
Conversation
3a28638 to
3b051c8
Compare
Test Results 17 files 17 suites 2d 7h 3m 20s ⏱️ Results for commit ef4fde1. ♻️ This comment has been updated with latest results. |
3b051c8 to
4fd0297
Compare
Includes alignment of allocatation of emulated objects in container
Handle alignment for Emulated Collection of pointer and numerical types
Since align is a power of 2 the modulo may be written as (offset & (align - 1)) (assuming offset is non-negative) Co-authored-by: silverweed <giacomo.parolini@cern.ch>
as the fall back when missing alignment information.
Note this is not quite complete, it could also report the alignment when customized at the data member level but it currently does not
64c4561 to
b44dc37
Compare
hahnjo
left a comment
There was a problem hiding this comment.
I see you added the commit to change the type of TDataType::fAlignOf, but not the bump of the class version.
I would also like to remark that these are quite extensive changes at very core classes. I'm not sure if this absolutely requires backporting to a stable release used in data taking.
|
True on the other hand this is repairing a 'bug' that prevent CMS(SW) from enabling a rule to read older files. |
Commit 982517d added the data member fAlignOf.
In contrast to std::size_t, this is stable across platforms and between 32 and 64 bits.
b44dc37 to
ef4fde1
Compare
Thanks for spotting this inadvertent omission! |
|
Currently Checking with CMS how much this backport is needed. |
Backport of #21669