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 54 55 56 57 58 59 60 61 62 63 64 65 66
|
<!---======================= begin_copyright_notice ============================
Copyright (C) 2020-2021 Intel Corporation
SPDX-License-Identifier: MIT
============================= end_copyright_notice ==========================-->
## Opcode
LIFETIME = 0x7b
## Format
| | |
| --- | --- |
| 0x7b(LIFETIME) | properties | variable |
## Semantics
Marks the start/end of a variable's lifetime.
## Description
Specifies either the start or the end of a variable's lifetime.
- **properties(ub):**
- Bit[0]: indicates whether this is the start or the end
- 0b0: start
- 0b1: end
- Bit[5..4]: specifies the variable class
- 0b00: general variable
- 0b01: address variable
- 0b10: predicate variable
- **variable(ud):**
#### Properties
## Text
```
LIFETIME.start <variable>
LIFETIME.end <variable>
```
## Notes
The behavior is undefined if the variable or one of its aliases is
referenced directly or indirectly outside the lifetime markers.
|