From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50475) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y9uxD-00025u-SR for qemu-devel@nongnu.org; Sat, 10 Jan 2015 07:15:45 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y9ux8-0006PJ-HD for qemu-devel@nongnu.org; Sat, 10 Jan 2015 07:15:43 -0500 Received: from indium.canonical.com ([91.189.90.7]:42016) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y9ux8-0006P1-8G for qemu-devel@nongnu.org; Sat, 10 Jan 2015 07:15:38 -0500 Received: from loganberry.canonical.com ([91.189.90.37]) by indium.canonical.com with esmtp (Exim 4.76 #1 (Debian)) id 1Y9ux7-0003Fy-Fl for ; Sat, 10 Jan 2015 12:15:37 +0000 Received: from loganberry.canonical.com (localhost [127.0.0.1]) by loganberry.canonical.com (Postfix) with ESMTP id 570952E80C7 for ; Sat, 10 Jan 2015 12:15:37 +0000 (UTC) MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Date: Sat, 10 Jan 2015 12:10:17 -0000 From: Christopher Horler Sender: bounces@canonical.com References: <20140505120944.26804.90871.malonedeb@gac.canonical.com> Message-Id: <20150110121019.21401.3000.launchpad@soybean.canonical.com> Errors-To: bounces@canonical.com Subject: [Qemu-devel] [Bug 1316115] Re: linux-user qemu-arm NEON support Reply-To: Bug 1316115 <1316115@bugs.launchpad.net> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org ** Changed in: qemu Status: New =3D> Invalid -- = You received this bug notification because you are a member of qemu- devel-ml, which is subscribed to QEMU. https://bugs.launchpad.net/bugs/1316115 Title: linux-user qemu-arm NEON support Status in QEMU: Invalid Bug description: I was reading the mailing list and saw NEON support in QEmu was making progress. Is it not supported in user mode? or am I running into something else here? (I've tried to include some what may be useful information) using qemu from git (last commits as below): fdaad47 Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-a= rm-20140501' into staging e50bf23 Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' in= to staging c090c10 Merge remote-tracking branch 'remotes/cohuck/tags/kvm_cap_helpers= ' into staging (for completeness I should point out this is not actually libQtCore.so.4.6.2 - the SONAME shows libQt5Core.so.5). chorler@linux-foxtrot:~/projects/src/CustomFirmware> qemu-arm -L ./root .= /root/usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2 = qemu: unhandled CPU exception 0x2 - aborting R00=3D00000000 R01=3Df6c84fdd R02=3D00000000 R03=3D00000000 R04=3D00000000 R05=3D00000000 R06=3D00000000 R07=3D00000000 R08=3D00000000 R09=3D00000000 R10=3Df6ff9d80 R11=3D00000000 R12=3D00000000 R13=3Df6c84d90 R14=3D00000000 R15=3Df6cdef74 PSR=3D00000010 ---- A usr32 qemu: uncaught target signal 6 (Aborted) - core dumped Aborted = chorler@linux-foxtrot:~/projects/src/CustomFirmware> arm-linux-gnueabihf-= readelf -A ./root/usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so= .4.6.2 = Attribute Section: aeabi File Attributes Tag_CPU_name: "7-A" Tag_CPU_arch: v7 Tag_CPU_arch_profile: Application Tag_ARM_ISA_use: Yes Tag_THUMB_ISA_use: Thumb-2 Tag_FP_arch: VFPv3 Tag_Advanced_SIMD_arch: NEONv1 Tag_ABI_PCS_wchar_t: 4 Tag_ABI_FP_denormal: Needed Tag_ABI_FP_exceptions: Needed Tag_ABI_FP_number_model: IEEE 754 Tag_ABI_align_needed: 8-byte Tag_ABI_align_preserved: 8-byte, except leaf SP Tag_ABI_enum_size: int Tag_ABI_HardFP_use: SP and DP Tag_ABI_VFP_args: VFP registers Tag_ABI_optimization_goals: Aggressive Speed Tag_CPU_unaligned_access: v6 Tag_DIV_use: Not allowed chorler@linux-foxtrot:~/projects/src/CustomFirmware> gdb qemu-arm GNU gdb (GDB; openSUSE 13.1) 7.6.50.20130731-cvs Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-suse-linux". Type "show configuration" for configuration details. For bug reporting instructions, please see: . Find the GDB manual and other documentation resources online at: . For help, type "help". Type "apropos word" to search for commands related to "word". .. Reading symbols from /home/chorler/projects/bin/qemu-arm...done. (gdb) list main.c:685 680 681 for(;;) { 682 cpu_exec_start(cs); 683 trapnr =3D cpu_arm_exec(env); 684 cpu_exec_end(cs); 685 switch(trapnr) { 686 case EXCP_UDEF: 687 { 688 TaskState *ts =3D cs->opaque; 689 uint32_t opcode; (gdb) break main.c:685 Breakpoint 3 at 0x60059773: file /home/chorler/projects/src/qemu/linux-us= er/main.c, line 685. (gdb) run -L ./root ./root/usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/l= ibQtCore.so.4.6.2 Starting program: /home/chorler/projects/bin/qemu-arm -L ./root ./root/us= r/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2 [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Breakpoint 3, cpu_loop (env=3Denv@entry=3D0x6255e650) at /home/chorler/pr= ojects/src/qemu/linux-user/main.c:685 685 switch(trapnr) { (gdb) print trapnr $1 =3D 2 (gdb) n 762 if (trapnr =3D=3D EXCP_BKPT) { (gdb) n 760 env->eabi =3D 1; (gdb) n 762 if (trapnr =3D=3D EXCP_BKPT) { (gdb) n 775 if (env->thumb) { (gdb) n 777 get_user_code_u16(insn, env->regs[15] - 2, (gdb) n 775 if (env->thumb) { (gdb) n 782 get_user_code_u32(insn, env->regs[15] - 4, (gdb) n 784 n =3D insn & 0xffffff; (gdb) n 788 if (n =3D=3D ARM_NR_cacheflush) { (gdb) print n $2 =3D 587775 (gdb) n 790 } else if (n =3D=3D ARM_NR_semihosting (gdb) n 793 } else if (n =3D=3D 0 || n >=3D ARM_SYSCALL_BASE = || env->thumb) { (gdb) n 872 fprintf(stderr, "qemu: unhandled CPU exception 0x%x -= aborting\n", (gdb) n qemu: unhandled CPU exception 0x2 - aborting 874 cpu_dump_state(cs, stderr, fprintf, 0); (gdb) print env $3 =3D (CPUARMState *) 0x6255e650 (gdb) print *env $4 =3D {regs =3D {0, 4140322822, 0, 0, 0, 0, 0, 0, 0, 0, 4143947136, 0, 0= , 4140322224, 0, 4140691316}, xregs =3D {0 }, pc =3D 0, p= state =3D 0, aarch64 =3D 0, uncached_cpsr =3D 16, = spsr =3D 0, banked_spsr =3D {0, 0, 0, 0, 0, 0}, banked_r13 =3D {0, 0, 0= , 0, 0, 0}, banked_r14 =3D {0, 0, 0, 0, 0, 0}, usr_regs =3D {0, 0, 0, 0, 0}= , fiq_regs =3D {0, 0, 0, 0, 0}, CF =3D 0, VF =3D 0, = NF =3D 16, ZF =3D 1073741824, QF =3D 0, GE =3D 0, thumb =3D 0, condexec= _bits =3D 0, daif =3D 0, elr_el1 =3D 0, sp_el =3D {0, 0}, cp15 =3D {c0_cpui= d =3D 0, c0_cssel =3D 0, c1_sys =3D 0, c1_coproc =3D 15728640, = c1_xscaleauxcr =3D 0, c1_scr =3D 0, ttbr0_el1 =3D 0, ttbr1_el1 =3D 0,= c2_control =3D 0, c2_mask =3D 0, c2_base_mask =3D 4294950912, c2_data =3D = 0, c2_insn =3D 0, c3 =3D 0, pmsav5_data_ap =3D 0, = pmsav5_insn_ap =3D 0, ifsr_el2 =3D 0, esr_el1 =3D 0, c6_region =3D {0= , 0, 0, 0, 0, 0, 0, 0}, far_el1 =3D 0, par_el1 =3D 0, c9_insn =3D 0, c9_dat= a =3D 0, c9_pmcr =3D 0, c9_pmcnten =3D 0, c9_pmovsr =3D 0, = c9_pmxevtyper =3D 0, c9_pmuserenr =3D 0, c9_pminten =3D 0, mair_el1 = =3D 0, c12_vbar =3D 0, c13_fcse =3D 0, contextidr_el1 =3D 0, tpidr_el0 =3D = 0, tpidrro_el0 =3D 0, tpidr_el1 =3D 0, c14_cntfrq =3D 0, = c14_cntkctl =3D 0, c14_timer =3D {{cval =3D 0, ctl =3D 0}, {cval =3D = 0, ctl =3D 0}}, c15_cpar =3D 0, c15_ticonfig =3D 0, c15_i_max =3D 0, c15_i_= min =3D 0, c15_threadid =3D 0, c15_config_base_address =3D 0, = c15_diagnostic =3D 0, c15_power_diagnostic =3D 0, c15_power_control = =3D 0, dbgbvr =3D {0 }, dbgbcr =3D {0 }= , dbgwvr =3D {0 }, dbgwcr =3D { 0 }, c15_ccnt =3D 0}, v7m =3D {other_sp =3D 0, ve= cbase =3D 0, basepri =3D 0, control =3D 0, current_sp =3D 0, exception =3D = 0, pending_exception =3D 0}, exception =3D { syndrome =3D 1174468607, fsr =3D 0, vaddress =3D 0}, teecr =3D 0, tee= hbr =3D 0, vfp =3D {regs =3D {0 }, xregs =3D {0, 0, 0, 0,= 0, 0, 0, 0, 1073741824, 0, 0, 0, 0, 0, 0, 0}, = vec_len =3D 0, vec_stride =3D 0, scratch =3D {0, 0, 0, 0, 0, 0, 0, 0}= , fp_status =3D {float_detect_tininess =3D 1 '\001', float_rounding_mode = =3D 0 '\000', float_exception_flags =3D 0 '\000', = floatx80_rounding_precision =3D 0 '\000', flush_to_zero =3D 0 '\000= ', flush_inputs_to_zero =3D 0 '\000', default_nan_mode =3D 0 '\000'}, stand= ard_fp_status =3D {float_detect_tininess =3D 1 '\001', = float_rounding_mode =3D 0 '\000', float_exception_flags =3D 0 '\000= ', floatx80_rounding_precision =3D 0 '\000', flush_to_zero =3D 1 '\001', fl= ush_inputs_to_zero =3D 1 '\001', = default_nan_mode =3D 1 '\001'}}, exclusive_addr =3D 0, exclusive_va= l =3D 0, exclusive_high =3D 0, exclusive_test =3D 0, exclusive_info =3D 0, = iwmmxt =3D {regs =3D {0 }, val =3D 0, = cregs =3D {0 }}, bswap_code =3D false, eabi =3D 1, = features =3D 93977026291, nvic =3D 0x0, boot_info =3D 0x0} (gdb) quit A debugging session is active. Inferior 1 [process 13185] will be killed. Quit anyway? (y or n) y To manage notifications about this bug go to: https://bugs.launchpad.net/qemu/+bug/1316115/+subscriptions