From 07effd7c666bcbbe6f03f168d90e614bc4b4abf9 Mon Sep 17 00:00:00 2001 From: suchismith Date: Mon, 30 Oct 2023 09:25:35 +0000 Subject: [PATCH] Symbol Resolution fix for Panama changes. 1.Adding required compiler flags. 2. Adding required symbols. --- make/data/hotspot-symbols/symbols-aix-foreign | 463 ++++++++++++++++++ make/modules/java.base/Lib.gmk | 2 + 2 files changed, 465 insertions(+) create mode 100644 make/data/hotspot-symbols/symbols-aix-foreign diff --git a/make/data/hotspot-symbols/symbols-aix-foreign b/make/data/hotspot-symbols/symbols-aix-foreign new file mode 100644 index 0000000000000..c9bce270899fa --- /dev/null +++ b/make/data/hotspot-symbols/symbols-aix-foreign @@ -0,0 +1,463 @@ +# +# Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved. +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# This code is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License version 2 only, as +# published by the Free Software Foundation. +# +# This code is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# version 2 for more details (a copy is included in the LICENSE file that +# accompanied this code). +# +# You should have received a copy of the GNU General Public License version +# 2 along with this work; if not, write to the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA +# or visit www.oracle.com if you need additional information or have any +# questions. +# + +#This file contains the required symbols that would be referred while making +# native calls in Java using Foreign Function interface. + +CLEAR_FPS +MY_FP_ANY +MY_FP_INVALID +MY_FP_OVERFLOW +MY_FP_UNDERFLOW +MY_FP_ZERODIV +MY_FP_bits +__acosl128 +__asinl128 +__atan2l128 +__atanl128 +__ceill128 +__clog +__coshl128 +__cosl128 +__erfcl128 +__erfl128 +__expl128 +__fabsl128 +__floorl128 +__fmodl128 +__lgammal128 +__lgammal128_r +__log10l128 +__logl128 +__powl128 +__set_errno128 +__sinhl128 +__sinl128 +__sqrt_raise_xcp +__sqrtl128 +__tanhl128 +__tanl128 +__xltgamma +_acos +_acosf +_acosh +_acoshf +_asin +_asinf +_asinh +_asinhf +_atan +_atan2 +_atanf +_atanh +_atanhf +_cabshypot +_cacos +_cacos__b +_cacosf +_cacosh +_cacosh__b +_cacoshf +_casin +_casin__b +_casinf +_casinh +_casinh__b +_casinhf +_catan +_catan__b +_catanf +_catanh +_catanh__b +_catanhf +_ccos +_ccos__b +_ccosf +_ccosh +_ccosh__b +_ccoshf +_cexp__b +_class +_classf +_classl128 +_clog__b +_cos +_cosf +_cosh +_coshf +_csin +_csin__b +_csinf +_csinh +_csinh__b +_csinhf +_csqrt__b +_ctan +_ctan__b +_ctanf +_ctanh +_ctanh__b +_ctanhf +_erf +_erfc +_exp +_floor +_gamma +_gamma_r +_hypot +_hypotf +_isfinite +_isfinitef +_isfinitel128 +_isinff +_isinfl128 +_isnan +_isnanf +_isnanl128 +_isnormal +_isnormalf +_isnormall128 +_isunordered +_log +_log10 +_pow +_power_ilogb +_power_logb +_power_nextafter +_q_a6 +_q_d6 +_q_m6 +_q_sqrtsp +_q_sqrtsp_r +_q_treducex +_qacos +_qasin +_qatan +_qatan2 +_qcos +_qcosh +_qerf +_qerfc +_qexp +_qexp_x +_qgamma +_qgamma_r +_qhexp +_qlgama +_qlgama_r +_qlog +_qlog10 +_qlogextra +_qpow +_qsin +_qsinh +_qsqrt +_qtan +_qtanh +_rsqrt +_signbit +_signbitf +_signbitl128 +_sin +_sinf +_sinh +_sinhf +_sqrt +_tan +_tanf +_tanh +_tanhf +_xldint +_xldintv +_xldnint +_xldnintv +acos +acosf +acosh +acoshf +acoshl +acosl +asin +asinf +asinh +asinhf +asinhl +asinl +atan +atan2 +atan2f +atan2l +atanf +atanh +atanhf +atanhl +atanl +cabs +cabsf +cabsl +cacos +cacosf +cacosh +cacoshf +cacoshl +cacosl +carg +cargf +cargl +casin +casinf +casinh +casinhf +casinhl +casinl +catan +catanf +catanh +catanhf +catanhl +catanl +cbrt +cbrtf +cbrtl +ccos +ccosf +ccosh +ccoshf +ccoshl +ccosl +ceil +ceilf +ceill +cexp +cexpf +cexpl +cimag +cimagf +cimagl +class +clogf +clogl +conj +conjf +conjl +copysign +copysignf +copysignl +cos +cosf +cosh +coshf +coshl +cosl +cpow +cpowf +cpowl +cproj +cprojf +cprojl +creal +crealf +creall +csin +csinf +csinh +csinhf +csinhl +csinl +csqrt +csqrtf +csqrtl +ctan +ctanf +ctanh +ctanhf +ctanhl +ctanl +drem +drem_fmod +dtoi +erf +erfc +erfcf +erfcl +erff +erfl +exp +exp2 +exp2f +exp2l +exp__E +expf +expl +expm1 +expm1f +expm1l +fabs +fabsf +fabsl +fdim +fdimf +fdiml +feclearexcept +fegetenv +fegetexceptflag +fegetround +feholdexcept +feraiseexcept +fesetenv +fesetexceptflag +fesetround +fetestexcept +feupdateenv +finite +floor +floorf +floorl +fma +fmaf +fmal +fmax +fmaxf +fmaxl +fmin +fminf +fminl +fmod +fmodf +fmodl +frexpf +gamma +gamma_r +hypot +hypotf +hypotl +identity +ilogb +ilogbf +ilogbl +isnan +j0 +j1 +jn +ldexpf +lgamma +lgamma_r +lgammaf +lgammal +llrint +llrintf +llrintl +llround +llroundf +llroundl +log +log10 +log10f +log10l +log1p +log1pf +log1pl +log2 +log2f +log2l +log__L +logb +logbf +logbl +logf +logl +lrint +lrintf +lrintl +lround +lroundf +lroundl +modff +nan +nanf +nanl +nearbyint +nearbyintf +nearbyintl +nearest +nextafter +nextafterf +nextafterl +nexttoward +nexttowardf +nexttowardl +pow +powf +powl +raise_ie +raise_io +raise_of +raise_uf +raise_zd +remainder +remainderf +remainderl +remquo +remquof +remquol +rintf +rintl +round +roundf +roundl +rsqrt +scalb +scalbln +scalblnf +scalblnl +scalbn +scalbnf +scalbnl +sin +sinf +sinh +sinhf +sinhl +sinl +sqrt +sqrtf +sqrtl +strcat +strcmp +strcpy +tan +tanf +tanh +tanhf +tanhl +tanl +tgamma +tgammaf +tgammal +trunc +truncf +truncl +unordered +y0 +y1 +yn diff --git a/make/modules/java.base/Lib.gmk b/make/modules/java.base/Lib.gmk index 6d63795f6de63..ccbbcf04517dd 100644 --- a/make/modules/java.base/Lib.gmk +++ b/make/modules/java.base/Lib.gmk @@ -213,8 +213,10 @@ $(eval $(call SetupJdkLibrary, BUILD_SYSLOOKUPLIB, \ CXXFLAGS := $(CXXFLAGS_JDKLIB), \ LDFLAGS := $(LDFLAGS_JDKLIB), \ LDFLAGS_linux := -Wl$(COMMA)--no-as-needed, \ + LDFLAGS_aix := -brtl -bE:$(TOPDIR)/make/data/hotspot-symbols/symbols-aix-foreign , \ LIBS := $(LIBCXX), \ LIBS_linux := -lc -lm -ldl, \ + LIBS_aix := -lc -lm -ldecNumber, \ )) TARGETS += $(BUILD_SYSLOOKUPLIB)