translation.gcrootfinder
- name: gcrootfinder
- description: Strategy for finding GC Roots (framework GCs only)
- command-line: –gcrootfinder
- option type: choice option
- possible values:
- default: shadowstack
- requirements:
- value ‘shadowstack’ requires:
- value ‘asmgcc’ requires:
Choose the method used to find the roots in the GC. This only
applies to our framework GCs. You have a choice of two
alternatives:
- --gcrootfinder=shadowstack: use a so-called “shadow
stack”, which is an explicitly maintained custom stack of
root pointers. This is the most portable solution.
- --gcrootfinder=asmgcc: use assembler hackery to find the
roots directly from the normal stack. This is a bit faster,
but platform specific. It works so far with GCC or MSVC,
on i386 and x86-64.
You may have to force the use of the shadowstack root finder if
you are running into troubles or if you insist on translating
PyPy with other compilers like clang.