gcc/libgfortran/m4
Tobias Burnus 195a95c430 re PR fortran/38282 (Bit intrinsics: ILEN and IBCHNG)
2010-09-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/38282
        * intrinsic.c (add_functions): Support IALL, IANY, IPARITY.
        (check_specific): Special case for those intrinsics.
        * gfortran.h (gfc_isym_id): Add new intrinsics
        * intrinsic.h (gfc_check_transf_bit_intrins,
        gfc_simplify_iall, gfc_simplify_iany, gfc_simplify_iparity,
        gfc_resolve_iall, gfc_resolve_iany, gfc_resolve_iparity):
        New prototypes.
        * iresolve.c (gfc_resolve_iall, gfc_resolve_iany,
        gfc_resolve_iparity, resolve_transformational): New functions.
        (gfc_resolve_product, gfc_resolve_sum,
        gfc_resolve_parity): Use resolve_transformational.
        * check.c (gfc_check_transf_bit_intrins): New function.
        * simplify.c (gfc_simplify_iall, gfc_simplify_iany,
        gfc_simplify_iparity, do_bit_any, do_bit_ior,
        do_bit_xor, simplify_transformation): New functions.
        (gfc_simplify_all, gfc_simplify_any, gfc_simplify_parity,
        gfc_simplify_sum, gfc_simplify_product): Use simplify_transformation.
        * trans-intrinsic.c (gfc_conv_intrinsic_arith,
        gfc_conv_intrinsic_function, gfc_is_intrinsic_libcall):
        Handle IALL, IANY and IPARITY intrinsics.       
        * intrinsic.texi (IMAGE_INDEX): Move up to fix alphabetic
        order.
        (IALL, IANY, IPARITY): Document new intrinsics.

2010-09-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/38282
        * gfortran.dg/iall_iany_iparity_1.f90: New.
        * gfortran.dg/iall_iany_iparity_2.f90: New.

2010-09-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/38282
        * gfortran.map: Add new iany, iall and iparity intrinsics.
        * Makefile.am: Ditto.
        * m4/iany.m4: New.
        * m4/iall.m4: New.
        * m4/iparity.m4: New.
        * Makefile.in: Regenerate.
        * generated/iall_i1.c: Generate.
        * generated/iall_i2.c: Generate.
        * generated/iall_i4.c: Generate.
        * generated/iall_i8.c: Generate.
        * generated/iall_i16.c: Generate.
        * generated/iany_i1.c: Generate.
        * generated/iany_i2.c: Generate.
        * generated/iany_i4.c: Generate.
        * generated/iany_i8.c: Generate.
        * generated/iany_i16.c: Generate.
        * generated/iparity_i1.c: Generate.
        * generated/iparity_i2.c: Generate.
        * generated/iparity_i4.c: Generate.
        * generated/iparity_i8.c: Generate.
        * generated/iparity_i16.c: Generate.

From-SVN: r163898
2010-09-06 07:55:10 +02:00
..
all.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
any.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
bessel.m4 bessel.m4: Fix printf warning by casting to (long int). 2010-09-06 00:14:14 +02:00
count.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
cshift0.m4
cshift1.m4
eoshift1.m4
eoshift3.m4
exponent.m4 mtype.m4 (upcase, [...]): New macros. 2010-08-28 22:10:52 +00:00
fraction.m4 mtype.m4 (upcase, [...]): New macros. 2010-08-28 22:10:52 +00:00
head.m4
iall.m4 re PR fortran/38282 (Bit intrinsics: ILEN and IBCHNG) 2010-09-06 07:55:10 +02:00
iany.m4 re PR fortran/38282 (Bit intrinsics: ILEN and IBCHNG) 2010-09-06 07:55:10 +02:00
iforeach.m4
ifunction.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
ifunction_logical.m4
in_pack.m4
in_unpack.m4
iparity.m4 re PR fortran/38282 (Bit intrinsics: ILEN and IBCHNG) 2010-09-06 07:55:10 +02:00
iparm.m4
matmul.m4
matmull.m4
maxloc0.m4
maxloc1.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
maxval.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
minloc0.m4
minloc1.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
minval.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
misc_specifics.m4
mtype.m4 mtype.m4 (upcase, [...]): New macros. 2010-08-28 22:10:52 +00:00
nearest.m4 mtype.m4 (upcase, [...]): New macros. 2010-08-28 22:10:52 +00:00
norm2.m4 mtype.m4 (upcase, [...]): New macros. 2010-08-28 22:10:52 +00:00
pack.m4
parity.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
pow.m4
product.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
reshape.m4
rrspacing.m4 mtype.m4 (upcase, [...]): New macros. 2010-08-28 22:10:52 +00:00
set_exponent.m4 mtype.m4 (upcase, [...]): New macros. 2010-08-28 22:10:52 +00:00
shape.m4
spacing.m4 mtype.m4 (upcase, [...]): New macros. 2010-08-28 22:10:52 +00:00
specific.m4
specific2.m4
spread.m4
sum.m4
transpose.m4
types.m4
unpack.m4