Messages in this thread | | | Subject | Re: [PATCH 2/2] perf annotate: Add fusion logic for AMD microarchs | From | Ravi Bangoria <> | Date | Fri, 10 Sep 2021 16:47:31 +0530 |
| |
>> +static bool x86__ins_is_fused(struct arch *arch, const char *ins1, >> + const char *ins2) >> +{ >> + if (strstarts(arch->vendor, "AuthenticAMD")) >> + return amd__ins_is_fused(arch, ins1, ins2); >> + >> + return intel__ins_is_fused(arch, ins1, ins2); >> +} >> + > > Can we instead make x86__ins_is_fused be a pointer and instead of > storing arch->vendor we set it to one of amd__ins_is_fused() or > intel__ins_is_fused()? > > I.e. here: > >> static int x86__cpuid_parse(struct arch *arch, char *cpuid) >> { >> unsigned int family, model, stepping; >> @@ -184,6 +216,9 @@ static int x86__cpuid_parse(struct arch *arch, char *cpuid) >> if (ret == 3) { >> arch->family = family; >> arch->model = model; >> + arch->vendor = strndup(cpuid, 12); > > x86__ins_is_fused = strstarts(cpuid, "AuthenticAMD") ? > amd__ins_is_fused : > intel__ins_is_fused;
Sure. Will post v2.
Thanks for the review Arnaldo, Ravi
| |