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 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
cshift1.m4 [multiple changes] 2009-07-19 15:07:21 +00:00
eoshift1.m4 [multiple changes] 2009-07-19 15:07:21 +00:00
eoshift3.m4 [multiple changes] 2009-07-19 15:07:21 +00:00
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 Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
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 re PR fortran/40643 (maxloc/minloc: Wrong result for NaN at position 1) 2009-07-24 09:57:13 +02:00
ifunction_logical.m4 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
ifunction.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
in_pack.m4 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
in_unpack.m4 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
iparity.m4 re PR fortran/38282 (Bit intrinsics: ILEN and IBCHNG) 2010-09-06 07:55:10 +02:00
iparm.m4 re PR fortran/40643 (maxloc/minloc: Wrong result for NaN at position 1) 2009-07-24 09:57:13 +02:00
matmul.m4 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
matmull.m4 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
maxloc0.m4 re PR fortran/40643 (maxloc/minloc: Wrong result for NaN at position 1) 2009-07-24 09:57:13 +02:00
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 re PR fortran/40643 (maxloc/minloc: Wrong result for NaN at position 1) 2009-07-24 09:57:13 +02:00
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 gfortran.h (gfc_options_t): Add flag_allow_leading_underscore. 2007-01-20 18:33:20 +00:00
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 pack.m4 (pack_'rtype_code`): Use count_0 for counting true values in a logical array. 2009-08-30 09:02:01 +00:00
parity.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
pow.m4 Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
product.m4 re PR fortran/33197 (Fortran 2008: math functions) 2010-08-27 21:17:45 +02:00
reshape.m4 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
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 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
spacing.m4 mtype.m4 (upcase, [...]): New macros. 2010-08-28 22:10:52 +00:00
specific2.m4 gfortran.h (gfc_options_t): Add flag_allow_leading_underscore. 2007-01-20 18:33:20 +00:00
specific.m4 gfortran.h (gfc_options_t): Add flag_allow_leading_underscore. 2007-01-20 18:33:20 +00:00
spread.m4 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
sum.m4 Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
transpose.m4 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
types.m4 Merge tree-ssa-20020619-branch into mainline. 2004-05-13 02:41:07 -04:00
unpack.m4 re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00