Re: [PATCH] driver: Also prune joined switches with negation

2019-09-24 Thread Matt Turner
On Tue, Sep 24, 2019 at 1:24 AM Kyrill Tkachov wrote: > > Hi Matt, > > On 9/24/19 5:04 AM, Matt Turner wrote: > > When -march=native is passed to host_detect_local_cpu to the backend, > > it overrides all command lines after it. That means > > > &

[PATCH] driver: Also prune joined switches with negation

2019-09-24 Thread Matt Turner
When -march=native is passed to host_detect_local_cpu to the backend, it overrides all command lines after it. That means $ gcc -march=native -march=armv8-a is treated as $ gcc -march=armv8-a -march=native Prune joined switches with Negative and RejectNegative to allow -march=armv8-a to

[PATCH] driver: Also prune joined switches with negation

2019-09-23 Thread Matt Turner
When -march=native is passed to host_detect_local_cpu to the backend, it overrides all command lines after it. That means $ gcc -march=native -march=armv8-a is treated as $ gcc -march=armv8-a -march=native Prune joined switches with Negative and RejectNegative to allow -march=armv8-a to

Re: [PATCH 1/2] i386: Consider Kaby Lake to be equivalent to Skylake

2017-06-22 Thread Matt Turner
On Sun, Jun 18, 2017 at 10:56 AM, Uros Bizjak <ubiz...@gmail.com> wrote: > On Fri, Jun 16, 2017 at 11:42 PM, Matt Turner <matts...@gmail.com> wrote: >> Currently -march=native selects -march=broadwell on Kaby Lake systems, >> since its model numbers are missing from the

[PATCH 2/2] i386: Assume Skylake for unknown models with clflushopt

2017-06-16 Thread Matt Turner
gcc/ * config/i386/driver-i386.c (host_detect_local_cpu): Assume skylake for unknown models with clflushopt. --- gcc/config/i386/driver-i386.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gcc/config/i386/driver-i386.c b/gcc/config/i386/driver-i386.c index

[PATCH 1/2] i386: Consider Kaby Lake to be equivalent to Skylake

2017-06-16 Thread Matt Turner
Currently -march=native selects -march=broadwell on Kaby Lake systems, since its model numbers are missing from the switch statement. It falls back to the default case and chooses -march=broadwell because of the presence of the ADX instruction set. gcc/ * config/i386/driver-i386.c

[PATCH] mips: Document r4700

2013-02-22 Thread Matt Turner
2013-02-22 Matt Turner matts...@gmail.com gcc/ * doc/invoke.texi: Document r4700. --- gcc/doc/invoke.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 7d96467..63eb6a6 100644 --- a/gcc/doc/invoke.texi +++ b

Re: [PATCH ARM iWMMXt 0/5] Improve iWMMXt support

2013-01-27 Thread Matt Turner
On Tue, Jun 26, 2012 at 7:56 AM, nick clifton ni...@redhat.com wrote: Hi Matt, There's also a trivial documentation fix: [PATCH 1/2] doc: Correct __builtin_arm_tinsr prototype documentation and a test to exercise the intrinsics: [PATCH 2/2] arm: add iwMMXt mmx-2.c test These have both

Re: [PATCH ARM iWMMXt 0/5] Improve iWMMXt support

2012-06-27 Thread Matt Turner
On Tue, Jun 26, 2012 at 10:56 AM, nick clifton ni...@redhat.com wrote: Hi Matt, There's also a trivial documentation fix: [PATCH 1/2] doc: Correct __builtin_arm_tinsr prototype documentation and a test to exercise the intrinsics: [PATCH 2/2] arm: add iwMMXt mmx-2.c test These have

Re: [PATCH ARM iWMMXt 0/5] Improve iWMMXt support

2012-06-13 Thread Matt Turner
On Wed, Jun 13, 2012 at 3:26 AM, nick clifton ni...@redhat.com wrote: Hi Matt, Hi Xinyu, This series was written by Marvell and sent by Xinyu Qix...@marvell.com a number of times in the last year. Sorry for the long delay in reviewing these patches.  Overall they were fine, with only a

Re: [PATCH 1/2] mips: Add R4600 scheduling support for imul and idiv

