emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: HAVE_FAST_UNALIGNED_ACCESS


From: Arsen Arsenović
Subject: Re: HAVE_FAST_UNALIGNED_ACCESS
Date: Sat, 01 Apr 2023 17:22:48 +0200

Eli Zaretskii <eliz@gnu.org> writes:

> You are again trying to push for a change without showing any actual
> bug with the existing code.  Please humor me, and please show me an
> actual bug due to the existing code before suggesting a solution.  See
> above for the description of the details I'd like to know about such
> actual bug.

For a somewhat contrived example, UBsan flags this code (and, when
running the testsuite, it'd seem that it flags only this code).

  ~/gnu/emacs-29/_build 2 $ gcc --version
  gcc (Gentoo Hardened 13.0.1_pre20230326-r1 p9) 13.0.1 20230326 (experimental)
  Copyright (C) 2023 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  
  ~/gnu/emacs-29/_build$ git rev-parse HEAD
  b39c3cd1125590bf4b77880b41ac08b29cdfcff6
  ~/gnu/emacs-29/_build$ gcc -dumpmachine
  x86_64-pc-linux-gnu

I can't speak to Po's example, but IIUC, he ran into a problem somewhere
(maybe the same example?).

>> .. or something similar to it, assuming I made an error, which is likely
>> given the circumstances.  This does pass the testsuite, anyway.  It
>> should just expand deferences into explicit memcpys.
>> 
>> No actual memcpy calls are produced, and this is at least functional on
>> a superset of compilers, and I suspect replacing the whole thing with a
>> naive-looking while (*(w1++) != *(w2++)); loop would be even better (but
>> I can settle for that being too experimental).
>
> Sorry, I don't want to risk any errors, and I would like to avoid any
> experiments with the release branch.  Which is why I'm asking for hard
> evidence.  It isn't that I don't understand what you and others are
> saying, or don't believe you.  It's just that we need to see the
> problems before we can judge the solutions that must be safe on this
> branch.

I was writing the patch for demonstration purposes more than for actual
application.

I understand why you're arguing this, and I have to thank you for it -
such efforts keep Emacs as stable as it is - but this feels like an
example that is too trivial to apply such judgment to, hence my
position.  I am certain that you have an understanding of the issue at
hand, I'm only trying to provide a solution that's safe enough for 29.

Have a lovely day.
-- 
Arsen Arsenović

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]