As far as I know, this mechanism is not architecture-dependent.
I actually found it while tracing through the boot process of
the PowerPC architecture, but my code tests were performed on
an x86-based machine. The code that makes this work is in
the kernel's init/ directory, which (as is my
understanding), contains initialization code which is used
by all architectures.
The ability to use this mechanism depends more on specific
support given by the GNU tools and the ELF executable format
rather than architecture-specific support.