	.file	"idt.cc"
	.section	.rodata.str1.8,"aMS",@progbits,1
	.align 8
.LC0:
	.string	"/home/bertrand/openvms/l4/pistachio/kernel/src/glue/v4-x86/idt.cc"
	.align 8
.LC1:
	.string	"Assertion index < IDT_SIZE failed in file %s, line %d (fn=%p)\n"
	.section	.init.system,"ax",@progbits
	.align 2
	.p2align 4,,15
	.globl	_ZN5idt_t9init_gateEmNS_6type_eEPFvvE
	.type	_ZN5idt_t9init_gateEmNS_6type_eEPFvvE, @function
_ZN5idt_t9init_gateEmNS_6type_eEPFvvE:
.LFB96:
	.cfi_startproc
	subq	$40, %rsp
	.cfi_def_cfa_offset 48
	cmpq	$255, %rsi
	movq	%rbx, 8(%rsp)
	movq	%rbp, 16(%rsp)
	.cfi_offset 3, -40
	.cfi_offset 6, -32
	movq	%rcx, %rbx
	movq	%r12, 24(%rsp)
	movq	%r13, 32(%rsp)
	.cfi_offset 12, -24
	.cfi_offset 13, -16
	movq	%rsi, %r12
	movq	%rdi, %r13
	movl	%edx, %ebp
	ja	.L9
.L2:
	cmpl	$1, %ebp
	je	.L5
	cmpl	$2, %ebp
	je	.L6
	testl	%ebp, %ebp
	.p2align 4,,3
	jne	.L1
	salq	$4, %r12
	movq	%rbx, %rax
	addq	%r13, %r12
	shrq	$16, %rax
	movw	%bx, (%r12)
	shrq	$32, %rbx
	movw	%ax, 6(%r12)
	movl	%ebx, 8(%r12)
	movw	$8, 2(%r12)
	movb	$-114, 5(%r12)
	movl	$0, 12(%r12)
	movb	$0, 4(%r12)
.L1:
	movq	8(%rsp), %rbx
	movq	16(%rsp), %rbp
	movq	24(%rsp), %r12
	movq	32(%rsp), %r13
	addq	$40, %rsp
	.cfi_remember_state
	.cfi_restore 13
	.cfi_restore 12
	.cfi_restore 6
	.cfi_restore 3
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,7
	.p2align 3
.L6:
	.cfi_restore_state
	salq	$4, %r12
	movq	%rbx, %rax
	addq	%r13, %r12
	shrq	$16, %rax
	movw	%bx, (%r12)
	shrq	$32, %rbx
	movw	%ax, 6(%r12)
	movl	%ebx, 8(%r12)
	movw	$8, 2(%r12)
	movb	$-113, 5(%r12)
	movl	$0, 12(%r12)
	movb	$0, 4(%r12)
	jmp	.L1
	.p2align 4,,7
	.p2align 3
.L5:
	salq	$4, %r12
	movq	%rbx, %rax
	addq	%r13, %r12
	shrq	$16, %rax
	movw	%bx, (%r12)
	shrq	$32, %rbx
	movw	%ax, 6(%r12)
	movl	%ebx, 8(%r12)
	movw	$8, 2(%r12)
	movb	$-18, 5(%r12)
	movl	$0, 12(%r12)
	movb	$0, 4(%r12)
	jmp	.L1
.L9:
	movq	40(%rsp), %rcx
	movl	$54, %edx
	movq	$.LC0, %rsi
	movq	$.LC1, %rdi
	xorl	%eax, %eax
	call	printf
	xorl	%eax, %eax
#APP
# 54 "/home/bertrand/openvms/l4/pistachio/kernel/src/glue/v4-x86/idt.cc" 1
	   int $3                  
   jmp 1f                  
   mov $2f, %rax             
.section .rodata           
2:.ascii "KD# assert"   
.byte 0                    
.previous                  
1:                         

# 0 "" 2
#NO_APP
	jmp	.L2
	.cfi_endproc
.LFE96:
	.size	_ZN5idt_t9init_gateEmNS_6type_eEPFvvE, .-_ZN5idt_t9init_gateEmNS_6type_eEPFvvE
	.text
	.align 2
	.p2align 4,,15
	.globl	_ZN5idt_t8add_gateEmNS_6type_eEPFvvE
	.type	_ZN5idt_t8add_gateEmNS_6type_eEPFvvE, @function
