int kvm_arch_handle_exit(CPUState *cs, struct kvm_run *run)

{

    S390CPU *cpu = S390_CPU(cs);

    int ret = 0;



    switch (run->exit_reason) {

        case KVM_EXIT_S390_SIEIC:

            ret = handle_intercept(cpu);

            break;

        case KVM_EXIT_S390_RESET:

            qemu_system_reset_request();

            break;

        case KVM_EXIT_S390_TSCH:

            ret = handle_tsch(cpu);

            break;

        case KVM_EXIT_DEBUG:

            ret = kvm_arch_handle_debug_exit(cpu);

            break;

        default:

            fprintf(stderr, "Unknown KVM exit: %d\n", run->exit_reason);

            break;

    }



    if (ret == 0) {

        ret = EXCP_INTERRUPT;

    }

    return ret;

}

int kvm_arch_handle_exit(CPUState *cs, struct kvm_run *run)

{

    S390CPU *cpu = S390_CPU(cs);

    int ret = 0;



    switch (run->exit_reason) {

        case KVM_EXIT_S390_SIEIC:

            ret = handle_intercept(cpu);

            break;

        case KVM_EXIT_S390_RESET:

            qemu_system_reset_request();

            break;

        case KVM_EXIT_S390_TSCH:

            ret = handle_tsch(cpu);

            break;

        case KVM_EXIT_DEBUG:

            ret = kvm_arch_handle_debug_exit(cpu);

            break;

        default:

            fprintf(stderr, "Unknown KVM exit: %d\n", run->exit_reason);

            break;

    }



    if (ret == 0) {

        ret = EXCP_INTERRUPT;

    }

    return ret;

}

int FUNC_0(CPUState *VAR_0, struct kvm_run *VAR_1)

{

    S390CPU *cpu = S390_CPU(VAR_0);

    int VAR_2 = 0;



    switch (VAR_1->exit_reason) {

        case KVM_EXIT_S390_SIEIC:

            VAR_2 = handle_intercept(cpu);

            break;

        case KVM_EXIT_S390_RESET:

            qemu_system_reset_request();

            break;

        case KVM_EXIT_S390_TSCH:

            VAR_2 = handle_tsch(cpu);

            break;

        case KVM_EXIT_DEBUG:

            VAR_2 = kvm_arch_handle_debug_exit(cpu);

            break;

        default:

            fprintf(stderr, "Unknown KVM exit: %d\n", VAR_1->exit_reason);

            break;

    }



    if (VAR_2 == 0) {

        VAR_2 = EXCP_INTERRUPT;

    }

    return VAR_2;

}

int FUNC_0(CPUState *VAR_0, struct kvm_run *VAR_1)
{ S390CPU *cpu = S390_CPU(VAR_0); int VAR_2 = 0; switch (VAR_1->exit_reason) { case KVM_EXIT_S390_SIEIC:
VAR_2 = handle_intercept(cpu); break; case KVM_EXIT_S390_RESET:
qemu_system_reset_request(); break; case KVM_EXIT_S390_TSCH:
VAR_2 = handle_tsch(cpu); break; case KVM_EXIT_DEBUG:
VAR_2 = kvm_arch_handle_debug_exit(cpu); break; default:
fprintf(stderr, "Unknown KVM exit: %d\n", VAR_1->exit_reason); break; } if (VAR_2 == 0) { VAR_2 = EXCP_INTERRUPT; } return VAR_2; }