Top


定義場所(file name)

hotspot/src/os_cpu/windows_x86/vm/os_windows_x86.cpp

名前(function name)

extern "C" int SpinPause () {

本体部(body)

  {- -------------------------------------------
  (1) x86-64 の場合には, 即座にリターンするだけ.
      そうでなければ, pause 命令 を実行してからリターン.
      (なぜ x86-64 では pause を使わない?? #TODO)

      (なおコメントには, x86 での pause 命令は rep:nop と同じオペコードであり, 
       これを認識しない古いプロセッサ上でも単に nop と見なされるだけ, という話が書かれている.)
      ---------------------------------------- -}

    #ifdef AMD64
       return 0 ;
    #else
       // pause == rep:nop
       // On systems that don't support pause a rep:nop
       // is executed as a nop.  The rep: prefix is ignored.
       _asm {
          pause ;
       };
       return 1 ;
    #endif // AMD64
    }

This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.