- if (first) {
- if (o->roff1)
- *(unsigned int *) o->roff1 = ull;
- else
- val_store(ilp, ull, o->off1, 0, data);
+ if (first)
+ val_store(ilp, ull, o->off1, 0, data, o);
+ if (curr == 1) {
+ if (o->off2)
+ val_store(ilp, ull, o->off2, 0, data, o);
+ }
+ if (curr == 2) {
+ if (o->off3)
+ val_store(ilp, ull, o->off3, 0, data, o);
+ }
+ if (!more) {
+ if (curr < 1) {
+ if (o->off2)
+ val_store(ilp, ull, o->off2, 0, data, o);
+ }
+ if (curr < 2) {
+ if (o->off3)
+ val_store(ilp, ull, o->off3, 0, data, o);
+ }