Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-24 Thread Ilya Enkovich
2013/10/24 Jeff Law l...@redhat.com: On 10/23/13 04:57, Ilya Enkovich wrote: 2013-10-23 Ilya Enkovich ilya.enkov...@intel.com * mode-classes.def (MODE_POINTER_BOUNDS): New. * tree.def (POINTER_BOUNDS_TYPE): New. * genmodes.c (complete_mode): Support

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA. 2/2 New registers and instructions

2013-10-24 Thread Ilya Enkovich
On 01 Oct 20:00, Uros Bizjak wrote: This is OK for mainline, on the condition that target independent part is approved and committed first. Thanks, Uros. Thanks for review! Attached is a version to be committed. The only difference from the previous one is BOUND_MODE renamed to

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA. 2/2 New registers and instructions

2013-10-24 Thread Uros Bizjak
On Thu, Oct 24, 2013 at 12:06 PM, Ilya Enkovich enkovich@gmail.com wrote: On 01 Oct 20:00, Uros Bizjak wrote: This is OK for mainline, on the condition that target independent part is approved and committed first. Thanks, Uros. Thanks for review! Attached is a version to be

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA. 2/2 New registers and instructions

2013-10-24 Thread Ilya Enkovich
2013/10/24 Uros Bizjak ubiz...@gmail.com: On Thu, Oct 24, 2013 at 12:06 PM, Ilya Enkovich enkovich@gmail.com wrote: On 01 Oct 20:00, Uros Bizjak wrote: This is OK for mainline, on the condition that target independent part is approved and committed first. Thanks, Uros. Thanks for

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA. 2/2 New registers and instructions

