THIS_ADDRESS
*THIS_ADDRESS(entry) = list[i++];
struct expression **p = THIS_ADDRESS(expr);
kill_use(THIS_ADDRESS(phi));
do { *THIS_ADDRESS(ptr) = (new_ptr); } while (0)
#define CURRENT_TAG(ptr) (3 & (unsigned long)*THIS_ADDRESS(ptr))
#define TAG_CURRENT(ptr,val) update_tag(THIS_ADDRESS(ptr),val)
kill_use(THIS_ADDRESS(p));