Recognizer for a valid Interrupt Gate segment descriptor
(ia32e-valid-interrupt-gates-segment-descriptor-p descriptor) → (mv * *)
Function:
(defun ia32e-valid-interrupt-gates-segment-descriptor-p (descriptor) (declare (type (unsigned-byte 128) descriptor)) (let ((__function__ 'ia32e-valid-interrupt-gates-segment-descriptor-p)) (declare (ignorable __function__)) (b* ((type (interrupt/trap-gate-descriptorbits->type descriptor)) ((when (not (equal type 14))) (mv nil (cons :invalid-type descriptor))) ((when (not (equal (interrupt/trap-gate-descriptorbits->s descriptor) 0))) (mv nil (cons :invalid-segment-type descriptor))) ((when (not (equal (interrupt/trap-gate-descriptorbits->p descriptor) 1))) (mv nil (cons :segment-not-present descriptor)))) (mv t 0))))