diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2015-09-04 08:53:23 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2015-09-04 09:02:16 -0700 |
commit | f3d3789106cdd80c8f7a905f9cc42a32581c79df (patch) | |
tree | b737a44d54bb2d2e61118f441e1b03a48ddc5d7c /libjava/classpath/java/util/regex/PatternSyntaxException.java | |
parent | 9964a98388674fd4884943ff1ac12152af99fa7f (diff) | |
download | gcc-f3d3789106cdd80c8f7a905f9cc42a32581c79df.tar.gz |
Add __builtin_ia32_interrupt_data
The interrupt and exception handlers are called by x86 processors. X86
hardware pushes information onto stack and calls the handler. We need
a builtin function to access interrupt or exception data from the
interrupt and exception handlers which are void function without
arguments. This patch adds __builtin_ia32_interrupt_data so that
interrupt or exception data can be retrieved from the interrupt and
exception handlers.
gcc/
PR target/66960
* config/i386/i386.c (ix86_expand_prologue): Sorry if DRAP is
used and the address of interrupt/exception data has been
taken.
(ix86_builtins): Add IX86_BUILTIN_INTERRUPT_DATA.
(ix86_expand_builtin): Handle IX86_BUILTIN_INTERRUPT_DATA.
* config/i386/i386.h (machine_function): Add interrupt_data_taken.
* doc/extend.texi: Document __builtin_ia32_interrupt_data.
gcc/testsuite/
PR target/66960
* gcc.target/i386/pr66960-1.c: New test.
* gcc.target/i386/pr66960-2.c: Likewise.
* gcc.target/i386/pr66960-3.c: Likewise.
Diffstat (limited to 'libjava/classpath/java/util/regex/PatternSyntaxException.java')
0 files changed, 0 insertions, 0 deletions