template <typename Visitor> void enumerateFields_gen(OperandAddress obj,  Visitor & vis) {
  vis(obj.symbol(),"symbol");
  vis(obj.reg(),"reg");
  vis(obj.offsetLo(),"offsetLo");
  vis(obj.offset(),"offset");
  vis(obj.offsetHi(),"offsetHi");
  vis(obj.type(),"type");
}
template <typename Visitor> void enumerateFields_gen(OperandAddress obj,  Visitor & vis) {
  enumerateFields_gen(Operand(obj), vis);
  vis(obj.symbol(),"symbol");
  vis(obj.reg(),"reg");
  enumerateFields(obj.offset(), vis);
}