This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC 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]

Re: %fs and %gs segments on x86/x86-64


Hi all,

Here is an updated patch (attached) for __seg_fs and __seg_gs:

* added a target hook "default_pointer_address_modes" to avoid
disabling a few gcc optimizations which, according to my reading of
the documentation, should continue to work even in the presence of
multiple address spaces as long as they all use the same mode for
pointers.

* account for the extra byte in "%gs:(...)" addresses.

* added one test case (better than none!) using "scan-assembler".  If
people agree that this is the style of test that we need here, then I
could add more of them.

The diff is against trunk.  The tests don't all pass; the failures
really seem unrelated, but I guess I should grab the same revision
without the patch, compile it, try to run all the tests on the same
machine, and compare the list of failures... it just takes a serious
amount of time to do so...

I also reported the bug I got previously
(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66768) and it seems to
occur already in other targets with address spaces.


A bientÃt,

Armin.

Attachment: gcc-seg-gs-225561.diff
Description: Text document


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