Why was SIGFPE used for integer arithmetic exceptions, such as division by zero, instead of creating a separate signal for integer arithmetic exceptions or naming the signal in the first place for arithmetic exceptions generally?
Why was SIGFPE used for integer arithmetic exceptions?
640 Views Asked by Eric Postpischil At
1
There are 1 best solutions below
Related Questions in UNIX
- Reading & Writing to the same file from terminal
- `df` command not capturing entire output in perl
- Why is it that when I pass certain directory names to `ls`, sometimes it does not list their contents?
- Detect Mouse Clicks; Terminate Program on Scroll Wheel Movement
- grep expression behaving weird (unix/mac) while reading a conf file
- Unix sub path creation and copy files
- Ignoring folders in The Silver Searcher `ag`
- struct nameidata-Linux Kernel Module
- telegraf service not able to retrieve data using the journalctl commands
- Order of options in Unix sed for editing files in-place
- Trying to echo line variable along with another variable inside a while read loop
- failed to handshake with xxx: authentication error?
- UDP socket client not able to receive data
- Invalid SCA token in unix
- How can I keep randomized UNIX timestamp in specific hour range in SQL?
Related Questions in POSIX
- Is it safe to assume 8-bit char on Linux and FreeBSD, based on POSIX?
- How many senders and receivers of a notification are possible in a POSIX message queue
- Does opendir() / FindFirstFile() get a snapshot of a directory?
- Differences in behavior of kill(pid, SIGINT) between Debian and Red Hat based distros
- select() always returns 0 Serial Port (UART) vxWorks
- some questions about posix_trace_* function
- In LDAP: Differentiating via OU or via attribute?
- recvmsg returns EAGAIN after select reports file descriptor is ready
- Can close of pipe's write end fail leaving reading process blocked?
- Why, on Linux (specifically Ubuntu 20.04 LTS), a POSIX shared memory object survives reboot and then suddenly belongs to the "root" user?
- file.tell() after a write is not correct in append mode?
- Map UNIX "nobody" and "nogroup" to Win32 Accounts/SIDs?
- POSIX Message Queue - "Message too long" on send
- Does the POSIX Standard really mean that a non-thread safe function can break the thread-safety of every other function?
- awk dot in regex doesn't match space
Related Questions in SIGFPE
- Compile a program with clang to ignore arithmetic errors (SIGFPE)
- SIGFP - But no division by 0 or by big number | MASM/UASM
- Why floating point error message is not printing on stderr?
- Is it possible to catch integer overflow exception in C (POSIX/Linux) via SIGFPE FPE_INTOVF?
- When I run this C++ code I got Runtime error 'SIGFPE' on Codechef. How to fix this problem?
- Why would clEnqueueNDRangeKernel crash with a floating-point exception?
- What is the difference between test FPE and trap FPE?
- Fortran 90 GDB signal SIGFPE, Arithmetic exception
- How to produce codes that always trigger signal SIGFPE (div by zero)?
- What is the difference between underflow and nan in C?
- SIGFPE, Arithmetic exception with well-defined division
- sqrtf() throws a domain error, even though I guard against negative numbers
- How to avoid floating point exceptions in unused SIMD lanes
- feenableexcept not permanent
- C++ setting floating point exception environment
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
IEEE Std 1003.1 Standard defines SIGFPE as:
And doesn't really mention floating point operations. Reasoning behind this is not clearly stated, but here's my take on it.
x86 FPU can operate on both integer and floating point data at the same time with instructions such as
FIDIV, thus it would be unclear whether dividing floating poitn data by integer zero would generate a floating or and integer point exception.Additionally, up to 80486 (which was released the same year as the ISO/ANSI C standard) x86 CPUs did not have floating point capabilities at all, floating point co-processor was a separate chip. Software floating point emulation could be used in place of the chip, but that used CPU's built in ALU (integer arithmetic-logical unit) which would throw integer exceptions.