2012-05-31 Thread Matt Turner
On Thu, May 31, 2012 at 5:35 PM, Richard Sandiford rdsandif...@googlemail.com wrote: Matt Turner matts...@gmail.com writes: On Sat, Feb 25, 2012 at 3:11 AM, Richard Sandiford rdsandif...@googlemail.com wrote: Matt Turner matts...@gmail.com writes: The r4600_imul and r4600_idiv reservations

[PATCH 2/2] mips: Add R4700 scheduling support

2012-05-31 Thread Matt Turner
The R4700 is identical to the R4600 except for the integer and floating-point multiplication costs. See page 4 of http://datasheets.chipdb.org/IDT/MIPS/79RV4700.pdf 2012-03-24 Matt Turner matts...@gmail.com gcc/ * config/mips/4600.md (r4700_imul_si): New

Re: [PATCH 2/2] arm: add iwMMXt mmx-2.c test

2012-05-28 Thread Matt Turner
On Thu, Apr 5, 2012 at 4:53 AM, Ramana Radhakrishnan ramana.radhakrish...@linaro.org wrote: On 4 April 2012 19:35, Matt Turner matts...@gmail.com wrote:  gcc/testsuite/gcc.target/arm/mmx-2.c |  158 ++  1 files changed, 158 insertions(+), 0 deletions(-)  create

Re: [PATCH 1/2] mips: Add R4600 scheduling support for imul and idiv

2012-05-28 Thread Matt Turner
On Sat, Feb 25, 2012 at 3:11 AM, Richard Sandiford rdsandif...@googlemail.com wrote: Matt Turner matts...@gmail.com writes: The r4600_imul and r4600_idiv reservations were correct for si, but there were no *_di reservations. See page 4 of http://www.sgistuff.net/hardware/other/documents

Re: [PATCH] alpha: add bypasses for fmul/fadd/fcmov - fst/ftoi

2012-05-28 Thread Matt Turner
On Fri, Feb 24, 2012 at 10:53 PM, Matt Turner matts...@gmail.com wrote: See section 2.5.3 (page 28) of http://download.majix.org/dec/comp_guide_v2.pdf 2012-02-24  Matt Turner  matts...@gmail.com        * config/alpha/ev6.md: (define_bypass ev6_fmul,ev6_fadd): New.        (define_bypass

Re: [PATCH] arm: add _mm_empty to mmintrin.h for source compatibility

2012-05-28 Thread Matt Turner
On Tue, Feb 28, 2012 at 7:13 PM, Ramana Radhakrishnan ramana.radhakrish...@linaro.org wrote: On Fri, Feb 24, 2012 at 10:53:35PM -0500, Matt Turner wrote: The x86/amd64 mmintrin.h provides the _mm_empty intrinsic for the 'emms' MMX instruction. Although ARM does not need such an instruction, we

Re: [PATCH] arm: Fix iwmmxt shift and logical intrinsics (PR 35294).

2012-05-28 Thread Matt Turner
On Fri, Feb 24, 2012 at 10:53 PM, Matt Turner matts...@gmail.com wrote: PR 36798 and 36966 are duplicates. 2012-02-24  Matt Turner  matts...@gmail.com        PR target/35294        * config/arm/arm.c (arm_expand_builtin): Wire up missing        intrinsics. ---  gcc/config/arm/arm.c |   62

Re: [PATCH 1/2] doc: Correct __builtin_arm_tinsr prototype documentation

