Merge branch 'master' into non-square-matrix

This commit is contained in:
Recep Aslantas
2023-08-07 15:37:44 +03:00
committed by GitHub
2 changed files with 30 additions and 8 deletions

View File

@@ -32,13 +32,27 @@
# define CGLM_ALIGN_MAT CGLM_ALIGN(16) # define CGLM_ALIGN_MAT CGLM_ALIGN(16)
#endif #endif
#if defined(__has_builtin) #ifndef CGLM_HAVE_BUILTIN_ASSUME_ALIGNED
# if __has_builtin(__builtin_assume_aligned)
# define CGLM_ASSUME_ALIGNED(expr, alignment) \ # if defined(__has_builtin)
__builtin_assume_aligned((expr), (alignment)) # if __has_builtin(__builtin_assume_aligned)
# else # define CGLM_HAVE_BUILTIN_ASSUME_ALIGNED 1
# define CGLM_ASSUME_ALIGNED(expr, alignment) (expr) # endif
# elif defined(__GNUC__) && defined(__GNUC_MINOR__)
# if __GNUC__ >= 4 && __GNUC_MINOR__ >= 7
# define CGLM_HAVE_BUILTIN_ASSUME_ALIGNED 1
# endif
# endif # endif
# ifndef CGLM_HAVE_BUILTIN_ASSUME_ALIGNED
# define CGLM_HAVE_BUILTIN_ASSUME_ALIGNED 0
# endif
#endif
#if CGLM_HAVE_BUILTIN_ASSUME_ALIGNED
# define CGLM_ASSUME_ALIGNED(expr, alignment) \
__builtin_assume_aligned((expr), (alignment))
#else #else
# define CGLM_ASSUME_ALIGNED(expr, alignment) (expr) # define CGLM_ASSUME_ALIGNED(expr, alignment) (expr)
#endif #endif

View File

@@ -17,11 +17,19 @@ cglm_args = []
build_args = [] build_args = []
if get_option('default_library') == 'static' if get_option('default_library') == 'static'
cglm_args = '-DCGLM_STATIC' cglm_args += '-DCGLM_STATIC'
endif
if cc.compiles(
'int *test(char *p) { return (int*)__builtin_assume_aligned(p, 4); }',
name : '__builtin_assume_aligned test')
cglm_args += '-DCGLM_HAVE_BUILTIN_ASSUME_ALIGNED=1'
else
cglm_args += '-DCGLM_HAVE_BUILTIN_ASSUME_ALIGNED=0'
endif endif
if host_machine.system() == 'windows' if host_machine.system() == 'windows'
build_args = '-DCGLM_EXPORTS' build_args += '-DCGLM_EXPORTS'
endif endif
cglm_inc = include_directories('include') cglm_inc = include_directories('include')