This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[fortran, patch] A few fixes regarding LSHIFT, RSHIFT, ISHFT


Dear all,

The attached patch fixes a few issues I've discovered while working on F2008 bit intrinsics:

  -- Code generation for ISHFT and ISHFTC evaluate their arguments more than once; that one is really bad, and I believe there are other such problems in trans-intrinsic.c. The problem is: auditing everything there will take a lot of time.
  -- Two whitespace fixes
  -- For the GNU extension RSHIFT: while g77 doc was silent on whether the rigts shift is logical (zero-filled) or arithmetic (sign-bit-filled), gfortran chose to implement it the same as it was in g77, with an arithmetic fill. But... our doc says otherwise. So, doc is fixed.


Bootstrapped and regtested on x86_64-linux. OK to commit?
FX


PS: I have a testsuite failure for gfortran.dg/pr25923.f90, with the warning at the end of the function instead of the beginiing... I believe it's related to the recent fold_build_loc patch...


Attachment: shifts.ChangeLog
Description: Binary data

Attachment: shifts.diff
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]