diff -rcN EigenExa-2.3k2-orig/eigen_sx.F EigenExa-2.3k2/eigen_sx.F
*** EigenExa-2.3k2-orig/eigen_sx.F	2016-07-25 23:49:02.000000000 +0900
--- EigenExa-2.3k2/eigen_sx.F	2018-01-18 10:18:55.000000000 +0900
***************
*** 124,130 ****
        s0 = eigen_get_wtime( )
  #endif
  
!       if ( (mode == 'A' .OR. mode == 'X') .AND. nvec_ > 0 ) then
           e2(0*nme+1:0*nme+N-1) = e(0*nme+2:0*nme+N)
           e2(0*nme+N) = 0
           e2(1*nme+1:1*nme+N-2) = e(1*nme+3:1*nme+N)
--- 124,130 ----
        s0 = eigen_get_wtime( )
  #endif
  
!       if ( (mode_ == 'A' .OR. mode_ == 'X') .AND. nvec_ > 0 ) then
           e2(0*nme+1:0*nme+N-1) = e(0*nme+2:0*nme+N)
           e2(0*nme+N) = 0
           e2(1*nme+1:1*nme+N-2) = e(1*nme+3:1*nme+N)
***************
*** 132,138 ****
           e2(1*nme+N) = 0
           w(1:n)=d(1:n)
           call eigen_dcx( n, nvec_, w, e2, nme, z, ldz, INFO, ret_2 )
!          if ( mode == 'X' ) then
              call eigen_bisect2( d, e, e(1+nme), w, n, 1 )
           end if
        end if
--- 132,138 ----
           e2(1*nme+N) = 0
           w(1:n)=d(1:n)
           call eigen_dcx( n, nvec_, w, e2, nme, z, ldz, INFO, ret_2 )
!          if ( mode_ == 'X' ) then
              call eigen_bisect2( d, e, e(1+nme), w, n, 1 )
           end if
        end if
diff -rcN EigenExa-2.3k2-orig/eigen_trd_t6_3.F EigenExa-2.3k2/eigen_trd_t6_3.F
*** EigenExa-2.3k2-orig/eigen_trd_t6_3.F	2016-11-05 16:39:53.000000000 +0900
--- EigenExa-2.3k2/eigen_trd_t6_3.F	2018-01-18 10:19:02.000000000 +0900
***************
*** 240,264 ****
  ! otherwise done here.
  !
        if ( .NOT. flag_putoff ) then
-          x_pos = eigen_translate_g2l(L, x_nnod,x_inod)
        if ( flag_oncache ) then
!          call datacast_dblx( m0, v_y, v_x, ldv,
       &                       u_t(1), v_t(1), x_pos, 2 )
        else
           call datacast_dbl( v_y(1), v_x(1), u_t(1), v_t(1), x_pos, 2 )
        end if
        end if
  
        call eigen_vector_zeropad_x( v_x(1), L )
-       if ( .NOT. flag_putoff ) then
-       if ( flag_oncache ) then
-          do k_1=1,m0
-          call eigen_vector_zeropad_y( v_y(1+ldv*(k_1-1)), L )
-          end do
-       else
-          call eigen_vector_zeropad_y( v_y(1), L )
-       end if
-       end if
  
  !$OMP END MASTER
  
--- 240,261 ----
  ! otherwise done here.
  !
        if ( .NOT. flag_putoff ) then
        if ( flag_oncache ) then
!          l_2 = num_v_done + 1
!          x_pos = eigen_translate_g2l(L+l_2-1, x_nnod,x_inod)
!          call datacast_dblx( l_2, v_y, v_x, ldv,
       &                       u_t(1), v_t(1), x_pos, 2 )
+          do k_1=1,l_2
+          call eigen_vector_zeropad_y( v_y(1+ldv*(k_1-1)), L+k_1-1 )
+          end do
        else
+          x_pos = eigen_translate_g2l(L, x_nnod,x_inod)
           call datacast_dbl( v_y(1), v_x(1), u_t(1), v_t(1), x_pos, 2 )
+          call eigen_vector_zeropad_y( v_y(1), L )
        end if
        end if
  
        call eigen_vector_zeropad_x( v_x(1), L )
  
  !$OMP END MASTER
  
diff -rcN EigenExa-2.3k2-orig/Makefile EigenExa-2.3k2/Makefile
*** EigenExa-2.3k2-orig/Makefile	2016-11-05 11:50:42.000000000 +0900
--- EigenExa-2.3k2/Makefile	2018-01-16 12:26:09.000000000 +0900
***************
*** 10,19 ****
  #include make_incs/make_inc.Intel
  #include make_incs/make_inc.Intel.shared
  #include make_incs/make_inc.BX900
! include make_incs/make_inc.K_FX10
  #include make_incs/make_inc.K_FX10.shared
  #include make_incs/make_inc.BlueGeneQ
  #include make_incs/make_inc.SX
  
  
  #
--- 10,20 ----
  #include make_incs/make_inc.Intel
  #include make_incs/make_inc.Intel.shared
  #include make_incs/make_inc.BX900
! #include make_incs/make_inc.K_FX10
  #include make_incs/make_inc.K_FX10.shared
  #include make_incs/make_inc.BlueGeneQ
  #include make_incs/make_inc.SX
+ include make_incs/make_inc.ofp
  
  
  #
diff -rcN EigenExa-2.3k2-orig/make_incs/make_inc.ofp EigenExa-2.3k2/make_incs/make_inc.ofp
*** EigenExa-2.3k2-orig/make_incs/make_inc.ofp	1970-01-01 09:00:00.000000000 +0900
--- EigenExa-2.3k2/make_incs/make_inc.ofp	2018-01-16 12:25:58.000000000 +0900
***************
*** 0 ****
--- 1,18 ----
+ FF             = mpiifort
+ FC             = mpiifort
+ CC             = mpiicc
+ AR             = ar
+ SMPFLAG        = -qopenmp
+ CCFLAG         = $(SMPFLAG) -O3 -axMIC-AVX512
+ C0FLAG         = $(SMPFLAG) -O0 -axMIC-AVX512
+ CPPFLAG        = -cpp
+ MACRO_D_PREFIX = -D
+ INCFLAG        = -I./
+ MODFLAG        = -module ./
+ BLAS           = -mkl=parallel
+ LAPACK         = 
+ LDFLAG         = -I$(MKLROOT)/include -L$(MKLROOT)/lib/intel64 \
+ -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core \
+ -lmkl_blacs_intelmpi_lp64 -liomp5 -lpthread -lm -ldl
+ TEST_FLAG      = -fp-model strict
+ 
