Before this patch, the following stores in merge_fail would fail to be merged, while they would get merged in merge_ok:
void use(unsigned long long *);
void merge_fail(unsigned key, unsigned index)
{
  unsigned long long args[8];
  args[0] = key;
  args[1] = index;
  use(args);
}
void merge_ok(unsigned long long *dst, unsigned a, unsigned b)
{
  dst[0] = a;
  dst[1] = b;
}The reason is that getMemOpBaseImmOfs would return false for FI base operands.
This adds support for this.