diff options
author | pbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-05-19 00:34:59 +0000 |
---|---|---|
committer | pbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-05-19 00:34:59 +0000 |
commit | 7683466464b78eee955a8a33c2e23cc36ce3e227 (patch) | |
tree | 6d5551f77f0b03649dcf0b885fe4be35ce373a23 /libgfortran/Makefile.am | |
parent | 41fe207742963c7494256330337c427a9117e577 (diff) | |
download | gcc-7683466464b78eee955a8a33c2e23cc36ce3e227.tar.gz |
* f95-lang.c (gfc_init_builtin_functions): Use vold_list_node.
Create decls for __builtin_pow{,f}.
* gfortran.h (PREFIX_LEN): Define.
* trans-decl.c (gfor_fndecl_math_powi): Add.
(gfor_fndecl_math_powf, gfor_fndecl_math_pow): Remove.
(gfc_build_intrinsic_function_decls): Create decls for powi.
* trans-expr.c (powi_table): Add.
(gfc_conv_integer_power): Remove.
(gfc_conv_powi): New function.
(gfc_conv_cst_int_power): New function.
(gfc_conv_power_op): Use new powi routines.
* trans.h (struct gfc_powdecl_list): Add.
(gfor_fndecl_math_powi): Add.
(gfor_fndecl_math_powf, gfor_fndecl_math_pow): Remove.
testsuite/
* gfortran.fortran-torture/execute/power.f90: Test constant integers.
libgfortran/
* Makefile.am (i_pow_c): Set it. Add build rule.
(gfor_built_src): Use it.
(m4_files): add m4/pow.m4.
* Makefile.in: Regenerate.
* m4/pow.m4: New file.
* generated/pow_*.c: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82014 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgfortran/Makefile.am')
-rw-r--r-- | libgfortran/Makefile.am | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/libgfortran/Makefile.am b/libgfortran/Makefile.am index cf3382a38d9..12977f5bd3d 100644 --- a/libgfortran/Makefile.am +++ b/libgfortran/Makefile.am @@ -222,6 +222,20 @@ i_set_exponent_c = \ generated/set_exponent_r4.c \ generated/set_exponent_r8.c +i_pow_c = \ +generated/pow_i4_i4.c \ +generated/pow_i8_i4.c \ +generated/pow_r4_i4.c \ +generated/pow_r8_i4.c \ +generated/pow_c4_i4.c \ +generated/pow_c8_i4.c \ +generated/pow_i4_i8.c \ +generated/pow_i8_i8.c \ +generated/pow_r4_i8.c \ +generated/pow_r8_i8.c \ +generated/pow_c4_i8.c \ +generated/pow_c8_i8.c + m4_files= m4/iparm.m4 m4/ifunction.m4 m4/iforeach.m4 m4/all.m4 \ m4/any.m4 m4/count.m4 m4/maxloc0.m4 m4/maxloc1.m4 m4/maxval.m4 \ m4/minloc0.m4 m4/minloc1.m4 m4/minval.m4 m4/product.m4 m4/sum.m4 \ @@ -229,14 +243,15 @@ m4_files= m4/iparm.m4 m4/ifunction.m4 m4/iforeach.m4 m4/all.m4 \ m4/ctrig.m4 m4/cexp.m4 m4/chyp.m4 m4/mtype.m4 \ m4/specific.m4 m4/specific2.m4 m4/head.m4 m4/shape.m4 m4/reshape.m4 \ m4/transpose.m4 m4/eoshift1.m4 m4/eoshift3.m4 m4/exponent.m4 \ - m4/fraction.m4 m4/nearest.m4 m4/set_exponent.m4 + m4/fraction.m4 m4/nearest.m4 m4/set_exponent.m4 m4/pow.m4 gfor_built_src= $(i_all_c) $(i_any_c) $(i_count_c) $(i_maxloc0_c) \ $(i_maxloc1_c) $(i_maxval_c) $(i_minloc0_c) $(i_minloc1_c) $(i_minval_c) \ $(i_product_c) $(i_sum_c) $(i_dotprod_c) $(i_dotprodl_c) $(i_dotprodc_c) \ $(i_matmul_c) $(i_matmull_c) $(i_transpose_c) $(i_shape_c) $(i_eoshift1_c) \ $(i_eoshift3_c) $(i_cshift1_c) $(i_reshape_c) $(in_pack_c) $(in_unpack_c) \ - $(i_exponent_c) $(i_fraction_c) $(i_nearest_c) $(i_set_exponent_c) + $(i_exponent_c) $(i_fraction_c) $(i_nearest_c) $(i_set_exponent_c) \ + $(i_pow_c) # We only use these if libm doesn't contain complex math functions. @@ -443,6 +458,9 @@ $(i_nearest_c): m4/nearest.m4 m4/mtype.m4 $(i_set_exponent_c): m4/set_exponent.m4 m4/mtype.m4 m4 -Dfile=$@ -I$(srcdir)/m4 set_exponent.m4 > $@ +$(i_pow_c): m4/pow.m4 $(I_M4_DEPS) + m4 -Dfile=$@ -I$(srcdir)/m4 pow.m4 > $@ + $(gfor_math_trig_c): m4/ctrig.m4 m4/mtype.m4 m4 -Dfile=$@ -I$(srcdir)/m4 ctrig.m4 > $@ |