Changeset 87124 in vbox for trunk/include/iprt
- Timestamp:
- Dec 24, 2020 2:59:52 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/iprt/asm.h
r85223 r87124 1526 1526 1527 1527 /** 1528 * Serialize Instruction .1528 * Serialize Instruction (both data store and instruction flush). 1529 1529 */ 1530 1530 #if (defined(RT_ARCH_X86) && ARCH_BITS == 16) || defined(IN_GUEST) … … 1534 1534 #elif defined(RT_ARCH_SPARC64) 1535 1535 RTDECL(void) ASMSerializeInstruction(void) RT_NOTHROW_PROTO; 1536 #elif defined(RT_ARCH_ARM64) || defined(RT_ARCH_ARM32) 1537 DECLINLINE(void) ASMSerializeInstruction(void) RT_NOTHROW_DEF 1538 { 1539 /* Note! Only armv7 and later. */ 1540 __asm__ __volatile__ ("dsb\n\t" ::: "memory"); 1541 } 1536 1542 #else 1537 1543 # error "Port me" … … 1557 1563 } 1558 1564 # endif 1565 #elif defined(RT_ARCH_ARM64) || defined(RT_ARCH_ARM32) 1566 /* Note! Only armv7 and later. */ 1567 __asm__ __volatile__ ("dsb\n\t"); 1559 1568 #elif ARCH_BITS == 16 1560 1569 uint16_t volatile u16; … … 1585 1594 } 1586 1595 # endif 1596 #elif defined(RT_ARCH_ARM64) || defined(RT_ARCH_ARM32) 1597 /* Note! Only armv7 and later. */ 1598 __asm__ __volatile__ ("dmb\n\t"); 1587 1599 #else 1588 1600 ASMMemoryFence(); … … 1609 1621 } 1610 1622 # endif 1623 #elif defined(RT_ARCH_ARM64) || defined(RT_ARCH_ARM32) 1624 /* Note! Only armv7 and later. */ 1625 __asm__ __volatile__ ("dmb\n\t"); 1611 1626 #else 1612 1627 ASMMemoryFence();
Note:
See TracChangeset
for help on using the changeset viewer.