]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/h8-300-function-attributes.rst
sphinx: add missing trailing newline
[thirdparty/gcc.git] / gcc / doc / gcc / extensions-to-the-c-language-family / declaring-attributes-of-functions / h8-300-function-attributes.rst
1 ..
2 Copyright 1988-2022 Free Software Foundation, Inc.
3 This is part of the GCC manual.
4 For copying conditions, see the copyright.rst file.
5
6 .. _h8-300-function-attributes:
7
8 H8/300 Function Attributes
9 ^^^^^^^^^^^^^^^^^^^^^^^^^^
10
11 These function attributes are available for H8/300 targets:
12
13 .. index:: function_vector function attribute, H8/300
14
15 .. h8-300-fn-attr:: function_vector
16
17 Use this attribute on the H8/300, H8/300H, and H8S to indicate
18 that the specified function should be called through the function vector.
19 Calling a function through the function vector reduces code size; however,
20 the function vector has a limited size (maximum 128 entries on the H8/300
21 and 64 entries on the H8/300H and H8S)
22 and shares space with the interrupt vector.
23
24 .. index:: interrupt_handler function attribute, H8/300
25
26 .. h8-300-fn-attr:: interrupt_handler
27
28 Use this attribute on the H8/300, H8/300H, and H8S to
29 indicate that the specified function is an interrupt handler. The compiler
30 generates function entry and exit sequences suitable for use in an
31 interrupt handler when this attribute is present.
32
33 .. index:: saveall function attribute, H8/300, save all registers on the H8/300, H8/300H, and H8S
34
35 .. h8-300-fn-attr:: saveall
36
37 Use this attribute on the H8/300, H8/300H, and H8S to indicate that
38 all registers except the stack pointer should be saved in the prologue
39 regardless of whether they are used or not.