Changeset 58775d30 in mainline for kernel/arch/sparc64/include/arch/istate_struct.ag
- Timestamp:
- 2015-03-16T16:07:21Z (10 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 2003739
- Parents:
- 6069061 (diff), 795e2bf (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/sparc64/include/arch/istate_struct.ag
r6069061 r58775d30 41 41 42 42 members : [ 43 44 # 45 # Window save area for locals and inputs. Required by ABI. 46 # Before using these, make sure that the corresponding register 47 # window has been spilled into memory, otherwise l0-l7 and 48 # i0-i7 will have undefined values. 49 # 50 { 51 name : l0, 52 type : uint64_t, 53 }, 54 { 55 name : l1, 56 type : uint64_t, 57 }, 58 { 59 name : l2, 60 type : uint64_t, 61 }, 62 { 63 name : l3, 64 type : uint64_t, 65 }, 66 { 67 name : l4, 68 type : uint64_t, 69 }, 70 { 71 name : l5, 72 type : uint64_t, 73 }, 74 { 75 name : l6, 76 type : uint64_t, 77 }, 78 { 79 name : l7, 80 type : uint64_t, 81 }, 82 { 83 name : i0, 84 type : uint64_t, 85 }, 86 { 87 name : i1, 88 type : uint64_t, 89 }, 90 { 91 name : i2, 92 type : uint64_t, 93 }, 94 { 95 name : i3, 96 type : uint64_t, 97 }, 98 { 99 name : i4, 100 type : uint64_t, 101 }, 102 { 103 name : i5, 104 type : uint64_t, 105 }, 106 { 107 name : i6, 108 type : uint64_t, 109 }, 110 { 111 name : i7, 112 type : uint64_t, 113 }, 114 115 # 116 # Six mandatory argument slots, required by the ABI, plus an 117 # optional argument slot for the 7th argument used by our 118 # syscalls. Since the preemptible handler is always passing 119 # integral arguments, undef_arg[0] - undef_arg[5] are always 120 # undefined. 121 # 122 { 123 name : undef_arg, 124 type : uint64_t, 125 elements : 6, 126 }, 127 { 128 name : arg6, 129 type : uint64_t, 130 }, 131 132 # 133 # From this point onwards, the istate layout is not dicated by 134 # the ABI. The only requirement is the stack alignment. 135 # 136 43 137 { 44 138 name : tnpc, … … 51 145 { 52 146 name : tstate, 147 type : uint64_t 148 }, 149 { 150 name : y, 151 type : uint64_t, 152 }, 153 154 # 155 # At the moment, these are defined only when needed by the 156 # preemptible handler, so consider them undefined for now. 157 # 158 { 159 name : o0, 160 type : uint64_t, 161 }, 162 { 163 name : o1, 164 type : uint64_t, 165 }, 166 { 167 name : o2, 168 type : uint64_t, 169 }, 170 { 171 name : o3, 172 type : uint64_t, 173 }, 174 { 175 name : o4, 176 type : uint64_t, 177 }, 178 { 179 name : o5, 180 type : uint64_t, 181 }, 182 { 183 name : o6, 184 type : uint64_t, 185 }, 186 { 187 name : o7, 188 type : uint64_t, 189 }, 190 191 # 192 # I/DTLB Tag Access register or zero for non-MMU traps. 193 # 194 { 195 name : tlb_tag_access, 53 196 type : uint64_t 54 197 }
Note:
See TracChangeset
for help on using the changeset viewer.