⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 atomic_support.s

📁 英特尔&#174 线程构建模块(英特尔&#174 TBB)是一个屡获殊荣的 C++ 运行时库
💻 S
📖 第 1 页 / 共 2 页
字号:
;;        ld8 r9=[r32];;Retry_8acquire:        mov ar.ccv=r9        mov r8=r9;        add r10=r9,r33;;        cmpxchg8.acq r9=[r32],r10,ar.ccv;;        cmp.ne p7,p0=r8,r9  (p7) br.cond.dpnt Retry_8acquire        br.ret.sptk.many b0Inc_8acquire:        fetchadd8.acq r8=[r32],1        br.ret.sptk.many b0Dec_8acquire:        fetchadd8.acq r8=[r32],-1        br.ret.sptk.many b0        .endp __TBB_machine_fetchadd8acquire## 62 "<stdin>"        .section .text        .align 16        .proc __TBB_machine_fetchstore8__TBB_full_fence#        .global __TBB_machine_fetchstore8__TBB_full_fence#__TBB_machine_fetchstore8__TBB_full_fence:        mf;;        xchg8 r8=[r32],r33        br.ret.sptk.many b0        .endp __TBB_machine_fetchstore8__TBB_full_fence#        .proc __TBB_machine_fetchstore8acquire#        .global __TBB_machine_fetchstore8acquire#__TBB_machine_fetchstore8acquire:        xchg8 r8=[r32],r33        br.ret.sptk.many b0        .endp __TBB_machine_fetchstore8acquire## 88 "<stdin>"        .section .text        .align 16        .proc __TBB_machine_cmpswp8__TBB_full_fence#        .global __TBB_machine_cmpswp8__TBB_full_fence#__TBB_machine_cmpswp8__TBB_full_fence:{        mf        br __TBB_machine_cmpswp8acquire}        .endp __TBB_machine_cmpswp8__TBB_full_fence#        .proc __TBB_machine_cmpswp8acquire#        .global __TBB_machine_cmpswp8acquire#__TBB_machine_cmpswp8acquire:        mov ar.ccv=r34;;        cmpxchg8.acq r8=[r32],r33,ar.ccv        br.ret.sptk.many b0        .endp __TBB_machine_cmpswp8acquire#// DO NOT EDIT - AUTOMATICALLY GENERATED FROM tools/generate_atomic/ipf_generate.sh# 1 "<stdin>"# 1 "<built-in>"# 1 "<command line>"# 1 "<stdin>"        .section .text        .align 16# 19 "<stdin>"        .proc __TBB_machine_fetchadd1release#        .global __TBB_machine_fetchadd1release#__TBB_machine_fetchadd1release:        ld1 r9=[r32];;Retry_1release:        mov ar.ccv=r9        mov r8=r9;        add r10=r9,r33;;        cmpxchg1.rel r9=[r32],r10,ar.ccv;;        cmp.ne p7,p0=r8,r9  (p7) br.cond.dpnt Retry_1release        br.ret.sptk.many b0# 49 "<stdin>"        .endp __TBB_machine_fetchadd1release## 62 "<stdin>"        .section .text        .align 16        .proc __TBB_machine_fetchstore1release#        .global __TBB_machine_fetchstore1release#__TBB_machine_fetchstore1release:        mf;;        xchg1 r8=[r32],r33        br.ret.sptk.many b0        .endp __TBB_machine_fetchstore1release## 88 "<stdin>"        .section .text        .align 16# 101 "<stdin>"        .proc __TBB_machine_cmpswp1release#        .global __TBB_machine_cmpswp1release#__TBB_machine_cmpswp1release:        zxt1 r34=r34;;        mov ar.ccv=r34;;        cmpxchg1.rel r8=[r32],r33,ar.ccv        br.ret.sptk.many b0        .endp __TBB_machine_cmpswp1release#// DO NOT EDIT - AUTOMATICALLY GENERATED FROM tools/generate_atomic/ipf_generate.sh# 1 "<stdin>"# 1 "<built-in>"# 1 "<command line>"# 1 "<stdin>"        .section .text        .align 16# 19 "<stdin>"        .proc __TBB_machine_fetchadd2release#        .global __TBB_machine_fetchadd2release#__TBB_machine_fetchadd2release:        ld2 r9=[r32];;Retry_2release:        mov ar.ccv=r9        mov r8=r9;        add r10=r9,r33;;        cmpxchg2.rel r9=[r32],r10,ar.ccv;;        cmp.ne p7,p0=r8,r9  (p7) br.cond.dpnt Retry_2release        br.ret.sptk.many b0# 49 "<stdin>"        .endp __TBB_machine_fetchadd2release## 62 "<stdin>"        .section .text        .align 16        .proc __TBB_machine_fetchstore2release#        .global __TBB_machine_fetchstore2release#__TBB_machine_fetchstore2release:        mf;;        xchg2 r8=[r32],r33        br.ret.sptk.many b0        .endp __TBB_machine_fetchstore2release## 88 "<stdin>"        .section .text        .align 16# 101 "<stdin>"        .proc __TBB_machine_cmpswp2release#        .global __TBB_machine_cmpswp2release#__TBB_machine_cmpswp2release:        zxt2 r34=r34;;        mov ar.ccv=r34;;        cmpxchg2.rel r8=[r32],r33,ar.ccv        br.ret.sptk.many b0        .endp __TBB_machine_cmpswp2release#// DO NOT EDIT - AUTOMATICALLY GENERATED FROM tools/generate_atomic/ipf_generate.sh# 1 "<stdin>"# 1 "<built-in>"# 1 "<command line>"# 1 "<stdin>"        .section .text        .align 16# 19 "<stdin>"        .proc __TBB_machine_fetchadd4release#        .global __TBB_machine_fetchadd4release#__TBB_machine_fetchadd4release:        cmp.eq p6,p0=1,r33        cmp.eq p8,p0=-1,r33  (p6) br.cond.dptk Inc_4release  (p8) br.cond.dpnt Dec_4release;;        ld4 r9=[r32];;Retry_4release:        mov ar.ccv=r9        mov r8=r9;        add r10=r9,r33;;        cmpxchg4.rel r9=[r32],r10,ar.ccv;;        cmp.ne p7,p0=r8,r9  (p7) br.cond.dpnt Retry_4release        br.ret.sptk.many b0Inc_4release:        fetchadd4.rel r8=[r32],1        br.ret.sptk.many b0Dec_4release:        fetchadd4.rel r8=[r32],-1        br.ret.sptk.many b0        .endp __TBB_machine_fetchadd4release## 62 "<stdin>"        .section .text        .align 16        .proc __TBB_machine_fetchstore4release#        .global __TBB_machine_fetchstore4release#__TBB_machine_fetchstore4release:        mf;;        xchg4 r8=[r32],r33        br.ret.sptk.many b0        .endp __TBB_machine_fetchstore4release## 88 "<stdin>"        .section .text        .align 16# 101 "<stdin>"        .proc __TBB_machine_cmpswp4release#        .global __TBB_machine_cmpswp4release#__TBB_machine_cmpswp4release:        zxt4 r34=r34;;        mov ar.ccv=r34;;        cmpxchg4.rel r8=[r32],r33,ar.ccv        br.ret.sptk.many b0        .endp __TBB_machine_cmpswp4release#// DO NOT EDIT - AUTOMATICALLY GENERATED FROM tools/generate_atomic/ipf_generate.sh# 1 "<stdin>"# 1 "<built-in>"# 1 "<command line>"# 1 "<stdin>"        .section .text        .align 16# 19 "<stdin>"        .proc __TBB_machine_fetchadd8release#        .global __TBB_machine_fetchadd8release#__TBB_machine_fetchadd8release:        cmp.eq p6,p0=1,r33        cmp.eq p8,p0=-1,r33  (p6) br.cond.dptk Inc_8release  (p8) br.cond.dpnt Dec_8release;;        ld8 r9=[r32];;Retry_8release:        mov ar.ccv=r9        mov r8=r9;        add r10=r9,r33;;        cmpxchg8.rel r9=[r32],r10,ar.ccv;;        cmp.ne p7,p0=r8,r9  (p7) br.cond.dpnt Retry_8release        br.ret.sptk.many b0Inc_8release:        fetchadd8.rel r8=[r32],1        br.ret.sptk.many b0Dec_8release:        fetchadd8.rel r8=[r32],-1        br.ret.sptk.many b0        .endp __TBB_machine_fetchadd8release## 62 "<stdin>"        .section .text        .align 16        .proc __TBB_machine_fetchstore8release#        .global __TBB_machine_fetchstore8release#__TBB_machine_fetchstore8release:        mf;;        xchg8 r8=[r32],r33        br.ret.sptk.many b0        .endp __TBB_machine_fetchstore8release## 88 "<stdin>"        .section .text        .align 16# 101 "<stdin>"        .proc __TBB_machine_cmpswp8release#        .global __TBB_machine_cmpswp8release#__TBB_machine_cmpswp8release:        mov ar.ccv=r34;;        cmpxchg8.rel r8=[r32],r33,ar.ccv        br.ret.sptk.many b0        .endp __TBB_machine_cmpswp8release#

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -