- // Fixup a 3-bit "QUICK" reference in bits 9..1
- // (range of 1..8) in a word. Really bits 1..3 in a byte.
- case FU_QUICK:
- if (!(eattr & DEFINED))
- {
- error("External quick reference");
- continue;
- }
+ // If the symbol is undefined, make sure to pass the symbol in
+ // to the MarkRelocatable() function.
+ if (!(eattr & DEFINED))
+ MarkRelocatable(sno, loc, 0, flags, esym);
+ else if (tdb)
+ MarkRelocatable(sno, loc, tdb, flags, NULL);
+
+ SETBE32(locp, 0, eval);
+ break;
+
+ // Fixup QUAD forward references
+ // Need to add flags for OP uses... [DONE]
+ case FU_QUAD:
+ // If the symbol is undefined, make sure to pass the symbol in
+ // to the MarkRelocatable() function.
+/* if (!(eattr & DEFINED))
+ MarkRelocatable(sno, loc, 0, MQUAD, esym);
+ else if (tdb)
+ MarkRelocatable(sno, loc, tdb, MQUAD, NULL);//*/
+
+ if (w & FU_OBJLINK)
+ {
+ uint64_t quad = GETBE64(locp, 0);
+ uint64_t addr = eval;