Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
clean-and-itasks
clean-ide
Commits
78c3e971
Commit
78c3e971
authored
Nov 22, 2006
by
John van Groningen
Browse files
use new descriptor format
parent
e8c575d3
Changes
1
Hide whitespace changes
Inline
Side-by-side
HeapProfile/Mac/heap_profile_os_dependent.icl
View file @
78c3e971
...
...
@@ -101,11 +101,16 @@ FileExists name = result==0;
constructor_name_
::
!
Int
!
Int
!{#
Char
}
{#
Char
}
->
(!{#
Char
},!{#
Char
});
constructor_name_
data_offset
arity
data
text
#
descriptor_max_arity_offset
=
data_offset
+
(
data
WORD
(
data_offset
+2
));
#!
string_offset
=
descriptor_max_arity_offset
+12
;
#
module_name_offset
=
data
LONG
(
descriptor_max_arity_offset
+
8
);
/*
# descriptor_offset=data_offset-(data WORD (data_offset+2));
descriptor_arity=data WORD (descriptor_offset-2);
string_offset=descriptor_offset+4+(descriptor_arity<<3);
string_length
=
data
LONG
string_offset
;
module_name_offset = data LONG (descriptor_offset-12);
*/
string_length
=
data
LONG
string_offset
;
module_name_length
=
data
LONG
module_name_offset
;
=
(
data
%
(
string_offset
+4
,
string_offset
+3
+
string_length
),
data
%
(
module_name_offset
+4
,
module_name_offset
+3
+
module_name_length
));
...
...
@@ -123,10 +128,17 @@ FileExists name = result==0;
|
descriptor_toc_offset
bitand
3
<>
0
=
abort
"get_closure_name"
;
#
descriptor_offset
=
data
LONG
(
descriptor_toc_offset
-0x8000
);
#
descriptor_max_arity_offset
=
descriptor_offset
+
(
data
WORD
(
descriptor_offset
+2
));
#!
string_offset
=
descriptor_max_arity_offset
+12
;
#
module_name_offset
=
data
LONG
(
descriptor_max_arity_offset
+
8
);
/*
descriptor_arity=data WORD (descriptor_offset-2);
string_offset=descriptor_offset+4+(descriptor_arity<<3);
string_length
=(
data
LONG
string_offset
);
module_name_offset = data LONG (descriptor_offset-12);
*/
string_length
=(
data
LONG
string_offset
);
module_name_length
=
data
LONG
module_name_offset
;
=
(
data
%
(
string_offset
+4
,
string_offset
+3
+
string_length
),
data
%
(
module_name_offset
+4
,
module_name_offset
+3
+
module_name_length
));
...
...
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