From owner-freebsd-current@freebsd.org Mon Sep 21 07:43:05 2020 Return-Path: Delivered-To: freebsd-current@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 93D903E918F; Mon, 21 Sep 2020 07:43:05 +0000 (UTC) (envelope-from arichardson.kde@gmail.com) Received: from mail-ej1-f46.google.com (mail-ej1-f46.google.com [209.85.218.46]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BvxHr2lz2z3cdx; Mon, 21 Sep 2020 07:43:04 +0000 (UTC) (envelope-from arichardson.kde@gmail.com) Received: by mail-ej1-f46.google.com with SMTP id p9so16305001ejf.6; Mon, 21 Sep 2020 00:43:04 -0700 (PDT) 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=RUOEmwn95QbJNL9wkB7JKdUyz2lAtuoZE830wg4gYUE=; b=JKrVMAyMQGX5JlIFUV1Xr82ocqAjBFDq+hoeDXkRAb79OAKuu2pzHOikI+OMTYlsIk 6c7npwZ7Cx2e1tbu6rO3ynuZx0JEpyh94AhTNyAnnz03jQvgMbayo+ODAgxhzkV6QPAn Kn0fG9bxOJQEFjSEtyMEJQz18lUqjRHhHh2G3OeevslVWfcg9pP080PbzTL7GP28qjrY Es8rV3zAsil3nFa5XoLoc4ZnlDLOKW1dEAt8B7rCiUkfLCJxLC9bVsfYkPxoxErr/pI3 SIBGyV64DX0diurx9ZcP/GIzyDSuOzTxi8WUwKbys5ItHccIFVPC/jTNl3aIs56EZqLn /XLQ== X-Gm-Message-State: AOAM532pDHcrqSCA+xFbu99bLmYBVsty9kRWtbavZayfaZ0+Bf+n9SCF dSQIIL6cpc+xhi7ZJ5msoJSQq4XyWVLs/w== X-Google-Smtp-Source: ABdhPJwcWBlXcmnmReqxFih/K6rQ10S9WuRAQQ+pcvGzD6UXMBjfvRca9JsosEh3lAuZpDpsCcTlAw== X-Received: by 2002:a17:906:4a07:: with SMTP id w7mr48302259eju.366.1600674182968; Mon, 21 Sep 2020 00:43:02 -0700 (PDT) Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com. [209.85.128.41]) by smtp.gmail.com with ESMTPSA id f21sm8064012edw.83.2020.09.21.00.43.02 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 21 Sep 2020 00:43:02 -0700 (PDT) Received: by mail-wm1-f41.google.com with SMTP id y15so11471912wmi.0; Mon, 21 Sep 2020 00:43:02 -0700 (PDT) X-Received: by 2002:a1c:4b04:: with SMTP id y4mr28414427wma.111.1600674182409; Mon, 21 Sep 2020 00:43:02 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Alexander Richardson Date: Mon, 21 Sep 2020 08:42:49 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: mips32 + gcc9 -- still broken To: Adrian Chadd Cc: freebsd-current , freebsd-mips@freebsd.org X-Rspamd-Queue-Id: 4BvxHr2lz2z3cdx X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.30 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_TLS_ALL(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17:c]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; MIME_TRACE(0.00)[0:+,1:+,2:~]; DMARC_NA(0.00)[freebsd.org]; TO_DN_SOME(0.00)[]; NEURAL_HAM_LONG(-1.00)[-0.995]; RCVD_COUNT_THREE(0.00)[4]; RWL_MAILSPIKE_GOOD(0.00)[209.85.218.46:from]; NEURAL_HAM_SHORT(-0.34)[-0.338]; RCVD_IN_DNSWL_NONE(0.00)[209.85.218.46:from]; NEURAL_HAM_MEDIUM(-0.97)[-0.966]; FORGED_SENDER(0.30)[arichardson@freebsd.org,arichardsonkde@gmail.com]; R_DKIM_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; FROM_NEQ_ENVFROM(0.00)[arichardson@freebsd.org,arichardsonkde@gmail.com]; TAGGED_FROM(0.00)[]; MAILMAN_DEST(0.00)[freebsd-current,freebsd-mips] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.33 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2020 07:43:05 -0000 On Mon, 21 Sep 2020, 07:38 Adrian Chadd, wrote: > So, the big list of unknown symbols was my fault! Whoops. > > i've gotten further using gcc-6.4 by fixing some of the warnings/issues > that have crept up. > > Here's a review for one of them: > > https://reviews.freebsd.org/D26504 > > However, now I've hit: > > /usr/local/bin/mips-unknown-freebsd13.0-ld: > > /usr/home/adrian/work/freebsd/head-embedded/obj/mips_ap/usr/home/adrian/work/freebsd/head-embedded/src/mips.mips/tmp/usr/lib/libc++.so.1: > undefined reference to `__atomic_fetch_sub_8' > /usr/local/bin/mips-unknown-freebsd13.0-ld: > > /usr/home/adrian/work/freebsd/head-embedded/obj/mips_ap/usr/home/adrian/work/freebsd/head-embedded/src/mips.mips/tmp/usr/lib/libc++.so.1: > undefined reference to `__atomic_load_8' > /usr/local/bin/mips-unknown-freebsd13.0-ld: > > /usr/home/adrian/work/freebsd/head-embedded/obj/mips_ap/usr/home/adrian/work/freebsd/head-embedded/src/mips.mips/tmp/usr/lib/libc++.so.1: > undefined reference to `__atomic_fetch_add_8' > > .. looks like we need some 64 bit atomics now in mips32 for libc++ / devd > Those are now provided by compiler-rt when using clang. With GCC you'll have to link libatomic. I had a quick look at the code in libc++ that uses the 64-bit atomics a few weeks ago and I believe it's the futex fallback code. The best solution would probably be to port it to use umtx but for MIPS32 it might be fine to use a 32 bit atomic instead. Alex >