Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
clean-compiler-and-rts
compiler
Commits
fdcb4510
Commit
fdcb4510
authored
Apr 14, 2004
by
John van Groningen
Browse files
mark lazy and/or curried entries of cons for list of unboxed records
parent
919a53ca
Changes
1
Hide whitespace changes
Inline
Side-by-side
backendC/CleanCompilerSources/optimisations.c
View file @
fdcb4510
...
...
@@ -1421,6 +1421,7 @@ static char *create_arguments_for_local_function (NodeP node_p,ArgS ***arg_h,Arg
}
}
#endif
if
(
arg_node
->
node_kind
==
NodeIdNode
&&
(
arg_node
->
node_node_id
->
nid_mark
&
NID_LIFTED_BY_OPTIMISE
)
&&
arg_node
->
node_node_id
->
nid_forward_node_id
!=
NULL
){
arg_node_id
=
arg_node
->
node_node_id
->
nid_forward_node_id
;
--
arg_node_id
->
nid_refcount
;
...
...
@@ -3283,8 +3284,15 @@ static void ExamineSymbolApplication (struct node *node)
symbol
=
node
->
node_symbol
;
if
(
symbol
->
symb_kind
!=
definition
)
if
(
symbol
->
symb_kind
!=
definition
){
if
(
symbol
->
symb_kind
==
cons_symb
&&
symbol
->
symb_head_strictness
==
4
){
if
(
node
->
node_arity
<
2
)
symbol
->
symb_unboxed_cons_sdef_p
->
sdef_mark
|=
SDEF_USED_CURRIED_MASK
;
else
if
(
IsLazyState
(
node
->
node_state
))
symbol
->
symb_unboxed_cons_sdef_p
->
sdef_mark
|=
SDEF_USED_LAZILY_MASK
;
}
return
;
}
sdef
=
symbol
->
symb_def
;
...
...
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