File src/plugins/built_in/abstract_objects/stub/ao_group.luadoc
Declares methods that can be invoked on a group (instance of the 'group' class)
Functions
group:get_asmfile () | Returns the asmfile containing a group |
group:get_function () | Returns the function containing a group |
group:get_head () | Returns the group head (Number of bytes loaded by the group from an iteration to another) |
group:get_increment () | Returns the group increment |
group:get_insn_n (n, user) | Returns the instruction corresponding to the nth element |
group:get_loop () | Returns the loop containing a group |
group:get_offset_n (n, user) | Returns the offset corresponding to the nth element |
group:get_pattern (user) | Returns the pattern of a group |
group:get_pattern_n (n, user) | Returns the pattern of the nth element |
group:get_project () | Returns the project containing a group |
group:get_size (user) | Returns the size of a group |
group:get_span () | Returns the group span (Maximum distance between two accessed bytes into a group) |
group:instructions (user) | Iterates over instructions of a group |
group:print (user) | Print a group (wraps group_print) |
group:print_in_table () | Creates a table representing a group |
group:tostring () | Print "Group: @" (meta-method) |
group:totable () | Returns a group as a table The return table has fields:
|
Functions
- group:get_asmfile ()
-
Returns the asmfile containing a group
Return value:
a loop - group:get_function ()
-
Returns the function containing a group
Return value:
a loop - group:get_head ()
-
Returns the group head (Number of bytes loaded by the group from an iteration to another)
Return value:
an integer - group:get_increment ()
-
Returns the group increment
Return value:
an integer - group:get_insn_n (n, user)
-
Returns the instruction corresponding to the nth element
Parameters
- n: rank
- user: (integer), allow filtering
Return value:
instruction - group:get_loop ()
-
Returns the loop containing a group
Return value:
a loop - group:get_offset_n (n, user)
-
Returns the offset corresponding to the nth element
Parameters
- n: rank
- user: (integer), allow filtering
Return value:
offset (integer) - group:get_pattern (user)
-
Returns the pattern of a group
Parameters
- user: (integer), allow filtering
Return value:
pattern (string) - group:get_pattern_n (n, user)
-
Returns the pattern of the nth element
Parameters
- n: rank
- user: (integer), allow filtering
Return value:
pattern (integer) - group:get_project ()
-
Returns the project containing a group
Return value:
a loop - group:get_size (user)
-
Returns the size of a group
Parameters
- user: (integer), allow filtering
Return value:
size (integer) - group:get_span ()
-
Returns the group span (Maximum distance between two accessed bytes into a group)
Return value:
an integer - group:instructions (user)
-
Iterates over instructions of a group
Parameters
- user: (integer), allow filtering
Return value:
next instruction (skipping filtered instructions) - group:print (user)
-
Print a group (wraps group_print)
Parameters
- user: (integer), allow filtering
- group:print_in_table ()
-
Creates a table representing a group
Return value:
a table representing the group - group:tostring ()
- Print "Group: @" (meta-method)
- group:totable ()
-
Returns a group as a table
The return table has fields:- size: Number of instructions in the group
- pattern: A string composed of 'L' (for loads) and 'S' (for stores)
- loop: The loop the group belongs to
- insns: A table with fields:
- insn: Number of instructions in the group
- memory_position:position of the memory operand
- access: "LOAD" or "STORE"
- span: maximum distance between two bytes accessed by instructions belonging to the same group
- head: set of fresh bytes accessed when moving from one iteration to the next one
- increment_status: Status of increment computation
- increment: Increment of the group accross iterations
- memory_status: Status of memory behavior computation
- number_accessed_bytes: Number of loaded bytes
- no_overlap_bytes: Number of bytes loaded once per iteration
- overlap_bytes: Number of bytes loaded more than once per iteration
Return value:
a table