Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Glasgow Haskell Compiler
GHC
Commits
80578b7d
Commit
80578b7d
authored
Dec 14, 2006
by
andy@galois.com
Browse files
Updating rix output to new standard.
parent
7d8b8c2b
Changes
4
Hide whitespace changes
Inline
Side-by-side
includes/RtsExternal.h
View file @
80578b7d
...
...
@@ -69,7 +69,7 @@ extern void freeHaskellFunctionPtr(void* ptr);
/* Hpc stuff */
extern
int
hs_hpc_module
(
char
*
modName
,
int
modCount
,
StgWord64
*
tixArr
);
extern
void
hs_hpc_tick
(
int
globIx
,
struct
StgTSO_
*
current_tso
);
extern
void
hs_hpc_
throw
(
struct
StgTSO_
*
current_tso
);
extern
void
hs_hpc_
event
(
char
*
msg
,
struct
StgTSO_
*
current_tso
);
#if defined(mingw32_HOST_OS)
...
...
rts/Exception.cmm
View file @
80578b7d
...
...
@@ -338,7 +338,7 @@ raisezh_fast
#endif
/* Inform the Hpc that an exception has been thrown */
foreign
"
C
"
hs_hpc_
throw
(
CurrentTSO
);
foreign
"
C
"
hs_hpc_
event
(
"
Raise
"
,
CurrentTSO
);
retry_pop_stack
:
StgTSO_sp
(
CurrentTSO
)
=
Sp
;
...
...
rts/Hpc.c
View file @
80578b7d
...
...
@@ -251,9 +251,9 @@ send_ThreadId(StgTSO *current_tso) {
// This assumes that there is no real thread 0.
StgThreadID
tid
=
(
current_tso
==
0
)
?
0
:
current_tso
->
id
;
if
(
tid
!=
previous_tid
)
{
previous_tid
=
current_tso
->
id
;
previous_tid
=
t
id
;
// How do we print StgWord32's without a cast?
fprintf
(
rixFile
,
"Thread %d
\n
"
,(
unsigned
int
)
tid
);
fprintf
(
rixFile
,
"Thread
Switch
%d
\n
"
,(
unsigned
int
)
tid
);
}
}
...
...
@@ -261,7 +261,7 @@ send_ThreadId(StgTSO *current_tso) {
* Called on *every* exception thrown
*/
void
hs_hpc_
throw
(
StgTSO
*
current_tso
)
{
hs_hpc_
event
(
char
*
msg
,
StgTSO
*
current_tso
)
{
// Assumes that we have had at least *one* tick first.
// All exceptions before the first tick are not reported.
// The only time this might be an issue is in bootstrapping code,
...
...
@@ -272,7 +272,7 @@ hs_hpc_throw(StgTSO *current_tso) {
if
(
rixFile
!=
NULL
)
{
assert
(
hpc_inited
!=
0
);
send_ThreadId
(
current_tso
);
fprintf
(
rixFile
,
"
Throw
\n
"
);
fprintf
(
rixFile
,
"
%s
\n
"
,
msg
);
}
}
...
...
rts/Schedule.c
View file @
80578b7d
...
...
@@ -1808,6 +1808,9 @@ scheduleHandleThreadFinished (Capability *cap STG_UNUSED, Task *task, StgTSO *t)
debugTrace
(
DEBUG_sched
,
"--++ thread %lu (%s) finished"
,
(
unsigned
long
)
t
->
id
,
whatNext_strs
[
t
->
what_next
]);
/* Inform the Hpc that a thread has finished */
hs_hpc_event
(
"Thread Finished"
,
t
);
#if defined(GRAN)
endThread
(
t
,
CurrentProc
);
// clean-up the thread
#elif defined(PARALLEL_HASKELL)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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