_ZN5idt_t8add_gateEmNS_6type_eEPFvvE:
.LFB97:
	.cfi_startproc
	subq	$40, %rsp
	.cfi_def_cfa_offset 48
	cmpq	$255, %rsi
	movq	%rbx, 8(%rsp)
	movq	%rbp, 16(%rsp)
	.cfi_offset 3, -40
	.cfi_offset 6, -32
	movq	%rcx, %rbx
	movq	%r12, 24(%rsp)
	movq	%r13, 32(%rsp)
	.cfi_offset 12, -24
	.cfi_offset 13, -16
	movq	%rsi, %r12
	movq	%rdi, %r13
	movl	%edx, %ebp
	ja	.L17
.L11:
	cmpl	$1, %ebp
	je	.L14
	cmpl	$2, %ebp
	je	.L15
	testl	%ebp, %ebp
	.p2align 4,,3
	jne	.L10
	salq	$4, %r12
	movq	%rbx, %rax
	addq	%r13, %r12
	shrq	$16, %rax
	movw	%bx, (%r12)
	shrq	$32, %rbx
	movw	%ax, 6(%r12)
	movl	%ebx, 8(%r12)
	movw	$8, 2(%r12)
	movb	$-114, 5(%r12)
	movl	$0, 12(%r12)
	movb	$0, 4(%r12)
.L10:
	movq	8(%rsp), %rbx
	movq	16(%rsp), %rbp
	movq	24(%rsp), %r12
	movq	32(%rsp), %r13
	addq	$40, %rsp
	.cfi_remember_state
	.cfi_restore 13
	.cfi_restore 12
	.cfi_restore 6
	.cfi_restore 3
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,7
	.p2align 3
.L15:
	.cfi_restore_state
	salq	$4, %r12
	movq	%rbx, %rax
	addq	%r13, %r12
	shrq	$16, %rax
	movw	%bx, (%r12)
	shrq	$32, %rbx
	movw	%ax, 6(%r12)
	movl	%ebx, 8(%r12)
	movw	$8, 2(%r12)
	movb	$-113, 5(%r12)
	movl	$0, 12(%r12)
	movb	$0, 4(%r12)
	jmp	.L10
	.p2align 4,,7
	.p2align 3
.L14:
	salq	$4, %r12
	movq	%rbx, %rax
	addq	%r13, %r12
	shrq	$16, %rax
	movw	%bx, (%r12)
	shrq	$32, %rbx
	movw	%ax, 6(%r12)
	movl	%ebx, 8(%r12)
	movw	$8, 2(%r12)
	movb	$-18, 5(%r12)
	movl	$0, 12(%r12)
	movb	$0, 4(%r12)
	jmp	.L10
.L17:
	movq	40(%rsp), %rcx
	movl	$72, %edx
	movq	$.LC0, %rsi
	movq	$.LC1, %rdi
	xorl	%eax, %eax
	call	printf
	xorl	%eax, %eax
#APP
# 72 "/home/bertrand/openvms/l4/pistachio/kernel/src/glue/v4-x86/idt.cc" 1
	   int $3                  
   jmp 1f                  
   mov $2f, %rax             
.section .rodata           
2:.ascii "KD# assert"   
.byte 0                    
.previous                  
1:                         

# 0 "" 2
#NO_APP
	jmp	.L11
	.cfi_endproc
.LFE97:
	.size	_ZN5idt_t8add_gateEmNS_6type_eEPFvvE, .-_ZN5idt_t8add_gateEmNS_6type_eEPFvvE
	.align 2
	.p2align 4,,15
	.globl	_ZN5idt_t8activateEv
	.type	_ZN5idt_t8activateEv, @function
_ZN5idt_t8activateEv:
.LFB98:
	.cfi_startproc
	subq	$16, %rsp
	.cfi_def_cfa_offset 24
	movq	%rdi, 8(%rsp)
	movw	$4096, 6(%rsp)
#APP
# 60 "/home/bertrand/openvms/l4/pistachio/kernel/src/arch/x86/segdesc.h" 1
	lidt 6(%rsp)

