cpu.c (cc974d5cd84ea60a3dad59752aea712f3d47f8ce) cpu.c (926c1b97895879b78ca14bca2831c08740ed1c38)
1/*
2 * QEMU ARM CPU
3 *
4 * Copyright (c) 2012 SUSE LINUX Products GmbH
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version 2

--- 466 unchanged lines hidden (view full) ---

475 /* Exceptions targeting a higher EL may not be maskable */
476 if (arm_feature(env, ARM_FEATURE_AARCH64)) {
477 /*
478 * 64-bit masking rules are simple: exceptions to EL3
479 * can't be masked, and exceptions to EL2 can only be
480 * masked from Secure state. The HCR and SCR settings
481 * don't affect the masking logic, only the interrupt routing.
482 */
1/*
2 * QEMU ARM CPU
3 *
4 * Copyright (c) 2012 SUSE LINUX Products GmbH
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version 2

--- 466 unchanged lines hidden (view full) ---

475 /* Exceptions targeting a higher EL may not be maskable */
476 if (arm_feature(env, ARM_FEATURE_AARCH64)) {
477 /*
478 * 64-bit masking rules are simple: exceptions to EL3
479 * can't be masked, and exceptions to EL2 can only be
480 * masked from Secure state. The HCR and SCR settings
481 * don't affect the masking logic, only the interrupt routing.
482 */
483 if (target_el == 3 || !secure) {
483 if (target_el == 3 || !secure || (env->cp15.scr_el3 & SCR_EEL2)) {
484 unmasked = true;
485 }
486 } else {
487 /*
488 * The old 32-bit-only environment has a more complicated
489 * masking setup. HCR and SCR bits not only affect interrupt
490 * routing but also change the behaviour of masking.
491 */

--- 1890 unchanged lines hidden ---
484 unmasked = true;
485 }
486 } else {
487 /*
488 * The old 32-bit-only environment has a more complicated
489 * masking setup. HCR and SCR bits not only affect interrupt
490 * routing but also change the behaviour of masking.
491 */

--- 1890 unchanged lines hidden ---