.\" -*- coding: UTF-8 -*- .\" Copyright 2016, Eugene Syromyatnikov .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH PR_SET_FP_MODE 2const "8. Februar 2026" "Linux man\-pages 6.17" .SH BEZEICHNUNG PR_SET_FP_MODE \- Setzt den Fließkommamodus des aufrufenden Prozesses .SH BIBLIOTHEK Standard\-C\-Bibliothek (\fIlibc\fP,\ \fI\-lc\fP) .SH ÜBERSICHT .nf \fB#include \fP /* Definition der \fBPR_*\fP\-Konstanten */ \fB#include \fP .P \fBint prctl(PR_SET_FP_MODE, unsigned long \fP\fIModus\fP\fB);\fP .fi .SH BESCHREIBUNG Auf der MIPS\-Architektur kann der Anwendungsraum\-Code mittels einer ABI gebaut werden, die das Linken mit Code erlaubt, der strengere Anforderungen an die Fließkommazahlen (FP) hat. Beispielsweise kann Anwendungsraum\-Code mit Ziel der O32\-FPXX\-ABI gebaut und mit Code gelinkt werden, der für eine der restriktiveren FP32\- oder FP64\-ABIs gebaut wurde. Wird der restriktivere Code gelinkt, gilt für den Prozess insgesamt der restriktivere Fließkommazahlmodus. .P Da der Kernel nicht im voraus wissen kann, in welchem Modus der Prozess ausgeführt werden soll und da sich diese Anforderungen während der Lebensdauer des Prozesses ändern können, wird die Aktion \fBPR_SET_FP_MODE\fP bereitgestellt, um die Steuerung des Fließkommamodus vom Anwendungsraum zu erlauben. .P .\" https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking Das Argument \fIModus\fP ist eine Bitmaske, die den verwandten Fließkommamodus beschreibt: .TP \fBPR_FP_MODE_FR\fP Wenn dieses Bit \fInicht gesetzt\fP ist (der sogenannte Modus \fBFR=0\fP oder \fBFR0\fP), sind die 32 Fließkommaregister 32 bit weit und 64\-bit\-Register werden als Paar von Registern dargestellt (gerade und ungerade nummeriert, wobei das gerade nummerierte Register die niedrigeren 32 bit enthält und das ungerade nummerierte Register die höheren 32 bit enthält). .IP Wenn dieses Bit \fIgesetzt\fP ist (auf unterstützter Hardware), sind die 32 Fließkommaregister 64 bit weit (der sogenannte Modus \fBFR=1\fP oder \fBFR1\fP). Beachten Sie, dass moderne MIPS\-Implementierungen (MIPS R6 und neuer) nur den Modus \fBFR=1\fP unterstützen. .IP Anwendungen, die die O32\-FP32\-ABI verwenden, können nur betrieben werden, wenn dieses Bit \fInicht gesetzt\fP ist (\fBFR=0\fP; oder sie können wie unten beschrieben mit aktiviertem FRE verwandt werden). Anwendungen, die die O32\-FP64\-ABI (oder die O32\-FP64A\-ABI, die existiert, damit mit bestehendem FP32\-Code Ausführungen möglich sind, wie unten beschrieben) verwenden, können nur ausgeführt werden, wenn dieses Bit \fIgesetzt\fP (\fBFR=1\fP) ist. Anwendungen, die die O32\-FPXX\-ABI verwenden, können sowohl mit \fBFR=0\fP als auch mit \fBFR=1\fP betrieben werden. .TP \fBPR_FP_MODE_FRE\fP Aktiviert die Emulation des 32\-bit\-Fließkommazahlmodus. Wenn dieser Modus aktiviert wird, emuliert er 32\-bit\-Fließkommazahloperationen, indem eine reservierte Ausnahmebehandlungsanweisung bei jeder Anweisung ausgelöst wird, die 32\-bit\-Formate verwendet und der Kernel handhabt die Anweisung in Software. (Das Problem liegt in der Diskrepanz der Handhabung der ungerade nummerierten Register, die die hohen 32 bit der 64\-bit\-Register mit geraden Zahlen im Modus \fBFR=0\fP und den niedrigen 32\-bit\-Anteilen der ungerade nummerierten 64\-bit\-Register im Modus \fBFR=1\fP sind.) Die Aktivierung dieses Bits ist notwendig, wenn Code mit der O32\-FP32\-ABI zusammen mit Code betrieben werden soll, der mit der O32\-FPXX\- oder der O32\-FP64A\-ABI kompatibel ist (die den FPU\-Modus \fBFR=1\fP benötigen) oder wenn er auf neuerer Hardware (ab MIPS R6) ausgeführt werden soll, bei der die Unterstützung für den Modus \fBFR=0\fP fehlt, wenn ein Programm mit der FP32\-ABI verwandt wird. .IP Beachten Sie, dass dieser Modus nur sinnvoll ist, wenn sich die FPU im 64\-bit\-Modus (\fBFR=1\fP) befindet. .IP Beachten Sie, dass die Verwendung der Emulation einen merklichen Leistungseinbruch erzeugt und wenn möglich vermieden werden sollte. .P Im ABI N32/N64 wird der 64\-bit\-Fließkommazahlmodus immer verwandt, so dass die FPU\-Emulation nicht notwendig ist und die FPU immer im Modus \fBFR=1\fP betrieben wird. .P Diese Aktion ist hauptsächlich für die Verwendung durch den dynamischen Linker (\fBld.so\fP(8)) gedacht. .SH RÜCKGABEWERT Bei Erfolg wird 0 zurückgegeben. Bei einem Fehler wird \-1 zurückgegeben und \fIerrno\fP gesetzt, um den Fehler anzuzeigen. .SH FEHLER .TP \fBEOPNOTSUPP\fP \fIModus\fP hat einen ungültigen oder nicht unterstützten Wert. .SH STANDARDS Linux. Nur MIPS. .SH GESCHICHTE .\" commit 9791554b45a2acc28247f66a5fd5bbc212a6b8c8 Linux 4.0 (MIPS). .SH "SIEHE AUCH" \fBprctl\fP(2), \fBPR_GET_FP_MODE\fP(2const) .PP .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann erstellt. .PP Diese Übersetzung ist Freie Dokumentation; lesen Sie die .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. .PP Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer: .MT debian-l10n-german@lists.debian.org .ME .