From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30368 invoked by alias); 25 Oct 2016 15:44:10 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 30279 invoked by uid 89); 25 Oct 2016 15:44:09 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-1.1 required=5.0 tests=BAYES_00,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_LOW,RCVD_IN_SEMBACKSCATTER,URIBL_RED autolearn=no version=3.3.2 spammy=oregon, czech, Oregon, osu X-HELO: mx0a-001b2d01.pphosted.com From: "Tulio Magno Quites Machado Filho" To: Joseph Myers , libc-alpha@sourceware.org Cc: munroesj@linux.vnet.ibm.com Cc: Subject: Re: Fix cmpli usage in power6 memset In-Reply-To: References: User-Agent: Notmuch/0.20.2 (http://notmuchmail.org) Emacs/24.4.51.1 (x86_64-unknown-linux-gnu) Date: Tue, 25 Oct 2016 15:44:00 -0000 MIME-Version: 1.0 Content-Type: text/plain X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 16102515-0028-0000-0000-0000015D2C3A X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 16102515-0029-0000-0000-000014515DF5 Message-Id: <87eg34xwll.fsf@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2016-10-25_15:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1609300000 definitions=main-1610250260 X-SW-Source: 2016-10/txt/msg00429.txt.bz2 Joseph Myers writes: > Building glibc for powerpc64 with recent (2.27.51.20161012) binutils, > with multi-arch enabled, I get the error: > > ../sysdeps/powerpc/powerpc64/power6/memset.S: Assembler messages: > ../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: operand out of range (5 is not between 0 and 1) > ../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: operand out of range (128 is not between 0 and 31) > ../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: missing operand > > Indeed, cmpli is documented as a four-operand instruction, and looking > at nearby code it seems likely cmpldi was intended. This patch fixes > this powerpc64 code accordingly, and makes a corresponding change to > the powerpc32 code. > > Note: this patch is not tested beyond verifying that the powerpc64 > code builds where it failed to build before the patch. In particular, > I have not done execution testing Tested on powerpc, powerpc64 and powerpc64le. LGTM. > (the systems I usually use for > testing powerpc are pre-power6 so wouldn't use this code) or tested > the powerpc32 change. In case you want to have access to POWER8 servers, some universities provide free access to virtual machines for the open source community: - MiniCloud - State University of Campinas (Unicamp), Brazil http://openpower.ic.unicamp.br/minicloud/ - Open Power Hub - Brno University of Technology, Czech Republic http://fit-rhlab.rhcloud.com/powerlinux-openpower-development-hosting/ - OSU Open Source Lab - Oregon State University, US http://osuosl.org/services/powerdev/ - SuperVessel - IBM China https://ptopenlab.com/cloudlabconsole -- Tulio Magno