Am 31.10.2012 05:57, schrieb Richard Henderson: > On 2012-10-31 14:03, Andreas Färber wrote: >> +static const AlphaCPUInfo alpha_cpus[] = { >> + { .name = "ev4", .initfn = ev4_cpu_initfn }, >> + { .name = "ev5", .initfn = ev5_cpu_initfn }, >> + { .name = "ev56", .initfn = ev56_cpu_initfn }, >> + { .name = "pca56", .initfn = pca56_cpu_initfn }, >> + { .name = "ev6", .initfn = ev6_cpu_initfn }, >> + { .name = "ev67", .initfn = ev67_cpu_initfn }, >> + { .name = "ev68", .initfn = ev68_cpu_initfn }, >> + { .name = "21064", .initfn = alpha_21064_cpu_initfn }, >> + { .name = "21164", .initfn = alpha_21164_cpu_initfn }, >> + { .name = "21164a", .initfn = alpha_21164a_cpu_initfn }, >> + { .name = "21164pc", .initfn = alpha_21164pc_cpu_initfn }, >> + { .name = "21264", .initfn = alpha_21264_cpu_initfn }, >> + { .name = "21264a", .initfn = alpha_21264a_cpu_initfn }, >> +}; > > The "2*" names are aliases of the "ev*" names. There's no need for so > much duplication. And for that matter, "ev68" is no different from "ev67" > at the level for which we emulate. In hw, it was more cache and a faster > multiply implementation.
Clearly I know little to nothing about Alpha CPU models. :) Regarding ev68, we'll need to carry it for backwards compatibility; can we assume that the Alpha ISA is dead? Then I could drop this shrinking array and make, e.g., ev68 a trivial subclass of ev67. The name scheme we are heading towards now looks like <name>-alpha-cpu. Did I understand you correctly that we would want, e.g., ev4-alpha-cpu as type and have "21064" map to it? Or the other way around? Andreas -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg