summaryrefslogtreecommitdiffstats
path: root/spec/rtems/task/if/storage-size.yml
blob: ba93498e81b226c20180554242d18abea097967c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
brief: |
  Gets the recommended task storage area size for the size and task attributes.
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
definition:
  default:
    attributes: null
    body: |
      ( ( ${.:/params[0]/name} ) +
        ( ( ( ${.:/params[1]/name} ) & ${../../attr/if/floating-point:/name} ) != 0 ?
          ${/score/context/if/fp-size:/name} : 0 ) )
    params:
    - ${/c/if/size_t:/name} ${.:/params[0]/name}
    - ${../../attr/if/attribute:/name} ${.:/params[1]/name}
    return: ${/c/if/size_t:/name}
  variants:
  - definition:
      attributes: null
      body: |
        ( ( ${.:/params[0]/name} ) + ${/score/context/if/fp-size:/name} )
      params:
      - ${/c/if/size_t:/name} ${.:/params[0]/name}
      - ${../../attr/if/attribute:/name} ${.:/params[1]/name}
      return: ${/c/if/size_t:/name}
    enabled-by:
    - ${/score/cpu/if/all-tasks-are-fp:/name} == ${../../basedefs/if/true:/name}
description: null
enabled-by: true
index-entries: []
interface-type: macro
links:
- role: interface-placement
  uid: header
- role: interface-ingroup
  uid: group
name: RTEMS_TASK_STORAGE_SIZE
notes: null
params:
- description: |
    is the size dedicated to the task stack and thread-local storage in bytes.
  dir: null
  name: _size
- description: |
    is the attribute set of the task using the storage area.
  dir: null
  name: _attributes
return:
  return: |
    Returns the recommended task storage area size calculated from the input
    parameters.
  return-values: []
type: interface