/* Older Xen versions used to save the segment arbytes directly
* from the VMCS on Intel hosts. Detect this and rearrange them
* into the struct segment_register format. */
-#define UNFOLD_ARBYTES(_r) \
- if ( (_r & 0xf000) && !(_r & 0x0f00) ) \
- _r = ((_r & 0xff) | ((_r >> 4) & 0xf00))
+#define UNFOLD_ARBYTES(_r) \
+ if ( ((_r) & 0xf000) && !((_r) & 0x0f00) ) \
+ (_r) = (((_r) & 0xff) | (((_r) >> 4) & 0xf00))
UNFOLD_ARBYTES(ctxt.cs_arbytes);
UNFOLD_ARBYTES(ctxt.ds_arbytes);
UNFOLD_ARBYTES(ctxt.es_arbytes);
{ \
hvm_register_savevm(HVM_SAVE_CODE(_x), \
#_x, \
- &_save, \
+ _save, \
check, \
- &_load, \
+ _load, \
(_num) * (HVM_SAVE_LENGTH(_x) \
+ sizeof (struct hvm_save_descriptor)), \
_k); \