On 06/01/2016 08:19 AM, Koval, Julia wrote:
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 2d4f028..3e6a796 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -5266,6 +5266,79 @@ On x86-32 targets, the @code{stdcall} attribute causes
the compiler to
assume that the cal
On 04/28/2016 10:08 PM, Yulia Koval wrote:
Thanks,
Here is the patch. Is it ok?
Update TARGET_FUNCTION_INCOMING_ARG documentation
On x86, interrupt handlers are only called by processors which push
interrupt data onto stack at the address where the normal return address
is. Sin
@codesourcery.com]
Sent: Monday, May 30, 2016 10:37 PM
To: Koval, Julia ; gcc-patches@gcc.gnu.org
Cc: Lu, Hongjiu ; vaalfr...@gmail.com; ubiz...@gmail.com;
l...@redhat.com; Zamyatin, Igor
Subject: Re: [PATCH] x86 interrupt attribute patch [2/2]
On 05/30/2016 07:31 AM, Koval, Julia wrote:
> Hi,
On 05/30/2016 07:31 AM, Koval, Julia wrote:
Hi,
Here is the fixed version of the patch. Ok for trunk?
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 2d4f028..f4bd7dd 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -5266,6 +5266,96 @@ On x86-32 targets, the @code{stdca
; Zamyatin, Igor
Subject: Re: [PATCH] x86 interrupt attribute patch [2/2]
On 04/20/2016 07:42 AM, Koval, Julia wrote:
> diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index
> a5a8b23..82de5bf 100644
> --- a/gcc/doc/extend.texi
> +++ b/gcc/doc/extend.texi
> @@ -5263,6 +5263,
Gentle ping.
-Original Message-
From: Yulia Koval [mailto:vaalfr...@gmail.com]
Sent: Friday, April 29, 2016 7:09 AM
To: H.J. Lu
Cc: Jeff Law ; Koval, Julia ;
gcc-patches@gcc.gnu.org; Lu, Hongjiu ; ubiz...@gmail.com;
Zamyatin, Igor
Subject: Re: [PATCH] x86 interrupt attribute patch [1
On 04/20/2016 07:42 AM, Koval, Julia wrote:
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index a5a8b23..82de5bf 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -5263,6 +5263,83 @@ On x86-32 targets, the @code{stdcall} attribute causes
the compiler to
assume that the call
On Tue, May 10, 2016 at 4:54 PM, Koval, Julia wrote:
> Gentle ping.
>
> -Original Message-
> From: Koval, Julia
> Sent: Wednesday, April 20, 2016 4:42 PM
> To: gcc-patches@gcc.gnu.org
> Cc: Lu, Hongjiu ; vaalfr...@gmail.com;
> ubiz...@gmail.com; l...@redhat.com; Zamyatin, Igor
> Subject:
Gentle ping.
-Original Message-
From: Koval, Julia
Sent: Wednesday, April 20, 2016 4:42 PM
To: gcc-patches@gcc.gnu.org
Cc: Lu, Hongjiu ; vaalfr...@gmail.com; ubiz...@gmail.com;
l...@redhat.com; Zamyatin, Igor
Subject: [PATCH] x86 interrupt attribute patch [2/2]
Hi,
Here is the new vers
Thanks,
Here is the patch. Is it ok?
Update TARGET_FUNCTION_INCOMING_ARG documentation
On x86, interrupt handlers are only called by processors which push
interrupt data onto stack at the address where the normal return address
is. Since interrupt handlers must access interrupt d
On Thu, Apr 28, 2016 at 11:22 AM, Yulia Koval wrote:
> Thank you,
> Here is the repost.
>
> Update TARGET_FUNCTION_INCOMING_ARG documentation
>
> On x86, interrupt handlers are only called by processors which push
> interrupt data onto stack at the address where the normal return address
>
Thank you,
Here is the repost.
Update TARGET_FUNCTION_INCOMING_ARG documentation
On x86, interrupt handlers are only called by processors which push
interrupt data onto stack at the address where the normal return address
is. Since interrupt handlers must access interrupt data via po
On 04/20/2016 07:48 AM, Koval, Julia wrote:
Sorry, here is the right patch.
-Original Message-
From: Koval, Julia
Sent: Wednesday, April 20, 2016 4:42 PM
To: 'gcc-patches@gcc.gnu.org'
Cc: Lu, Hongjiu ; 'vaalfr...@gmail.com' ;
'ubiz...@gmail.com' ; 'l...@redhat.com' ; Zamyatin, Igor
S
Sorry, here is the right patch.
-Original Message-
From: Koval, Julia
Sent: Wednesday, April 20, 2016 4:42 PM
To: 'gcc-patches@gcc.gnu.org'
Cc: Lu, Hongjiu ; 'vaalfr...@gmail.com'
; 'ubiz...@gmail.com' ;
'l...@redhat.com' ; Zamyatin, Igor
Subject: [PATCH] x86 interrupt attribute patch
On 11/06/2015 03:19 PM, H.J. Lu wrote:
On Fri, Nov 6, 2015 at 7:31 AM, Uros Bizjak wrote:
On Fri, Nov 6, 2015 at 3:07 PM, Yulia Koval wrote:
Hi,
I updated and reposted the patch. Regtested/bootstraped on
x86_64/Linux and i686/Linux. Ok for trunk?
This version still emits insns from ix86_fu
On Fri, Nov 6, 2015 at 7:31 AM, Uros Bizjak wrote:
> On Fri, Nov 6, 2015 at 3:07 PM, Yulia Koval wrote:
>> Hi,
>>
>> I updated and reposted the patch. Regtested/bootstraped on
>> x86_64/Linux and i686/Linux. Ok for trunk?
>
> This version still emits insns from ix86_function_arg, so NAK.
>
> Uros
On Fri, Nov 6, 2015 at 3:07 PM, Yulia Koval wrote:
> Hi,
>
> I updated and reposted the patch. Regtested/bootstraped on
> x86_64/Linux and i686/Linux. Ok for trunk?
This version still emits insns from ix86_function_arg, so NAK.
Uros.
Hi,
I updated and reposted the patch. Regtested/bootstraped on
x86_64/Linux and i686/Linux. Ok for trunk?
Implement x86 interrupt attribute
The interrupt and exception handlers are called by x86 processors. X86
hardware pushes information onto stack and calls the handler. The
requirements are
Added fix for PR68037. Bootstraped/regtested on Linux/x86_64.
Implement x86 interrupt attribute
The interrupt and exception handlers are called by x86 processors. X86
hardware pushes information onto stack and calls the handler. The
requirements are
1. Both interrupt and except
The debug_info section for the interrupt function looks ok.
I tried to call it from assembler code to check it in gdb.
pushl $0x333 ;eflags
pushl $0x111 ;cs
pushl $0x222 ;eip
jmp foo ;interrupt function
#define uword_t unsigned int
struct interrup
Here is the current version of the patch with all the fixes.
Regtested\bootstraped it on 64 bit.
We need a pointer since interrupt handler will update data pointing
to by frame. Since error_code isn't at the normal location where the
parameter is passed on stack and frame isn't in a hard register
On Mon, Oct 5, 2015 at 1:17 AM, H.J. Lu wrote:
>> Looking a bit deeper into the code, it looks that we want to realign
>> the stack in the interrupt handler. Let's assume that interrupt
>> handler is calling some other function that saves SSE vector regs to
>> the stack. According
On Oct 4, 2015, at 11:15 AM, H.J. Lu wrote:
> Current stack alignment implementation requires at least
> one, maybe two, scratch registers:
So, I have some cases where I need scratch registers as well. I always save 2
registers and they go first (and restore last), so I can always use them.
On Sun, Oct 4, 2015 at 2:07 PM, Uros Bizjak wrote:
> On Sun, Oct 4, 2015 at 10:51 PM, H.J. Lu wrote:
>> On Sun, Oct 4, 2015 at 1:00 PM, Uros Bizjak wrote:
>>> On Sun, Oct 4, 2015 at 8:15 PM, H.J. Lu wrote:
>>>
> Looking a bit deeper into the code, it looks that we want to realign
> the
On Sun, Oct 4, 2015 at 10:51 PM, H.J. Lu wrote:
> On Sun, Oct 4, 2015 at 1:00 PM, Uros Bizjak wrote:
>> On Sun, Oct 4, 2015 at 8:15 PM, H.J. Lu wrote:
>>
Looking a bit deeper into the code, it looks that we want to realign
the stack in the interrupt handler. Let's assume that interrupt
On Sun, Oct 4, 2015 at 1:00 PM, Uros Bizjak wrote:
> On Sun, Oct 4, 2015 at 8:15 PM, H.J. Lu wrote:
>
>>> Looking a bit deeper into the code, it looks that we want to realign
>>> the stack in the interrupt handler. Let's assume that interrupt
>>> handler is calling some other function that saves
On Sun, Oct 4, 2015 at 8:15 PM, H.J. Lu wrote:
>> Looking a bit deeper into the code, it looks that we want to realign
>> the stack in the interrupt handler. Let's assume that interrupt
>> handler is calling some other function that saves SSE vector regs to
>> the stack. According to the x86 ABI,
On Sun, Oct 4, 2015 at 3:29 AM, Uros Bizjak wrote:
> On Sun, Oct 4, 2015 at 7:23 AM, Yulia Koval wrote:
>> Hi,
>>
>> Here is the last version of the patch. Regtested/bootstraped for
>> Linux/i686 and Linux/x86_64.
>>
>> Date: Fri, 4 Sep 2015 08:53:23 -0700
>> Subject: [PATCH] Implement x86 interr
On Sun, Oct 4, 2015 at 7:23 AM, Yulia Koval wrote:
> Hi,
>
> Here is the last version of the patch. Regtested/bootstraped for
> Linux/i686 and Linux/x86_64.
>
> Date: Fri, 4 Sep 2015 08:53:23 -0700
> Subject: [PATCH] Implement x86 interrupt attribute
>
> The interrupt and exception handlers are ca
Hi,
Here is the last version of the patch. Regtested/bootstraped for
Linux/i686 and Linux/x86_64.
Date: Fri, 4 Sep 2015 08:53:23 -0700
Subject: [PATCH] Implement x86 interrupt attribute
The interrupt and exception handlers are called by x86 processors. X86
hardware pushes information onto stack
Fixed it. Thanks.
On Fri, Oct 2, 2015 at 6:45 PM, Uros Bizjak wrote:
> On Fri, Oct 2, 2015 at 2:51 PM, Yulia Koval wrote:
>> Hi,
>> Here is a new patch. Added HJ's changes and review changes.
>>
>> Implement x86 interrupt attribute
>
> + incoming_stack_boundary
> + = (crtl->parm_stack_bound
On Fri, Oct 2, 2015 at 2:51 PM, Yulia Koval wrote:
> Hi,
> Here is a new patch. Added HJ's changes and review changes.
>
> Implement x86 interrupt attribute
+ incoming_stack_boundary
+ = (crtl->parm_stack_boundary > ix86_incoming_stack_boundary
+ ? crtl->parm_stack_boundary : ix86_incoming
Hi,
Here is a new patch. Added HJ's changes and review changes.
Implement x86 interrupt attribute
The interrupt and exception handlers are called by x86 processors. X86
hardware pushes information onto stack and calls the handler. The
requirements are
1. Both interrupt and exception handlers m
On Thu, Oct 1, 2015 at 6:08 PM, H.J. Lu wrote:
> On Thu, Oct 1, 2015 at 8:59 AM, Uros Bizjak wrote:
>> On Thu, Oct 1, 2015 at 2:24 AM, H.J. Lu wrote:
>>> On Wed, Sep 30, 2015 at 12:53 PM, Yulia Koval wrote:
Done.
>>>
>>> + /* If true, the current function is an interrupt service
>>>
On Thu, Oct 1, 2015 at 8:59 AM, Uros Bizjak wrote:
> On Thu, Oct 1, 2015 at 2:24 AM, H.J. Lu wrote:
>> On Wed, Sep 30, 2015 at 12:53 PM, Yulia Koval wrote:
>>> Done.
>>>
>>
>> + /* If true, the current function is an interrupt service
>> + routine as specified by the "interrupt" attribute.
On Thu, Oct 1, 2015 at 2:24 AM, H.J. Lu wrote:
> On Wed, Sep 30, 2015 at 12:53 PM, Yulia Koval wrote:
>> Done.
>>
>
> + /* If true, the current function is an interrupt service
> + routine as specified by the "interrupt" attribute. */
> + BOOL_BITFIELD is_interrupt : 1;
> +
> + /* If true
Ok, here is the patch.
The interrupt and exception handlers are called by x86 processors.
X86 hardware pushes information onto stack and calls the handler. The
requirements are
1. Both interrupt and exception handlers must use the 'IRET'
instruction, instead of the 'RET' instruction, to return f
On Wed, Sep 30, 2015 at 12:53 PM, Yulia Koval wrote:
> Done.
>
+ /* If true, the current function is an interrupt service
+ routine as specified by the "interrupt" attribute. */
+ BOOL_BITFIELD is_interrupt : 1;
+
+ /* If true, the current function is an exception service
+ routine as
On Wed, Sep 30, 2015 at 12:53 PM, Yulia Koval wrote:
> Done.
>
Please provide new ChangeLog entries since we removed and
added codes.
--
H.J.
Done.
Julia
On Wed, Sep 30, 2015 at 9:59 PM, H.J. Lu wrote:
> On Wed, Sep 30, 2015 at 5:36 AM, Yulia Koval wrote:
>> Hi,
>>
>> Thanks. I added all fixes to the patch, bootstrapped/regtested it on
>> Linux/x86_64. Linux/i686 in progress. Ok for trunk if testing passes
>> successfully?
>
> + /*
On Wed, Sep 30, 2015 at 5:36 AM, Yulia Koval wrote:
> Hi,
>
> Thanks. I added all fixes to the patch, bootstrapped/regtested it on
> Linux/x86_64. Linux/i686 in progress. Ok for trunk if testing passes
> successfully?
+ /* If true, the current function is an interrupt function as
+ specified
Tests for Linux/i686 passed successfully.
Julia
On Wed, Sep 30, 2015 at 3:48 PM, H.J. Lu wrote:
> On Wed, Sep 30, 2015 at 5:36 AM, Yulia Koval wrote:
>> Hi,
>>
>> Thanks. I added all fixes to the patch, bootstrapped/regtested it on
>> Linux/x86_64. Linux/i686 in progress. Ok for trunk if testin
On Wed, Sep 30, 2015 at 5:36 AM, Yulia Koval wrote:
> Hi,
>
> Thanks. I added all fixes to the patch, bootstrapped/regtested it on
> Linux/x86_64. Linux/i686 in progress. Ok for trunk if testing passes
> successfully?
>
We will work on the "no_caller_saved_registers" attribute, or
something like
Hi,
Thanks. I added all fixes to the patch, bootstrapped/regtested it on
Linux/x86_64. Linux/i686 in progress. Ok for trunk if testing passes
successfully?
Julia
On Wed, Sep 30, 2015 at 5:50 AM, H.J. Lu wrote:
> On Tue, Sep 29, 2015 at 5:02 PM, H.J. Lu wrote:
>> On Tue, Sep 29, 2015 at 4:53 PM
On Tue, Sep 29, 2015 at 5:02 PM, H.J. Lu wrote:
> On Tue, Sep 29, 2015 at 4:53 PM, Mike Stump wrote:
>> On Sep 29, 2015, at 3:10 PM, H.J. Lu wrote:
>>> On Tue, Sep 29, 2015 at 2:23 PM, Mike Stump wrote:
On Sep 29, 2015, at 1:59 PM, H.J. Lu wrote:
> commit f3a6675a8d69d810d2cad0c090a76
On Tue, Sep 29, 2015 at 5:23 PM, Mike Stump wrote:
> On Sep 29, 2015, at 3:40 PM, H.J. Lu wrote:
>> How about adding a "no_caller_saved_registers" attribute?
>
> You can save all call clobbered registers with 3 instructions? Really? I’m
> skeptical. Anyway, if you do this by turning off great
On Sep 29, 2015, at 3:40 PM, H.J. Lu wrote:
> How about adding a "no_caller_saved_registers" attribute?
You can save all call clobbered registers with 3 instructions? Really? I’m
skeptical. Anyway, if you do this by turning off great swaths of registers,
then, I guess that doesn’t surprise m
On Tue, Sep 29, 2015 at 4:53 PM, Mike Stump wrote:
> On Sep 29, 2015, at 3:10 PM, H.J. Lu wrote:
>> On Tue, Sep 29, 2015 at 2:23 PM, Mike Stump wrote:
>>> On Sep 29, 2015, at 1:59 PM, H.J. Lu wrote:
commit f3a6675a8d69d810d2cad0c090a762094a0a8622
Author: H.J. Lu
Date: Tue Sep
On Sep 29, 2015, at 3:10 PM, H.J. Lu wrote:
> On Tue, Sep 29, 2015 at 2:23 PM, Mike Stump wrote:
>> On Sep 29, 2015, at 1:59 PM, H.J. Lu wrote:
>>> commit f3a6675a8d69d810d2cad0c090a762094a0a8622
>>> Author: H.J. Lu
>>> Date: Tue Sep 29 13:47:18 2015 -0700
>>>
>>> Define EPILOGUE_USES in i
On Tue, Sep 29, 2015 at 3:19 PM, H.J. Lu wrote:
> On Tue, Sep 29, 2015 at 2:12 PM, Mike Stump wrote:
>> On Sep 29, 2015, at 1:16 PM, H.J. Lu wrote:
>>> On Tue, Sep 29, 2015 at 11:49 AM, Mike Stump wrote:
To be feature complete, it would be nice to have two styles of interrupt
functio
On Tue, Sep 29, 2015 at 2:12 PM, Mike Stump wrote:
> On Sep 29, 2015, at 1:16 PM, H.J. Lu wrote:
>> On Tue, Sep 29, 2015 at 11:49 AM, Mike Stump wrote:
>>> To be feature complete, it would be nice to have two styles of interrupt
>>> functions, one that returns with iret, and one that returns wi
On Tue, Sep 29, 2015 at 2:23 PM, Mike Stump wrote:
> On Sep 29, 2015, at 1:59 PM, H.J. Lu wrote:
>> commit f3a6675a8d69d810d2cad0c090a762094a0a8622
>> Author: H.J. Lu
>> Date: Tue Sep 29 13:47:18 2015 -0700
>>
>>Define EPILOGUE_USES in i386 so that all preserved registers are used
>>by
On Sep 29, 2015, at 2:23 PM, Mike Stump wrote:
> On Sep 29, 2015, at 1:59 PM, H.J. Lu wrote:
>> commit f3a6675a8d69d810d2cad0c090a762094a0a8622
>> Author: H.J. Lu
>> Date: Tue Sep 29 13:47:18 2015 -0700
>>
>> Define EPILOGUE_USES in i386
>> Please take a look.
Oh, and with that, I don’t t
On Sep 29, 2015, at 1:59 PM, H.J. Lu wrote:
> commit f3a6675a8d69d810d2cad0c090a762094a0a8622
> Author: H.J. Lu
> Date: Tue Sep 29 13:47:18 2015 -0700
>
>Define EPILOGUE_USES in i386 so that all preserved registers are used
>by the epilogue of interrupt handler. Don't explicitly mark
On Sep 29, 2015, at 1:16 PM, H.J. Lu wrote:
> On Tue, Sep 29, 2015 at 11:49 AM, Mike Stump wrote:
>> To be feature complete, it would be nice to have two styles of interrupt
>> functions, one that returns with iret, and one that returns with ret. The
>> point is that the user might want to cal
On Tue, Sep 29, 2015 at 1:16 PM, H.J. Lu wrote:
> On Tue, Sep 29, 2015 at 11:49 AM, Mike Stump wrote:
>> To be feature complete, it would be nice to have two styles of interrupt
>> functions, one that returns with iret, and one that returns with ret. The
>> point is that the user might want to
On Tue, Sep 29, 2015 at 11:49 AM, Mike Stump wrote:
> To be feature complete, it would be nice to have two styles of interrupt
> functions, one that returns with iret, and one that returns with ret. The
> point is that the user might want to call functions from a interrupt handler
> and not sa
To be feature complete, it would be nice to have two styles of interrupt
functions, one that returns with iret, and one that returns with ret. The
point is that the user might want to call functions from a interrupt handler
and not save and restore all call clobbered registers. By allowing a r
58 matches
Mail list logo