[parrot/parrot] ebe5b6: [gc] fix SIGBUS in GC trace_mem_block on alignment...

GitHub noreply at github.com
Thu Feb 5 10:28:09 UTC 2015


  Branch: refs/heads/smoke-me/gc-ptrdiff-gh1200
  Home:   https://github.com/parrot/parrot
  Commit: ebe5b6e450f0157c7d1fb432bdc2d06a91549312
      https://github.com/parrot/parrot/commit/ebe5b6e450f0157c7d1fb432bdc2d06a91549312
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-02-05 (Thu, 05 Feb 2015)

  Changed paths:
    M ChangeLog
    M src/gc/system.c

  Log Message:
  -----------
  [gc] fix SIGBUS in GC trace_mem_block on alignment-strict CPUs (arm)

We traced all pointers +1 and not by +4 or +8. This is not only
a huge performance loss, it is also illegal on certain architectures.
ptrdiff_t is not a pointer, it is an integer. use size_t* instead.

Should fix GH #1200.




More information about the parrot-commits mailing list