# 0 "" 2
#NO_APP
	addq	$16, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE98:
	.size	_ZN5idt_t8activateEv, .-_ZN5idt_t8activateEv
	.section	.init.cpu,"ax",@progbits
	.align 2
	.p2align 4,,15
	.globl	_ZN5idt_tC2Ev
	.type	_ZN5idt_tC2Ev, @function
_ZN5idt_tC2Ev:
.LFB100:
	.cfi_startproc
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	movq	%rdi, %r12
	pushq	%rbp
	.cfi_def_cfa_offset 24
	.cfi_offset 6, -24
	movl	$2043, %ebp
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset 3, -32
	xorl	%ebx, %ebx
	.p2align 4,,7
	.p2align 3
.L21:
	movq	%rbp, %rax
	xorl	%edx, %edx
	movq	%rbx, %rsi
	salq	$8, %rax
	movq	%r12, %rdi
	subq	$8, %rbp
	orb	$-24, %al
	movq	%rax, exc_catch_all(,%rbx,8)
	movslq	%ebx, %rax
	incq	%rbx
	leaq	exc_catch_all(,%rax,8), %rcx
	call	_ZN5idt_t8add_gateEmNS_6type_eEPFvvE
	cmpq	$256, %rbx
	jne	.L21
	movq	%r12, %rdi
	movq	$exc_debug, %rcx
	xorl	%edx, %edx
	movl	$1, %esi
	call	_ZN5idt_t9init_gateEmNS_6type_eEPFvvE
	movq	%r12, %rdi
	movq	$exc_nmi, %rcx
	xorl	%edx, %edx
	movl	$2, %esi
	call	_ZN5idt_t9init_gateEmNS_6type_eEPFvvE
	movq	%r12, %rdi
	movq	$exc_breakpoint, %rcx
	movl	$1, %edx
	movl	$3, %esi
	call	_ZN5idt_t9init_gateEmNS_6type_eEPFvvE
	movq	%r12, %rdi
	movq	$exc_invalid_opcode, %rcx
	xorl	%edx, %edx
	movl	$6, %esi
	call	_ZN5idt_t9init_gateEmNS_6type_eEPFvvE
	movq	%r12, %rdi
	movq	$exc_nomath_coproc, %rcx
	xorl	%edx, %edx
	movl	$7, %esi
	call	_ZN5idt_t9init_gateEmNS_6type_eEPFvvE
	movq	%r12, %rdi
	movq	$exc_gp, %rcx
	xorl	%edx, %edx
	movl	$13, %esi
	call	_ZN5idt_t9init_gateEmNS_6type_eEPFvvE
	popq	%rbx
	.cfi_restore 3
	.cfi_def_cfa_offset 24
	popq	%rbp
	.cfi_restore 6
	.cfi_def_cfa_offset 16
	movq	%r12, %rdi
	movq	$exc_pagefault, %rcx
	xorl	%edx, %edx
	popq	%r12
	.cfi_restore 12
	.cfi_def_cfa_offset 8
	movl	$14, %esi
	jmp	_ZN5idt_t9init_gateEmNS_6type_eEPFvvE
	.cfi_endproc
.LFE100:
	.size	_ZN5idt_tC2Ev, .-_ZN5idt_tC2Ev
	.globl	_ZN5idt_tC1Ev
	.set	_ZN5idt_tC1Ev,_ZN5idt_tC2Ev
	.section	.text.startup,"ax",@progbits
	.p2align 4,,15
	.type	_GLOBAL__sub_I.55532_idt, @function
_GLOBAL__sub_I.55532_idt:
.LFB103:
	.cfi_startproc
	movq	$idt, %rdi
	jmp	_ZN5idt_tC1Ev
	.cfi_endproc
.LFE103:
	.size	_GLOBAL__sub_I.55532_idt, .-_GLOBAL__sub_I.55532_idt
	.section	.init_array.55532,"aw"
	.align 8
	.quad	_GLOBAL__sub_I.55532_idt
	.globl	idt
	.section	.data.x86.idt,"aw",@progbits
	.align 32
	.type	idt, @object
	.size	idt, 4096
idt:
	.zero	4096
	.ident	"GCC: (Debian 4.7.3-4) 4.7.3"
	.section	.note.GNU-stack,"",@progbits
