Branch: Tag:


2017-07-20 10:53:05 by Marcus Comstedt <>

Consolidate unaligned memory access

* The implementations of EXTRACT_{UWORD,WORD,INT} in port.[ch] are
removed. Instead, implementations in pike_memory.h are used.

* pike_memory.h now uses HANDLES_UNALIGNED_MEMORY_ACCESS to determine
when to optimize using raw access, like the functions in port.h used
to do, instead of hardcoding for x86_64.

* The set of architectures for which HANDLES_UNALIGNED_MEMORY_ACCESS
is defined is updated.

290:   #define GC2   #endif    - #ifdef i386 + #if defined(i386) || defined(__powerpc__) || defined(__x86_64__) || defined(__ARM_FEATURE_UNALIGNED)   #ifndef HANDLES_UNALIGNED_MEMORY_ACCESS   #define HANDLES_UNALIGNED_MEMORY_ACCESS   #endif