URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 273 |
Rev 338 |
! PR fortran/34020
|
! PR fortran/34020
|
! { dg-do run }
|
! { dg-do run }
|
|
|
subroutine atomic_add(lhs, rhs)
|
subroutine atomic_add(lhs, rhs)
|
real lhs, rhs
|
real lhs, rhs
|
!$omp atomic
|
!$omp atomic
|
lhs = rhs + lhs
|
lhs = rhs + lhs
|
end
|
end
|
|
|
real lhs, rhs
|
real lhs, rhs
|
integer i
|
integer i
|
lhs = 0
|
lhs = 0
|
rhs = 1
|
rhs = 1
|
!$omp parallel do num_threads(8) shared(lhs, rhs)
|
!$omp parallel do num_threads(8) shared(lhs, rhs)
|
do i = 1, 300000
|
do i = 1, 300000
|
call atomic_add(lhs, rhs)
|
call atomic_add(lhs, rhs)
|
enddo
|
enddo
|
if (lhs .ne. 300000) call abort
|
if (lhs .ne. 300000) call abort
|
end
|
end
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.