[pushed] wwwdocs: readings: Update MicroBlaze Processor Reference reference

2023-02-08 Thread Gerald Pfeifer
Second link this week that actually shorter - wooo... Pushed. Gerald --- htdocs/readings.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/readings.html b/htdocs/readings.html index 29368a9a..34ba508c 100644 --- a/htdocs/readings.html +++ b/htdocs/readings.html @@

Re: [PATCH] ipa: silent -Wodr notes with -w

2023-02-08 Thread Martin Liška
On 2/9/23 01:10, Jan Hubicka wrote: >>> On 2/1/23 15:26, Martin Jambor wrote: Hi, On Fri, Dec 02 2022, Martin Liška wrote: > If -w is used, warn_odr properly sets *warned = false and > so it should be preserved when calling warn_types_mismatch. > > Noticed that

Re: [PATCH] testsuite: XFAIL bogus g++.dg/warn/Wstringop-overflow-4.C:144, PR106120

2023-02-08 Thread Richard Biener via Gcc-patches
On Tue, Feb 7, 2023 at 7:04 PM Hans-Peter Nilsson via Gcc-patches wrote: > > > From: Aldy Hernandez > > Date: Tue, 7 Feb 2023 17:52:02 +0100 > > > Up to the release managers, but I have no objections. > > I take it that's for both patches. Thanks! > (Potential reviewers: these patches are local

Re: [RFC/RFT 0/3] Add compiler support for Control Flow Integrity

2023-02-08 Thread Peter Collingbourne via Gcc-patches
On Sun, Dec 18, 2022 at 10:06 PM Dan Li wrote: > > This series of patches is mainly used to support the control flow > integrity protection of the linux kernel [1], which is similar to > -fsanitize=kcfi in clang 16.0 [2,3]. > > I hope that this feature will also support user-mode CFI in the >

Re: [Patch] pr65658.c: fix excess warnings on LLP64 targets

2023-02-08 Thread NightStrike via Gcc-patches
ping On Sat, Jan 28, 2023 at 1:16 PM Jonathan Yong <10wa...@gmail.com> wrote: > > Patch OK? > > gcc/testsuite/ChangeLog: > > * gcc.dg/pr65658.c: fix LLP64 test.

[PING 2] [PATCH 0/3] RISC-V: optimize stack manipulation in save-restore

2023-02-08 Thread Fei Gao
ping. BR Fei On 2023-02-03 16:52  Fei Gao wrote: > > >Gentle ping. > >The patch I previously submitted: >| Date: Wed, 30 Nov 2022 00:38:08 -0800 >| Subject: [PATCH] RISC-V: optimize stack manipulation in save-restore >| Message-ID: > >I split the patches as per Palmer's review comment. > >BR

[PATCH v2] c++: ICE initing lifetime-extended constexpr var [PR107079]

2023-02-08 Thread Marek Polacek via Gcc-patches
On Wed, Feb 08, 2023 at 04:00:25PM -0800, Jason Merrill wrote: > On 2/8/23 13:01, Marek Polacek wrote: > > (This may not be a complete fix but I got stuck so I'm posting what > > I have, which at least fixes the ICE.) > > > > We ICE on the simple: > > > >struct X { const X* x = this; }; > >

Re: Ping: [PATCH v4] rs6000: Fix incorrect RTL for Power LE when removing the UNSPECS [PR106069]

2023-02-08 Thread Xionghu Luo via Gcc-patches
Thanks Kewen! Ping this again @Segher. Maybe we could also merge this patch if no objections from Segher as several reviews and tests taken on this already... BR, Xionghu On 2023/1/18 17:11, Kewen.Lin wrote: Hi Segher, I guessed that this patch escaped from your radar. :) As Jakub asked

Re: [RFC/RFT 0/3] Add compiler support for Control Flow Integrity

2023-02-08 Thread Hongtao Liu via Gcc-patches
On Mon, Dec 19, 2022 at 3:59 PM Dan Li via Gcc-patches wrote: > > This series of patches is mainly used to support the control flow > integrity protection of the linux kernel [1], which is similar to > -fsanitize=kcfi in clang 16.0 [2,3]. > > I hope that this feature will also support user-mode

