You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
the comment in the source code already points out that the unaligned access violates the C standard.
just for reference if you run this code with a 32bit userspace on a 64bit armv8/aarch64 kernel the unaligned access is no longer caught and handled by the kernel but leads directly to a bus error.
not sure if this could/should make it into the documentation somewhere
The text was updated successfully, but these errors were encountered:
Of course, a better solution would be for all compilers, and gcc specifically, to properly translate memcpy() into efficient assembly for all targets. But that's wishful thinking, clearly outside of our responsibility. Even if it does improve some day, we nonetheless need an efficient solution now, for current crop of compilers.
When running armv6 userspace on armv8 hardware with a 64 bit Linux kernel,
the mode 2 caused SIGBUS (unaligned memory access).
Running all our arm builds in the build farm
only on armv8 simplifies administration a lot.
Depending on compiler and environment, this change might slow down
memory accesses (did not benchmark it). The original analysis is 6 years old.
Fixesfacebook#2632
the comment in the source code already points out that the unaligned access violates the C standard.
just for reference if you run this code with a 32bit userspace on a 64bit armv8/aarch64 kernel the unaligned access is no longer caught and handled by the kernel but leads directly to a bus error.
not sure if this could/should make it into the documentation somewhere
The text was updated successfully, but these errors were encountered: