summaryrefslogtreecommitdiff
path: root/DuetPkg/CpuDxe
diff options
context:
space:
mode:
authorqhuang8 <qhuang8@6f19259b-4bc3-4df7-8a09-765794883524>2009-08-21 03:20:20 +0000
committerqhuang8 <qhuang8@6f19259b-4bc3-4df7-8a09-765794883524>2009-08-21 03:20:20 +0000
commit208628f805ce9a19f29132bc28188d6ef4f742a6 (patch)
treec88c92e4b5f103ef7326c3511f8f977f0fd7c498 /DuetPkg/CpuDxe
parentb29a823d91ac4d8abd87e58172e32d7b0b43be8d (diff)
downloadedk2-platforms-208628f805ce9a19f29132bc28188d6ef4f742a6.tar.xz
Remove .rept directive to improve portability.
we might have to replace them with copies. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9171 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'DuetPkg/CpuDxe')
-rw-r--r--DuetPkg/CpuDxe/Ia32/CpuInterrupt.S142
-rwxr-xr-xDuetPkg/CpuDxe/X64/CpuInterrupt.S142
2 files changed, 276 insertions, 8 deletions
diff --git a/DuetPkg/CpuDxe/Ia32/CpuInterrupt.S b/DuetPkg/CpuDxe/Ia32/CpuInterrupt.S
index ae44efca78..baf0ba35e6 100644
--- a/DuetPkg/CpuDxe/Ia32/CpuInterrupt.S
+++ b/DuetPkg/CpuDxe/Ia32/CpuInterrupt.S
@@ -198,13 +198,80 @@ INT19:
JmpCommonIdtEntry
INTUnknown:
- .rept (32 - 20)
+ # The following segment repeats (32 - 20) times:
+ # No. 1
pushl $0x0 # push error code place holder on the stack
# push xxh # push vector number
.byte 0x6a
.byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
JmpCommonIdtEntry
- .endr
+ # No. 2
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 3
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 4
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 5
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 6
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 7
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 8
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 9
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 10
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 11
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 12
+ pushl $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+
ASM_GLOBAL ASM_PFX(SystemTimerHandler)
ASM_PFX(SystemTimerHandler):
@@ -682,13 +749,80 @@ SIMD_EXCEPTION_SEL = .-IDT_BASE
.byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
.short 0 # offset 31:16
- .rept (32 - 20)
+ # The following segment repeats (32 - 20) times:
+ # No. 1
.short 0 # offset 15:0
.short SYS_CODE_SEL # selector 15:0
.byte 0 # 0 for interrupt gate
.byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
.short 0 # offset 31:16
- .endr
+ # No. 2
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 3
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 4
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 5
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 6
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 7
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 8
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 9
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 10
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 11
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 12
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+
# 72 unspecified descriptors
.fill 72 * 8, 1, 0
diff --git a/DuetPkg/CpuDxe/X64/CpuInterrupt.S b/DuetPkg/CpuDxe/X64/CpuInterrupt.S
index 4fdc3d3e28..61de8e8e19 100755
--- a/DuetPkg/CpuDxe/X64/CpuInterrupt.S
+++ b/DuetPkg/CpuDxe/X64/CpuInterrupt.S
@@ -203,13 +203,80 @@ INT19:
JmpCommonIdtEntry
INTUnknown:
- .rept (32 - 20)
+ # The following segment repeats (32 - 20) times:
+ # No. 1
push $0x0 # push error code place holder on the stack
# push xxh # push vector number
.byte 0x6a
.byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
JmpCommonIdtEntry
- .endr
+ # No. 2
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 3
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 4
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 5
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 6
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 7
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 8
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 9
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 10
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 11
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+ # No. 12
+ push $0x0 # push error code place holder on the stack
+# push xxh # push vector number
+ .byte 0x6a
+ .byte ( . - INTUnknown - 3 ) / 9 + 20 # vector number
+ JmpCommonIdtEntry
+
ASM_GLOBAL ASM_PFX(SystemTimerHandler)
ASM_PFX(SystemTimerHandler):
@@ -717,13 +784,80 @@ SIMD_EXCEPTION_SEL = .-IDT_BASE
.byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
.short 0 # offset 31:16
- .rept (32 - 20)
+ # The following segment repeats (32 - 20) times:
+ # No. 1
.short 0 # offset 15:0
.short SYS_CODE_SEL # selector 15:0
.byte 0 # 0 for interrupt gate
.byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
.short 0 # offset 31:16
- .endr
+ # No. 2
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 3
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 4
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 5
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 6
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 7
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 8
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 9
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 10
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 11
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+ # No. 12
+ .short 0 # offset 15:0
+ .short SYS_CODE_SEL # selector 15:0
+ .byte 0 # 0 for interrupt gate
+ .byte 0x0e | 0x80 # (10001110)type = 386 interrupt gate, present
+ .short 0 # offset 31:16
+
# 72 unspecified descriptors
.fill 72 * 8, 1, 0