public long getGPValue() {

		long gp = getAdjustedGPValue();
		if (gp == -1) {

			// TODO: we should probably not resort to assuming use of fabricated got so easily
			// since getAdjustedGPValue has rather limited capability at present

			// assume GP relative to fabricated GOT
			if (sectionGotAddress == null) {
				allocateSectionGot();
			}
			if (sectionGotAddress == Address.NO_ADDRESS) {
				return -1;
			}
			// gp is defined as 0x7ff0 byte offset into the global offset table
			return sectionGotAddress.getOffset() + 0x7ff0;
		}

		return gp;
	}
Get the preferred GP.
NOTE: This needs work to properly handle the use of multiple GP's
@return preferred GP value or -1 if unable to determine GP
Ghidra/Processors/MIPS/src/main/java/ghidra/app/util/bin/format/elf/relocation/MIPS_ElfRelocationContext.java