Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
6985b4a1
Commit
6985b4a1
authored
Feb 06, 2011
by
Janne Blomqvist
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Document libgfortran thread-safety
From-SVN: r169864
parent
b1b0c7e6
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
54 additions
and
0 deletions
+54
-0
gcc/fortran/ChangeLog
+8
-0
gcc/fortran/gfortran.texi
+30
-0
gcc/fortran/intrinsic.texi
+16
-0
No files found.
gcc/fortran/ChangeLog
View file @
6985b4a1
2011-02-06 Janne Blomqvist <jb@gcc.gnu.org>
* gfortran.texi (Thread-safety): New section.
* intrinsic.texi (EXECUTE_COMMAND_LINE): Mention thread-safety.
(GETENV): Likewise.
(GET_ENVIRONMENT_VARIABLE): Likewise.
(SYSTEM): Likewise.
2011-02-06 Paul Thomas <pault@gcc.gnu.org>
PR fortran/47592
...
...
gcc/fortran/gfortran.texi
View file @
6985b4a1
...
...
@@ -1157,6 +1157,36 @@ representation of @code{LOGICAL} variables in GNU Fortran is identical
to
C99
_Bool
,
except
for
a
possible
difference
in
storage
size
depending
on
the
kind
.
@node
Thread
-
safety
of
the
runtime
library
@section
Thread
-
safety
of
the
runtime
library
@cindex
thread
-
safety
,
threads
GNU
Fortran
can
be
used
in
programs
with
multiple
threads
,
e
.
g
.
by
using
OpenMP
,
by
calling
OS
thread
handling
functions
via
the
@code
{
ISO_C_BINDING
}
facility
,
or
by
GNU
Fortran
compiled
library
code
being
called
from
a
multi
-
threaded
program
.
The
GNU
Fortran
runtime
library
,
(
@var
{
libgfortran
}),
supports
being
called
concurrently
from
multiple
threads
with
the
following
exceptions
.
During
library
initialization
,
the
C
@code
{
getenv
()}
function
is
used
,
which
need
not
be
thread
-
safe
.
Similarly
,
the
@code
{
getenv
()}
function
is
used
to
implement
the
@code
{
GET_ENVIRONMENT_VARIABLE
}
and
@code
{
GETENV
}
intrinsics
.
It
is
the
responsibility
of
the
user
to
ensure
that
the
environment
is
not
being
updated
concurrently
when
any
of
these
actions
are
taking
place
.
The
@code
{
EXECUTE_COMMAND_LINE
}
and
@code
{
SYSTEM
}
intrinsics
are
implemented
with
the
@code
{
system
()}
function
,
which
need
not
be
thread
-
safe
.
It
is
the
responsibility
of
the
user
to
ensure
that
@code
{
system
()}
is
not
called
concurrently
.
Finally
,
for
platforms
not
supporting
thread
-
safe
@code
{
POSIX
}
functions
,
further
functionality
might
not
be
thread
-
safe
.
For
details
,
please
consult
the
documentation
for
your
operating
system
.
@c
---------------------------------------------------------------------
@c
Extensions
@c
---------------------------------------------------------------------
...
...
gcc/fortran/intrinsic.texi
View file @
6985b4a1
...
...
@@ -4162,6 +4162,9 @@ the command, as returned by @code{system}. @code{CMDSTAT} is set to zero
if the command line was executed (whatever its exit status was).
@code{CMDMSG} is assigned an error message if an error has occurred.
Note that the @code{system()} call need not be thread-safe. It is the
responsibility of the user to ensure that @code{system()} is not
called concurrently.
@item @emph{Standard}:
Fortran 2008 and later
...
...
@@ -5457,6 +5460,10 @@ GNU Fortran 77. In new code, programmers should consider the use of
the
@
ref
{
GET_ENVIRONMENT_VARIABLE
}
intrinsic
defined
by
the
Fortran
2003
standard
.
Note
that
@
code
{
GETENV
}
need
not
be
thread
-
safe
.
It
is
the
responsibility
of
the
user
to
ensure
that
the
environment
is
not
being
updated
concurrently
with
a
call
to
the
@
code
{
GETENV
}
intrinsic
.
@
item
@
emph
{
Standard
}:
GNU
extension
...
...
@@ -5501,6 +5508,11 @@ END PROGRAM
@
item
@
emph
{
Description
}:
Get
the
@
var
{
VALUE
}
of
the
environmental
variable
@
var
{
NAME
}.
Note
that
@
code
{
GET_ENVIRONMENT_VARIABLE
}
need
not
be
thread
-
safe
.
It
is
the
responsibility
of
the
user
to
ensure
that
the
environment
is
not
being
updated
concurrently
with
a
call
to
the
@
code
{
GET_ENVIRONMENT_VARIABLE
}
intrinsic
.
@
item
@
emph
{
Standard
}:
Fortran
2003
and
later
...
...
@@ -11779,6 +11791,10 @@ and environment-dependent.
This intrinsic is provided in both subroutine and function forms;
however, only one form can be used in any given program unit.
Note that the @code{system()} call need not be thread-safe. It is the
responsibility of the user to ensure that @code{system()} is not
called concurrently.
@item @emph{Standard}:
GNU extension
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment