7 /* There are two forms of relocation program counter relative or
13 #define RRR (RELO4|RELBR|RELWR)
15 #define RRR (RELO4|RELWR)
19 #define RRR (RELO4|RELBR)
25 reloc4( sym, off, pcrel)
30 register struct outrelo *r;
32 if ( relo - reloc_info >= size_reloc)
37 r->or_type = ( pcrel) ? RELPC|RRR : RRR;
38 r->or_sect = S_MIN + conv_seg( cur_seg);
39 r->or_nami = find_sym(sym, REFERENCE);
40 r->or_addr = cur_value();
41 gen4( (pcrel) ? off - ( r->or_addr + 4) : off);
43 /* print( "r %s r %ld s %d in %d adrr %ld off %ld\n",
44 sym, pcrel, cur_seg, r->or_nami, r->or_addr,
45 (pcrel) ? off-cur_value() : off);