gcc/fortran/
* trans-intrinsic.c (gfc_conv_intrinsic_ishft): Change to logicalshift. Call fold. Remove 0-bit shift shortcut. (gfc_conv_intrinsic_ishftc): Convert first argument to at least 4 bytes bits. Convert 2nd and 3rd argument to 4 bytes. Convert result if width(arg 1) < 4 bytes. Call fold. libgfortran/ * libgfortran/libgfortran.h (GFC_UINTEGER_1, GFC_UINTEGER_2): Define. * intrinsics/ishftc.c: Update copyright years. (ishftc8): Change 'shift' and 'size' to GFC_INTEGER_4. * intrinsics/mvbits.c: Correcty non-ASCII character in my name. Add implementations for GFC_INTEGER_1 and GFC_INTEGER_2. gcc/testsuite/ * gfortran.dg/g77/f90-intrinsic-bit.f: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@92642 138bc75d-0d04-0410-961f-82ee72b054a4
Showing
- gcc/fortran/ChangeLog 8 additions, 0 deletionsgcc/fortran/ChangeLog
- gcc/fortran/trans-intrinsic.c 65 additions, 29 deletionsgcc/fortran/trans-intrinsic.c
- gcc/testsuite/ChangeLog 4 additions, 0 deletionsgcc/testsuite/ChangeLog
- gcc/testsuite/gfortran.dg/g77/f90-intrinsic-bit.f 459 additions, 0 deletionsgcc/testsuite/gfortran.dg/g77/f90-intrinsic-bit.f
- libgfortran/ChangeLog 9 additions, 0 deletionslibgfortran/ChangeLog
- libgfortran/intrinsics/ishftc.c 3 additions, 3 deletionslibgfortran/intrinsics/ishftc.c
- libgfortran/intrinsics/mvbits.c 17 additions, 1 deletionlibgfortran/intrinsics/mvbits.c
- libgfortran/libgfortran.h 2 additions, 0 deletionslibgfortran/libgfortran.h
Loading
Please register or sign in to comment