Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1479 lines
44 KiB

  1. /*++
  2. Copyright (c) 1990 Microsoft Corporation
  3. Module Name:
  4. genia64.c
  5. Abstract:
  6. This module implements a program which generates IA64 machine dependent
  7. structure offset definitions for kernel structures that are accessed in
  8. assembly code.
  9. Author:
  10. David N. Cutler (davec) 27-Mar-1990
  11. Revision History:
  12. Allen M. Kay (akay) 25-Jan-1996 Modified this file for IA64.
  13. Forrest Foltz (forrestf) 24-Jan-1998
  14. Modified format to use new obj-based procedure.
  15. --*/
  16. #include "ki.h"
  17. #pragma hdrstop
  18. #define HEADER_FILE
  19. #include "nt.h"
  20. #include "excpt.h"
  21. #include "ntdef.h"
  22. #include "ntkeapi.h"
  23. #include "ntia64.h"
  24. #include "ntimage.h"
  25. #include "ntseapi.h"
  26. #include "ntobapi.h"
  27. #include "ntlpcapi.h"
  28. #include "ntioapi.h"
  29. #include "ntmmapi.h"
  30. #include "ntldr.h"
  31. #include "ntpsapi.h"
  32. #include "ntexapi.h"
  33. #include "ntnls.h"
  34. #include "nturtl.h"
  35. #include "ntcsrmsg.h"
  36. #include "ntcsrsrv.h"
  37. #include "ntxcapi.h"
  38. #include "ia64.h"
  39. #include "arc.h"
  40. #include "ntstatus.h"
  41. #include "kxia64.h"
  42. #include "stdarg.h"
  43. #include "setjmp.h"
  44. include(`..\genxx.h')
  45. #define KSIA64 KERNEL
  46. #define HALIA64 HAL
  47. STRUC_ELEMENT ElementList[] = {
  48. START_LIST
  49. //
  50. // Include statement for IA64 architecture static definitions.
  51. //
  52. EnableInc (KSIA64 | HALIA64)
  53. genTxt("#include \"kxia64.h\"\n")
  54. DisableInc (HALIA64)
  55. //
  56. // Include IA64 register definition.
  57. //
  58. EnableInc (KSIA64 | HALIA64)
  59. genTxt("#include \"regia64.h\"\n")
  60. DisableInc (HALIA64)
  61. //
  62. // Include architecture independent definitions.
  63. //
  64. #include "..\genxx.inc"
  65. genCom("EPROCESS offset used for debugging.")
  66. genDef(Pr, EPROCESS, Wow64Process)
  67. //
  68. // Generate architecture dependent definitions.
  69. //
  70. //
  71. // OS_MCA, OS_INIT HandOff structure definitions.
  72. //
  73. genCom("Processor OS_MCA HandOff Structure Offset Definitions")
  74. genDef(SalHandOff, SAL_HANDOFF_STATE, PalProcEntryPoint)
  75. genDef(SalHandOff, SAL_HANDOFF_STATE, SalProcEntryPoint)
  76. genDef(SalHandOff, SAL_HANDOFF_STATE, SalGlobalPointer)
  77. genDef(SalHandOff, SAL_HANDOFF_STATE, RendezVousResult)
  78. genDef(SalHandOff, SAL_HANDOFF_STATE, SalReturnAddress)
  79. genDef(SalHandOff, SAL_HANDOFF_STATE, MinStateSavePtr)
  80. genCom("Processor OS_INIT HandOff Structure Offset Definitions")
  81. genDef(OsHandOff, OS_HANDOFF_STATE, Result)
  82. genDef(OsHandOff, OS_HANDOFF_STATE, SalGlobalPointer)
  83. genDef(OsHandOff, OS_HANDOFF_STATE, MinStateSavePtr)
  84. genDef(OsHandOff, OS_HANDOFF_STATE, SalReturnAddress)
  85. genDef(OsHandOff, OS_HANDOFF_STATE, NewContextFlag)
  86. //
  87. // Per processor SAL event structure, OS_MCA and OS_INIT.
  88. //
  89. genCom("SAL Event Resouces Structure Offset Definitions")
  90. genDef(Ser, SAL_EVENT_RESOURCES, SalToOsHandOff)
  91. genDef(Ser, SAL_EVENT_RESOURCES, OsToSalHandOff)
  92. genDef(Ser, SAL_EVENT_RESOURCES, StateDumpPhysical)
  93. genDef(Ser, SAL_EVENT_RESOURCES, BackStore)
  94. genDef(Ser, SAL_EVENT_RESOURCES, BackStoreLimit)
  95. genDef(Ser, SAL_EVENT_RESOURCES, Stack)
  96. genDef(Ser, SAL_EVENT_RESOURCES, StackLimit)
  97. genDef(Ser, SAL_EVENT_RESOURCES, PTOM)
  98. genDef(Ser, SAL_EVENT_RESOURCES, StackFrame)
  99. genDef(Ser, SAL_EVENT_RESOURCES, EventPool)
  100. genDef(Ser, SAL_EVENT_RESOURCES, EventPoolSize)
  101. genNam(SER_EVENT_STACK_FRAME_ENTRIES)
  102. //
  103. // PAL Mini-save area, used by MCA and INIT
  104. //
  105. genCom("PAL mini-save area Structure Offset Definitions")
  106. genDef(Pms, PAL_MINI_SAVE_AREA, IntNats)
  107. genDef(Pms, PAL_MINI_SAVE_AREA, IntGp)
  108. genDef(Pms, PAL_MINI_SAVE_AREA, IntT0)
  109. genDef(Pms, PAL_MINI_SAVE_AREA, IntT1)
  110. genDef(Pms, PAL_MINI_SAVE_AREA, IntS0)
  111. genDef(Pms, PAL_MINI_SAVE_AREA, IntS1)
  112. genDef(Pms, PAL_MINI_SAVE_AREA, IntS2)
  113. genDef(Pms, PAL_MINI_SAVE_AREA, IntS3)
  114. genDef(Pms, PAL_MINI_SAVE_AREA, IntV0)
  115. genDef(Pms, PAL_MINI_SAVE_AREA, IntT2)
  116. genDef(Pms, PAL_MINI_SAVE_AREA, IntT3)
  117. genDef(Pms, PAL_MINI_SAVE_AREA, IntT4)
  118. genDef(Pms, PAL_MINI_SAVE_AREA, IntSp)
  119. genDef(Pms, PAL_MINI_SAVE_AREA, IntTeb)
  120. genDef(Pms, PAL_MINI_SAVE_AREA, IntT5)
  121. genDef(Pms, PAL_MINI_SAVE_AREA, IntT6)
  122. genSpc()
  123. genDef(Pms, PAL_MINI_SAVE_AREA, B0R16)
  124. genSpc()
  125. genDef(Pms, PAL_MINI_SAVE_AREA, IntT7)
  126. genDef(Pms, PAL_MINI_SAVE_AREA, IntT8)
  127. genDef(Pms, PAL_MINI_SAVE_AREA, IntT9)
  128. genDef(Pms, PAL_MINI_SAVE_AREA, IntT10)
  129. genDef(Pms, PAL_MINI_SAVE_AREA, IntT11)
  130. genDef(Pms, PAL_MINI_SAVE_AREA, IntT12)
  131. genDef(Pms, PAL_MINI_SAVE_AREA, IntT13)
  132. genDef(Pms, PAL_MINI_SAVE_AREA, IntT14)
  133. genDef(Pms, PAL_MINI_SAVE_AREA, IntT15)
  134. genDef(Pms, PAL_MINI_SAVE_AREA, IntT16)
  135. genDef(Pms, PAL_MINI_SAVE_AREA, IntT17)
  136. genDef(Pms, PAL_MINI_SAVE_AREA, IntT18)
  137. genDef(Pms, PAL_MINI_SAVE_AREA, IntT19)
  138. genDef(Pms, PAL_MINI_SAVE_AREA, IntT20)
  139. genDef(Pms, PAL_MINI_SAVE_AREA, IntT21)
  140. genDef(Pms, PAL_MINI_SAVE_AREA, IntT22)
  141. genSpc()
  142. genDef(Pms, PAL_MINI_SAVE_AREA, Preds)
  143. genDef(Pms, PAL_MINI_SAVE_AREA, BrRp)
  144. genDef(Pms, PAL_MINI_SAVE_AREA, RsRSC)
  145. genSpc()
  146. genDef(Pms, PAL_MINI_SAVE_AREA, StIIP)
  147. genDef(Pms, PAL_MINI_SAVE_AREA, StIPSR)
  148. genDef(Pms, PAL_MINI_SAVE_AREA, StIFS)
  149. genSpc()
  150. genDef(Pms, PAL_MINI_SAVE_AREA, XIP)
  151. genDef(Pms, PAL_MINI_SAVE_AREA, XPSR)
  152. genDef(Pms, PAL_MINI_SAVE_AREA, XFS)
  153. genSpc()
  154. genVal(PalMiniSaveLength, ROUND_UP(sizeof(PAL_MINI_SAVE_AREA), 16))
  155. //
  156. // Processor control register structure definitions.
  157. //
  158. genCom("Processor Control Registers Structure Offset Definitions")
  159. genNam(PCR_MINOR_VERSION)
  160. genNam(PCR_MAJOR_VERSION)
  161. genDef(Pc, KPCR, MinorVersion)
  162. genDef(Pc, KPCR, MajorVersion)
  163. genDef(Pc, KPCR, InterruptRoutine)
  164. genDef(Pc, KPCR, FirstLevelDcacheSize)
  165. genDef(Pc, KPCR, FirstLevelDcacheFillSize)
  166. genDef(Pc, KPCR, FirstLevelIcacheSize)
  167. genDef(Pc, KPCR, FirstLevelIcacheFillSize)
  168. genDef(Pc, KPCR, SecondLevelDcacheSize)
  169. genDef(Pc, KPCR, SecondLevelDcacheFillSize)
  170. genDef(Pc, KPCR, SecondLevelIcacheSize)
  171. genDef(Pc, KPCR, SecondLevelIcacheFillSize)
  172. genDef(Pc, KPCR, Prcb)
  173. genDef(Pc, KPCR, DcacheAlignment)
  174. genDef(Pc, KPCR, DcacheFillSize)
  175. genDef(Pc, KPCR, IcacheAlignment)
  176. genDef(Pc, KPCR, IcacheFillSize)
  177. genDef(Pc, KPCR, ProcessorId)
  178. genDef(Pc, KPCR, ProfileInterval)
  179. genDef(Pc, KPCR, ProfileCount)
  180. genDef(Pc, KPCR, StallExecutionCount)
  181. genDef(Pc, KPCR, StallScaleFactor)
  182. genDef(Pc, KPCR, Number)
  183. genDef(Pc, KPCR, DebugActive)
  184. genDef(Pc, KPCR, KernelDebugActive)
  185. genDef(Pc, KPCR, CurrentIrql)
  186. genDef(Pc, KPCR, SoftwareInterruptPending)
  187. genDef(Pc, KPCR, ApcInterrupt)
  188. genDef(Pc, KPCR, DispatchInterrupt)
  189. genDef(Pc, KPCR, IrqlMask)
  190. genDef(Pc, KPCR, IrqlTable)
  191. genDef(Pc, KPCR, SetMember)
  192. genDef(Pc, KPCR, CurrentThread)
  193. genDef(Pc, KPCR, NotMember)
  194. genDef(Pc, KPCR, SystemReserved)
  195. genDef(Pc, KPCR, HalReserved)
  196. genDef(Pc, KPCR, KernelGP)
  197. genDef(Pc, KPCR, InitialStack)
  198. genDef(Pc, KPCR, InitialBStore)
  199. genDef(Pc, KPCR, StackLimit)
  200. genDef(Pc, KPCR, BStoreLimit)
  201. genDef(Pc, KPCR, PanicStack)
  202. genDef(Pc, KPCR, SavedIIM)
  203. genDef(Pc, KPCR, SavedIFA)
  204. genDef(Pc, KPCR, ForwardProgressBuffer)
  205. genDef(Pc, KPCR, EOITable)
  206. genDef(Pc, KPCR, InOsMca)
  207. genDef(Pc, KPCR, InOsInit)
  208. genDef(Pc, KPCR, InOsCmc)
  209. genDef(Pc, KPCR, InOsCpe)
  210. genDef(Pc, KPCR, OsMcaResourcePtr)
  211. genDef(Pc, KPCR, HighFpOwner)
  212. genDef(Pc, KPCR, InterruptionCount)
  213. genDef(Pc, KPCR, PteUbase)
  214. genDef(Pc, KPCR, PteKbase)
  215. genDef(Pc, KPCR, PteSbase)
  216. genDef(Pc, KPCR, PdeUbase)
  217. genDef(Pc, KPCR, PdeKbase)
  218. genDef(Pc, KPCR, PdeSbase)
  219. genDef(Pc, KPCR, PdeUtbase)
  220. genDef(Pc, KPCR, PdeKtbase)
  221. genDef(Pc, KPCR, PdeStbase)
  222. genNam(MAX_NUMBER_OF_IHISTORY_RECORDS)
  223. DisableInc (HALIA64)
  224. genVal(ProcessorControlRegisterLength, ROUND_UP(sizeof(KPCR), 16))
  225. genDef(Us, KUSER_SHARED_DATA, TickCountLow)
  226. genDef(Us, KUSER_SHARED_DATA, TickCountMultiplier)
  227. genDef(Us, KUSER_SHARED_DATA, InterruptTime)
  228. genDef(Us, KUSER_SHARED_DATA, SystemTime)
  229. //
  230. // Processor block structure definitions.
  231. //
  232. EnableInc (HALIA64)
  233. genCom("Processor Block Structure Offset Definitions")
  234. genNam(PRCB_MINOR_VERSION)
  235. genNam(PRCB_MAJOR_VERSION)
  236. genDef(Pb, KPRCB, MinorVersion)
  237. genDef(Pb, KPRCB, MajorVersion)
  238. genDef(Pb, KPRCB, CurrentThread)
  239. genDef(Pb, KPRCB, NextThread)
  240. genDef(Pb, KPRCB, IdleThread)
  241. genDef(Pb, KPRCB, Number)
  242. genDef(Pb, KPRCB, BuildType)
  243. genDef(Pb, KPRCB, SetMember)
  244. genDef(Pb, KPRCB, RestartBlock)
  245. genDef(Pb, KPRCB, PcrPage)
  246. genDef(Pb, KPRCB, ProcessorModel)
  247. genDef(Pb, KPRCB, ProcessorRevision)
  248. genDef(Pb, KPRCB, ProcessorFamily)
  249. genDef(Pb, KPRCB, ProcessorSerialNumber)
  250. genDef(Pb, KPRCB, ProcessorFeatureBits)
  251. genDef(Pb, KPRCB, ProcessorVendorString)
  252. genDef(Pb, KPRCB, SystemReserved)
  253. genDef(Pb, KPRCB, HalReserved)
  254. DisableInc (HALIA64)
  255. genDef(Pb, KPRCB, WakeIdle)
  256. genDef(Pb, KPRCB, DpcTime)
  257. genDef(Pb, KPRCB, InterruptTime)
  258. genDef(Pb, KPRCB, KernelTime)
  259. genDef(Pb, KPRCB, UserTime)
  260. genDef(Pb, KPRCB, AdjustDpcThreshold)
  261. genDef(Pb, KPRCB, InterruptCount)
  262. genDef(Pb, KPRCB, DispatchInterruptCount)
  263. genDef(Pb, KPRCB, IpiFrozen)
  264. genDef(Pb, KPRCB, ProcessorState)
  265. genDef(Pb, KPRCB, CcFastReadNoWait)
  266. genDef(Pb, KPRCB, CcFastReadWait)
  267. genDef(Pb, KPRCB, CcFastReadNotPossible)
  268. genDef(Pb, KPRCB, CcCopyReadNoWait)
  269. genDef(Pb, KPRCB, CcCopyReadWait)
  270. genDef(Pb, KPRCB, CcCopyReadNoWaitMiss)
  271. genAlt(PbAlignmentFixupCount, KPRCB, KeAlignmentFixupCount)
  272. genAlt(PbContextSwitches, KPRCB, KeContextSwitches)
  273. genAlt(PbDcacheFlushCount, KPRCB, KeDcacheFlushCount)
  274. genAlt(PbExceptionDispatchCount, KPRCB, KeExceptionDispatchCount)
  275. genAlt(PbFirstLevelTbFills, KPRCB, KeFirstLevelTbFills)
  276. genAlt(PbFloatingEmulationCount, KPRCB, KeFloatingEmulationCount)
  277. genAlt(PbIcacheFlushCount, KPRCB, KeIcacheFlushCount)
  278. genAlt(PbSecondLevelTbFills, KPRCB, KeSecondLevelTbFills)
  279. genAlt(PbSystemCalls, KPRCB, KeSystemCalls)
  280. genDef(Pb, KPRCB, LockQueue)
  281. genDef(Pb, KPRCB, ReservedCounter)
  282. genDef(Pb, KPRCB, PacketBarrier)
  283. genDef(Pb, KPRCB, CurrentPacket)
  284. genDef(Pb, KPRCB, TargetSet)
  285. genDef(Pb, KPRCB, WorkerRoutine)
  286. genDef(Pb, KPRCB, CachePad1)
  287. genDef(Pb, KPRCB, RequestSummary)
  288. genDef(Pb, KPRCB, SignalDone)
  289. genDef(Pb, KPRCB, DpcInterruptRequested)
  290. genDef(Pb, KPRCB, MaximumDpcQueueDepth)
  291. genDef(Pb, KPRCB, MinimumDpcRate)
  292. genDef(Pb, KPRCB, IpiCounts)
  293. genDef(Pb, KPRCB, StartCount)
  294. genDef(Pb, KPRCB, DpcLock)
  295. genDef(Pb, KPRCB, DpcListHead)
  296. genDef(Pb, KPRCB, DpcQueueDepth)
  297. genDef(Pb, KPRCB, DpcCount)
  298. genDef(Pb, KPRCB, DpcLastCount)
  299. genDef(Pb, KPRCB, DpcRequestRate)
  300. genDef(Pb, KPRCB, DpcRoutineActive)
  301. genDef(Pb, KPRCB, QuantumEnd)
  302. genDef(Pb, KPRCB, SkipTick)
  303. genVal(ProcessorBlockLength, ROUND_UP(sizeof(KPRCB), 16))
  304. //
  305. // Immediate interprocessor command definitions.
  306. //
  307. genCom("Immediate Interprocessor Command Definitions")
  308. genNam(IPI_APC)
  309. genNam(IPI_DPC)
  310. genNam(IPI_FREEZE)
  311. genNam(IPI_PACKET_READY)
  312. //
  313. // Interprocessor interrupt count structure offset definitions.
  314. //
  315. genCom("Interprocessor Interrupt Count Structure Offset Definitions")
  316. genDef(Ic, KIPI_COUNTS, Freeze)
  317. genDef(Ic, KIPI_COUNTS, Packet)
  318. genDef(Ic, KIPI_COUNTS, DPC)
  319. genDef(Ic, KIPI_COUNTS, APC)
  320. genDef(Ic, KIPI_COUNTS, FlushSingleTb)
  321. genDef(Ic, KIPI_COUNTS, FlushMultipleTb)
  322. genDef(Ic, KIPI_COUNTS, FlushEntireTb)
  323. genDef(Ic, KIPI_COUNTS, GenericCall)
  324. genDef(Ic, KIPI_COUNTS, ChangeColor)
  325. genDef(Ic, KIPI_COUNTS, SweepDcache)
  326. genDef(Ic, KIPI_COUNTS, SweepIcache)
  327. genDef(Ic, KIPI_COUNTS, SweepIcacheRange)
  328. genDef(Ic, KIPI_COUNTS, FlushIoBuffers)
  329. genDef(Ic, KIPI_COUNTS, GratuitousDPC)
  330. //
  331. // Context frame offset definitions and flag definitions.
  332. //
  333. EnableInc (HALIA64)
  334. genCom("Context Frame Offset and Flag Definitions")
  335. genNam(CONTEXT_FULL)
  336. genNam(CONTEXT_CONTROL)
  337. genNam(CONTEXT_INTEGER)
  338. genNam(CONTEXT_LOWER_FLOATING_POINT)
  339. genNam(CONTEXT_HIGHER_FLOATING_POINT)
  340. genNam(CONTEXT_FLOATING_POINT)
  341. genNam(CONTEXT_DEBUG)
  342. genNam(CONTEXT_IA32_CONTROL)
  343. genSpc()
  344. genDef(Cx, CONTEXT, ContextFlags)
  345. genSpc()
  346. genDef(Cx, CONTEXT, DbI0)
  347. genDef(Cx, CONTEXT, DbI1)
  348. genDef(Cx, CONTEXT, DbI2)
  349. genDef(Cx, CONTEXT, DbI3)
  350. genDef(Cx, CONTEXT, DbI4)
  351. genDef(Cx, CONTEXT, DbI5)
  352. genDef(Cx, CONTEXT, DbI6)
  353. genDef(Cx, CONTEXT, DbI7)
  354. genSpc()
  355. genDef(Cx, CONTEXT, DbD0)
  356. genDef(Cx, CONTEXT, DbD1)
  357. genDef(Cx, CONTEXT, DbD2)
  358. genDef(Cx, CONTEXT, DbD3)
  359. genDef(Cx, CONTEXT, DbD4)
  360. genDef(Cx, CONTEXT, DbD5)
  361. genDef(Cx, CONTEXT, DbD6)
  362. genDef(Cx, CONTEXT, DbD7)
  363. genSpc()
  364. genDef(Cx, CONTEXT, FltS0)
  365. genDef(Cx, CONTEXT, FltS1)
  366. genDef(Cx, CONTEXT, FltS2)
  367. genDef(Cx, CONTEXT, FltS3)
  368. genSpc()
  369. genDef(Cx, CONTEXT, FltT0)
  370. genDef(Cx, CONTEXT, FltT1)
  371. genDef(Cx, CONTEXT, FltT2)
  372. genDef(Cx, CONTEXT, FltT3)
  373. genDef(Cx, CONTEXT, FltT4)
  374. genDef(Cx, CONTEXT, FltT5)
  375. genDef(Cx, CONTEXT, FltT6)
  376. genDef(Cx, CONTEXT, FltT7)
  377. genDef(Cx, CONTEXT, FltT8)
  378. genDef(Cx, CONTEXT, FltT9)
  379. genSpc()
  380. genDef(Cx, CONTEXT, FltS4)
  381. genDef(Cx, CONTEXT, FltS5)
  382. genDef(Cx, CONTEXT, FltS6)
  383. genDef(Cx, CONTEXT, FltS7)
  384. genDef(Cx, CONTEXT, FltS8)
  385. genDef(Cx, CONTEXT, FltS9)
  386. genDef(Cx, CONTEXT, FltS10)
  387. genDef(Cx, CONTEXT, FltS11)
  388. genDef(Cx, CONTEXT, FltS12)
  389. genDef(Cx, CONTEXT, FltS13)
  390. genDef(Cx, CONTEXT, FltS14)
  391. genDef(Cx, CONTEXT, FltS15)
  392. genDef(Cx, CONTEXT, FltS16)
  393. genDef(Cx, CONTEXT, FltS17)
  394. genDef(Cx, CONTEXT, FltS18)
  395. genDef(Cx, CONTEXT, FltS19)
  396. genSpc()
  397. genDef(Cx, CONTEXT, FltF32)
  398. genDef(Cx, CONTEXT, FltF33)
  399. genDef(Cx, CONTEXT, FltF34)
  400. genDef(Cx, CONTEXT, FltF35)
  401. genDef(Cx, CONTEXT, FltF36)
  402. genDef(Cx, CONTEXT, FltF37)
  403. genDef(Cx, CONTEXT, FltF38)
  404. genDef(Cx, CONTEXT, FltF39)
  405. genSpc()
  406. genDef(Cx, CONTEXT, FltF40)
  407. genDef(Cx, CONTEXT, FltF41)
  408. genDef(Cx, CONTEXT, FltF42)
  409. genDef(Cx, CONTEXT, FltF43)
  410. genDef(Cx, CONTEXT, FltF44)
  411. genDef(Cx, CONTEXT, FltF45)
  412. genDef(Cx, CONTEXT, FltF46)
  413. genDef(Cx, CONTEXT, FltF47)
  414. genDef(Cx, CONTEXT, FltF48)
  415. genDef(Cx, CONTEXT, FltF49)
  416. genSpc()
  417. genDef(Cx, CONTEXT, FltF50)
  418. genDef(Cx, CONTEXT, FltF51)
  419. genDef(Cx, CONTEXT, FltF52)
  420. genDef(Cx, CONTEXT, FltF53)
  421. genDef(Cx, CONTEXT, FltF54)
  422. genDef(Cx, CONTEXT, FltF55)
  423. genDef(Cx, CONTEXT, FltF56)
  424. genDef(Cx, CONTEXT, FltF57)
  425. genDef(Cx, CONTEXT, FltF58)
  426. genDef(Cx, CONTEXT, FltF59)
  427. genSpc()
  428. genDef(Cx, CONTEXT, FltF60)
  429. genDef(Cx, CONTEXT, FltF61)
  430. genDef(Cx, CONTEXT, FltF62)
  431. genDef(Cx, CONTEXT, FltF63)
  432. genDef(Cx, CONTEXT, FltF64)
  433. genDef(Cx, CONTEXT, FltF65)
  434. genDef(Cx, CONTEXT, FltF66)
  435. genDef(Cx, CONTEXT, FltF67)
  436. genDef(Cx, CONTEXT, FltF68)
  437. genDef(Cx, CONTEXT, FltF69)
  438. genSpc()
  439. genDef(Cx, CONTEXT, FltF70)
  440. genDef(Cx, CONTEXT, FltF71)
  441. genDef(Cx, CONTEXT, FltF72)
  442. genDef(Cx, CONTEXT, FltF73)
  443. genDef(Cx, CONTEXT, FltF74)
  444. genDef(Cx, CONTEXT, FltF75)
  445. genDef(Cx, CONTEXT, FltF76)
  446. genDef(Cx, CONTEXT, FltF77)
  447. genDef(Cx, CONTEXT, FltF78)
  448. genDef(Cx, CONTEXT, FltF79)
  449. genSpc()
  450. genDef(Cx, CONTEXT, FltF80)
  451. genDef(Cx, CONTEXT, FltF81)
  452. genDef(Cx, CONTEXT, FltF82)
  453. genDef(Cx, CONTEXT, FltF83)
  454. genDef(Cx, CONTEXT, FltF84)
  455. genDef(Cx, CONTEXT, FltF85)
  456. genDef(Cx, CONTEXT, FltF86)
  457. genDef(Cx, CONTEXT, FltF87)
  458. genDef(Cx, CONTEXT, FltF88)
  459. genDef(Cx, CONTEXT, FltF89)
  460. genSpc()
  461. genDef(Cx, CONTEXT, FltF90)
  462. genDef(Cx, CONTEXT, FltF91)
  463. genDef(Cx, CONTEXT, FltF92)
  464. genDef(Cx, CONTEXT, FltF93)
  465. genDef(Cx, CONTEXT, FltF94)
  466. genDef(Cx, CONTEXT, FltF95)
  467. genDef(Cx, CONTEXT, FltF96)
  468. genDef(Cx, CONTEXT, FltF97)
  469. genDef(Cx, CONTEXT, FltF98)
  470. genDef(Cx, CONTEXT, FltF99)
  471. genSpc()
  472. genDef(Cx, CONTEXT, FltF100)
  473. genDef(Cx, CONTEXT, FltF101)
  474. genDef(Cx, CONTEXT, FltF102)
  475. genDef(Cx, CONTEXT, FltF103)
  476. genDef(Cx, CONTEXT, FltF104)
  477. genDef(Cx, CONTEXT, FltF105)
  478. genDef(Cx, CONTEXT, FltF106)
  479. genDef(Cx, CONTEXT, FltF107)
  480. genDef(Cx, CONTEXT, FltF108)
  481. genDef(Cx, CONTEXT, FltF109)
  482. genSpc()
  483. genDef(Cx, CONTEXT, FltF110)
  484. genDef(Cx, CONTEXT, FltF111)
  485. genDef(Cx, CONTEXT, FltF112)
  486. genDef(Cx, CONTEXT, FltF113)
  487. genDef(Cx, CONTEXT, FltF114)
  488. genDef(Cx, CONTEXT, FltF115)
  489. genDef(Cx, CONTEXT, FltF116)
  490. genDef(Cx, CONTEXT, FltF117)
  491. genDef(Cx, CONTEXT, FltF118)
  492. genDef(Cx, CONTEXT, FltF119)
  493. genSpc()
  494. genDef(Cx, CONTEXT, FltF120)
  495. genDef(Cx, CONTEXT, FltF121)
  496. genDef(Cx, CONTEXT, FltF122)
  497. genDef(Cx, CONTEXT, FltF123)
  498. genDef(Cx, CONTEXT, FltF124)
  499. genDef(Cx, CONTEXT, FltF125)
  500. genDef(Cx, CONTEXT, FltF126)
  501. genDef(Cx, CONTEXT, FltF127)
  502. genSpc()
  503. genDef(Cx, CONTEXT, StFPSR)
  504. genSpc()
  505. genDef(Cx, CONTEXT, IntGp)
  506. genDef(Cx, CONTEXT, IntT0)
  507. genDef(Cx, CONTEXT, IntT1)
  508. genDef(Cx, CONTEXT, IntS0)
  509. genDef(Cx, CONTEXT, IntS1)
  510. genDef(Cx, CONTEXT, IntS2)
  511. genDef(Cx, CONTEXT, IntS3)
  512. genDef(Cx, CONTEXT, IntV0)
  513. genDef(Cx, CONTEXT, IntT2)
  514. genDef(Cx, CONTEXT, IntT3)
  515. genDef(Cx, CONTEXT, IntT4)
  516. genDef(Cx, CONTEXT, IntSp)
  517. genDef(Cx, CONTEXT, IntTeb)
  518. genDef(Cx, CONTEXT, IntT5)
  519. genDef(Cx, CONTEXT, IntT6)
  520. genDef(Cx, CONTEXT, IntT7)
  521. genDef(Cx, CONTEXT, IntT8)
  522. genDef(Cx, CONTEXT, IntT9)
  523. genSpc()
  524. genDef(Cx, CONTEXT, IntT10)
  525. genDef(Cx, CONTEXT, IntT11)
  526. genDef(Cx, CONTEXT, IntT12)
  527. genDef(Cx, CONTEXT, IntT13)
  528. genDef(Cx, CONTEXT, IntT14)
  529. genDef(Cx, CONTEXT, IntT15)
  530. genDef(Cx, CONTEXT, IntT16)
  531. genDef(Cx, CONTEXT, IntT17)
  532. genDef(Cx, CONTEXT, IntT18)
  533. genDef(Cx, CONTEXT, IntT19)
  534. genDef(Cx, CONTEXT, IntT20)
  535. genDef(Cx, CONTEXT, IntT21)
  536. genDef(Cx, CONTEXT, IntT22)
  537. genSpc()
  538. genDef(Cx, CONTEXT, IntNats)
  539. genDef(Cx, CONTEXT, Preds)
  540. genSpc()
  541. genDef(Cx, CONTEXT, BrRp)
  542. genDef(Cx, CONTEXT, BrS0)
  543. genDef(Cx, CONTEXT, BrS1)
  544. genDef(Cx, CONTEXT, BrS2)
  545. genDef(Cx, CONTEXT, BrS3)
  546. genDef(Cx, CONTEXT, BrS4)
  547. genDef(Cx, CONTEXT, BrT0)
  548. genDef(Cx, CONTEXT, BrT1)
  549. genSpc()
  550. genDef(Cx, CONTEXT, ApUNAT)
  551. genDef(Cx, CONTEXT, ApLC)
  552. genDef(Cx, CONTEXT, ApEC)
  553. genDef(Cx, CONTEXT, ApCCV)
  554. genDef(Cx, CONTEXT, ApDCR)
  555. genDef(Cx, CONTEXT, RsPFS)
  556. genDef(Cx, CONTEXT, RsBSP)
  557. genDef(Cx, CONTEXT, RsBSPSTORE)
  558. genDef(Cx, CONTEXT, RsRSC)
  559. genDef(Cx, CONTEXT, RsRNAT)
  560. genDef(Cx, CONTEXT, StIPSR)
  561. genDef(Cx, CONTEXT, StIIP)
  562. genDef(Cx, CONTEXT, StIFS)
  563. genSpc()
  564. genDef(Cx, CONTEXT, StFCR)
  565. genDef(Cx, CONTEXT, Eflag)
  566. genDef(Cx, CONTEXT, SegCSD)
  567. genDef(Cx, CONTEXT, SegSSD)
  568. genDef(Cx, CONTEXT, Cflag)
  569. genDef(Cx, CONTEXT, StFSR)
  570. genDef(Cx, CONTEXT, StFIR)
  571. genDef(Cx, CONTEXT, StFDR)
  572. genSpc()
  573. genVal(ContextFrameLength, ROUND_UP(sizeof(CONTEXT), 16))
  574. genSpc()
  575. //
  576. // Exception dispatcher context structure offset definitions.
  577. //
  578. genCom("Dispatcher Context Structure Offset Definitions")
  579. genDef(Dc, DISPATCHER_CONTEXT, ControlPc)
  580. genDef(Dc, DISPATCHER_CONTEXT, FunctionEntry)
  581. genDef(Dc, DISPATCHER_CONTEXT, EstablisherFrame)
  582. genDef(Dc, DISPATCHER_CONTEXT, ContextRecord)
  583. //
  584. // Application registers offset definitions
  585. //
  586. genCom("Debug Register Offset Definitions and Length")
  587. genDef(Ts, KAPPLICATION_REGISTERS, Ar21)
  588. genDef(Ts, KAPPLICATION_REGISTERS, Ar24)
  589. genDef(Ts, KAPPLICATION_REGISTERS, Ar25)
  590. genDef(Ts, KAPPLICATION_REGISTERS, Ar26)
  591. genDef(Ts, KAPPLICATION_REGISTERS, Ar27)
  592. genDef(Ts, KAPPLICATION_REGISTERS, Ar28)
  593. genDef(Ts, KAPPLICATION_REGISTERS, Ar29)
  594. genDef(Ts, KAPPLICATION_REGISTERS, Ar30)
  595. //
  596. // Higher FP volatile offset definitions.
  597. //
  598. genCom("Higher FP Volatile Offset Definitions and Length")
  599. genDef(Hi, KHIGHER_FP_VOLATILE, FltF32)
  600. genDef(Hi, KHIGHER_FP_VOLATILE, FltF33)
  601. genDef(Hi, KHIGHER_FP_VOLATILE, FltF34)
  602. genDef(Hi, KHIGHER_FP_VOLATILE, FltF35)
  603. genDef(Hi, KHIGHER_FP_VOLATILE, FltF36)
  604. genDef(Hi, KHIGHER_FP_VOLATILE, FltF37)
  605. genDef(Hi, KHIGHER_FP_VOLATILE, FltF38)
  606. genDef(Hi, KHIGHER_FP_VOLATILE, FltF39)
  607. genSpc()
  608. genDef(Hi, KHIGHER_FP_VOLATILE, FltF40)
  609. genDef(Hi, KHIGHER_FP_VOLATILE, FltF41)
  610. genDef(Hi, KHIGHER_FP_VOLATILE, FltF42)
  611. genDef(Hi, KHIGHER_FP_VOLATILE, FltF43)
  612. genDef(Hi, KHIGHER_FP_VOLATILE, FltF44)
  613. genDef(Hi, KHIGHER_FP_VOLATILE, FltF45)
  614. genDef(Hi, KHIGHER_FP_VOLATILE, FltF46)
  615. genDef(Hi, KHIGHER_FP_VOLATILE, FltF47)
  616. genDef(Hi, KHIGHER_FP_VOLATILE, FltF48)
  617. genDef(Hi, KHIGHER_FP_VOLATILE, FltF49)
  618. genSpc()
  619. genDef(Hi, KHIGHER_FP_VOLATILE, FltF50)
  620. genDef(Hi, KHIGHER_FP_VOLATILE, FltF51)
  621. genDef(Hi, KHIGHER_FP_VOLATILE, FltF52)
  622. genDef(Hi, KHIGHER_FP_VOLATILE, FltF53)
  623. genDef(Hi, KHIGHER_FP_VOLATILE, FltF54)
  624. genDef(Hi, KHIGHER_FP_VOLATILE, FltF55)
  625. genDef(Hi, KHIGHER_FP_VOLATILE, FltF56)
  626. genDef(Hi, KHIGHER_FP_VOLATILE, FltF57)
  627. genDef(Hi, KHIGHER_FP_VOLATILE, FltF58)
  628. genDef(Hi, KHIGHER_FP_VOLATILE, FltF59)
  629. genSpc()
  630. genDef(Hi, KHIGHER_FP_VOLATILE, FltF60)
  631. genDef(Hi, KHIGHER_FP_VOLATILE, FltF61)
  632. genDef(Hi, KHIGHER_FP_VOLATILE, FltF62)
  633. genDef(Hi, KHIGHER_FP_VOLATILE, FltF63)
  634. genDef(Hi, KHIGHER_FP_VOLATILE, FltF64)
  635. genDef(Hi, KHIGHER_FP_VOLATILE, FltF65)
  636. genDef(Hi, KHIGHER_FP_VOLATILE, FltF66)
  637. genDef(Hi, KHIGHER_FP_VOLATILE, FltF67)
  638. genDef(Hi, KHIGHER_FP_VOLATILE, FltF68)
  639. genDef(Hi, KHIGHER_FP_VOLATILE, FltF69)
  640. genSpc()
  641. genDef(Hi, KHIGHER_FP_VOLATILE, FltF70)
  642. genDef(Hi, KHIGHER_FP_VOLATILE, FltF71)
  643. genDef(Hi, KHIGHER_FP_VOLATILE, FltF72)
  644. genDef(Hi, KHIGHER_FP_VOLATILE, FltF73)
  645. genDef(Hi, KHIGHER_FP_VOLATILE, FltF74)
  646. genDef(Hi, KHIGHER_FP_VOLATILE, FltF75)
  647. genDef(Hi, KHIGHER_FP_VOLATILE, FltF76)
  648. genDef(Hi, KHIGHER_FP_VOLATILE, FltF77)
  649. genDef(Hi, KHIGHER_FP_VOLATILE, FltF78)
  650. genDef(Hi, KHIGHER_FP_VOLATILE, FltF79)
  651. genSpc()
  652. genDef(Hi, KHIGHER_FP_VOLATILE, FltF80)
  653. genDef(Hi, KHIGHER_FP_VOLATILE, FltF81)
  654. genDef(Hi, KHIGHER_FP_VOLATILE, FltF82)
  655. genDef(Hi, KHIGHER_FP_VOLATILE, FltF83)
  656. genDef(Hi, KHIGHER_FP_VOLATILE, FltF84)
  657. genDef(Hi, KHIGHER_FP_VOLATILE, FltF85)
  658. genDef(Hi, KHIGHER_FP_VOLATILE, FltF86)
  659. genDef(Hi, KHIGHER_FP_VOLATILE, FltF87)
  660. genDef(Hi, KHIGHER_FP_VOLATILE, FltF88)
  661. genDef(Hi, KHIGHER_FP_VOLATILE, FltF89)
  662. genSpc()
  663. genDef(Hi, KHIGHER_FP_VOLATILE, FltF90)
  664. genDef(Hi, KHIGHER_FP_VOLATILE, FltF91)
  665. genDef(Hi, KHIGHER_FP_VOLATILE, FltF92)
  666. genDef(Hi, KHIGHER_FP_VOLATILE, FltF93)
  667. genDef(Hi, KHIGHER_FP_VOLATILE, FltF94)
  668. genDef(Hi, KHIGHER_FP_VOLATILE, FltF95)
  669. genDef(Hi, KHIGHER_FP_VOLATILE, FltF96)
  670. genDef(Hi, KHIGHER_FP_VOLATILE, FltF97)
  671. genDef(Hi, KHIGHER_FP_VOLATILE, FltF98)
  672. genDef(Hi, KHIGHER_FP_VOLATILE, FltF99)
  673. genSpc()
  674. genDef(Hi, KHIGHER_FP_VOLATILE, FltF100)
  675. genDef(Hi, KHIGHER_FP_VOLATILE, FltF101)
  676. genDef(Hi, KHIGHER_FP_VOLATILE, FltF102)
  677. genDef(Hi, KHIGHER_FP_VOLATILE, FltF103)
  678. genDef(Hi, KHIGHER_FP_VOLATILE, FltF104)
  679. genDef(Hi, KHIGHER_FP_VOLATILE, FltF105)
  680. genDef(Hi, KHIGHER_FP_VOLATILE, FltF106)
  681. genDef(Hi, KHIGHER_FP_VOLATILE, FltF107)
  682. genDef(Hi, KHIGHER_FP_VOLATILE, FltF108)
  683. genDef(Hi, KHIGHER_FP_VOLATILE, FltF109)
  684. genSpc()
  685. genDef(Hi, KHIGHER_FP_VOLATILE, FltF110)
  686. genDef(Hi, KHIGHER_FP_VOLATILE, FltF111)
  687. genDef(Hi, KHIGHER_FP_VOLATILE, FltF112)
  688. genDef(Hi, KHIGHER_FP_VOLATILE, FltF113)
  689. genDef(Hi, KHIGHER_FP_VOLATILE, FltF114)
  690. genDef(Hi, KHIGHER_FP_VOLATILE, FltF115)
  691. genDef(Hi, KHIGHER_FP_VOLATILE, FltF116)
  692. genDef(Hi, KHIGHER_FP_VOLATILE, FltF117)
  693. genDef(Hi, KHIGHER_FP_VOLATILE, FltF118)
  694. genDef(Hi, KHIGHER_FP_VOLATILE, FltF119)
  695. genSpc()
  696. genDef(Hi, KHIGHER_FP_VOLATILE, FltF120)
  697. genDef(Hi, KHIGHER_FP_VOLATILE, FltF121)
  698. genDef(Hi, KHIGHER_FP_VOLATILE, FltF122)
  699. genDef(Hi, KHIGHER_FP_VOLATILE, FltF123)
  700. genDef(Hi, KHIGHER_FP_VOLATILE, FltF124)
  701. genDef(Hi, KHIGHER_FP_VOLATILE, FltF125)
  702. genDef(Hi, KHIGHER_FP_VOLATILE, FltF126)
  703. genDef(Hi, KHIGHER_FP_VOLATILE, FltF127)
  704. genSpc()
  705. //
  706. // Debug registers offset definitions
  707. //
  708. genCom("Debug Register Offset Definitions and Length")
  709. genDef(Dr, KDEBUG_REGISTERS, DbI0)
  710. genDef(Dr, KDEBUG_REGISTERS, DbI1)
  711. genDef(Dr, KDEBUG_REGISTERS, DbI2)
  712. genDef(Dr, KDEBUG_REGISTERS, DbI3)
  713. genDef(Dr, KDEBUG_REGISTERS, DbI4)
  714. genDef(Dr, KDEBUG_REGISTERS, DbI5)
  715. genDef(Dr, KDEBUG_REGISTERS, DbI6)
  716. genDef(Dr, KDEBUG_REGISTERS, DbI7)
  717. genSpc()
  718. genDef(Dr, KDEBUG_REGISTERS, DbD0)
  719. genDef(Dr, KDEBUG_REGISTERS, DbD1)
  720. genDef(Dr, KDEBUG_REGISTERS, DbD2)
  721. genDef(Dr, KDEBUG_REGISTERS, DbD3)
  722. genDef(Dr, KDEBUG_REGISTERS, DbD4)
  723. genDef(Dr, KDEBUG_REGISTERS, DbD5)
  724. genDef(Dr, KDEBUG_REGISTERS, DbD6)
  725. genDef(Dr, KDEBUG_REGISTERS, DbD7)
  726. genSpc()
  727. //
  728. // Thread State Save Area length
  729. //
  730. genDef(Ts, KTHREAD_STATE_SAVEAREA, AppRegisters)
  731. genDef(Ts, KTHREAD_STATE_SAVEAREA, PerfRegisters)
  732. genDef(Ts, KTHREAD_STATE_SAVEAREA, HigherFPVolatile)
  733. genDef(Ts, KTHREAD_STATE_SAVEAREA, DebugRegisters)
  734. genVal(ThreadStateSaveAreaLength, ROUND_UP(sizeof(KTHREAD_STATE_SAVEAREA), 16))
  735. //
  736. // Exception frame offset definitions.
  737. //
  738. genCom("Exception Frame Offset Definitions and Length")
  739. genDef(Ex, KEXCEPTION_FRAME, FltS0)
  740. genDef(Ex, KEXCEPTION_FRAME, FltS1)
  741. genDef(Ex, KEXCEPTION_FRAME, FltS2)
  742. genDef(Ex, KEXCEPTION_FRAME, FltS3)
  743. genDef(Ex, KEXCEPTION_FRAME, FltS4)
  744. genDef(Ex, KEXCEPTION_FRAME, FltS5)
  745. genDef(Ex, KEXCEPTION_FRAME, FltS6)
  746. genDef(Ex, KEXCEPTION_FRAME, FltS7)
  747. genDef(Ex, KEXCEPTION_FRAME, FltS8)
  748. genDef(Ex, KEXCEPTION_FRAME, FltS9)
  749. genDef(Ex, KEXCEPTION_FRAME, FltS10)
  750. genDef(Ex, KEXCEPTION_FRAME, FltS11)
  751. genDef(Ex, KEXCEPTION_FRAME, FltS12)
  752. genDef(Ex, KEXCEPTION_FRAME, FltS13)
  753. genDef(Ex, KEXCEPTION_FRAME, FltS14)
  754. genDef(Ex, KEXCEPTION_FRAME, FltS15)
  755. genDef(Ex, KEXCEPTION_FRAME, FltS16)
  756. genDef(Ex, KEXCEPTION_FRAME, FltS17)
  757. genDef(Ex, KEXCEPTION_FRAME, FltS18)
  758. genDef(Ex, KEXCEPTION_FRAME, FltS19)
  759. genSpc()
  760. genDef(Ex, KEXCEPTION_FRAME, IntS0)
  761. genDef(Ex, KEXCEPTION_FRAME, IntS1)
  762. genDef(Ex, KEXCEPTION_FRAME, IntS2)
  763. genDef(Ex, KEXCEPTION_FRAME, IntS3)
  764. genDef(Ex, KEXCEPTION_FRAME, IntNats)
  765. genSpc()
  766. genDef(Ex, KEXCEPTION_FRAME, BrS0)
  767. genDef(Ex, KEXCEPTION_FRAME, BrS1)
  768. genDef(Ex, KEXCEPTION_FRAME, BrS2)
  769. genDef(Ex, KEXCEPTION_FRAME, BrS3)
  770. genDef(Ex, KEXCEPTION_FRAME, BrS4)
  771. genSpc()
  772. genDef(Ex, KEXCEPTION_FRAME, ApEC)
  773. genDef(Ex, KEXCEPTION_FRAME, ApLC)
  774. genSpc()
  775. genVal(ExceptionFrameLength, ROUND_UP(sizeof(KEXCEPTION_FRAME), 16))
  776. //
  777. // Switch frame offset definitions.
  778. //
  779. genCom("Switch Frame Offset Definitions and Length")
  780. genAlt(SwExFrame, KSWITCH_FRAME, SwitchExceptionFrame)
  781. genAlt(SwPreds, KSWITCH_FRAME, SwitchPredicates)
  782. genAlt(SwRp, KSWITCH_FRAME, SwitchRp)
  783. genAlt(SwPFS, KSWITCH_FRAME, SwitchPFS)
  784. genAlt(SwFPSR, KSWITCH_FRAME, SwitchFPSR)
  785. genAlt(SwBsp, KSWITCH_FRAME, SwitchBsp)
  786. genAlt(SwRnat, KSWITCH_FRAME, SwitchRnat)
  787. genSpc()
  788. genVal(SwitchFrameLength, ROUND_UP(sizeof(KSWITCH_FRAME), 16))
  789. //
  790. // Plabel structure offset definitions.
  791. //
  792. genCom("Plabel structure offset definitions")
  793. genDef(Pl, PLABEL_DESCRIPTOR, EntryPoint)
  794. genDef(Pl, PLABEL_DESCRIPTOR, GlobalPointer)
  795. DisableInc (HALIA64)
  796. //
  797. // Jump buffer offset definitions.
  798. //
  799. genCom("Jump Offset Definitions and Length")
  800. genDef(Jb, _JUMP_BUFFER, Registration)
  801. genDef(Jb, _JUMP_BUFFER, TryLevel)
  802. genDef(Jb, _JUMP_BUFFER, Cookie)
  803. genDef(Jb, _JUMP_BUFFER, UnwindFunc)
  804. genDef(Jb, _JUMP_BUFFER, UnwindData)
  805. genSpc()
  806. genDef(Jb, _JUMP_BUFFER, FPSR)
  807. genDef(Jb, _JUMP_BUFFER, FltS0)
  808. genDef(Jb, _JUMP_BUFFER, FltS1)
  809. genDef(Jb, _JUMP_BUFFER, FltS2)
  810. genDef(Jb, _JUMP_BUFFER, FltS3)
  811. genDef(Jb, _JUMP_BUFFER, FltS4)
  812. genDef(Jb, _JUMP_BUFFER, FltS5)
  813. genDef(Jb, _JUMP_BUFFER, FltS6)
  814. genDef(Jb, _JUMP_BUFFER, FltS7)
  815. genDef(Jb, _JUMP_BUFFER, FltS8)
  816. genDef(Jb, _JUMP_BUFFER, FltS9)
  817. genSpc()
  818. genDef(Jb, _JUMP_BUFFER, FltS10)
  819. genDef(Jb, _JUMP_BUFFER, FltS11)
  820. genDef(Jb, _JUMP_BUFFER, FltS12)
  821. genDef(Jb, _JUMP_BUFFER, FltS13)
  822. genDef(Jb, _JUMP_BUFFER, FltS14)
  823. genDef(Jb, _JUMP_BUFFER, FltS15)
  824. genDef(Jb, _JUMP_BUFFER, FltS16)
  825. genDef(Jb, _JUMP_BUFFER, FltS17)
  826. genDef(Jb, _JUMP_BUFFER, FltS18)
  827. genDef(Jb, _JUMP_BUFFER, FltS19)
  828. genSpc()
  829. genDef(Jb, _JUMP_BUFFER, StIIP)
  830. genDef(Jb, _JUMP_BUFFER, BrS0)
  831. genDef(Jb, _JUMP_BUFFER, BrS1)
  832. genDef(Jb, _JUMP_BUFFER, BrS2)
  833. genDef(Jb, _JUMP_BUFFER, BrS3)
  834. genDef(Jb, _JUMP_BUFFER, BrS4)
  835. genSpc()
  836. genDef(Jb, _JUMP_BUFFER, RsBSP)
  837. genDef(Jb, _JUMP_BUFFER, RsPFS)
  838. genDef(Jb, _JUMP_BUFFER, ApUNAT)
  839. genDef(Jb, _JUMP_BUFFER, ApLC)
  840. genSpc()
  841. genDef(Jb, _JUMP_BUFFER, IntS0)
  842. genDef(Jb, _JUMP_BUFFER, IntS1)
  843. genDef(Jb, _JUMP_BUFFER, IntS2)
  844. genDef(Jb, _JUMP_BUFFER, IntS3)
  845. genDef(Jb, _JUMP_BUFFER, IntSp)
  846. genDef(Jb, _JUMP_BUFFER, IntNats)
  847. genDef(Jb, _JUMP_BUFFER, Preds)
  848. genSpc()
  849. genVal(JumpBufferLength, ROUND_UP(sizeof(_JUMP_BUFFER), 16))
  850. //
  851. // Trap frame offset definitions.
  852. //
  853. EnableInc (HALIA64)
  854. genCom("Trap Frame Offset Definitions and Length")
  855. genDef(Tr, KTRAP_FRAME, FltT0)
  856. genDef(Tr, KTRAP_FRAME, FltT1)
  857. genDef(Tr, KTRAP_FRAME, FltT2)
  858. genDef(Tr, KTRAP_FRAME, FltT3)
  859. genDef(Tr, KTRAP_FRAME, FltT4)
  860. genDef(Tr, KTRAP_FRAME, FltT5)
  861. genDef(Tr, KTRAP_FRAME, FltT6)
  862. genDef(Tr, KTRAP_FRAME, FltT7)
  863. genDef(Tr, KTRAP_FRAME, FltT8)
  864. genDef(Tr, KTRAP_FRAME, FltT9)
  865. genSpc()
  866. genDef(Tr, KTRAP_FRAME, IntGp)
  867. genDef(Tr, KTRAP_FRAME, IntT0)
  868. genDef(Tr, KTRAP_FRAME, IntT1)
  869. genSpc()
  870. genDef(Tr, KTRAP_FRAME, ApUNAT)
  871. genDef(Tr, KTRAP_FRAME, ApCCV)
  872. genDef(Tr, KTRAP_FRAME, ApDCR)
  873. genDef(Tr, KTRAP_FRAME, Preds)
  874. genSpc()
  875. genDef(Tr, KTRAP_FRAME, IntV0)
  876. genDef(Tr, KTRAP_FRAME, IntT2)
  877. genDef(Tr, KTRAP_FRAME, IntT3)
  878. genDef(Tr, KTRAP_FRAME, IntT4)
  879. genDef(Tr, KTRAP_FRAME, IntSp)
  880. genDef(Tr, KTRAP_FRAME, IntTeb)
  881. genDef(Tr, KTRAP_FRAME, IntT5)
  882. genDef(Tr, KTRAP_FRAME, IntT6)
  883. genDef(Tr, KTRAP_FRAME, IntT7)
  884. genDef(Tr, KTRAP_FRAME, IntT8)
  885. genDef(Tr, KTRAP_FRAME, IntT9)
  886. genSpc()
  887. genDef(Tr, KTRAP_FRAME, IntT10)
  888. genDef(Tr, KTRAP_FRAME, IntT11)
  889. genDef(Tr, KTRAP_FRAME, IntT12)
  890. genDef(Tr, KTRAP_FRAME, IntT13)
  891. genDef(Tr, KTRAP_FRAME, IntT14)
  892. genDef(Tr, KTRAP_FRAME, IntT15)
  893. genDef(Tr, KTRAP_FRAME, IntT16)
  894. genDef(Tr, KTRAP_FRAME, IntT17)
  895. genDef(Tr, KTRAP_FRAME, IntT18)
  896. genDef(Tr, KTRAP_FRAME, IntT19)
  897. genDef(Tr, KTRAP_FRAME, IntT20)
  898. genDef(Tr, KTRAP_FRAME, IntT21)
  899. genDef(Tr, KTRAP_FRAME, IntT22)
  900. genSpc()
  901. genDef(Tr, KTRAP_FRAME, IntNats)
  902. genSpc()
  903. genDef(Tr, KTRAP_FRAME, BrRp)
  904. genDef(Tr, KTRAP_FRAME, BrT0)
  905. genDef(Tr, KTRAP_FRAME, BrT1)
  906. genSpc()
  907. genDef(Tr, KTRAP_FRAME, RsPFS)
  908. genDef(Tr, KTRAP_FRAME, RsBSP)
  909. genDef(Tr, KTRAP_FRAME, RsRSC)
  910. genDef(Tr, KTRAP_FRAME, RsRNAT)
  911. genDef(Tr, KTRAP_FRAME, RsBSPSTORE)
  912. genSpc()
  913. genDef(Tr, KTRAP_FRAME, StIPSR)
  914. genDef(Tr, KTRAP_FRAME, StISR)
  915. genDef(Tr, KTRAP_FRAME, StIFA)
  916. genDef(Tr, KTRAP_FRAME, StIIP)
  917. genDef(Tr, KTRAP_FRAME, StIIPA)
  918. genDef(Tr, KTRAP_FRAME, StIFS)
  919. genDef(Tr, KTRAP_FRAME, StIIM)
  920. genDef(Tr, KTRAP_FRAME, StIHA)
  921. genDef(Tr, KTRAP_FRAME, StFPSR)
  922. genSpc()
  923. genDef(Tr, KTRAP_FRAME, OldIrql)
  924. genDef(Tr, KTRAP_FRAME, PreviousMode)
  925. genDef(Tr, KTRAP_FRAME, TrapFrame)
  926. genDef(Tr, KTRAP_FRAME, Handler)
  927. genDef(Tr, KTRAP_FRAME, EOFMarker)
  928. genDef(Tr, KTRAP_FRAME, ExceptionRecord)
  929. genSpc()
  930. genVal(TrapFrameLength, ROUND_UP(sizeof(KTRAP_FRAME),16))
  931. genVal(TrapFrameArguments, KTRAP_FRAME_ARGUMENTS)
  932. genNamUint(KTRAP_FRAME_EOF)
  933. //
  934. // Usermode callout kernel frame definitions
  935. //
  936. DisableInc(HALIA64)
  937. genCom("Usermode callout kernel frame definitions")
  938. genDef(Cu, KCALLOUT_FRAME, BrRp)
  939. genDef(Cu, KCALLOUT_FRAME, RsPFS)
  940. genDef(Cu, KCALLOUT_FRAME, Preds)
  941. genDef(Cu, KCALLOUT_FRAME, ApUNAT)
  942. genDef(Cu, KCALLOUT_FRAME, ApLC)
  943. genDef(Cu, KCALLOUT_FRAME, IntS0)
  944. genDef(Cu, KCALLOUT_FRAME, IntS1)
  945. genDef(Cu, KCALLOUT_FRAME, IntS2)
  946. genDef(Cu, KCALLOUT_FRAME, IntS3)
  947. genDef(Cu, KCALLOUT_FRAME, BrS0)
  948. genDef(Cu, KCALLOUT_FRAME, BrS1)
  949. genDef(Cu, KCALLOUT_FRAME, BrS2)
  950. genDef(Cu, KCALLOUT_FRAME, BrS3)
  951. genDef(Cu, KCALLOUT_FRAME, BrS4)
  952. genDef(Cu, KCALLOUT_FRAME, RsRNAT)
  953. genDef(Cu, KCALLOUT_FRAME, IntNats)
  954. genDef(Cu, KCALLOUT_FRAME, FltS0)
  955. genDef(Cu, KCALLOUT_FRAME, FltS1)
  956. genDef(Cu, KCALLOUT_FRAME, FltS2)
  957. genDef(Cu, KCALLOUT_FRAME, FltS3)
  958. genDef(Cu, KCALLOUT_FRAME, FltS4)
  959. genDef(Cu, KCALLOUT_FRAME, FltS5)
  960. genDef(Cu, KCALLOUT_FRAME, FltS6)
  961. genDef(Cu, KCALLOUT_FRAME, FltS7)
  962. genDef(Cu, KCALLOUT_FRAME, FltS8)
  963. genDef(Cu, KCALLOUT_FRAME, FltS9)
  964. genDef(Cu, KCALLOUT_FRAME, FltS10)
  965. genDef(Cu, KCALLOUT_FRAME, FltS11)
  966. genDef(Cu, KCALLOUT_FRAME, FltS12)
  967. genDef(Cu, KCALLOUT_FRAME, FltS13)
  968. genDef(Cu, KCALLOUT_FRAME, FltS14)
  969. genDef(Cu, KCALLOUT_FRAME, FltS15)
  970. genDef(Cu, KCALLOUT_FRAME, FltS16)
  971. genDef(Cu, KCALLOUT_FRAME, FltS17)
  972. genDef(Cu, KCALLOUT_FRAME, FltS18)
  973. genDef(Cu, KCALLOUT_FRAME, FltS19)
  974. genDef(Cu, KCALLOUT_FRAME, A0)
  975. genDef(Cu, KCALLOUT_FRAME, A1)
  976. genDef(Cu, KCALLOUT_FRAME, CbStk)
  977. genDef(Cu, KCALLOUT_FRAME, InStack)
  978. genDef(Cu, KCALLOUT_FRAME, CbBStore)
  979. genDef(Cu, KCALLOUT_FRAME, InBStore)
  980. genDef(Cu, KCALLOUT_FRAME, TrFrame)
  981. genDef(Cu, KCALLOUT_FRAME, TrStIIP)
  982. genVal(CuFrameLength, sizeof(KCALLOUT_FRAME))
  983. genCom("Usermode callout user frame definitions")
  984. genDef(Ck, UCALLOUT_FRAME, Buffer)
  985. genDef(Ck, UCALLOUT_FRAME, Length)
  986. genDef(Ck, UCALLOUT_FRAME, ApiNumber)
  987. genDef(Ck, UCALLOUT_FRAME, IntSp)
  988. genDef(Ck, UCALLOUT_FRAME, RsPFS)
  989. genDef(Ck, UCALLOUT_FRAME, BrRp)
  990. EnableInc(HALIA64)
  991. //
  992. // Loader Parameter Block offset definitions.
  993. //
  994. genCom("Loader Parameter Block Offset Definitions")
  995. genDef(Lpb, LOADER_PARAMETER_BLOCK, LoadOrderListHead)
  996. genDef(Lpb, LOADER_PARAMETER_BLOCK, MemoryDescriptorListHead)
  997. genDef(Lpb, LOADER_PARAMETER_BLOCK, KernelStack)
  998. genDef(Lpb, LOADER_PARAMETER_BLOCK, Prcb)
  999. genDef(Lpb, LOADER_PARAMETER_BLOCK, Process)
  1000. genDef(Lpb, LOADER_PARAMETER_BLOCK, Thread)
  1001. genAlt(LpbAcpiRsdt,
  1002. LOADER_PARAMETER_BLOCK, u.Ia64.AcpiRsdt)
  1003. genAlt(LpbKernelPhysicalBase,
  1004. LOADER_PARAMETER_BLOCK, u.Ia64.KernelPhysicalBase)
  1005. genAlt(LpbKernelVirtualBase,
  1006. LOADER_PARAMETER_BLOCK, u.Ia64.KernelVirtualBase)
  1007. genAlt(LpbInterruptStack,
  1008. LOADER_PARAMETER_BLOCK, u.Ia64.InterruptStack)
  1009. genAlt(LpbPanicStack,
  1010. LOADER_PARAMETER_BLOCK, u.Ia64.PanicStack)
  1011. genAlt(LpbPcrPage,
  1012. LOADER_PARAMETER_BLOCK, u.Ia64.PcrPage)
  1013. genAlt(LpbPdrPage,
  1014. LOADER_PARAMETER_BLOCK, u.Ia64.PdrPage)
  1015. genAlt(LpbPcrPage2,
  1016. LOADER_PARAMETER_BLOCK, u.Ia64.PcrPage2)
  1017. genAlt(LpbMachineType,
  1018. LOADER_PARAMETER_BLOCK, u.Ia64.MachineType)
  1019. DisableInc (HALIA64)
  1020. //
  1021. // Address space layout definitions
  1022. //
  1023. EnableInc (HALIA64)
  1024. genCom("Address Space Layout Definitions")
  1025. genNam(UREGION_INDEX)
  1026. genNamUint(KSEG0_BASE)
  1027. genNamUint(KSEG2_BASE)
  1028. genNamUint(KADDRESS_BASE)
  1029. genNamUint(UADDRESS_BASE)
  1030. genNamUint(SADDRESS_BASE)
  1031. DisableInc (HALIA64)
  1032. genNamUint(SYSTEM_BASE)
  1033. genNamUint(KSEG3_BASE)
  1034. genNamUint(KSEG3_LIMIT)
  1035. //
  1036. // Page table and page directory entry definitions
  1037. //
  1038. EnableInc (HALIA64)
  1039. genCom("Page Table and Directory Entry Definitions")
  1040. genNam(PAGE_SIZE)
  1041. genNam(PAGE_SHIFT)
  1042. genNam(PDI_SHIFT)
  1043. genNam(PTI_SHIFT)
  1044. genNam(PTE_SHIFT)
  1045. genNam(VHPT_PDE_BITS)
  1046. DisableInc (HALIA64)
  1047. //
  1048. // Breakpoint instruction definitions
  1049. //
  1050. EnableInc (HALIA64)
  1051. genCom("Breakpoint Definitions")
  1052. genNam(USER_BREAKPOINT)
  1053. genNam(KERNEL_BREAKPOINT)
  1054. genNam(BREAKPOINT_BREAKIN)
  1055. DisableInc (HALIA64)
  1056. genNam(UNKNOWN_ERROR_BREAK)
  1057. genNam(INTEGER_DIVIDE_BY_ZERO_BREAK)
  1058. genNam(INTEGER_OVERFLOW_BREAK)
  1059. genNam(RANGE_CHECK_BREAK)
  1060. genNam(NULL_POINTER_DEFERENCE_BREAK)
  1061. genNam(MISALIGNED_DATA_BREAK)
  1062. genNam(DECIMAL_OVERFLOW_BREAK)
  1063. genNam(DECIMAL_DIVIDE_BY_ZERO_BREAK)
  1064. genNam(PACKED_DECIMAL_ERROR_BREAK)
  1065. genNam(INVALID_ASCII_DIGIT_BREAK)
  1066. genNam(INVALID_DECIMAL_DIGIT_BREAK)
  1067. genNam(PARAGRAPH_STACK_OVERFLOW_BREAK)
  1068. genNam(BREAKPOINT_PRINT)
  1069. genNam(BREAKPOINT_PROMPT)
  1070. genNam(BREAKPOINT_STOP)
  1071. genNam(BREAKPOINT_LOAD_SYMBOLS)
  1072. genNam(BREAKPOINT_UNLOAD_SYMBOLS)
  1073. genNam(BREAKPOINT_COMMAND_STRING)
  1074. //
  1075. // Miscellaneous definitions
  1076. //
  1077. genCom("IA64 Specific Definitions")
  1078. genNam(BREAK_APP_BASE)
  1079. genNam(BREAK_DEBUG_BASE)
  1080. genNam(BREAK_SYSCALL_BASE)
  1081. genNam(BREAK_SYSCALL)
  1082. genNam(BREAK_FASTSYS_BASE)
  1083. genNam(BREAK_SET_LOW_WAIT_HIGH)
  1084. genNam(BREAK_SET_HIGH_WAIT_LOW)
  1085. genNam(SYSCALL_FRAME)
  1086. genNam(INTERRUPT_FRAME)
  1087. genNam(EXCEPTION_FRAME)
  1088. genNam(CONTEXT_FRAME)
  1089. genSpc()
  1090. //
  1091. // Miscellaneous definitions
  1092. //
  1093. EnableInc (HALIA64)
  1094. genCom("Miscellaneous Definitions")
  1095. genNam(Executive)
  1096. genNam(KernelMode)
  1097. genNam(UserMode)
  1098. genNam(FALSE)
  1099. genNam(TRUE)
  1100. genValUint(KiPcr, KIPCR)
  1101. genValUint(KiPcr2, KI_USER_SHARED_DATA)
  1102. DisableInc (HALIA64)
  1103. genNam(BASE_PRIORITY_THRESHOLD)
  1104. genNam(EVENT_PAIR_INCREMENT)
  1105. genNam(LOW_REALTIME_PRIORITY)
  1106. genNam(KERNEL_STACK_SIZE)
  1107. genNam(KERNEL_BSTORE_SIZE)
  1108. genNam(KERNEL_LARGE_STACK_COMMIT)
  1109. genNam(KERNEL_LARGE_BSTORE_COMMIT)
  1110. genNamUint(MI_USER_PROBE_ADDRESS)
  1111. genNamUint(MM_EPC_VA)
  1112. genNam(THREAD_QUANTUM)
  1113. genNam(CLOCK_QUANTUM_DECREMENT)
  1114. genNam(WAIT_QUANTUM_DECREMENT)
  1115. genNam(READY_SKIP_QUANTUM)
  1116. genNam(ROUND_TRIP_DECREMENT_COUNT)
  1117. //
  1118. // Kernel special register difinitions for IA64
  1119. //
  1120. genCom("kernel special register frame offset definitions")
  1121. genDef(Kps, KPROCESSOR_STATE, SpecialRegisters)
  1122. genDef(Ks, KSPECIAL_REGISTERS, KernelDbI0)
  1123. genDef(Ks, KSPECIAL_REGISTERS, KernelDbI1)
  1124. genDef(Ks, KSPECIAL_REGISTERS, KernelDbI2)
  1125. genDef(Ks, KSPECIAL_REGISTERS, KernelDbI3)
  1126. genDef(Ks, KSPECIAL_REGISTERS, KernelDbI4)
  1127. genDef(Ks, KSPECIAL_REGISTERS, KernelDbI5)
  1128. genDef(Ks, KSPECIAL_REGISTERS, KernelDbI6)
  1129. genDef(Ks, KSPECIAL_REGISTERS, KernelDbI7)
  1130. genDef(Ks, KSPECIAL_REGISTERS, KernelDbD0)
  1131. genDef(Ks, KSPECIAL_REGISTERS, KernelDbD1)
  1132. genDef(Ks, KSPECIAL_REGISTERS, KernelDbD2)
  1133. genDef(Ks, KSPECIAL_REGISTERS, KernelDbD3)
  1134. genDef(Ks, KSPECIAL_REGISTERS, KernelDbD4)
  1135. genDef(Ks, KSPECIAL_REGISTERS, KernelDbD5)
  1136. genDef(Ks, KSPECIAL_REGISTERS, KernelDbD6)
  1137. genDef(Ks, KSPECIAL_REGISTERS, KernelDbD7)
  1138. genDef(Ks, KSPECIAL_REGISTERS, KernelPfC0)
  1139. genDef(Ks, KSPECIAL_REGISTERS, KernelPfC1)
  1140. genDef(Ks, KSPECIAL_REGISTERS, KernelPfC2)
  1141. genDef(Ks, KSPECIAL_REGISTERS, KernelPfC3)
  1142. genDef(Ks, KSPECIAL_REGISTERS, KernelPfC4)
  1143. genDef(Ks, KSPECIAL_REGISTERS, KernelPfC5)
  1144. genDef(Ks, KSPECIAL_REGISTERS, KernelPfC6)
  1145. genDef(Ks, KSPECIAL_REGISTERS, KernelPfC7)
  1146. genDef(Ks, KSPECIAL_REGISTERS, KernelPfD0)
  1147. genDef(Ks, KSPECIAL_REGISTERS, KernelPfD1)
  1148. genDef(Ks, KSPECIAL_REGISTERS, KernelPfD2)
  1149. genDef(Ks, KSPECIAL_REGISTERS, KernelPfD3)
  1150. genDef(Ks, KSPECIAL_REGISTERS, KernelPfD4)
  1151. genDef(Ks, KSPECIAL_REGISTERS, KernelPfD5)
  1152. genDef(Ks, KSPECIAL_REGISTERS, KernelPfD6)
  1153. genDef(Ks, KSPECIAL_REGISTERS, KernelPfD7)
  1154. genDef(Ks, KSPECIAL_REGISTERS, IntH16)
  1155. genDef(Ks, KSPECIAL_REGISTERS, IntH17)
  1156. genDef(Ks, KSPECIAL_REGISTERS, IntH18)
  1157. genDef(Ks, KSPECIAL_REGISTERS, IntH19)
  1158. genDef(Ks, KSPECIAL_REGISTERS, IntH20)
  1159. genDef(Ks, KSPECIAL_REGISTERS, IntH21)
  1160. genDef(Ks, KSPECIAL_REGISTERS, IntH22)
  1161. genDef(Ks, KSPECIAL_REGISTERS, IntH23)
  1162. genDef(Ks, KSPECIAL_REGISTERS, IntH24)
  1163. genDef(Ks, KSPECIAL_REGISTERS, IntH25)
  1164. genDef(Ks, KSPECIAL_REGISTERS, IntH26)
  1165. genDef(Ks, KSPECIAL_REGISTERS, IntH27)
  1166. genDef(Ks, KSPECIAL_REGISTERS, IntH28)
  1167. genDef(Ks, KSPECIAL_REGISTERS, IntH29)
  1168. genDef(Ks, KSPECIAL_REGISTERS, IntH30)
  1169. genDef(Ks, KSPECIAL_REGISTERS, IntH31)
  1170. genDef(Ks, KSPECIAL_REGISTERS, ApCPUID0)
  1171. genDef(Ks, KSPECIAL_REGISTERS, ApCPUID1)
  1172. genDef(Ks, KSPECIAL_REGISTERS, ApCPUID2)
  1173. genDef(Ks, KSPECIAL_REGISTERS, ApCPUID3)
  1174. genDef(Ks, KSPECIAL_REGISTERS, ApCPUID4)
  1175. genDef(Ks, KSPECIAL_REGISTERS, ApCPUID5)
  1176. genDef(Ks, KSPECIAL_REGISTERS, ApCPUID6)
  1177. genDef(Ks, KSPECIAL_REGISTERS, ApCPUID7)
  1178. genDef(Ks, KSPECIAL_REGISTERS, ApKR0)
  1179. genDef(Ks, KSPECIAL_REGISTERS, ApKR1)
  1180. genDef(Ks, KSPECIAL_REGISTERS, ApKR2)
  1181. genDef(Ks, KSPECIAL_REGISTERS, ApKR3)
  1182. genDef(Ks, KSPECIAL_REGISTERS, ApKR4)
  1183. genDef(Ks, KSPECIAL_REGISTERS, ApKR5)
  1184. genDef(Ks, KSPECIAL_REGISTERS, ApKR6)
  1185. genDef(Ks, KSPECIAL_REGISTERS, ApKR7)
  1186. genDef(Ks, KSPECIAL_REGISTERS, ApITC)
  1187. genDef(Ks, KSPECIAL_REGISTERS, ApITM)
  1188. genDef(Ks, KSPECIAL_REGISTERS, ApIVA)
  1189. genDef(Ks, KSPECIAL_REGISTERS, ApPTA)
  1190. genDef(Ks, KSPECIAL_REGISTERS, ApGPTA)
  1191. genDef(Ks, KSPECIAL_REGISTERS, StISR)
  1192. genDef(Ks, KSPECIAL_REGISTERS, StIFA)
  1193. genDef(Ks, KSPECIAL_REGISTERS, StITIR)
  1194. genDef(Ks, KSPECIAL_REGISTERS, StIIPA)
  1195. genDef(Ks, KSPECIAL_REGISTERS, StIIM)
  1196. genDef(Ks, KSPECIAL_REGISTERS, StIHA)
  1197. genDef(Ks, KSPECIAL_REGISTERS, SaLID)
  1198. genDef(Ks, KSPECIAL_REGISTERS, SaIVR)
  1199. genDef(Ks, KSPECIAL_REGISTERS, SaTPR)
  1200. genDef(Ks, KSPECIAL_REGISTERS, SaEOI)
  1201. genDef(Ks, KSPECIAL_REGISTERS, SaIRR0)
  1202. genDef(Ks, KSPECIAL_REGISTERS, SaIRR1)
  1203. genDef(Ks, KSPECIAL_REGISTERS, SaIRR2)
  1204. genDef(Ks, KSPECIAL_REGISTERS, SaIRR3)
  1205. genDef(Ks, KSPECIAL_REGISTERS, SaITV)
  1206. genDef(Ks, KSPECIAL_REGISTERS, SaPMV)
  1207. genDef(Ks, KSPECIAL_REGISTERS, SaCMCV)
  1208. genDef(Ks, KSPECIAL_REGISTERS, SaLRR0)
  1209. genDef(Ks, KSPECIAL_REGISTERS, SaLRR1)
  1210. genDef(Ks, KSPECIAL_REGISTERS, Rr0)
  1211. genDef(Ks, KSPECIAL_REGISTERS, Rr1)
  1212. genDef(Ks, KSPECIAL_REGISTERS, Rr2)
  1213. genDef(Ks, KSPECIAL_REGISTERS, Rr3)
  1214. genDef(Ks, KSPECIAL_REGISTERS, Rr4)
  1215. genDef(Ks, KSPECIAL_REGISTERS, Rr5)
  1216. genDef(Ks, KSPECIAL_REGISTERS, Rr6)
  1217. genDef(Ks, KSPECIAL_REGISTERS, Rr7)
  1218. genDef(Ks, KSPECIAL_REGISTERS, Pkr0)
  1219. genDef(Ks, KSPECIAL_REGISTERS, Pkr1)
  1220. genDef(Ks, KSPECIAL_REGISTERS, Pkr2)
  1221. genDef(Ks, KSPECIAL_REGISTERS, Pkr3)
  1222. genDef(Ks, KSPECIAL_REGISTERS, Pkr4)
  1223. genDef(Ks, KSPECIAL_REGISTERS, Pkr5)
  1224. genDef(Ks, KSPECIAL_REGISTERS, Pkr6)
  1225. genDef(Ks, KSPECIAL_REGISTERS, Pkr7)
  1226. genDef(Ks, KSPECIAL_REGISTERS, Pkr8)
  1227. genDef(Ks, KSPECIAL_REGISTERS, Pkr9)
  1228. genDef(Ks, KSPECIAL_REGISTERS, Pkr10)
  1229. genDef(Ks, KSPECIAL_REGISTERS, Pkr11)
  1230. genDef(Ks, KSPECIAL_REGISTERS, Pkr12)
  1231. genDef(Ks, KSPECIAL_REGISTERS, Pkr13)
  1232. genDef(Ks, KSPECIAL_REGISTERS, Pkr14)
  1233. genDef(Ks, KSPECIAL_REGISTERS, Pkr15)
  1234. genDef(Ks, KSPECIAL_REGISTERS, TrI0)
  1235. genDef(Ks, KSPECIAL_REGISTERS, TrI1)
  1236. genDef(Ks, KSPECIAL_REGISTERS, TrI2)
  1237. genDef(Ks, KSPECIAL_REGISTERS, TrI3)
  1238. genDef(Ks, KSPECIAL_REGISTERS, TrI4)
  1239. genDef(Ks, KSPECIAL_REGISTERS, TrI5)
  1240. genDef(Ks, KSPECIAL_REGISTERS, TrI6)
  1241. genDef(Ks, KSPECIAL_REGISTERS, TrI7)
  1242. genDef(Ks, KSPECIAL_REGISTERS, TrD0)
  1243. genDef(Ks, KSPECIAL_REGISTERS, TrD1)
  1244. genDef(Ks, KSPECIAL_REGISTERS, TrD2)
  1245. genDef(Ks, KSPECIAL_REGISTERS, TrD3)
  1246. genDef(Ks, KSPECIAL_REGISTERS, TrD4)
  1247. genDef(Ks, KSPECIAL_REGISTERS, TrD5)
  1248. genDef(Ks, KSPECIAL_REGISTERS, TrD6)
  1249. genDef(Ks, KSPECIAL_REGISTERS, TrD7)
  1250. genDef(Ks, KSPECIAL_REGISTERS, SrMSR0)
  1251. genDef(Ks, KSPECIAL_REGISTERS, SrMSR1)
  1252. genDef(Ks, KSPECIAL_REGISTERS, SrMSR2)
  1253. genDef(Ks, KSPECIAL_REGISTERS, SrMSR3)
  1254. genDef(Ks, KSPECIAL_REGISTERS, SrMSR4)
  1255. genDef(Ks, KSPECIAL_REGISTERS, SrMSR5)
  1256. genDef(Ks, KSPECIAL_REGISTERS, SrMSR6)
  1257. genDef(Ks, KSPECIAL_REGISTERS, SrMSR7)
  1258. END_LIST
  1259. };
  1260. ASSERT_SAME(KTRAP_FRAME_LENGTH, KIA32_FRAME_LENGTH);