Changeset 94023 in vbox
- Timestamp:
- Mar 1, 2022 10:43:43 AM (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/iprt/asm.h
r93837 r94023 217 217 "stlxr %w[rc], %w[uNew], %[pMem]\n\t" \ 218 218 "cbnz %w[rc], .Ltry_again_" #name "_%=\n\t" \ 219 : [pMem] "+ m" (*a_pu32Mem) \219 : [pMem] "+Q" (*a_pu32Mem) \ 220 220 , [uNew] "=&r" (u32NewRet) \ 221 221 , [rc] "=&r" (rcSpill) \ … … 232 232 "stlxr %w[rc], %w[uNew], %[pMem]\n\t" \ 233 233 "cbnz %w[rc], .Ltry_again_" #name "_%=\n\t" \ 234 : [pMem] "+ m" (*a_pu32Mem) \234 : [pMem] "+Q" (*a_pu32Mem) \ 235 235 , [uOld] "=&r" (u32OldRet) \ 236 236 , [uNew] "=&r" (u32NewSpill) \ … … 247 247 "stlxr %w[rc], %[uNew], %[pMem]\n\t" \ 248 248 "cbnz %w[rc], .Ltry_again_" #name "_%=\n\t" \ 249 : [pMem] "+ m" (*a_pu64Mem) \249 : [pMem] "+Q" (*a_pu64Mem) \ 250 250 , [uNew] "=&r" (u64NewRet) \ 251 251 , [rc] "=&r" (rcSpill) \ … … 262 262 "stlxr %w[rc], %[uNew], %[pMem]\n\t" \ 263 263 "cbnz %w[rc], .Ltry_again_" #name "_%=\n\t" \ 264 : [pMem] "+ m" (*a_pu64Mem) \264 : [pMem] "+Q" (*a_pu64Mem) \ 265 265 , [uOld] "=&r" (u64OldRet) \ 266 266 , [uNew] "=&r" (u64NewSpill) \ … … 520 520 "bne .Ltry_again_ASMAtomicXchgU8_%=\n\t" 521 521 # endif 522 : [pMem] "+ m" (*pu8)522 : [pMem] "+Q" (*pu8) 523 523 , [uOld] "=&r" (uOld) 524 524 , [rc] "=&r" (rcSpill) … … 617 617 "bne .Ltry_again_ASMAtomicXchgU16_%=\n\t" 618 618 # endif 619 : [pMem] "+ m" (*pu16)619 : [pMem] "+Q" (*pu16) 620 620 , [uOld] "=&r" (uOld) 621 621 , [rc] "=&r" (rcSpill) … … 703 703 "bne .Ltry_again_ASMAtomicXchgU32_%=\n\t" 704 704 # endif 705 : [pMem] "+ m" (*pu32)705 : [pMem] "+Q" (*pu32) 706 706 , [uOld] "=&r" (uOld) 707 707 , [rc] "=&r" (rcSpill) … … 829 829 "bne .Ltry_again_ASMAtomicXchgU64_%=\n\t" 830 830 # endif 831 : [pMem] "+ m" (*pu64)831 : [pMem] "+Q" (*pu64) 832 832 , [uOld] "=&r" (uOld) 833 833 , [rc] "=&r" (rcSpill) … … 1094 1094 # endif 1095 1095 "1:\n\t" 1096 : [pMem] "+ m" (*pu8)1096 : [pMem] "+Q" (*pu8) 1097 1097 , [uOld] "=&r" (u32Spill) 1098 1098 , [rc] "=&r" (rcSpill) … … 1231 1231 # endif 1232 1232 "1:\n\t" 1233 : [pMem] "+ m" (*pu32)1233 : [pMem] "+Q" (*pu32) 1234 1234 , [uOld] "=&r" (u32Spill) 1235 1235 , [rc] "=&r" (rcSpill) … … 1394 1394 # endif 1395 1395 "1:\n\t" 1396 : [pMem] "+ m" (*pu64)1396 : [pMem] "+Q" (*pu64) 1397 1397 , [uOld] "=&r" (u64Spill) 1398 1398 , [rc] "=&r" (rcSpill) … … 1738 1738 # endif 1739 1739 "1:\n\t" 1740 : [pMem] "+ m" (*pu8)1740 : [pMem] "+Q" (*pu8) 1741 1741 , [uOld] "=&r" (u8ActualOld) 1742 1742 , [rc] "=&r" (rcSpill) … … 1863 1863 # endif 1864 1864 "1:\n\t" 1865 : [pMem] "+ m" (*pu16)1865 : [pMem] "+Q" (*pu16) 1866 1866 , [uOld] "=&r" (u16ActualOld) 1867 1867 , [rc] "=&r" (rcSpill) … … 1988 1988 # endif 1989 1989 "1:\n\t" 1990 : [pMem] "+ m" (*pu32)1990 : [pMem] "+Q" (*pu32) 1991 1991 , [uOld] "=&r" (u32ActualOld) 1992 1992 , [rc] "=&r" (rcSpill) … … 2154 2154 # endif 2155 2155 "1:\n\t" 2156 : [pMem] "+ m" (*pu64)2156 : [pMem] "+Q" (*pu64) 2157 2157 , [uOld] "=&r" (u64ActualOld) 2158 2158 , [rc] "=&r" (rcSpill)
Note:
See TracChangeset
for help on using the changeset viewer.