Vector Optimized Library of Kernels  3.0.0
Architecture-tuned implementations of math kernels
volk_prefs.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2011, 2012, 2015, 2019, 2020 Free Software Foundation, Inc.
4  *
5  * This file is part of VOLK
6  *
7  * SPDX-License-Identifier: LGPL-3.0-or-later
8  */
9 
10 #ifndef INCLUDED_VOLK_PREFS_H
11 #define INCLUDED_VOLK_PREFS_H
12 
13 #include <stdbool.h>
14 #include <stdlib.h>
15 #include <volk/volk_common.h>
16 
18 
19 typedef struct volk_arch_pref {
20  char name[128]; // name of the kernel
21  char impl_a[128]; // best aligned impl
22  char impl_u[128]; // best unaligned impl
24 
26 // get path to volk_config profiling info; second arguments specifies
27 // if config file should be tested on existence for reading.
28 // returns \0 in the argument on failure.
30 VOLK_API void volk_get_config_path(char*, bool);
31 
33 // load prefs into global prefs struct
36 
38 
39 #endif // INCLUDED_VOLK_PREFS_H
Definition: volk_prefs.h:19
char impl_u[128]
Definition: volk_prefs.h:22
char impl_a[128]
Definition: volk_prefs.h:21
char name[128]
Definition: volk_prefs.h:20
VOLK_API
A function pointer to the fastest aligned implementation.
Definition: volk.tmpl.h:83
#define __VOLK_DECL_END
Definition: volk_common.h:94
#define __VOLK_DECL_BEGIN
Definition: volk_common.h:93
VOLK_API size_t volk_load_preferences(volk_arch_pref_t **)
Definition: volk_prefs.c:75
VOLK_API void volk_get_config_path(char *, bool)
Definition: volk_prefs.c:23
__VOLK_DECL_BEGIN struct volk_arch_pref volk_arch_pref_t