diff options
Diffstat (limited to 'volk/tmpl/volk_machine_xxx.tmpl.c')
-rw-r--r-- | volk/tmpl/volk_machine_xxx.tmpl.c | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/volk/tmpl/volk_machine_xxx.tmpl.c b/volk/tmpl/volk_machine_xxx.tmpl.c index 57e652e4c..87204ee99 100644 --- a/volk/tmpl/volk_machine_xxx.tmpl.c +++ b/volk/tmpl/volk_machine_xxx.tmpl.c @@ -20,6 +20,7 @@ */ #set $this_machine = $machine_dict[$which] +#set $arch_names = map(lambda a: a.name, $this_machine.archs) #for $arch in $this_machine.archs #define LV_HAVE_$(arch.name.upper()) 1 @@ -58,30 +59,32 @@ $(' | '.join(['(1 << LV_%s)'%a.name.upper() for a in $archs]))#slurp #end def #ifdef LV_HAVE_ORC -struct volk_machine volk_machine_generic = { +struct volk_machine volk_machine_$(this_machine.name) = { $make_arch_have_list($this_machine.archs) | (1 << LV_ORC), "$this_machine.name", $this_machine.alignment, #for $kern in $kernels + #set $taglist, $tagdeps = $kern.get_tags($arch_names + ["orc"]) "$kern.name", - $make_tag_str_list($kern.taglist), - $make_tag_have_list($kern.tagdeps), - $make_tag_kern_list($kern.name, $kern.taglist), - $(len($kern.taglist)), + $make_tag_str_list($taglist), + $make_tag_have_list($tagdeps), + $make_tag_kern_list($kern.name, $taglist), + $(len($taglist)), #end for }; #else -struct volk_machine volk_machine_generic = { +struct volk_machine volk_machine_$(this_machine.name) = { $make_arch_have_list($this_machine.archs), "$this_machine.name", $this_machine.alignment, #for $kern in $kernels + #set $taglist, $tagdeps = $kern.get_tags($arch_names) "$kern.name", - $make_tag_str_list($kern.taglist), - $make_tag_have_list($kern.tagdeps), - $make_tag_kern_list($kern.name, $kern.taglist), - $(len($kern.taglist)), + $make_tag_str_list($taglist), + $make_tag_have_list($tagdeps), + $make_tag_kern_list($kern.name, $taglist), + $(len($taglist)), #end for }; |