I've committed this patch, intended for bare-metal nios2-elf targets with custom linker scripts. In conjunction with section attributes, it provides a way to tell GCC that an object is assigned to the low or high 32K memory regions so that it can be addressed via a signed 16-bit offset from r0, the zero register. From GCC's perspective it's quite similar to GP-relative addressing except using a different base register. The output code uses the existing %lo relocation so no assembler or linker changes are necessary to support this. -Sandra