Wayne Thornton commented on a discussion on cpukit/score/cpu/x86_64/include/rtems/score/cpu.h: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1193#note_150621 > > typedef uintptr_t CPU_Uint32ptr; > > +/** > + * @brief Pauses the CPU pipeline to prevent aggressive speculative > execution > + * and reduce thermal load during spin-wait loops. > + */ > +static inline void _CPU_Pause_speculation( void ) > +{ > + __asm__ volatile( "pause" ::: "memory" ); We can change the name to `_CPU_Spin_wait()` without too much issue. The `pause` and `yield` assembly instructions are easy enough to add to each specific `cpu.h` file for whichever architecture DHRL is being ported. There is, however, a possibility that DHRL will not work on some architectures due to how those architectures handle memory and core assignment. For instance, `x86_64` is very straightforward, but some of the `Zynq` processors do not allow you to select a specific core. Kinsey and I discussed this a bit when I first started this implementation. -- View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1193#note_150621 You're receiving this email because of your account on gitlab.rtems.org.
_______________________________________________ bugs mailing list [email protected] http://lists.rtems.org/mailman/listinfo/bugs
