Re: [PATCH] i386: Require TARGET_64BIT for any_mul_highpart peephole

2021-12-24 Thread Uros Bizjak via Gcc-patches
On Thu, Dec 23, 2021 at 11:21 PM H.J. Lu via Gcc-patches wrote: > > Restore i686 bootstrap by requiring TARGET_64BIT for any_mul_highpart > peephole. > > PR bootstrap/103785 > * config/i386/i386.md: Require TARGET_64BIT for any_mul_highpart > peephole. I don't think this i

Re: [PATCH v2] ix86: Don't use the 'm' constraint for x86_64_general_operand

2021-12-24 Thread Uros Bizjak via Gcc-patches
On Thu, Dec 23, 2021 at 3:42 PM H.J. Lu wrote: > > On Mon, Dec 20, 2021 at 2:22 PM H.J. Lu wrote: > > > > On Mon, Dec 20, 2021 at 12:38 PM Jakub Jelinek wrote: > > > > > > On Mon, Dec 20, 2021 at 11:44:08AM -0800, H.J. Lu wrote: > > > > The problem is in > > > > > > > > (define_memory_constraint

[PATCH] [i386]Fix tdpbf16ps testcase

2021-12-24 Thread Haochen Jiang via Gcc-patches
Hi all, This patch fix the testcase of amxbf16-dpbf16ps-2.c. Previously the type convert has some issue. Ok for trunk? BRs, Haochen gcc/testsuite/ChangeLog: * gcc.target/i386/amx-check.h (check_float_tile_register): New check function for float to prevent precision loss.

[PATCH v4 00/12] Add LoongArch support.

2021-12-24 Thread chenglulu
The LoongArch architecture (LoongArch) is an Instruction Set Architecture (ISA) that has a Reduced Instruction Set Computer (RISC) style. The documents are on https://loongson.github.io/LoongArch-Documentation/README-EN.html The ELF ABI Documents are on: https://loongson.github.io/LoongArch-Docume

[PATCH v4 01/12] LoongArch Port: Regenerate configure

2021-12-24 Thread chenglulu
* config/picflag.m4: Default add build option '-fpic' for LoongArch. * configure: Add LoongArch tuples. * configure.ac: Like wise. --- config/picflag.m4 | 3 +++ configure | 10 +- configure.ac | 10 +- 3 files changed, 21 insertions(+), 2 dele

[PATCH v4 03/12] LoongArch Port: Regenerate gcc/configure.

2021-12-24 Thread chenglulu
--- gcc/configure | 85 +++ 1 file changed, 79 insertions(+), 6 deletions(-) diff --git a/gcc/configure b/gcc/configure index 992a9d70092..999557a3b51 100755 --- a/gcc/configure +++ b/gcc/configure @@ -5352,7 +5352,26 @@ else GDC="$ac_cv_prog_GDC

[PATCH v4 07/12] LoongArch Port: Builtin macros.

2021-12-24 Thread chenglulu
gcc/ *config/loongarch/loongarch-c.c --- gcc/config/loongarch/loongarch-c.c | 111 + 1 file changed, 111 insertions(+) create mode 100644 gcc/config/loongarch/loongarch-c.c diff --git a/gcc/config/loongarch/loongarch-c.c b/gcc/config/loongarch/loongarch-c.c

[PATCH v4 09/12] LoongArch Port: Regenerate libgcc/configure.

2021-12-24 Thread chenglulu
--- libgcc/configure | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libgcc/configure b/libgcc/configure index 4919a56f518..ce04c4f529f 100755 --- a/libgcc/configure +++ b/libgcc/configure @@ -2412,6 +2412,9 @@ case "${host}" in # sets the default TLS model and affe

[PATCH v4 10/12] LoongArch Port: libgomp

2021-12-24 Thread chenglulu
libgomp/ * configure.tgt: Add LoongArch triplet. --- libgomp/configure.tgt | 4 1 file changed, 4 insertions(+) diff --git a/libgomp/configure.tgt b/libgomp/configure.tgt index d4f1e741b5a..2cd7272fcd8 100644 --- a/libgomp/configure.tgt +++ b/libgomp/configure.tgt @@ -56,6 +56,10 @@

[PATCH v4 06/12] LoongArch Port: Builtin functions.

2021-12-24 Thread chenglulu
gcc/ * config/loongarch/larchintrin.h: New file. * config/loongarch/loongarch-builtins.c: New file. --- gcc/config/loongarch/larchintrin.h| 413 + gcc/config/loongarch/loongarch-builtins.c | 511 ++ 2 files changed, 924 insertions(+) cr

[PATCH v4 02/12] LoongArch Port: gcc build

2021-12-24 Thread chenglulu
gcc/ * common/config/loongarch/loongarch-common.c: New file. * config/loongarch/genopts/genstr.sh: New file. * config/loongarch/genopts/loongarch-strings: New file. * config/loongarch/genopts/loongarch.opt.in: New file. * config/loongarch/gnu-user.h: New fil

[PATCH v4 11/12] LoongArch Port: gcc/testsuite

2021-12-24 Thread chenglulu
gcc/testsuite/ * g++.dg/cpp0x/constexpr-rom.C: Add build options for LoongArch. * g++.old-deja/g++.abi/ptrmem.C: Add LoongArch support. * g++.old-deja/g++.pt/ptrmem6.C: xfail for LoongArch. * gcc.dg/20020312-2.c: Add LoongArch support. * gcc.dg/loop-8.c: Ski

[PATCH v4 08/12] LoongArch Port: libgcc

2021-12-24 Thread chenglulu
libgcc/ * config/loongarch/crtfastmath.c: New file. * config/loongarch/crti.S: Like wise. * config/loongarch/crtn.S: Like wise. * config/loongarch/lib2funcs.c: Like wise. * config/loongarch/linux-unwind.h: Like wise. * config/loongarch/sfp-machine.h:

[PATCH v4 12/12] LoongArch Port: Add doc.

2021-12-24 Thread chenglulu
* contrib/config-list.mk: Add LoongArch triplet. * gcc/doc/install.texi: Add LoongArch options section. * gcc/doc/invoke.texi: Add LoongArch options section. * gcc/doc/md.texi: Add LoongArch options section. --- contrib/config-list.mk | 5 +- gcc/doc/install.texi

[PATCH v4] tree-optimization/101186 - extend FRE with "equivalence map" for condition prediction

2021-12-24 Thread Di Zhao OS via Gcc-patches
Here's a brief summary on the patch: v4 (this version): - In process_bb's condition-prediction code: update equivalence-heads if value-numbers have changed, otherwise some chances can be lost. v3 (a few minor updates): - Simplify function record_equiv_from_prev_phi_1 by removing an argument. -

Libbacktrace: Fix the use of newline in sed replacement

2021-12-24 Thread FX via Gcc-patches
Hi, Libbacktrace fails to run “make check" on macOS (*-apple-darwin21), where the system make is GNU Make 3.81. But I think it would occur on all platforms that are not ELF and use make < 4. Running `make check` leads to this failure: elf_32.c:144:26: error: extra tokens at end of #undef direct

[pushed] Darwin: Define OBJECT_FORMAT_MACHO.

2021-12-24 Thread Iain Sandoe via Gcc-patches
There are places that we need to make different codegen depending on the object format rather than on the arch. We already have definitions for ELF, COFF etc. this adds one for MACHO. Tested on i686, powerpc, x86_64 and aarch64 Darwin. pushed to master, thanks Iain Signed-off-by: Iain Sandoe g

[pushed] Darwin: Check for that flag-reorder-and-partition.

2021-12-24 Thread Iain Sandoe via Gcc-patches
We were checking whether the flag had been set by the user, but not if it was set to true. Which means that the check fails in its intent when the user puts -fno-reorder-and-partition. Tested on i686, powerpc and x86_64-darwin. Pushed to master, thanks Iain Signed-off-by: Iain Sandoe gcc/Chang

Re: [pushed] Darwin: Check for that flag-reorder-and-partition.

2021-12-24 Thread Andrew Pinski via Gcc-patches
On Fri, Dec 24, 2021 at 2:47 AM Iain Sandoe via Gcc-patches wrote: > > We were checking whether the flag had been set by the user, but not if > it was set to true. Which means that the check fails in its intent when > the user puts -fno-reorder-and-partition. > > Tested on i686, powerpc and x86_6

[pushed] Darwin: Update rules for handling alignment of globals.

2021-12-24 Thread Iain Sandoe via Gcc-patches
The current rule was too strict and has not been required since Darwin11. This relaxes the constraint to allow up to 2^28 alignment for non-common entities. Common is still restricted to a maximum aligment of 2^15. When the host is an older version of Darwin ( earlier that 11 ) then the existing

Re: [pushed] Darwin: Check for that flag-reorder-and-partition.

2021-12-24 Thread Iain Sandoe via Gcc-patches
Hi Andrew, > On 24 Dec 2021, at 10:51, Andrew Pinski wrote: > > On Fri, Dec 24, 2021 at 2:47 AM Iain Sandoe via Gcc-patches > wrote: >> >> >> @@ -3336,6 +3336,7 @@ darwin_override_options (void) >> (s)he knows why... */ > > I see you already pushed this code, it might be a good idea

Redesign Website ...

2021-12-24 Thread Aashu via Gcc-patches
Hello (gcc-patches@gcc.gnu.org) I am business developer from New Delhi, India. I am a Professional Website designer & developer with 5+ years' experience. Do you need a great Website and Redesign? Upgrade >> Repair >> Redesign >> Build New Site Are you interested? Thanks, Aashu

[PATCH] i386: Add V2SFmode DIV insn pattern [PR95046, PR103797]

2021-12-24 Thread Uros Bizjak via Gcc-patches
Use V4SFmode "DIVPS X,Y" with [y0, y1, 1.0f, 1.0f] as a divisor to avoid division by zero. 2021-12-24 Uroš Bizjak gcc/ChangeLog: PR target/95046 PR target/103797 * config/i386/mmx.md (divv2sf3): New instruction pattern. gcc/testsuite/ChangeLog: PR target/95046 PR target/

[r12-6113 Regression] FAIL: gfortran.dg/extract_recip_1.f -O scan-tree-dump-times optimized "rdiv_expr" 1 on Linux/x86_64

2021-12-24 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, 8f921393e339090566c1589d81009caa954de90d is the first bad commit commit 8f921393e339090566c1589d81009caa954de90d Author: Uros Bizjak Date: Fri Dec 24 17:09:36 2021 +0100 i386: Add V2SFmode DIV insn pattern [PR95046, PR103797] caused FAIL: gfortran.dg/extract_recip_1.f

[PATCH v2] i386: Check AX input in any_mul_highpart peepholes

2021-12-24 Thread H.J. Lu via Gcc-patches
When applying peephole optimization to transform mov imm, %reg0 mov %reg1, %AX_REG imul %reg0 to mov imm, %AX_REG imul %reg1 disable peephole optimization if reg1 == AX_REG as in (set (reg:SI 1 dx [92]) (const_int 714200473 [0x2a91d599])) (set (reg:

[PATCH v2 1/2] diagnostics: Honor #pragma GCC diagnostic in the preprocessor [PR53431]

2021-12-24 Thread Lewis Hyatt via Gcc-patches
Hello- I would like please to follow up on this patch submitted for PR53431 here: https://gcc.gnu.org/pipermail/gcc-patches/2021-December/586191.html However, it was suggested on the PR that part of it could be split into a separate simpler patch. I have now done that, and also made a few tweaks

[PATCH v2 2/2] diagnostics: Honor #pragma GCC diagnostic in the preprocessor [PR53431]

2021-12-24 Thread Lewis Hyatt via Gcc-patches
Hello- Here is part 2/2 of the patch version 2 introduced here: https://gcc.gnu.org/pipermail/gcc-patches/2021-December/587357.html to resolve PR53431. Thank you! -Lewis >From 79dfa93ff94bbf492b396d1e6b3d06f1f95a6315 Mon Sep 17 00:00:00 2001 From: Lewis Hyatt Date: Sat, 4 Dec 2021 11:20:00 -0500

Re: [PATCH] i386: Require TARGET_64BIT for any_mul_highpart peephole

2021-12-24 Thread H.J. Lu via Gcc-patches
On Fri, Dec 24, 2021 at 12:17 AM Uros Bizjak wrote: > > On Thu, Dec 23, 2021 at 11:21 PM H.J. Lu via Gcc-patches > wrote: > > > > Restore i686 bootstrap by requiring TARGET_64BIT for any_mul_highpart > > peephole. > > > > PR bootstrap/103785 > > * config/i386/i386.md: Require TARG

[PATCH v8] rtl: builtins: (not just) rs6000: Add builtins for fegetround, feclearexcept and feraiseexcept [PR94193]

2021-12-24 Thread Raoni Fassina Firmino via Gcc-patches
Changes since v7[7]: - Fixed an array indexing bug on fegeround testcase. - Fixed typos and spelling mistakes spread trouout the added comments. - Reworded header comment/description for fegetround expander. - Fixed changelog in the commit message. After taking a look to add support for FE