/* Load a value relative to the specified absolute offset.  */
static struct slist * gen_load_absoffsetrel(compiler_state_t *, bpf_abs_offset *, u_int, u_int)
/* Load a value relative to the specified absolute offset.  */
static struct slist * gen_load_absoffsetrel(compiler_state_t *, bpf_abs_offset *, u_int, u_int)
{
	struct slist *s, *s2;
	s = gen_abs_offset_varpart(cstate, abs_offset);
	if (s != NULL) {
		s2 = new_stmt(cstate, BPF_LD|BPF_IND|size);
		s2->s.k = abs_offset->constant_part + offset;
		sappend(s, s2);
	} else {
		s = new_stmt(cstate, BPF_LD|BPF_ABS|size);
		s->s.k = abs_offset->constant_part + offset;
	}
	return s;
}