[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202505121349.qq0nmtYa-lkp@intel.com>
Date: Mon, 12 May 2025 13:40:17 +0800
From: kernel test robot <lkp@...el.com>
To: Shahab Vahedi <shahab@...opsys.com>
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
linux-snps-arc@...ts.infradead.org,
Alexei Starovoitov <ast@...nel.org>
Subject: arch/arc/net/bpf_jit_arcv2.c:2236:3: error: label at end of compound
statement
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 82f2b0b97b36ee3fcddf0f0780a9a0825d52fec3
commit: f122668ddcce450c2585f0be4bf4478d6fd6176b ARC: Add eBPF JIT support
date: 12 months ago
config: arc-randconfig-001-20250512 (https://download.01.org/0day-ci/archive/20250512/202505121349.qq0nmtYa-lkp@intel.com/config)
compiler: arc-linux-gcc (GCC) 8.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250512/202505121349.qq0nmtYa-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202505121349.qq0nmtYa-lkp@intel.com/
All errors (new ones prefixed by >>):
arch/arc/net/bpf_jit_arcv2.c: In function 'gen_swap':
>> arch/arc/net/bpf_jit_arcv2.c:2236:3: error: label at end of compound statement
default:
^~~~~~~
arch/arc/net/bpf_jit_arcv2.c:2254:3: error: label at end of compound statement
default:
^~~~~~~
arch/arc/net/bpf_jit_arcv2.c: In function 'gen_jmp_64':
arch/arc/net/bpf_jit_arcv2.c:2867:2: error: label at end of compound statement
default:
^~~~~~~
--
{standard input}: Assembler messages:
>> {standard input}:315: Error: flag mismatch for instruction 'mpydu'
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for FB_IOMEM_HELPERS
Depends on [n]: HAS_IOMEM [=y] && FB_CORE [=n]
Selected by [m]:
- DRM_XE_DISPLAY [=y] && HAS_IOMEM [=y] && DRM_XE [=m] && DRM_XE [=m]=m
vim +2236 arch/arc/net/bpf_jit_arcv2.c
2199
2200 u8 gen_swap(u8 *buf, u8 rd, u8 size, u8 endian, bool force, bool do_zext)
2201 {
2202 u8 len = 0;
2203 #ifdef __BIG_ENDIAN
2204 const u8 host_endian = BPF_FROM_BE;
2205 #else
2206 const u8 host_endian = BPF_FROM_LE;
2207 #endif
2208 if (host_endian != endian || force) {
2209 switch (size) {
2210 case 16:
2211 /*
2212 * r = B4B3_B2B1 << 16 --> r = B2B1_0000
2213 * then, swape(r) would become the desired 0000_B1B2
2214 */
2215 len = arc_asli_r(buf, REG_LO(rd), REG_LO(rd), 16);
2216 fallthrough;
2217 case 32:
2218 len += arc_swape_r(BUF(buf, len), REG_LO(rd));
2219 if (do_zext)
2220 len += zext(BUF(buf, len), rd);
2221 break;
2222 case 64:
2223 /*
2224 * swap "hi" and "lo":
2225 * hi ^= lo;
2226 * lo ^= hi;
2227 * hi ^= lo;
2228 * and then swap the bytes in "hi" and "lo".
2229 */
2230 len = arc_xor_r(buf, REG_HI(rd), REG_LO(rd));
2231 len += arc_xor_r(BUF(buf, len), REG_LO(rd), REG_HI(rd));
2232 len += arc_xor_r(BUF(buf, len), REG_HI(rd), REG_LO(rd));
2233 len += arc_swape_r(BUF(buf, len), REG_LO(rd));
2234 len += arc_swape_r(BUF(buf, len), REG_HI(rd));
2235 break;
> 2236 default:
2237 /* The caller must have handled this. */
2238 }
2239 } else {
2240 /*
2241 * If the same endianness, there's not much to do other
2242 * than zeroing out the upper bytes based on the "size".
2243 */
2244 switch (size) {
2245 case 16:
2246 len = arc_and_i(buf, REG_LO(rd), 0xffff);
2247 fallthrough;
2248 case 32:
2249 if (do_zext)
2250 len += zext(BUF(buf, len), rd);
2251 break;
2252 case 64:
2253 break;
2254 default:
2255 /* The caller must have handled this. */
2256 }
2257 }
2258
2259 return len;
2260 }
2261
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists