This discussion is archived
0 Replies Latest reply: Nov 18, 2009 12:04 PM by 843829 RSS

Empty MEMBAR-acquire/MEMBAR-release block

843829 Newbie
Currently Being Moderated

When there are no instructions between MEMBAR-acquire and MEMBAR-release, does that mean synchronization is elided? What purpose do they serve if they contain no code in between them?
051   B3: #     B8 B4 <- B7 B6 B2 B14  Freq: 1
051        MEMBAR-acquire (prior CMPXCHG in FastLock so empty encoding)
051        MEMBAR-release ! (empty encoding)
051        MOV    ECX,#7
056        AND    ECX,[EBP]
059        CMP    ECX,#5
05c        Jne,s  B8  P=0.000001 C=-1.000000
05e   B4: #     N152 <- B9 B8 B3  Freq: 1
05e        MOV    EAX,#120
063        ADD    ESP,24     # Destroy frame
     POPL   EBP
     TEST   PollPage,EAX     ! Poll Safepoint
06d        RET