Intel(R) Threading Building Blocks Doxygen Documentation version 4.2.3
Loading...
Searching...
No Matches
tbb::internal::msvc_inline_asm Namespace Reference

Functions

static uintptr_t lg_bsr (uintptr_t i)
 
static void lock_or (volatile void *operand, __int32 addend)
 
static void lock_and (volatile void *operand, __int32 addend)
 

Function Documentation

◆ lg_bsr()

static uintptr_t tbb::internal::msvc_inline_asm::lg_bsr ( uintptr_t  i)
inlinestatic

Definition at line 140 of file msvc_ia32_common.h.

140 {
141 uintptr_t j;
142 __asm
143 {
144 bsr __TBB_r(ax), i
145 mov j, __TBB_r(ax)
146 }
147 return j;
148 }
#define __TBB_r(reg_name)

References __TBB_r.

◆ lock_and()

static void tbb::internal::msvc_inline_asm::lock_and ( volatile void operand,
__int32  addend 
)
inlinestatic

Definition at line 179 of file msvc_ia32_common.h.

179 {
180 __asm
181 {
182 mov eax, addend
183 mov edx, [operand]
184 lock and [edx], eax
185 }
186 }
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void * lock

References lock.

◆ lock_or()

static void tbb::internal::msvc_inline_asm::lock_or ( volatile void operand,
__int32  addend 
)
inlinestatic

Definition at line 171 of file msvc_ia32_common.h.

171 {
172 __asm
173 {
174 mov eax, addend
175 mov edx, [operand]
176 lock or [edx], eax
177 }
178 }

References lock.


Copyright © 2005-2020 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.