[PATCH] Port libgccjit to Windows.
Nicolas Bértolo
nicolasbertolo@gmail.com
Thu May 28 01:27:54 GMT 2020
Hi,
> Do you have commit/push access to the gcc repository?
No I don't.
> BTW, why isn't it necessary to use --enable-host-shared in Windows?
> Can we document that?
That's because all code is position independent in Windows.
> On the subject of nitpicking, I find myself getting distracted by the
> indentation in the patch; there seem to be a lot of mismatches.
> What editor are you using, and does it have options to
> (a) show visible whitespace, and
> (b) to apply a formatting convention?
> I use Emacs, and it takes care of this for me. I haven't used it, but
> there's a contrib/clang-format file in the gcc source tree which
> presumably describes GCC's coding conventions, if that helps for the
> new code.
The problem seems to be that I was writing tabs but since I have set up my
editor to show them as 2 spaces I couldn't see what was wrong.
> Am I right in thinking that this installs the libgccjit.a file on Windows?
> Why is this done?
That is the file libgccjit.dll.a
It is the import library for gccjit. It is part of the way Windows handles
dynamic libraries.
> New C++ source files should have a .cc extension.
> I hope that at some point we'll rename all the existing .c ones
> accordingly.
I just couldn't get Make to generate jit-w32.o from jit-w32.cc.
It looks for jit-w32.c.
I had to leave it with the .c extension.
> Does this call generate a directory that's only accessible to the
> current user?
> Otherwise there could be a risk of a hostile user on the same machine
> clobbering the contents and injecting code into this process.
I changed the code to generate a directory than can only be accessed by the
current user.
I've attached a new version. It contains a rewrite of the code that creates
temporary directories.
Nico
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Port-libgccjit-to-Windows.patch
Type: application/octet-stream
Size: 26872 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc-patches/attachments/20200527/504b1ce4/attachment-0001.obj>
More information about the Gcc-patches
mailing list