[gfortran,patch] Add ACCESS, CHMOD, GMTIME, LTIME, RSHIFT and LSHIFT g77 intrinsics

François-Xavier Coudert fxcoudert@gmail.com
Thu Jul 27 10:49:00 GMT 2006


Hi all,

The attached patch adds a few more g77 intrinsics to gfortran: ACCESS,
CHMOD, GMTIME, LTIME, RSHIFT and LSHIFT. With this patch, the only
missing intrinsics left is FSEEK.

All the new intrinsics come with testcases, and the patch is
bootstrapped and regtested on i686-linux. I intend to commit it over
the week-end unless someone objects, but I first have a question for
our GMP experts (well, the pural is objectionable, is there anyone
else that Steve who knows GMP well around here? :)

  * I haven't been able to write a simplification function for LSHIFT
and RSHIFT, who are the g77 equivalents of C "i << shift" and "i >>
shift". I suppose it shouldn't be too hard, and I have looked at the
simplication function for ISHFT, but just couldn't manage it. The
patch is correct as it is now, without it, but it sure would be better
to have that simplication done. Could you give it a look?


I believe the patch is otherwise simple and clean, except for the
dirty library implementation on CHMOD, which currently forks, execs
/bin/chmod and waits. It's not very clean, but it's protected by
configure magic and writing (or importing) a parser of symbolic modes
is just too much pain for me.

FX
-------------- next part --------------
A non-text attachment was scrubbed...
Name: intrinsics.diff
Type: text/x-patch
Size: 33869 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20060727/10ba67d0/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: intrinsics.ChangeLog
Type: application/octet-stream
Size: 1710 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20060727/10ba67d0/attachment.obj>


More information about the Gcc-patches mailing list