2012-05-28 Thread Matt Turner
On Wed, Apr 4, 2012 at 2:34 PM, Matt Turner matts...@gmail.com wrote: 2012-04-04  Matt Turner  matts...@gmail.com        gcc/        * doc/extend.texi (__builtin_arm_tinsrb): Add missing second        parameter.        (__builtin_arm_tinsrh): Likewise.        (__builtin_arm_tinsrw

[PATCH ARM iWMMXt 0/5] Improve iWMMXt support

2012-05-28 Thread Matt Turner
. For 4.7 and 4.6 please consider committing my patch [PATCH] arm: Fix iwmmxt shift and logical intrinsics (PR 35294). which only fixes the logical and shift intrinsics. Thanks, Matt Turner

[PATCH ARM iWMMXt 5/5] pipeline description

2012-05-28 Thread Matt Turner
From: Xinyu Qi x...@marvell.com gcc/ * config/arm/t-arm (MD_INCLUDES): Add marvell-f-iwmmxt.md. * config/arm/marvell-f-iwmmxt.md: New file. * config/arm/arm.md (marvell-f-iwmmxt.md): Include. --- gcc/config/arm/arm.md |1 +

[PATCH ARM iWMMXt 1/5] ARM code generic change

2012-05-28 Thread Matt Turner
From: Xinyu Qi x...@marvell.com gcc/ * config/arm/arm.c (FL_IWMMXT2): New define. (arm_arch_iwmmxt2): New variable. (arm_option_override): Enable use of iWMMXt with VFP. Disable use of iWMMXt with NEON. Disable use of iWMMXt under Thumb mode. Set

[PATCH ARM iWMMXt 2/5] intrinsic head file change

2012-05-28 Thread Matt Turner
From: Xinyu Qi x...@marvell.com gcc/ * config/arm/mmintrin.h: Use __IWMMXT__ to enable iWMMXt intrinsics. Use __IWMMXT2__ to enable iWMMXt2 intrinsics. Use C name-mangling for intrinsics. (__v8qi): Redefine. (_mm_cvtsi32_si64, _mm_andnot_si64,

[PATCH ARM iWMMXt 3/5] built in define and expand

2012-05-28 Thread Matt Turner
From: Xinyu Qi x...@marvell.com gcc/ * config/arm/arm.c (enum arm_builtins): Revise built-in fcode. (IWMMXT2_BUILTIN): New define. (IWMMXT2_BUILTIN2): Likewise. (iwmmx2_mbuiltin): Likewise. (builtin_description bdesc_2arg): Revise built in

Re: [PING] iwMMXt patches

2012-05-02 Thread Matt Turner
On Tue, Apr 17, 2012 at 4:17 PM, Matt Turner matts...@gmail.com wrote: Are these patches ready to go in? It looks like they were ack'd. http://gcc.gnu.org/ml/gcc-patches/2011-10/msg01815.html http://gcc.gnu.org/ml/gcc-patches/2011-10/msg01817.html http://gcc.gnu.org/ml/gcc-patches/2011-10

[PING] iwMMXt patches

2012-04-17 Thread Matt Turner
Are these patches ready to go in? It looks like they were ack'd. http://gcc.gnu.org/ml/gcc-patches/2011-10/msg01815.html http://gcc.gnu.org/ml/gcc-patches/2011-10/msg01817.html http://gcc.gnu.org/ml/gcc-patches/2011-10/msg01816.html http://gcc.gnu.org/ml/gcc-patches/2011-10/msg01818.html

[PATCH 1/2] doc: Correct __builtin_arm_tinsr prototype documentation

2012-04-04 Thread Matt Turner
2012-04-04 Matt Turner matts...@gmail.com gcc/ * doc/extend.texi (__builtin_arm_tinsrb): Add missing second parameter. (__builtin_arm_tinsrh): Likewise. (__builtin_arm_tinsrw): Likewise. --- This patch and 2/2 are tie-ons to http://gcc.gnu.org/ml/gcc

[PATCH] doc: Fix typo: mno-lsc - mno-llsc

2012-04-04 Thread Matt Turner
2012-04-04 Matt Turner matts...@gmail.com gcc/ * doc/install.texi: Correct typo -mno-lsc - -mno-llsc. --- Still waiting on copyright assignment, but I think this doc patch is trivial enough to be committed without it. gcc/doc/install.texi |2 +- 1 files changed, 1

[PATCH 2/2] arm: add iwMMXt mmx-2.c test

2012-04-04 Thread Matt Turner
2012-04-04 Matt Turner matts...@gmail.com PR target/35294 * gcc.target/arm/mmx-2.c: New. --- This patch and 1/2 are tie-ons to http://gcc.gnu.org/ml/gcc-patches/2012-02/msg01269.html Still waiting on copyright assignment, but please review in the meantime. Is there anything

[PATCH 1/2] mips: Add R4600 scheduling support for imul and idiv

2012-02-24 Thread Matt Turner
The r4600_imul and r4600_idiv reservations were correct for si, but there were no *_di reservations. See page 4 of http://www.sgistuff.net/hardware/other/documents/R4600_Prod_OV.pdf 2012-02-24 Matt Turner matts...@gmail.com * config/mips/4600.md (r4600_imul_si): Rename from r4600_imul

Miscellaneous mips, arm, and alpha patches

2012-02-24 Thread Matt Turner
format the ChangeLog entries properly, and so forth. Please CC me on replies. Thanks, Matt Turner

[PATCH] alpha: add bypasses for fmul/fadd/fcmov - fst/ftoi

2012-02-24 Thread Matt Turner
See section 2.5.3 (page 28) of http://download.majix.org/dec/comp_guide_v2.pdf 2012-02-24 Matt Turner matts...@gmail.com * config/alpha/ev6.md: (define_bypass ev6_fmul,ev6_fadd): New. (define_bypass ev6_fcmov): New. --- gcc/config/alpha/ev6.md |4 1 files changed, 4

[PATCH 2/2] mips: Add R4700 scheduling support

2012-02-24 Thread Matt Turner
The R4700 is identical to the R4600 except for the integer and floating-point multiplication costs. See page 4 of http://datasheets.chipdb.org/IDT/MIPS/79RV4700.pdf 2012-02-24 Matt Turner matts...@gmail.com * config/mips/4600.md (r4700_imul_si): New. (r4700_imul_di): New

[PATCH] arm: Fix iwmmxt shift and logical intrinsics (PR 35294).

2012-02-24 Thread Matt Turner
PR 36798 and 36966 are duplicates. 2012-02-24 Matt Turner matts...@gmail.com PR target/35294 * config/arm/arm.c (arm_expand_builtin): Wire up missing intrinsics. --- gcc/config/arm/arm.c | 62 +- 1 files changed, 61

[PATCH] arm: add _mm_empty to mmintrin.h for source compatibility

2012-02-24 Thread Matt Turner
The x86/amd64 mmintrin.h provides the _mm_empty intrinsic for the 'emms' MMX instruction. Although ARM does not need such an instruction, we should provide an empty _mm_empty function nonetheless for source compatibility. 2012-02-24 Matt Turner matts...@gmail.com * config/arm

[PATCH] Wire-up missing ARM iwmmxt intrinsics (bugs 35294, 36798, 36966)

2011-10-01 Thread Matt Turner
--- arm.c.orig 2011-05-05 04:39:40.0 -0400 +++ arm.c 2011-08-19 13:48:21.548405102 -0400 @@ -19218,7 +19218,8 @@ || ! (*insn_data[icode].operand[0].predicate) (target, tmode)) target = gen_reg_rtx (tmode); - gcc_assert (GET_MODE (op0) == mode0 GET_MODE (op1) ==

Re: [PATCH] Wire-up missing ARM iwmmxt intrinsics (bugs 35294, 36798, 36966)

2011-08-19 Thread Matt Turner
On Fri, Aug 19, 2011 at 2:09 AM, Xinyu Qi x...@marvell.com wrote: At 2011-08-19 12:18:10,Matt Turner matts...@gmail.com wrote: Subject: Re: On Fri, Aug 19, 2011 at 12:13 AM, Matt Turner matts...@gmail.com wrote: Hi, Attached is a patch based on gcc-4.6.1 that wires-up missing ARM iwmmxt

[PATCH] Wire-up missing ARM iwmmxt intrinsics (bugs 35294, 36798, 36966)

2011-08-18 Thread Matt Turner
/~mattst88/pixman/log/?h=iwmmxt-optimizations I have seen much more extensive patches from Xinyu Qi, but I do not suppose that they will be available in gcc 4.6. Thanks, Matt Turner --- arm.c.orig 2011-08-19 00:03:06.163195724 -0400 +++ arm.c 2011-08-19 00:03:10.872195933 -0400 @@ -157,7 +157,7

Re: [PATCH] Wire-up missing ARM iwmmxt intrinsics (bugs 35294, 36798, 36966)

2011-08-18 Thread Matt Turner
On Fri, Aug 19, 2011 at 12:13 AM, Matt Turner matts...@gmail.com wrote: Hi, Attached is a patch based on gcc-4.6.1 that wires-up missing ARM iwmmxt intrinsics. Without it, gcc is completely useless when it comes to using a large portion of the intrinsics documented on this page: http