From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 6D878DE0 for ; Fri, 23 Sep 2016 08:42:38 +0200 (CEST) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga102.jf.intel.com with ESMTP; 22 Sep 2016 23:42:37 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.30,380,1470726000"; d="scan'208";a="1055204675" Received: from yliu-dev.sh.intel.com (HELO yliu-dev) ([10.239.67.162]) by orsmga002.jf.intel.com with ESMTP; 22 Sep 2016 23:42:36 -0700 Date: Fri, 23 Sep 2016 14:43:05 +0800 From: Yuanhan Liu To: Jerin Jacob Cc: dev@dpdk.org Message-ID: <20160923064305.GV23158@yliu-dev.sh.intel.com> References: <1471938058-12385-1-git-send-email-yuanhan.liu@linux.intel.com> <1474611309-20325-1-git-send-email-yuanhan.liu@linux.intel.com> <20160923063513.GA4321@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160923063513.GA4321@localhost.localdomain> User-Agent: Mutt/1.5.23 (2014-03-12) Subject: Re: [dpdk-dev] [PATCH v2] net/virtio: fix build error with clang X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Sep 2016 06:42:38 -0000 On Fri, Sep 23, 2016 at 12:05:14PM +0530, Jerin Jacob wrote: > On Fri, Sep 23, 2016 at 02:15:09PM +0800, Yuanhan Liu wrote: > > Hi Yuanhan, > > Thanks for this patch. > > > Interestingly, clang and gcc has different prototype for _mm_prefetch(). > > For gcc, we have > > > > _mm_prefetch (const void *__P, enum _mm_hint __I) > > > > While for clang, it's > > > > #define _mm_prefetch(a, sel) (__builtin_prefetch((void *)(a), 0, (sel))) > > > > That how the following error comes with clang: > > > > error: cast from 'const void *' to 'void *' drops const qualifier > > [-Werror,-Wcast-qual] > > _mm_prefetch((const void *)rused, _MM_HINT_T0); > > /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/xmmintrin.h:684:58: > > note: expanded from macro '_mm_prefetch' > > #define _mm_prefetch(a, sel) (__builtin_prefetch((void *)(a), > > 0, (sel))) > > > > What's weird is that the build was actaully Okay before. I met it while > > apply Jerin's vector support for ARM patch set: he just move this peiece > > of code to another file, nothing else changed. > > > > This patch fix the issue when Jerin's patchset is applied. Thus, I think > > it's still needed. > > The info notes can be moved under the "---" marker line to make git log > clean. Yes, kind of. The reason I want to put it here is to stree "how weird this issue it is" :) Without this piece, people may be confused why this patch is necessary, because they may simply can't reproduce this issue. > This patch review is holding the virtio arm NEON support. Appreciate any help > in reviewing this patch. > > http://dpdk.org/dev/patchwork/patch/14567/ I meant to apply this series long time ago, until I found a build issue. I tried to fix it once, as you saw. But it somehow broke the icc. And here is my 2nd try (sorry for being a bit late though). --yliu