- Timestamp:
- Oct 12, 2018 10:24:40 AM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/vm.h
r74786 r74787 643 643 644 644 /** @def VM_FF_CLEAR 645 * Clears a force action flag.645 * Clears a single force action flag. 646 646 * 647 647 * @param pVM The cross context VM structure. … … 649 649 */ 650 650 #if 1 651 # define VM_FF_CLEAR(pVM, fFlag) ASMAtomicAndU32(&(pVM)->fGlobalForcedActions, ~(fFlag)) 651 # if !defined(VBOX_STRICT) || !defined(RT_COMPILER_SUPPORTS_LAMBDA) 652 # define VM_FF_CLEAR(pVM, fFlag) ASMAtomicAndU32(&(pVM)->fGlobalForcedActions, ~(fFlag)) 653 # else 654 # define VM_FF_CLEAR(pVM, fFlag) \ 655 ([](PVM a_pVM) -> void \ 656 { \ 657 AssertCompile(RT_IS_POWER_OF_TWO(fFlag)); \ 658 ASMAtomicAndU32(&a_pVM->fGlobalForcedActions, ~(fFlag)); \ 659 }(pVM)) 660 # endif 652 661 #else 653 662 # define VM_FF_CLEAR(pVM, fFlag) \ … … 667 676 #else 668 677 # define VMCPU_FF_CLEAR(pVCpu, fFlag) \ 669 670 671 672 673 678 ([](PVMCPU a_pVCpu) -> void \ 679 { \ 680 AssertCompile(RT_IS_POWER_OF_TWO(fFlag)); \ 681 ASMAtomicAndU32(&a_pVCpu->fLocalForcedActions, ~(fFlag)); \ 682 }(pVCpu)) 674 683 #endif 675 684 … … 701 710 #else 702 711 # define VMCPU_FF_IS_SET(pVCpu, fFlag) \ 703 704 705 706 707 712 ([](PVMCPU a_pVCpu) -> bool \ 713 { \ 714 AssertCompile(RT_IS_POWER_OF_TWO(fFlag)); \ 715 return (a_pVCpu->fLocalForcedActions & (fFlag)) == (fFlag); \ 716 }(pVCpu)) 708 717 #endif 709 718
Note:
See TracChangeset
for help on using the changeset viewer.