Re: Deprecating complex integer types in GCC

2024-08-19 Thread Pip Cet via Gcc
mented?) -Wgnu-imaginary-constant (https://lists.gnu.org/archive/html/emacs-devel/2024-07/msg00030.html) would be a good idea. Gaussian integers are useful sometimes, but I'm not so sure about Gaussian ints, truncated to 32 or 64 bits. I suspect most users would be much happier with unlimited-precision libraries that avoid the truncation. Pip Cet

Re: #line directives in generated C files

2020-09-04 Thread Pip Cet via Gcc
On Thu, Sep 3, 2020 at 8:19 PM Hans-Peter Nilsson wrote: > On Thu, 27 Aug 2020, Pip Cet via Gcc wrote: > > I may be missing an obvious workaround, but it seems we currently emit > > a #line directive when including lines from machine description files > > in C files, bu

#line directives in generated C files

2020-08-27 Thread Pip Cet via Gcc
h replaces those lines by #line directives pointing back to the original file. It appears to work. From c1c85da2b5d029b730f98906abda6c73bb7352d3 Mon Sep 17 00:00:00 2001 From: Pip Cet Date: Thu, 27 Aug 2020 22:02:40 + Subject: [PATCH] Add paired #line directives pointing back to the generat

Re: Clobber REG_CC only for some constraint alternatives?

2020-08-26 Thread Pip Cet via Gcc
On Mon, Aug 24, 2020 at 6:18 PM Jeff Law wrote: > > The post-reload splitter introduces the clobber. The wiki > > suggests that approach if most insns clobber REG_CC, perhaps because of > > the missed optimizations you describe below? > If most patterns set/clobber the flags, then yes, it's slight

Re: Clobber REG_CC only for some constraint alternatives?

2020-08-20 Thread Pip Cet via Gcc
On Tue, Aug 18, 2020 at 6:52 AM Senthil Kumar Selvaraj wrote: > > recognize such insns, but as it stands that define_insn would > > recognize the incorrect insn: > > > > [(set (reg:QI 0) (const_int 0)) > > (clobber (scratch:CC))] > > get_cc_reg_clobber_rtx also looks at the insn itself (i.e. what

Re: Clobber REG_CC only for some constraint alternatives?

2020-08-17 Thread Pip Cet via Gcc
On Mon, Aug 17, 2020 at 7:31 AM Senthil Kumar Selvaraj wrote: > > (define_split > > [(parallel [(set (match_operand:ALL1 0 "nonimmediate_operand") > > (match_operand:ALL1 1 "nox_general_operand")) > > (clobber (reg:CC REG_CC))])] > > "reload_completed && REG_P (operands[

Re: Clobber REG_CC only for some constraint alternatives?

2020-08-16 Thread Pip Cet via Gcc
On Sun, Aug 16, 2020 at 12:50 AM Segher Boessenkool wrote: > On Sat, Aug 15, 2020 at 10:18:27AM +0000, Pip Cet wrote: > > > > What I'm currently doing is this: > > > > > > > > (define_split > > > > [(set (match_operand 0 "nonimmediat

Re: Clobber REG_CC only for some constraint alternatives?

2020-08-15 Thread Pip Cet via Gcc
On Sat, Aug 15, 2020 at 12:30 AM Segher Boessenkool wrote: > On Fri, Aug 14, 2020 at 05:47:02PM +0000, Pip Cet wrote: > > On Fri, Aug 14, 2020 at 4:24 PM Segher Boessenkool > > wrote: > > > If you want to say some alternative does not clobber anything, just use > >

Re: Clobber REG_CC only for some constraint alternatives?

2020-08-14 Thread Pip Cet via Gcc
On Fri, Aug 14, 2020 at 4:24 PM Segher Boessenkool wrote: > On Fri, Aug 14, 2020 at 04:46:59PM +0530, Senthil Kumar Selvaraj via Gcc > wrote: > > (define_insn "*mov_insn_noclobber_flags" > > [(set (match_operand:ALL1 0 "nonimmediate_operand" "=r,d ,q,r") > > (match_operand:ALL1 1 "nox

Re: Clobber REG_CC only for some constraint alternatives?

2020-08-14 Thread Pip Cet via Gcc
On Fri, Aug 14, 2020 at 3:33 PM Matt Wette via Gcc wrote: > Happy to see someone working this. Are you starting with one CC mode? I'm also working on this (mostly at bug#92792), and so far am using two modes: the general reg:CC mode for proper comparison insns, and CCNZ for optimization in the

A better __builtin_constant_p

2019-06-30 Thread Pip Cet
(!nonnegative(i)) __builtin_unreachable (); printf("%d\n", i & 0x8000); } From 5e694e0e35b56caf4469cb516db50608f026c741 Mon Sep 17 00:00:00 2001 From: Pip Cet Date: Sun, 30 Jun 2019 12:24:17 + Subject: [PATCH] Add a __builtin_constant_function_p builtin. --- gcc/builtins