Something like this is slightly cleaner I think. Feel free to object though. :)
```
uint __eax;
asm {
      "pushfl
        pop %0
        mov %0, %1
        xor %2, %0
        push %0
        popfl
        pushfl
        pop %0
        xor %0, %1"
        : "=&r" __eax, "=r" flags
        : "i" 0x00200000;
  }
```