From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by sourceware.org (Postfix) with ESMTP id 7F27E3858C2F for ; Thu, 25 Aug 2022 10:28:45 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 7F27E3858C2F Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=foss.arm.com Authentication-Results: sourceware.org; spf=none smtp.mailfrom=foss.arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A7D421042; Thu, 25 Aug 2022 03:28:49 -0700 (PDT) Received: from [10.2.78.60] (unknown [10.2.78.60]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id AC9EA3FAF5; Thu, 25 Aug 2022 03:28:44 -0700 (PDT) Message-ID: Date: Thu, 25 Aug 2022 11:28:43 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Subject: Re: Warning: conditional outside an IT block for Thumb. Content-Language: en-GB To: Mathieu Malaterre , gcc-help References: From: Richard Earnshaw In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-3490.5 required=5.0 tests=BAYES_00,KAM_DMARC_STATUS,KAM_LAZY_DOMAIN_SECURITY,NICE_REPLY_A,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On 25/08/2022 07:40, Mathieu Malaterre via Gcc-help wrote: > Hi all, > > I am seeing a flood of warnings when compiling openvdb+tbb on Debian/armel: > > [...] > [ 2%] Building CXX object > openvdb/openvdb/CMakeFiles/openvdb_shared.dir/io/Archive.cc.o > cd /<>/obj-arm-linux-gnueabi/openvdb/openvdb && > /usr/bin/c++ -DBOOST_ALL_NO_LIB -DBOOST_IOSTREAMS_DYN_LINK > -DOPENVDB_DLL -DOPENVDB_PRIVATE -DOPENVDB_USE_LOG4CPLUS > -Dopenvdb_shared_EXPORTS -I/< GBUILDDIR>>/openvdb/openvdb/.. > -I/<>/obj-arm-linux-gnueabi/openvdb/openvdb > -I/<>/obj-arm-linux-gnueabi/openvdb/openvdb/openvdb > -I/<>/openvdb/openvdb/. -I/usr/include/Imat > h -g -O2 -ffile-prefix-map=/<>=. -fstack-protector-strong > -Wformat -Werror=format-security -Wno-psabi -fvisibility=hidden > -fvisibility-inlines-hidden -Wa,-mimplicit-it=thumb -Wdate-time > -D_FORTIFY > _SOURCE=2 -fPIC -std=c++17 -MD -MT > openvdb/openvdb/CMakeFiles/openvdb_shared.dir/Grid.cc.o -MF > CMakeFiles/openvdb_shared.dir/Grid.cc.o.d -o > CMakeFiles/openvdb_shared.dir/Grid.cc.o -c /<>/openvdb/o > penvdb/Grid.cc > cd /<>/obj-arm-linux-gnueabi/openvdb/openvdb && > /usr/bin/c++ -DBOOST_ALL_NO_LIB -DBOOST_IOSTREAMS_DYN_LINK > -DOPENVDB_DLL -DOPENVDB_PRIVATE -DOPENVDB_USE_LOG4CPLUS > -Dopenvdb_shared_EXPORTS -I/< GBUILDDIR>>/openvdb/openvdb/.. > -I/<>/obj-arm-linux-gnueabi/openvdb/openvdb > -I/<>/obj-arm-linux-gnueabi/openvdb/openvdb/openvdb > -I/<>/openvdb/openvdb/. -I/usr/include/Imat > h -g -O2 -ffile-prefix-map=/<>=. -fstack-protector-strong > -Wformat -Werror=format-security -Wno-psabi -fvisibility=hidden > -fvisibility-inlines-hidden -Wa,-mimplicit-it=thumb -Wdate-time > -D_FORTIFY > _SOURCE=2 -fPIC -std=c++17 -MD -MT > openvdb/openvdb/CMakeFiles/openvdb_shared.dir/io/Archive.cc.o -MF > CMakeFiles/openvdb_shared.dir/io/Archive.cc.o.d -o > CMakeFiles/openvdb_shared.dir/io/Archive.cc.o -c /< ILDDIR>>/openvdb/openvdb/io/Archive.cc > /tmp/ccFlliCl.s: Assembler messages: > /tmp/ccFlliCl.s:294: Warning: conditional outside an IT block for Thumb. > /tmp/ccFlliCl.s:338: Warning: conditional outside an IT block for Thumb. > [...] > > There are so many warnings that it eventually times out the compilation. > > I could not find a way to tell gcc not to print a warning. Is there a > way to remove this warning ? The warning is coming from the assembler. But I don't think it should be just 'ignored'. You'll need to track down why it's happening at all. The most likely case is that there is some inlined assembly code somewhere that was written on the assumption that the compiler would be targeting the A32 state rather than the T32 state (thumb), but there's not enough information here to work out what's happened for sure. What we need is a snippet of the assembler output when compiled with debugging information, so that we can track back to the source code that is generating this. > > For reference the very large log: > > * https://buildd.debian.org/status/fetch.php?pkg=openvdb&arch=armel&ver=9.1.0-4&stamp=1661358853&raw=0 > > Thanks much, The log isn't much help, it's the contents of the file that's being assembled that will tell us what we need to know. R.