From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x533.google.com (mail-ed1-x533.google.com [IPv6:2a00:1450:4864:20::533]) by sourceware.org (Postfix) with ESMTPS id 09D9539551D7 for ; Wed, 2 Jun 2021 10:22:56 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 09D9539551D7 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=embecosm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=embecosm.com Received: by mail-ed1-x533.google.com with SMTP id u24so2234850edy.11 for ; Wed, 02 Jun 2021 03:22:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=embecosm.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=2RBadxS3VDev5RLDKC270TWjzRg3DDVDPzsvBScPt3Q=; b=Dgq9ZtCLoP0og2x1c5wJBGzS0Lj1KIpyqLm5klqM3PSyIflMjv9ovJU/Gdfuonpk8d lZ+2p3SWxQ0InHGKVUBFkJe2PmrlcERth71OZnZ3ptKOcLD68Qgz7wv41GUHnTEioZID xoLAkpzpx/NBzO9GshVszllY+QFGmirUNa4lu3c6rBUykICRAvZ7Sf/SH4Czq/71UN0L xTu0a3b5hNTnvETu+nJAJOpUZApUUz4vXCL7za6knj0BUCbcbYa9tABgvx5CHlYZGqDf 5p8igdUgcUM9mxIbHPucsyfOormN6/sUy5V19CD9yCnPAROVhV0dTvP4f7GLfsHqgrwJ Ch4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=2RBadxS3VDev5RLDKC270TWjzRg3DDVDPzsvBScPt3Q=; b=BtKO/1ZkwaORCeuANOkf6fWcK7eSOibgctCJedsgBOjuzeTG0zJswChDENr39Vgoaj 7vei84Xc/Z3vv/OiDIHLP41/TD7BFEQkTAXenOzZo/HTjJeULXkG4YB4M1wt3LydzewF wKjL5gKQ2WRGw9tNjEk+zuHXD8aSzm8kGnADGjJKTs8K7qP6J8Zr9DdjjxjmMfEM1zpc DwNuy90Q9Jl5t2CCjcEJk1PpiSYXq49SuyxLubbN5LCVuotC497lp32cfVDpchS3YiIH cu4Y032FVdE0y5sTC80QbZ4f7nX0YcScwJoTnJZtIuDqggqI4CKJRu24RAkP0KYyiUKS hy8g== X-Gm-Message-State: AOAM5315WVAlPDA3h2NoQkAqC3eOqUYHkfA9aTU9+cNijW8ufUBestwQ RG1+LOW0N8bcJCJI1uHHG9mSkAGBTzzDPi/mMmy5zv7S+hoGaQ== X-Google-Smtp-Source: ABdhPJwkFBO5I/Lgdvx60NUC9RgMoBun+wszc9B/YwU1Ua4dJ8sbSclTwfdO6Yy3kGlkA9nuwyuiPEyX4oY8mCK0uO0= X-Received: by 2002:a50:ff15:: with SMTP id a21mr37668235edu.103.1622629375006; Wed, 02 Jun 2021 03:22:55 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Philip Herron Date: Wed, 2 Jun 2021 11:22:43 +0100 Message-ID: Subject: Re: debian-i386 target (Was: ppc64le added to buildbot) To: Mark Wielaard Cc: gcc-rust@gcc.gnu.org Content-Type: multipart/alternative; boundary="0000000000007feab505c3c5d7e5" X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, HTML_MESSAGE, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc-rust@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: gcc-rust mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Jun 2021 10:23:06 -0000 --0000000000007feab505c3c5d7e5 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, 1 Jun 2021 at 23:34, Mark Wielaard wrote: > Hi, > > On Tue, Jun 01, 2021 at 12:31:02AM +0200, Mark Wielaard wrote: > > There are currently three builders, fedora-x86_64, debian-arm64 and > > fedora-ppc64le which we know are zero fail. It would be nice to see > > how 32bit (debian-i386 or debian-armhf) and big-endian (fedora-s390x > > or fedora-ppc64) targets are doing. I haven't tried them yet. > > I tried the simplest 32bit target, debian-i386 and it builds, but make > check-rust fails. It seems to have trouble processing f64 > defintions/values. > > mark@debian-i386:~/gccrs-build$ gcc/rust1 > /home/mark/gccrs/gcc/testsuite/rust.test/compile/methods1.rs > Preparing to parse files. > Attempting to parse file: /home/mark/gccrs/gcc/testsuite/rust.test/compil= e/ > methods1.rs > beginning null denotation identifier handling > current peek token when starting path pratt parse: '{' > current token (just about to return path to null denotation): '{' > finished null denotation identifier path parsing - next is branching > values of lookahead: 'identifier' ':' 'float literal' ',' > can be struct expr: 'true', not a block: 'true' > struct/enum expr field validated to not be null > struct/enum expr field pushed back > struct/enum expr fields comma skipped > struct/enum expr field validated to not be null > struct/enum expr field pushed back > lack of comma detected in struct/enum expr fields - break > struct/enum expr about to parse struct base > struct/enum expr skipped right curly - done and ready to return > beginning null denotation identifier handling > current peek token when starting path pratt parse: '{' > current token (just about to return path to null denotation): '{' > finished null denotation identifier path parsing - next is branching > values of lookahead: 'identifier' ':' 'identifier' ',' > can be struct expr: 'true', not a block: 'true' > beginning null denotation identifier handling > current peek token when starting path pratt parse: ',' > current token (just about to return path to null denotation): ',' > finished null denotation identifier path parsing - next is branching > struct/enum expr field validated to not be null > struct/enum expr field pushed back > struct/enum expr fields comma skipped > beginning null denotation identifier handling > current peek token when starting path pratt parse: '}' > current token (just about to return path to null denotation): '}' > finished null denotation identifier path parsing - next is branching > struct/enum expr field validated to not be null > struct/enum expr field pushed back > lack of comma detected in struct/enum expr fields - break > struct/enum expr about to parse struct base > struct/enum expr skipped right curly - done and ready to return > successfully parsed inherent impl > beginning null denotation identifier handling > current peek token when starting path pratt parse: '{' > current token (just about to return path to null denotation): '{' > finished null denotation identifier path parsing - next is branching > values of lookahead: 'identifier' ',' 'identifier' '}' > can be struct expr: 'true', not a block: 'true' > struct/enum expr field validated to not be null > struct/enum expr field pushed back > struct/enum expr fields comma skipped > struct/enum expr field validated to not be null > struct/enum expr field pushed back > lack of comma detected in struct/enum expr fields - break > struct/enum expr about to parse struct base > struct/enum expr skipped right curly - done and ready to return > beginning null denotation self/self-alias/dollar/crate/super handling > current peek token when starting path pratt parse: '.' > current token (just about to return path to null denotation): '.' > just finished parsing path (going to disambiguate) - peeked token is '.' > beginning null denotation self/self-alias/dollar/crate/super handling > current peek token when starting path pratt parse: '.' > current token (just about to return path to null denotation): '.' > just finished parsing path (going to disambiguate) - peeked token is '.' > beginning null denotation identifier handling > current peek token when starting path pratt parse: '.' > current token (just about to return path to null denotation): '.' > finished null denotation identifier path parsing - next is branching > beginning null denotation identifier handling > current peek token when starting path pratt parse: '.' > current token (just about to return path to null denotation): '.' > finished null denotation identifier path parsing - next is branching > successfully parsed inherent impl > beginning null denotation identifier handling > current peek token when starting path pratt parse: '::' > current token (just about to return path to null denotation): '(' > finished null denotation identifier path parsing - next is branching > beginning null denotation identifier handling > current peek token when starting path pratt parse: '::' > current token (just about to return path to null denotation): '(' > finished null denotation identifier path parsing - next is branching > beginning null denotation identifier handling > current peek token when starting path pratt parse: '::' > current token (just about to return path to null denotation): '(' > finished null denotation identifier path parsing - next is branching > beginning null denotation identifier handling > current peek token when starting path pratt parse: ',' > current token (just about to return path to null denotation): ',' > finished null denotation identifier path parsing - next is branching > beginning null denotation identifier handling > current peek token when starting path pratt parse: ')' > current token (just about to return path to null denotation): ')' > finished null denotation identifier path parsing - next is branching > beginning null denotation identifier handling > current peek token when starting path pratt parse: '.' > current token (just about to return path to null denotation): '.' > finished null denotation identifier path parsing - next is branching > SUCCESSFULLY PARSED CRATE > ran register_plugins (with no body) > SUCCESSFULLY REGISTERED PLUGINS > started injection > finished injection > SUCCESSFULLY FINISHED INJECTION > started expansion > finished expansion > SUCCESSFULLY FINISHED EXPANSION > /home/mark/gccrs/gcc/testsuite/rust.test/compile/methods1.rs:38:9: > warning: unused name 'sum' > 38 | let sum =3D rect.sum_x(); > | ^ > > Analyzing compilation unit > /home/mark/gccrs/gcc/testsuite/rust.test/compile/methods1.rs: In function > =E2=80=98Rectangle_sum_x=E2=80=99: > /home/mark/gccrs/gcc/testsuite/rust.test/compile/methods1.rs:26:5: error: > type mismatch in binary expression > 26 | fn sum_x(self) -> f64 { > | ^ > f64 > > > > > > D.227 =3D _2 + _4; > /home/mark/gccrs/gcc/testsuite/rust.test/compile/methods1.rs:26:5: > internal compiler error: =E2=80=98verify_gimple=E2=80=99 failed > 0x8b114e4 verify_gimple_in_seq(gimple*) > ../../gccrs/gcc/tree-cfg.c:5157 > 0x881a9e3 gimplify_body(tree_node*, bool) > ../../gccrs/gcc/gimplify.c:15401 > 0x881abb2 gimplify_function_tree(tree_node*) > ../../gccrs/gcc/gimplify.c:15472 > 0x8675c88 cgraph_node::analyze() > ../../gccrs/gcc/cgraphunit.c:670 > 0x8678a58 analyze_functions > ../../gccrs/gcc/cgraphunit.c:1236 > 0x8679641 symbol_table::finalize_compilation_unit() > ../../gccrs/gcc/cgraphunit.c:2514 > Please submit a full bug report, > with preprocessed source if appropriate. > Please include the complete backtrace with any bug report. > See for instructions. > -- > Gcc-rust mailing list > Gcc-rust@gcc.gnu.org > https://gcc.gnu.org/mailman/listinfo/gcc-rust > > Hi Mark, This is a good find I will open an issue to track this, I have a local Debian 32 bit machine at home so I can try this on later in the week. Off the top of my head I am wondering if there is something wrong with how we are building up the integer tree nodes. The relevant code starts in gcc/rust/backend/rust-compile-tyty.h inside ``` void visit (TyTy::IntType &type) override```. Let me know if you get anywhere with this before Friday since I will should be able to look into this issue then. --Phil --0000000000007feab505c3c5d7e5 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Tue, 1 Jun 2021 at 23:34, Mark Wielaard <mark@klomp.org> wrote:
Hi,

On Tue, Jun 01, 2021 at 12:31:02AM +0200, Mark Wielaard wrote:
> There are currently three builders, fedora-x86_64, debian-arm64 and > fedora-ppc64le which we know are zero fail. It would be nice to see > how 32bit (debian-i386 or debian-armhf) and big-endian (fedora-s390x > or fedora-ppc64) targets are doing. I haven't tried them yet.

I tried the simplest 32bit target, debian-i386 and it builds, but make
check-rust fails. It seems to have trouble processing f64
defintions/values.

mark@debian-i386:~/gccrs-build$ gcc/rust1 /home/mark/gccrs/gcc/testsuite/ru= st.test/compile/methods1.rs
Preparing to parse files.
Attempting to parse file: /home/mark/gccrs/gcc/testsuite/rust.test/compile/= methods= 1.rs
beginning null denotation identifier handling
current peek token when starting path pratt parse: '{'
current token (just about to return path to null denotation): '{' finished null denotation identifier path parsing - next is branching
values of lookahead: 'identifier' ':' 'float literal= 9; ','
can be struct expr: 'true', not a block: 'true'
struct/enum expr field validated to not be null
struct/enum expr field pushed back
struct/enum expr fields comma skipped
struct/enum expr field validated to not be null
struct/enum expr field pushed back
lack of comma detected in struct/enum expr fields - break
struct/enum expr about to parse struct base
struct/enum expr skipped right curly - done and ready to return
beginning null denotation identifier handling
current peek token when starting path pratt parse: '{'
current token (just about to return path to null denotation): '{' finished null denotation identifier path parsing - next is branching
values of lookahead: 'identifier' ':' 'identifier' = ','
can be struct expr: 'true', not a block: 'true'
beginning null denotation identifier handling
current peek token when starting path pratt parse: ','
current token (just about to return path to null denotation): ',' finished null denotation identifier path parsing - next is branching
struct/enum expr field validated to not be null
struct/enum expr field pushed back
struct/enum expr fields comma skipped
beginning null denotation identifier handling
current peek token when starting path pratt parse: '}'
current token (just about to return path to null denotation): '}' finished null denotation identifier path parsing - next is branching
struct/enum expr field validated to not be null
struct/enum expr field pushed back
lack of comma detected in struct/enum expr fields - break
struct/enum expr about to parse struct base
struct/enum expr skipped right curly - done and ready to return
successfully parsed inherent impl
beginning null denotation identifier handling
current peek token when starting path pratt parse: '{'
current token (just about to return path to null denotation): '{' finished null denotation identifier path parsing - next is branching
values of lookahead: 'identifier' ',' 'identifier' = '}'
can be struct expr: 'true', not a block: 'true'
struct/enum expr field validated to not be null
struct/enum expr field pushed back
struct/enum expr fields comma skipped
struct/enum expr field validated to not be null
struct/enum expr field pushed back
lack of comma detected in struct/enum expr fields - break
struct/enum expr about to parse struct base
struct/enum expr skipped right curly - done and ready to return
beginning null denotation self/self-alias/dollar/crate/super handling
current peek token when starting path pratt parse: '.'
current token (just about to return path to null denotation): '.' just finished parsing path (going to disambiguate) - peeked token is '.= '
beginning null denotation self/self-alias/dollar/crate/super handling
current peek token when starting path pratt parse: '.'
current token (just about to return path to null denotation): '.' just finished parsing path (going to disambiguate) - peeked token is '.= '
beginning null denotation identifier handling
current peek token when starting path pratt parse: '.'
current token (just about to return path to null denotation): '.' finished null denotation identifier path parsing - next is branching
beginning null denotation identifier handling
current peek token when starting path pratt parse: '.'
current token (just about to return path to null denotation): '.' finished null denotation identifier path parsing - next is branching
successfully parsed inherent impl
beginning null denotation identifier handling
current peek token when starting path pratt parse: '::'
current token (just about to return path to null denotation): '(' finished null denotation identifier path parsing - next is branching
beginning null denotation identifier handling
current peek token when starting path pratt parse: '::'
current token (just about to return path to null denotation): '(' finished null denotation identifier path parsing - next is branching
beginning null denotation identifier handling
current peek token when starting path pratt parse: '::'
current token (just about to return path to null denotation): '(' finished null denotation identifier path parsing - next is branching
beginning null denotation identifier handling
current peek token when starting path pratt parse: ','
current token (just about to return path to null denotation): ',' finished null denotation identifier path parsing - next is branching
beginning null denotation identifier handling
current peek token when starting path pratt parse: ')'
current token (just about to return path to null denotation): ')' finished null denotation identifier path parsing - next is branching
beginning null denotation identifier handling
current peek token when starting path pratt parse: '.'
current token (just about to return path to null denotation): '.' finished null denotation identifier path parsing - next is branching
SUCCESSFULLY PARSED CRATE
ran register_plugins (with no body)
SUCCESSFULLY REGISTERED PLUGINS
started injection
finished injection
SUCCESSFULLY FINISHED INJECTION
started expansion
finished expansion
SUCCESSFULLY FINISHED EXPANSION
/home/mark/gccrs/gcc/testsuite/rust.test/compile/methods1.rs:38:9: warning:= unused name 'sum'
=C2=A0 =C2=A038 |=C2=A0 =C2=A0 =C2=A0let sum =3D rect.sum_x();
=C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0^

Analyzing compilation unit
/home/mark/gccrs/gcc/testsuite/rust.test/compile/methods1.rs: In function =E2= =80=98Rectangle_sum_x=E2=80=99:
/home/mark/gccrs/gcc/testsuite/rust.test/compile/methods1.rs:26:5: error: t= ype mismatch in binary expression
=C2=A0 =C2=A026 |=C2=A0 =C2=A0 =C2=A0fn sum_x(self) -> f64 {
=C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0^
f64

<float:80>

<float:80>

D.227 =3D _2 + _4;
/home/mark/gccrs/gcc/testsuite/rust.test/compile/methods1.rs:26:5: internal= compiler error: =E2=80=98verify_gimple=E2=80=99 failed
0x8b114e4 verify_gimple_in_seq(gimple*)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ../../gccrs/gcc/tree-cfg.c:5157
0x881a9e3 gimplify_body(tree_node*, bool)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ../../gccrs/gcc/gimplify.c:15401
0x881abb2 gimplify_function_tree(tree_node*)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ../../gccrs/gcc/gimplify.c:15472
0x8675c88 cgraph_node::analyze()
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ../../gccrs/gcc/cgraphunit.c:670
0x8678a58 analyze_functions
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ../../gccrs/gcc/cgraphunit.c:1236
0x8679641 symbol_table::finalize_compilation_unit()
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ../../gccrs/gcc/cgraphunit.c:2514
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
--
Gcc-rust mailing list
Gcc-rust@gcc.gnu.= org
https://gcc.gnu.org/mailman/listinfo/gcc-rust




--0000000000007feab505c3c5d7e5--