When making harnesses, the lifter creates a separate harness for each architecture. When the architectures are all variants of a parent architecture that map onto the same litmus ID, this is very wasteful, and is contributing somewhat to #29.
Ideally, the lifter should be asking the harness maker to resolve a 'raw' list of architecture IDs to one of 'meaningful' IDs, lifting for those, and then allowing a lifter lookup to select a harness that is a prefix of the architecture ID.
For example, arm.8, arm.7, and arm.cortex-a72 should all resolve to arm; x86.64.skylake to x86.64, etc.
When making harnesses, the lifter creates a separate harness for each architecture. When the architectures are all variants of a parent architecture that map onto the same litmus ID, this is very wasteful, and is contributing somewhat to #29.
Ideally, the lifter should be asking the harness maker to resolve a 'raw' list of architecture IDs to one of 'meaningful' IDs, lifting for those, and then allowing a lifter lookup to select a harness that is a prefix of the architecture ID.
For example,
arm.8
,arm.7
, andarm.cortex-a72
should all resolve toarm
;x86.64.skylake
tox86.64
, etc.