Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/arch/arm/mm/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 983 B image not shown  

Quelle  abort-ev5t.S   Sprache: Sparc

 
/* SPDX-License-Identifier: GPL-2.0 */
#include <linux/linkage.h>
#include <asm/assembler.h>
#include "abort-macro.S"
/*
 * Function: v5t_early_abort
 *
 * Params  : r2 = pt_regs
 *    : r4 = aborted context pc
 *    : r5 = aborted context psr
 *
 * Returns : r4 - r11, r13 preserved
 *
 * Purpose : obtain information about current aborted instruction.
 * Note: we read user space.  This means we might cause a data
 * abort here if the I-TLB and D-TLB aren't seeing the same
 * picture.  Unfortunately, this does happen.  We live with it.
 */

 .align 5
ENTRY(v5t_early_abort)
 mrc p15, 0, r1, c5, c0, 0  @ get FSR
 mrc p15, 0, r0, c6, c0, 0  @ get FAR
 do_thumb_abort fsr=r1, pc=r4, psr=r5, tmp=r3
 ldreq r3, [r4]   @ read aborted ARM instruction
 uaccess_disable ip   @ disable user access
 bic r1, r1, #1 << 11  @ clear bits 11 of FSR
 teq_ldrd tmp=ip, insn=r3  @ insn was LDRD?
 beq do_DataAbort   @ yes
 tst r3, #1 << 20   @ check write
 orreq r1, r1, #1 << 11
 b do_DataAbort

Messung V0.5
C=94 H=100 G=96

¤ Dauer der Verarbeitung: 0.14 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.