Re: [PATCH] ipa: silent -Wodr notes with -w

2023-02-08 Thread Jan Hubicka via Gcc-patches
> > On 2/1/23 15:26, Martin Jambor wrote: > > > Hi, > > > > > > On Fri, Dec 02 2022, Martin Liška wrote: > > > > If -w is used, warn_odr properly sets *warned = false and > > > > so it should be preserved when calling warn_types_mismatch. > > > > > > > > Noticed that during a LTO reduction where

Re: [PATCH] c++: ICE initing lifetime-extended constexpr var [PR107079]

2023-02-08 Thread Jason Merrill via Gcc-patches
On 2/8/23 13:01, Marek Polacek wrote: (This may not be a complete fix but I got stuck so I'm posting what I have, which at least fixes the ICE.) We ICE on the simple: struct X { const X* x = this; }; constexpr const X& x = X{}; where store_init_value initializes 'x' with _EXPR }>

Re: [PATCH] c++: Mangle EXCESS_PRECISION_EXPR as fold_convert REAL_CST [PR108698]

2023-02-08 Thread Jason Merrill via Gcc-patches
On 2/8/23 00:59, Jakub Jelinek wrote: Hi! For standard excess precision, like the C FE we parse floating point constants as EXCESS_PRECISION_EXPR of promoted REAL_CST rather than the nominal REAL_CST, and as the following testcase shows the constants might need mangling. The following patch

[committed] c: Update checks on constexpr pointer initializers

2023-02-08 Thread Joseph Myers
WG14 has agreed a change of the rules on constexpr pointer initializers, so that a (constant) null value that is not a null pointer constant is accepted in that context, rather than only accepting null pointer constants. (In particular, this means that a constexpr variable of pointer type can be

[PATCH] libstdc++: testsuite: Add char8_t to codecvt_unicode

2023-02-08 Thread Dimitrij Mijoski via Gcc-patches
libstdc++-v3/ChangeLog: * testsuite/22_locale/codecvt/codecvt_unicode.cc: Rename functions. * testsuite/22_locale/codecvt/codecvt_unicode.h: Make more generic so it accepts char8_t. * testsuite/22_locale/codecvt/codecvt_unicode_wchar_t.cc: Rename

Re: [PATCH 1/2] Handle component_ref to a structre/union field including flexible array member [PR101832]

2023-02-08 Thread Qing Zhao via Gcc-patches
> On Feb 8, 2023, at 2:09 PM, Joseph Myers wrote: > > On Wed, 8 Feb 2023, Qing Zhao via Gcc-patches wrote: > >> But I noticed that “flexible_array_type_p” later was moved from FE to >> middle-end and put into tree.cc, tree.h as a general utility routine, and to >> >> /* Determine whether

Re: [PATCH 1/2] Handle component_ref to a structre/union field including flexible array member [PR101832]

2023-02-08 Thread Qing Zhao via Gcc-patches
> On Feb 8, 2023, at 2:20 PM, Siddhesh Poyarekar wrote: > > On 2023-02-08 14:09, Joseph Myers wrote: >> What must be avoided is -pedantic diagnostics for >> struct flex1 { int n; int data[1]; }; >> struct out_flex_end1 { int m; struct flex1 flex_data; }; >> regardless of whether considered

[pushed] doc: Change fsf.org to www.fsf.org

2023-02-08 Thread Gerald Pfeifer
fsf.org has been serving a 301 (permanent redirect) http response for a long while. gcc/ChangeLog: * doc/include/gpl_v3.texi: Change fsf.org to www.fsf.org. --- gcc/doc/include/gpl_v3.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/doc/include/gpl_v3.texi

[PATCH] When simplifing BFR of an insert, require a mode precision integral type (PR108688)

2023-02-08 Thread Andrew Pinski via Gcc-patches
The same problem as PR 88739 has crept in but this time in match.pd when simplifying bit_field_ref of an bit_insert. That is we are generating a BIT_FIELD_REF of a non-mode-precision integral type. OK? Bootstrapped and tested on x86_64-linux-gnu with no regressions. PR

[PATCH] c++: ICE initing lifetime-extended constexpr var [PR107079]

2023-02-08 Thread Marek Polacek via Gcc-patches
(This may not be a complete fix but I got stuck so I'm posting what I have, which at least fixes the ICE.) We ICE on the simple: struct X { const X* x = this; }; constexpr const X& x = X{}; where store_init_value initializes 'x' with _EXPR }> but we must lifetime-extend via

[PATCH] RISC-V: Add vmadc/vsbc C/C++ API support

2023-02-08 Thread juzhe . zhong
From: Ju-Zhe Zhong gcc/ChangeLog: * config/riscv/riscv-vector-builtins-bases.cc (class vmadc): New class. (class vmsbc): Ditto. (BASE): Define new class. * config/riscv/riscv-vector-builtins-bases.h: Ditto. *

Re: [PATCH 1/2] Handle component_ref to a structre/union field including flexible array member [PR101832]

2023-02-08 Thread Joseph Myers
On Wed, 8 Feb 2023, Siddhesh Poyarekar wrote: > On 2023-02-08 14:09, Joseph Myers wrote: > > What must be avoided is -pedantic diagnostics for > > > > struct flex1 { int n; int data[1]; }; > > struct out_flex_end1 { int m; struct flex1 flex_data; }; > > > > regardless of whether considered

[PATCH] testsuite: Fix asm-goto-with-outputs tests; limit to lra targets

2023-02-08 Thread Hans-Peter Nilsson via Gcc-patches
Sanity-checked for cris-elf with the check_effective_target_lra correction in https://gcc.gnu.org/pipermail/gcc-patches/2023-February/611531.html Committed as obvious. --- 8< --- These tests spuriously lacked a "lra" limiter. Code using "asm goto" with outputs gets a: error: the target does not

Re: [PATCH 1/2] Handle component_ref to a structre/union field including flexible array member [PR101832]

2023-02-08 Thread Siddhesh Poyarekar
On 2023-02-08 14:09, Joseph Myers wrote: What must be avoided is -pedantic diagnostics for struct flex1 { int n; int data[1]; }; struct out_flex_end1 { int m; struct flex1 flex_data; }; regardless of whether considered flexible or not, since that's clearly valid in standard C. Are you sure

[PATCH] tree-optimization: [PR108684] ICE in verify_ssa due to simple_dce_from_worklist

2023-02-08 Thread Andrew Pinski via Gcc-patches
In simple_dce_from_worklist, we were removing an inline-asm which had a vdef (due to clobbering memory) but not unlinking the statement's vdef. This fixes that oversight. This was a latent bug exposed recently by both VRP and removal of stores to static starting to use simple_dce_from_worklist.

Re: [PATCH 1/2] Handle component_ref to a structre/union field including flexible array member [PR101832]

2023-02-08 Thread Joseph Myers
On Wed, 8 Feb 2023, Qing Zhao via Gcc-patches wrote: > But I noticed that “flexible_array_type_p” later was moved from FE to > middle-end and put into tree.cc, tree.h as a general utility routine, and to > > /* Determine whether TYPE is a structure with a flexible array member, >or a union

[pushed] analyzer: fix overzealous state purging with on-stack structs [PR108704]

2023-02-08 Thread David Malcolm via Gcc-patches
PR analyzer/108704 reports many false positives seen from -Wanalyzer-use-of-uninitialized-value on qemu's softfloat.c on code like the following: struct st s; s = foo (); s = bar (s); // bogusly reports that s is uninitialized here where e.g. "struct st" is "floatx80" in the qemu

Re: libquadmath fix for 94756 and 87204

2023-02-08 Thread NightStrike via Gcc-patches
Is it too soon to ping again? :) I think Nixman needs some feedback as to whether he's on the right track in addressing your concerns. On Sun, Feb 5, 2023, 12:39 NightStrike wrote: > Jakub, ping > > On Thu, Jan 26, 2023, 12:50 i.nixman--- via Gcc-patches < > gcc-patches@gcc.gnu.org> wrote: >

[pushed, wwwdocs] gcc-13: add -Wxor-used-as-pow

2023-02-08 Thread David Malcolm via Gcc-patches
--- htdocs/gcc-13/changes.html | 12 +++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html index 8c0201f2..d70ac1de 100644 --- a/htdocs/gcc-13/changes.html +++ b/htdocs/gcc-13/changes.html @@ -153,7 +153,17 @@ a

[pushed, wwwdocs] gcc-13: add SARIF and other diagnostics improvements

2023-02-08 Thread David Malcolm via Gcc-patches
--- htdocs/gcc-13/changes.html | 30 +- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html index a48ac220..8c0201f2 100644 --- a/htdocs/gcc-13/changes.html +++ b/htdocs/gcc-13/changes.html @@ -128,6

[pushed, wwwdocs] gcc-13: add analyzer improvements

2023-02-08 Thread David Malcolm via Gcc-patches
--- htdocs/gcc-13/changes.html | 58 ++ 1 file changed, 58 insertions(+) diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html index d70ac1de..5dbcc229 100644 --- a/htdocs/gcc-13/changes.html +++ b/htdocs/gcc-13/changes.html @@ -50,6 +50,9 @@ a

[pushed, wwwdocs] gcc-13: linkify some options

2023-02-08 Thread David Malcolm via Gcc-patches
--- htdocs/gcc-13/changes.html | 29 - 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html index 9ecd115c..a48ac220 100644 --- a/htdocs/gcc-13/changes.html +++ b/htdocs/gcc-13/changes.html @@ -45,7

Re: [PATCH] cgraph: Handle simd clones in cgraph_node::set_{const,pure}_flag [PR106433]

2023-02-08 Thread Jan Hubicka via Gcc-patches
> On Wed, Feb 08, 2023 at 06:10:08PM +0100, Jan Hubicka wrote: > > My understanding of simd clones is bit limited, but I think you are > > right that they should have the same semantics as their caller. > > > > I think const may be one that makes compiler to ICE, but > > there are many other

Re: [PATCH] testsuite: Generalize check_effective_target_lra

2023-02-08 Thread Hans-Peter Nilsson via Gcc-patches
> From: Richard Sandiford > Date: Wed, 8 Feb 2023 17:54:15 +0100 > Hans-Peter Nilsson via Gcc-patches writes: > > Tested native x86_64-pc-linux-gnu and cris-elf (non-LRA and > > also hacked to switch to LRA). > > Since !LRA is hopefully not long for this world, I'd personally > prefer to keep

Re: [PATCH] cgraph: Handle simd clones in cgraph_node::set_{const,pure}_flag [PR106433]

2023-02-08 Thread Jakub Jelinek via Gcc-patches
On Wed, Feb 08, 2023 at 06:10:08PM +0100, Jan Hubicka wrote: > My understanding of simd clones is bit limited, but I think you are > right that they should have the same semantics as their caller. > > I think const may be one that makes compiler to ICE, but > there are many other places where

Re: [PATCH] cgraph: Handle simd clones in cgraph_node::set_{const,pure}_flag [PR106433]

2023-02-08 Thread Jan Hubicka via Gcc-patches
> Hi! > > The following testcase ICEs, because we determine only in late pure const > pass that bar is const (the content of the function loses a store to a > global var during dse3 and read from it during cddce2) and local-pure-const2 > makes it const. The cgraph ordering is that post IPA (in

Re: [PATCH] ipa-split: Don't split returns_twice functions [PR106923]

2023-02-08 Thread Jan Hubicka via Gcc-patches
> Hi! > > As discussed in the PR, returns_twice functions are rare/special beasts > that need special treatment in the cfg, and inside of their bodies > we don't know which part actually works the weird returns twice way > (either in the fork/vfork sense, or in the setjmp) and aren't updating >

Re: [PATCH] testsuite: Generalize check_effective_target_lra

2023-02-08 Thread Richard Sandiford via Gcc-patches
Hans-Peter Nilsson via Gcc-patches writes: > Tested native x86_64-pc-linux-gnu and cris-elf (non-LRA and > also hacked to switch to LRA). Since !LRA is hopefully not long for this world, I'd personally prefer to keep it simple & obvious (at least for most targets). There's a risk that we could

Re: [PATCH] vect-patterns: Fix up vect_widened_op_tree [PR108692]

2023-02-08 Thread Richard Sandiford via Gcc-patches
Jakub Jelinek writes: > Hi! > > The following testcase is miscompiled on aarch64-linux since r11-5160. > Given >[local count: 955630225]: > # i_22 = PHI > # r_23 = PHI > ... > a.0_5 = (unsigned char) a_15; > _6 = (int) a.0_5; > b.1_7 = (unsigned char) b_17; > _8 = (int) b.1_7; >

Re: [V2][PATCH] Handle component_ref to a structre/union field including flexible array member [PR101832]

2023-02-08 Thread Qing Zhao via Gcc-patches
I found a bug with this patch, will fix it and send out the updated patch. Please ignore this one. sorry. Qing > On Feb 6, 2023, at 8:47 AM, Qing Zhao wrote: > > This is the 2nd version of the patch, compare to the first version, the major > changes are: > > 1. Add a new IR bit in

Re: [PATCH 1/2] Handle component_ref to a structre/union field including flexible array member [PR101832]

2023-02-08 Thread Qing Zhao via Gcc-patches
> On Feb 7, 2023, at 6:37 PM, Joseph Myers wrote: > > On Tue, 7 Feb 2023, Qing Zhao via Gcc-patches wrote: > >> Then, this routine (flexible_array_type_p) is mainly for diagnostic purpose. >> It cannot be used to determine whether the structure/union type recursively >> include a flexible

Re: [PATCH] arm: Implement arm Function target attribute 'branch-protection'

2023-02-08 Thread Andrea Corallo via Gcc-patches
Andrea Corallo writes: > gcc/ > > * config/arm/arm.cc (arm_valid_target_attribute_rec): Add ARM function > attribute 'branch-protection' and parse its options. > * doc/extend.texi: Document ARM Function attribute 'branch-protection'. > > gcc/testsuite/ > > *

Re: [PATCH] aarch64: Fix return_address_sign_ab_exception.C regression

2023-02-08 Thread Andrea Corallo via Gcc-patches
Richard Sandiford writes: > Andrea Corallo via Gcc-patches writes: >> Hi all, >> >> this is to fix the regression of >> g++.target/aarch64/return_address_sign_ab_exception.C that I >> introduced with d8dadbc9a5199bf7bac1ab7376b0f84f45e94350. >> >> 'aarch_ra_sign_key' for aarch64 ended up being

[pushed] testsuite: Import objc-dg-prune in execute.exp

2023-02-08 Thread Richard Sandiford via Gcc-patches
The GCC-local definition of gcc-dg-prune removes extra error messages, such as one from the linker warning about executable stacks. This is then used by tool-specific pruners like objc-dg-prune, defined in objc-dg.exp. However, objc/execute/execute.exp didn't include objc-dg.exp, meaning that

Re: [pushed] [PR103541] RA: Implement reuse of equivalent memory for caller saves optimization

2023-02-08 Thread Vladimir Makarov via Gcc-patches
On 2/7/23 22:48, Andrew Pinski wrote: On Tue, Feb 7, 2023 at 6:08 AM Vladimir Makarov via Gcc-patches wrote: The following patch solves https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103541 The patch was successfully bootstrapped and tested on x86-64, aarch64, and ppc64le. What languages

[committed] testsuite: Fix up PR108525 test [PR108525]

2023-02-08 Thread Jakub Jelinek via Gcc-patches
Hi! Seems when committing the PR108525 fix I've missed that a test with the same name had been added a few hours before for PR108526. This patch separates the PR108525 test into a new file. Tested on x86_64-linux, committed to trunk as obvious. 2023-02-08 Jakub Jelinek PR

[PATCH] gimplify size expressions in parameters for all types [PR107557] [PR108423]

2023-02-08 Thread Martin Uecker via Gcc-patches
Here is a fix for PR107557 and PR108423. Bootstrapped and regression tested on x86-64. Gimplify more size expression in parameters [PR107557] and [PR108234] gimplify_parm_type only recursives into pointer type and size expressions in other types (e.g. function types) were

Re: [PATCH] ada: Fix musl build on Linux

2023-02-08 Thread Arnaud Charlet via Gcc-patches
> The commit "ada: Add PIE support to backtraces on Linux" [1] use > _r_debug under Linux unconditionally. It is incorrect since musl[2] > libc not defined _r_debug like glibc [3]: > > extern struct r_debug _r_debug; > > As far as I know, only glibc and uClibc [4] define the global variable >

Re: [PATCH] tree.def: Remove outdated comment on SAD_EXPR

2023-02-08 Thread Richard Biener via Gcc-patches
> Am 08.02.2023 um 10:17 schrieb Jakub Jelinek via Gcc-patches > : > > Hi! > > While looking at PR108692, I've noticed SAD_EXPR comment mentions that > WIDEN_MINUS_EXPR is missing, which is not true anymore since r11-5160. > > The following patch just removes that part of the comment. > >

Re: [PATCH] vect: Check gather/scatter offset types [PR108316]

2023-02-08 Thread Richard Biener via Gcc-patches
> Am 08.02.2023 um 10:00 schrieb Richard Sandiford via Gcc-patches > : > > The gather/scatter support can over-widen an offset if the target > requires it, but this relies on using a pattern sequence to add > the widening conversion. That failed in the testcase because an > earlier pattern

[PATCH] RISC-V: Fix indent

2023-02-08 Thread juzhe . zhong
From: Ju-Zhe Zhong gcc/ChangeLog: * config/riscv/vector.md: Fix indent. --- gcc/config/riscv/vector.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/config/riscv/vector.md b/gcc/config/riscv/vector.md index aaac32efcce..7da95013156 100644 ---

Re: [PATCH][GCC] arm: Optimize arm-mlib.h header inclusion (pr108505).

2023-02-08 Thread Richard Earnshaw via Gcc-patches
On 27/01/2023 17:44, Srinath Parvathaneni via Gcc-patches wrote: Hello, I have committed a fix [1] into gcc trunk for a build issue mentioned in pr108505 and latter received few upstream comments proposing more robust fix for this issue. In this patch I'm addressing those comments and

[PATCH] ada: Fix musl build on Linux

2023-02-08 Thread 宋冬生 via Gcc-patches
The commit "ada: Add PIE support to backtraces on Linux" [1] use _r_debug under Linux unconditionally. It is incorrect since musl[2] libc not defined _r_debug like glibc [3]: extern struct r_debug _r_debug; As far as I know, only glibc and uClibc [4] define the global variable _r_debug. [1]

[PATCH] tree.def: Remove outdated comment on SAD_EXPR

2023-02-08 Thread Jakub Jelinek via Gcc-patches
Hi! While looking at PR108692, I've noticed SAD_EXPR comment mentions that WIDEN_MINUS_EXPR is missing, which is not true anymore since r11-5160. The following patch just removes that part of the comment. Ok for trunk? 2023-02-08 Jakub Jelinek * tree.def (SAD_EXPR): Remove outdated

[PATCH] vect: Check gather/scatter offset types [PR108316]

2023-02-08 Thread Richard Sandiford via Gcc-patches
The gather/scatter support can over-widen an offset if the target requires it, but this relies on using a pattern sequence to add the widening conversion. That failed in the testcase because an earlier pattern (bool) took priority. I think we should allow patterns to be applied to other

[PATCH] c++: Mangle EXCESS_PRECISION_EXPR as fold_convert REAL_CST [PR108698]

2023-02-08 Thread Jakub Jelinek via Gcc-patches
Hi! For standard excess precision, like the C FE we parse floating point constants as EXCESS_PRECISION_EXPR of promoted REAL_CST rather than the nominal REAL_CST, and as the following testcase shows the constants might need mangling. The following patch mangles those as fold_convert of the

[PATCH] vect-patterns: Fix up vect_widened_op_tree [PR108692]

2023-02-08 Thread Jakub Jelinek via Gcc-patches
Hi! The following testcase is miscompiled on aarch64-linux since r11-5160. Given [local count: 955630225]: # i_22 = PHI # r_23 = PHI ... a.0_5 = (unsigned char) a_15; _6 = (int) a.0_5; b.1_7 = (unsigned char) b_17; _8 = (int) b.1_7; c_18 = _6 - _8; _9 = ABS_EXPR ; r_19 = _9