2013-10-24 Thread Uros Bizjak
On Thu, Oct 24, 2013 at 1:29 PM, Ilya Enkovich enkovich@gmail.com wrote: This is OK for mainline, on the condition that target independent part is approved and committed first. Thanks, Uros. Thanks for review! Attached is a version to be committed. The only difference from the

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-23 Thread Ilya Enkovich
eOn 22 Oct 22:55, Jeff Law wrote: On 09/17/13 02:18, Ilya Enkovich wrote: Hi, Here is a patch introducing new type and mode for bounds. It is a part of MPX ISA support patch (http://gcc.gnu.org/ml/gcc-patches/2013-07/msg01094.html). Bootstrapped and tested on linux-x86_64. Is it OK for

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-23 Thread Jeff Law
On 10/23/13 04:57, Ilya Enkovich wrote: 2013-10-23 Ilya Enkovich ilya.enkov...@intel.com * mode-classes.def (MODE_POINTER_BOUNDS): New. * tree.def (POINTER_BOUNDS_TYPE): New. * genmodes.c (complete_mode): Support MODE_POINTER_BOUNDS. (POINTER_BOUNDS_MODE):

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Ilya Enkovich
2013/10/21 Jeff Law l...@redhat.com: On 10/15/13 07:31, Ilya Enkovich wrote: Hey guys, could please someone look at this small patch? It blocks approved MPX ISA support on i386 target. diff --git a/gcc/doc/rtl.texi b/gcc/doc/rtl.texi index 1d62223..02b1214 100644 --- a/gcc/doc/rtl.texi

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Richard Henderson
On 10/21/2013 11:10 AM, Jeff Law wrote: So why are bounds distinct modes?Is there some inherent reason why bounds are something other than an integer mode (MODE_INT)? I suggested the distinct modes during the NDA phase. The primary reason for this is that MPX is designed to be kind of

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Jeff Law
On 10/22/13 13:12, Richard Henderson wrote: On 10/21/2013 11:10 AM, Jeff Law wrote: So why are bounds distinct modes?Is there some inherent reason why bounds are something other than an integer mode (MODE_INT)? I suggested the distinct modes during the NDA phase. The primary reason for

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Richard Henderson
On 10/22/2013 12:18 PM, Jeff Law wrote: The only way I could think to positively ensure that normal operations didn't get implemented via mpx insns is to describe the new patterns with distinct modes. Presumably once we have a distinct mode, we do the right magic in HARD_REGNO_MODE_OK and

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Jeff Law
On 10/22/13 13:31, Richard Henderson wrote: Yes, which is where I believe the new types come from as well. OK. Thanks for clarifying. I'm about to go offline for a few hours, but will start working my way through the MPX stuff. jeff

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Jeff Law
On 09/17/13 02:18, Ilya Enkovich wrote: Hi, Here is a patch introducing new type and mode for bounds. It is a part of MPX ISA support patch (http://gcc.gnu.org/ml/gcc-patches/2013-07/msg01094.html). Bootstrapped and tested on linux-x86_64. Is it OK for trunk? Thanks, Ilya -- gcc/

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-21 Thread Jeff Law
On 10/15/13 07:31, Ilya Enkovich wrote: Hey guys, could please someone look at this small patch? It blocks approved MPX ISA support on i386 target. diff --git a/gcc/doc/rtl.texi b/gcc/doc/rtl.texi index 1d62223..02b1214 100644 --- a/gcc/doc/rtl.texi +++ b/gcc/doc/rtl.texi @@ -1382,6

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-15 Thread Ilya Enkovich
Hey guys, could please someone look at this small patch? It blocks approved MPX ISA support on i386 target. Thanks, Ilya 2013/10/2 Ilya Enkovich enkovich@gmail.com: Ping 2013/9/17 Ilya Enkovich enkovich@gmail.com: Hi, Here is a patch introducing new type and mode for bounds. It is

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-02 Thread Ilya Enkovich
Ping 2013/9/17 Ilya Enkovich enkovich@gmail.com: Hi, Here is a patch introducing new type and mode for bounds. It is a part of MPX ISA support patch (http://gcc.gnu.org/ml/gcc-patches/2013-07/msg01094.html). Bootstrapped and tested on linux-x86_64. Is it OK for trunk? Thanks, Ilya

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA. 2/2 New registers and instructions

2013-10-01 Thread Ilya Enkovich
On 26 Sep 23:12, Uros Bizjak wrote: On Tue, Sep 17, 2013 at 10:41 AM, Ilya Enkovich enkovich@gmail.com wrote: The x86 part looks mostly OK (I have a couple of comments bellow), but please first get target-independent changes reviewed and committed. Do you mean I should move

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA. 2/2 New registers and instructions

2013-10-01 Thread Uros Bizjak
On Tue, Oct 1, 2013 at 9:41 AM, Ilya Enkovich enkovich@gmail.com wrote: The x86 part looks mostly OK (I have a couple of comments bellow), but please first get target-independent changes reviewed and committed. Do you mean I should move bound type and mode declaration into a

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA. 2/2 New registers and instructions

2013-09-26 Thread Uros Bizjak
On Tue, Sep 17, 2013 at 10:41 AM, Ilya Enkovich enkovich@gmail.com wrote: The x86 part looks mostly OK (I have a couple of comments bellow), but please first get target-independent changes reviewed and committed. Do you mean I should move bound type and mode declaration into a

[PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-09-17 Thread Ilya Enkovich
Hi, Here is a patch introducing new type and mode for bounds. It is a part of MPX ISA support patch (http://gcc.gnu.org/ml/gcc-patches/2013-07/msg01094.html). Bootstrapped and tested on linux-x86_64. Is it OK for trunk? Thanks, Ilya -- gcc/ 2013-09-16 Ilya Enkovich ilya.enkov...@intel.com

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA. 2/2 New registers and instructions

2013-09-17 Thread Ilya Enkovich
On 16 Sep 11:24, Uros Bizjak wrote: On Fri, Sep 13, 2013 at 12:18 PM, Ilya Enkovich enkovich@gmail.com wrote: 2013/9/11 Uros Bizjak ubiz...@gmail.com: Hi Uros, Thanks a lot for the review! The x86 part looks mostly OK (I have a couple of comments bellow), but please first

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-09-16 Thread Uros Bizjak
On Fri, Sep 13, 2013 at 4:36 PM, H.J. Lu hjl.to...@gmail.com wrote: Did you check the above with x32, where Pmode != word_mode on x86_64? The inner UNSPEC will be generated in SImode, but the matching pattern +(define_insn *mode_mk + [(set (match_operand:BND 0 register_operand =B) +

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-09-16 Thread Uros Bizjak
On Fri, Sep 13, 2013 at 12:18 PM, Ilya Enkovich enkovich@gmail.com wrote: 2013/9/11 Uros Bizjak ubiz...@gmail.com: On Tue, Sep 10, 2013 at 1:38 PM, Ilya Enkovich enkovich@gmail.com wrote: Ping^4 Could please someone look at this patch? It is mostly i386 target specific and is basic

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-09-13 Thread Ilya Enkovich
2013/9/11 Uros Bizjak ubiz...@gmail.com: On Tue, Sep 10, 2013 at 1:38 PM, Ilya Enkovich enkovich@gmail.com wrote: Ping^4 Could please someone look at this patch? It is mostly i386 target specific and is basic for further MPX based features. Thanks, Ilya 2013/9/2 Ilya Enkovich

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-09-13 Thread H.J. Lu
On Fri, Sep 13, 2013 at 3:18 AM, Ilya Enkovich enkovich@gmail.com wrote: Did you check the above with x32, where Pmode != word_mode on x86_64? The inner UNSPEC will be generated in SImode, but the matching pattern +(define_insn *mode_mk + [(set (match_operand:BND 0 register_operand =B)

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-09-11 Thread Uros Bizjak
On Tue, Sep 10, 2013 at 1:38 PM, Ilya Enkovich enkovich@gmail.com wrote: Ping^4 Could please someone look at this patch? It is mostly i386 target specific and is basic for further MPX based features. Thanks, Ilya 2013/9/2 Ilya Enkovich enkovich@gmail.com: Ping^3 Attached is the

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-09-10 Thread Ilya Enkovich
Ping^4 Could please someone look at this patch? It is mostly i386 target specific and is basic for further MPX based features. Thanks, Ilya 2013/9/2 Ilya Enkovich enkovich@gmail.com: Ping^3 Attached is the same patch but against the current trunk. 2013/8/26 Ilya Enkovich

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-08-26 Thread Ilya Enkovich
Ping 2013/8/19 Ilya Enkovich enkovich@gmail.com: Ping 2013/8/12 Ilya Enkovich enkovich@gmail.com: 2013/8/10 Joseph S. Myers jos...@codesourcery.com: On Mon, 29 Jul 2013, Ilya Enkovich wrote: Hi, Here is updated version of the patch. I removed redundant mode_for_bound, added

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-08-19 Thread Ilya Enkovich
Ping 2013/8/12 Ilya Enkovich enkovich@gmail.com: 2013/8/10 Joseph S. Myers jos...@codesourcery.com: On Mon, 29 Jul 2013, Ilya Enkovich wrote: Hi, Here is updated version of the patch. I removed redundant mode_for_bound, added comments to BOUND_TYPE and added -mmpx option. I also fixed

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-08-09 Thread Ilya Enkovich
2013/8/8 Joseph S. Myers jos...@codesourcery.com: On Thu, 8 Aug 2013, Ilya Enkovich wrote: That is not a big issue to rename generic names. But I'm just still trying to choose proper names. I looked into -fbounds-check but its description already mention C/C++ and its semantics differs

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-08-09 Thread Joseph S. Myers
On Mon, 29 Jul 2013, Ilya Enkovich wrote: Hi, Here is updated version of the patch. I removed redundant mode_for_bound, added comments to BOUND_TYPE and added -mmpx option. I also fixed bndmk/bndldx/bndstx constraints to avoid incorrect register allocation (created two new constraints for

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-08-08 Thread Ilya Enkovich
2013/8/8 Joseph S. Myers jos...@codesourcery.com: On Fri, 2 Aug 2013, Ilya Enkovich wrote: Hi All, I've updated MPX Wiki page (http://gcc.gnu.org/wiki/Intel%20MPX%20support%20in%20the%20GCC%20compiler). I added instrumentation description, programming model description, differences with

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-08-08 Thread Ilya Enkovich
2013/8/8 Ilya Enkovich enkovich@gmail.com: 2013/8/8 Joseph S. Myers jos...@codesourcery.com: On Fri, 2 Aug 2013, Ilya Enkovich wrote: Hi All, I've updated MPX Wiki page (http://gcc.gnu.org/wiki/Intel%20MPX%20support%20in%20the%20GCC%20compiler). I added instrumentation description,

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-08-08 Thread Joseph S. Myers
On Thu, 8 Aug 2013, Ilya Enkovich wrote: That is not a big issue to rename generic names. But I'm just still trying to choose proper names. I looked into -fbounds-check but its description already mention C/C++ and its semantics differs from what new instrumentation does. I consider using

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-08-07 Thread Joseph S. Myers
On Fri, 2 Aug 2013, Ilya Enkovich wrote: Hi All, I've updated MPX Wiki page (http://gcc.gnu.org/wiki/Intel%20MPX%20support%20in%20the%20GCC%20compiler). I added instrumentation description, programming model description, differences with other checkers, implementation details. Thanks. As

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-08-02 Thread Ilya Enkovich
Hi All, I've updated MPX Wiki page (http://gcc.gnu.org/wiki/Intel%20MPX%20support%20in%20the%20GCC%20compiler). I added instrumentation description, programming model description, differences with other checkers, implementation details. What about the first patch? Should I post next patches in

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-07-25 Thread Ilya Enkovich
2013/7/25 Joseph S. Myers jos...@codesourcery.com: On Wed, 24 Jul 2013, Ilya Enkovich wrote: Well, this patch does not introduce any changes on user-visible level. It just adds MPX instructions support to i386 target. Usually each new x86 instruction has corresponding builtin function and

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-07-25 Thread Joseph S. Myers
On Thu, 25 Jul 2013, Ilya Enkovich wrote: Usually also new instructions have a -m option to enable them, but you don't have that here either. I realise the instructions are NOPs on processors not supporting them (all processors not supporting them?), but given that the availability of

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-07-24 Thread Ilya Enkovich
2013/7/24 Joseph S. Myers jos...@codesourcery.com: On Wed, 24 Jul 2013, Ilya Enkovich wrote: Here is a patch which adds support for new instructions from Intel Memory Protection Extensions (MPX) ISA [1] This patch introduces bound type, modes, registers and all MPX instructions. Control

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-07-24 Thread Joseph S. Myers
On Wed, 24 Jul 2013, Ilya Enkovich wrote: Well, this patch does not introduce any changes on user-visible level. It just adds MPX instructions support to i386 target. Usually each new x86 instruction has corresponding builtin function and therefore is provided with a testcase. But MPX