Displaying 2 results from an estimated 2 matches for "armfeaturekv".
2016 Feb 24
1
Performance degradation on ARMv7 (cortex-a9)
Thanks Bradley.
I see that the features set in /ARM.td/ get written to the generated
file /<build>/llvm/lib/Target/ARM/ARMGenSubtargetInfo.inc./ Here the
ProcA9 features appear in /ARMFeatureKV/ table:
/{ "a9", "Cortex-A9 ARM processors", { ARM::ProcA9 }, {
*ARM::FeatureFP16* } },
/With your change, the features for ProcA9 in the above entry are
empty.//This ARMFeatureKV table is then read in MC/MCSubtargetInfo.cpp
in the getFeatures() function.
Thanks,
Mandeep...
2016 Feb 24
2
Performance degradation on ARMv7 (cortex-a9)
.../
I see that in lib/Target/ARM/ARM.td all the features have been removed
from Proc definition (e.g.: ProcA9) and added to ProcessorModel
definition (e.g.: ProcessorModel<"cortex-a9").
But I find that the features from Proc are still being read and set in
MCSubtargetInfo through the ARMFeatureKV table. So if the Proc is empty
the corresponding feature is not being set.
In my case, if I add FeatureFP16 back to the ProcA9 definition in ARM.td
I get back all the lost performance.
Could you please give me some insight on how, after your change, do the
Proc features get correctly set in MCS...