cris_defs_asm.h 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. #ifndef __cris_defs_asm_h
  2. #define __cris_defs_asm_h
  3. /*
  4. * This file is autogenerated from
  5. * file: ../../inst/crisp/doc/cris.r
  6. * id: cris.r,v 1.6 2004/05/05 07:41:12 perz Exp
  7. * last modfied: Mon Apr 11 16:06:39 2005
  8. *
  9. * by /n/asic/design/tools/rdesc/src/rdes2c -asm --outfile asm/cris_defs_asm.h ../../inst/crisp/doc/cris.r
  10. * id: $Id: cris_defs_asm.h,v 1.1 2005/04/24 18:31:04 starvik Exp $
  11. * Any changes here will be lost.
  12. *
  13. * -*- buffer-read-only: t -*-
  14. */
  15. #ifndef REG_FIELD
  16. #define REG_FIELD( scope, reg, field, value ) \
  17. REG_FIELD_X_( value, reg_##scope##_##reg##___##field##___lsb )
  18. #define REG_FIELD_X_( value, shift ) ((value) << shift)
  19. #endif
  20. #ifndef REG_STATE
  21. #define REG_STATE( scope, reg, field, symbolic_value ) \
  22. REG_STATE_X_( regk_##scope##_##symbolic_value, reg_##scope##_##reg##___##field##___lsb )
  23. #define REG_STATE_X_( k, shift ) (k << shift)
  24. #endif
  25. #ifndef REG_MASK
  26. #define REG_MASK( scope, reg, field ) \
  27. REG_MASK_X_( reg_##scope##_##reg##___##field##___width, reg_##scope##_##reg##___##field##___lsb )
  28. #define REG_MASK_X_( width, lsb ) (((1 << width)-1) << lsb)
  29. #endif
  30. #ifndef REG_LSB
  31. #define REG_LSB( scope, reg, field ) reg_##scope##_##reg##___##field##___lsb
  32. #endif
  33. #ifndef REG_BIT
  34. #define REG_BIT( scope, reg, field ) reg_##scope##_##reg##___##field##___bit
  35. #endif
  36. #ifndef REG_ADDR
  37. #define REG_ADDR( scope, inst, reg ) REG_ADDR_X_(inst, reg_##scope##_##reg##_offset)
  38. #define REG_ADDR_X_( inst, offs ) ((inst) + offs)
  39. #endif
  40. #ifndef REG_ADDR_VECT
  41. #define REG_ADDR_VECT( scope, inst, reg, index ) \
  42. REG_ADDR_VECT_X_(inst, reg_##scope##_##reg##_offset, index, \
  43. STRIDE_##scope##_##reg )
  44. #define REG_ADDR_VECT_X_( inst, offs, index, stride ) \
  45. ((inst) + offs + (index) * stride)
  46. #endif
  47. /* Register rw_gc_cfg, scope cris, type rw */
  48. #define reg_cris_rw_gc_cfg___ic___lsb 0
  49. #define reg_cris_rw_gc_cfg___ic___width 1
  50. #define reg_cris_rw_gc_cfg___ic___bit 0
  51. #define reg_cris_rw_gc_cfg___dc___lsb 1
  52. #define reg_cris_rw_gc_cfg___dc___width 1
  53. #define reg_cris_rw_gc_cfg___dc___bit 1
  54. #define reg_cris_rw_gc_cfg___im___lsb 2
  55. #define reg_cris_rw_gc_cfg___im___width 1
  56. #define reg_cris_rw_gc_cfg___im___bit 2
  57. #define reg_cris_rw_gc_cfg___dm___lsb 3
  58. #define reg_cris_rw_gc_cfg___dm___width 1
  59. #define reg_cris_rw_gc_cfg___dm___bit 3
  60. #define reg_cris_rw_gc_cfg___gb___lsb 4
  61. #define reg_cris_rw_gc_cfg___gb___width 1
  62. #define reg_cris_rw_gc_cfg___gb___bit 4
  63. #define reg_cris_rw_gc_cfg___gk___lsb 5
  64. #define reg_cris_rw_gc_cfg___gk___width 1
  65. #define reg_cris_rw_gc_cfg___gk___bit 5
  66. #define reg_cris_rw_gc_cfg___gp___lsb 6
  67. #define reg_cris_rw_gc_cfg___gp___width 1
  68. #define reg_cris_rw_gc_cfg___gp___bit 6
  69. #define reg_cris_rw_gc_cfg_offset 0
  70. /* Register rw_gc_ccs, scope cris, type rw */
  71. #define reg_cris_rw_gc_ccs_offset 4
  72. /* Register rw_gc_srs, scope cris, type rw */
  73. #define reg_cris_rw_gc_srs___srs___lsb 0
  74. #define reg_cris_rw_gc_srs___srs___width 8
  75. #define reg_cris_rw_gc_srs_offset 8
  76. /* Register rw_gc_nrp, scope cris, type rw */
  77. #define reg_cris_rw_gc_nrp_offset 12
  78. /* Register rw_gc_exs, scope cris, type rw */
  79. #define reg_cris_rw_gc_exs_offset 16
  80. /* Register rw_gc_eda, scope cris, type rw */
  81. #define reg_cris_rw_gc_eda_offset 20
  82. /* Register rw_gc_r0, scope cris, type rw */
  83. #define reg_cris_rw_gc_r0_offset 32
  84. /* Register rw_gc_r1, scope cris, type rw */
  85. #define reg_cris_rw_gc_r1_offset 36
  86. /* Register rw_gc_r2, scope cris, type rw */
  87. #define reg_cris_rw_gc_r2_offset 40
  88. /* Register rw_gc_r3, scope cris, type rw */
  89. #define reg_cris_rw_gc_r3_offset 44
  90. /* Constants */
  91. #define regk_cris_no 0x00000000
  92. #define regk_cris_rw_gc_cfg_default 0x00000000
  93. #define regk_cris_yes 0x00000001
  94. #endif /* __cris_defs_asm_h */