mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-11-24 14:20:17 +00:00
Avoid exporting 80-bit fp functions for architectures other than Intel.
This patch is a partial fix for [[ https://github.com/llvm/llvm-project/issues/56349 | issue ]], due to functions affected by D117473. Implementation details: The patch essentially creates a new macro if the architecture is either intel32 or intel64, since the generate-def.pl cannot process boolean algebra on macros. Reviewed By: jlpeyton Differential Revision: https://reviews.llvm.org/D135795
This commit is contained in:
parent
6194229c62
commit
cea951dccd
@ -163,8 +163,10 @@ function(libomp_get_gdflags gdflags)
|
||||
set(gdflags_local)
|
||||
if(${IA32})
|
||||
set(libomp_gdflag_arch arch_32)
|
||||
libomp_append(gdflags_local "-D IS_IA_ARCH")
|
||||
elseif(${INTEL64})
|
||||
set(libomp_gdflag_arch arch_32e)
|
||||
libomp_append(gdflags_local "-D IS_IA_ARCH")
|
||||
else()
|
||||
set(libomp_gdflag_arch arch_${LIBOMP_ARCH})
|
||||
endif()
|
||||
|
@ -688,11 +688,12 @@ kmp_set_disp_num_buffers 890
|
||||
__kmpc_atomic_fixed2_eqv 2078
|
||||
__kmpc_atomic_fixed4_eqv 2079
|
||||
__kmpc_atomic_fixed8_eqv 2080
|
||||
|
||||
%ifdef IS_IA_ARCH
|
||||
__kmpc_atomic_float10_add 2081
|
||||
__kmpc_atomic_float10_sub 2082
|
||||
__kmpc_atomic_float10_mul 2083
|
||||
__kmpc_atomic_float10_div 2084
|
||||
%endif
|
||||
|
||||
__kmpc_atomic_cmplx4_add 2085
|
||||
__kmpc_atomic_cmplx4_sub 2086
|
||||
@ -702,10 +703,12 @@ kmp_set_disp_num_buffers 890
|
||||
__kmpc_atomic_cmplx8_sub 2090
|
||||
__kmpc_atomic_cmplx8_mul 2091
|
||||
__kmpc_atomic_cmplx8_div 2092
|
||||
%ifdef IS_IA_ARCH
|
||||
__kmpc_atomic_cmplx10_add 2093
|
||||
__kmpc_atomic_cmplx10_sub 2094
|
||||
__kmpc_atomic_cmplx10_mul 2095
|
||||
__kmpc_atomic_cmplx10_div 2096
|
||||
%endif
|
||||
%ifdef HAVE_QUAD
|
||||
__kmpc_atomic_cmplx16_add 2097
|
||||
__kmpc_atomic_cmplx16_sub 2098
|
||||
@ -753,11 +756,13 @@ kmp_set_disp_num_buffers 890
|
||||
__kmpc_atomic_float8_mul_fp 2133
|
||||
__kmpc_atomic_float8_div_fp 2134
|
||||
|
||||
%ifdef IS_IA_ARCH
|
||||
__kmpc_atomic_float10_add_fp 2135
|
||||
__kmpc_atomic_float10_sub_fp 2136
|
||||
__kmpc_atomic_float10_mul_fp 2137
|
||||
__kmpc_atomic_float10_div_fp 2138
|
||||
%endif
|
||||
%endif
|
||||
|
||||
__kmpc_atomic_fixed1_mul_float8 2169
|
||||
__kmpc_atomic_fixed1_div_float8 2170
|
||||
@ -785,9 +790,13 @@ kmp_set_disp_num_buffers 890
|
||||
__kmpc_atomic_2 2248
|
||||
#__kmpc_atomic_4 # declared above #100
|
||||
#__kmpc_atomic_8 # declared above #101
|
||||
%ifdef IS_IA_ARCH
|
||||
__kmpc_atomic_10 2251
|
||||
%endif
|
||||
__kmpc_atomic_16 2252
|
||||
%ifdef IS_IA_ARCH
|
||||
__kmpc_atomic_20 2253
|
||||
%endif
|
||||
__kmpc_atomic_32 2254
|
||||
|
||||
%ifdef arch_32
|
||||
@ -809,8 +818,7 @@ kmp_set_disp_num_buffers 890
|
||||
%endif
|
||||
|
||||
# These are specific to x86 and x64
|
||||
%ifndef arch_64
|
||||
%ifndef arch_aarch64
|
||||
%ifdef IS_IA_ARCH
|
||||
|
||||
# ATOMIC extensions for OpenMP 3.1 spec (x86 and x64 only)
|
||||
|
||||
@ -1214,8 +1222,7 @@ kmp_set_disp_num_buffers 890
|
||||
__kmpc_atomic_float10_div_cpt_rev_fp
|
||||
%endif
|
||||
|
||||
%endif # arch_aarch64
|
||||
%endif # arch_64
|
||||
%endif # IS_IA_ARCH
|
||||
|
||||
%ifdef HAVE_QUAD
|
||||
__kmpc_atomic_fixed1u_add_fp
|
||||
@ -1233,8 +1240,10 @@ kmp_set_disp_num_buffers 890
|
||||
%endif
|
||||
|
||||
# OpenMP 5.1 atomics
|
||||
%ifdef IS_IA_ARCH
|
||||
__kmpc_atomic_float10_max 2139
|
||||
__kmpc_atomic_float10_min 2140
|
||||
%endif
|
||||
__kmpc_atomic_float10_max_cpt 2141
|
||||
__kmpc_atomic_float10_min_cpt 2142
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user