This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: Change in binutils-gdb[master]: [gdb/tdep] Fix 'Unexpected register class' assert in amd64_push_argum...
- From: Alan Hayward <Alan dot Hayward at arm dot com>
- To: Tom de Vries <tdevries at suse dot de>, Simon Marchi <simon dot marchi at polymtl dot ca>, Andrew Burgess <andrew dot burgess at embecosm dot com>, "gdb-patches\\@sourceware.org" <gdb-patches at sourceware dot org>
- Cc: nd <nd at arm dot com>
- Date: Wed, 16 Oct 2019 11:08:42 +0000
- Subject: Re: Change in binutils-gdb[master]: [gdb/tdep] Fix 'Unexpected register class' assert in amd64_push_argum...
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4JC9SH2tNpAGt29RN98h/uAUQdJivfHeJEetbo0s2W4=; b=NGlUZbaT+Rjx6DoPb02WHdQJCUI594sBLOWAnrpGftvRvJB1Q9lnhoq/jGlOkbUbdEWR9h5oRmEM+VwA0IsXfxsovAI1Pco8PY7zY8OeX0xBZcKDAfwJ84x9MYpNChthpwcnxoW9hKIarrlOhX08a1PuNO5rpwKhr5x/kwtNhYPjjujSg046waKV0zwcYhrBWAQwi4xaa9infRV//DEcsOALzQTwZm3RTliCR1PCjNhC4DNYe9zCHTJ4wLU99H95CSBJ1NJe5IVI7aBfGBh5atViX5auaQnGL4AZZKW1MFmPtGvN7ga1WeHO2WOxsKF6ddnFoql2z/vKdY0duWMpvw==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bw78HuIWkvp6aYtXMxsOux0QW1gm57fC8fZsM1liRUrlVc1R0aI4ffXp880BY8eCNrmk0iMjdjNoKusOiplkcA1V5xEyf0WmN0ouDDDtklNYbf+xwXPsOdDzYFIFz93BVt+dl3A48o6TpNAjXEBrUYKZz1DRBMlLmAw+/UuYs+gIIZrwiCxq96jaxyGcCYU46Dn7V/uhUkeUd4VXtMtju75Ml+bEuRus0Rynl7In3usVSzTmSCBmkN33S2jLviJpbD34WXG5EhUiCXudDWKUnLv3XzdAI0K4koIElLS7CUTFDpIfaBmFdXBaORmQbdDpjCQebhBSLBBhXdQdlnMm7A==
- Original-authentication-results: spf=none (sender IP is ) smtp.mailfrom=Alan dot Hayward at arm dot com;
- References: <5A0DCAF8-4BFF-49C2-86C7-5E9C5B5A911B@arm.com> <8811FC3D-F8EB-4711-89E3-BE46423C40A8@arm.com>
> On 15 Oct 2019, at 18:23, Alan Hayward <Alan.Hayward@arm.com> wrote:
>
>
>
>> On 15 Oct 2019, at 09:04, Tom de Vries (Code Review) <gerrit@gnutoolchain-gerrit.osci.io> wrote:
>>
>> Tom de Vries has posted comments on this change.
>>
>> Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/30
>> ......................................................................
>>
>>
>> Patch Set 1:
>>
>> https://sourceware.org/ml/gdb-patches/2019-10/msg00343.html:
>> ...
>> On 14-10-2019 15:10, Alan Hayward wrote:
>>>> This exposes 9 more FAILs of the PR tdep/25096 type, so mark all 12 of them as
>>>> KFAIL.
>>> When I run the test, I get three unexpected passes:
>>>
>>>
>>> # of expected passes 9388
>>> # of unknown successes 3
>>> # of known failures 9
>>>
>>> KPASS: gdb.base/infcall-nested-structs.exp: l=c++: types-tc-tf: p/d check_arg_struct_02_01 (ref_val_struct_02_01) (PRMS gdb/25096)
>>> KPASS: gdb.base/infcall-nested-structs.exp: l=c++: types-ts-tf: p/d check_arg_struct_02_01 (ref_val_struct_02_01) (PRMS gdb/25096)
>>> KPASS: gdb.base/infcall-nested-structs.exp: l=c++: types-ti-tf: p/d check_arg_struct_02_01 (ref_val_struct_02_01) (PRMS gdb/25096)
>>
>> That could be due to registers happening to have the correct value.
>>
>> Do these turn into KFAILs if you add:
>> ...
>> diff --git a/gdb/testsuite/gdb.base/infcall-nested-structs.exp
>> b/gdb/testsuite/gdb.base/infcall-nested-structs.
>> exp
>> index 957eb31bdc2..f62f636aa11 100644
>> --- a/gdb/testsuite/gdb.base/infcall-nested-structs.exp
>> +++ b/gdb/testsuite/gdb.base/infcall-nested-structs.exp
>> @@ -134,6 +134,7 @@ proc run_tests { lang types } {
>>
>> if { $lang == "c++" && $name == "struct_02_01"
>> && [regexp "^types-(tf-t(c|s|i)|t(c|s|i)-tf)" $types match] } {
>> + gdb_test_no_output "set \$xmm0.v2_int64\[0\] = 0"
>> setup_kfail gdb/25096 "x86_64-*-linux*"
>> }
>> gdb_test "p/d check_arg_${name} (ref_val_${name})" "= 1"
>> ...
>> ?
>> ...
>
> I still get KPASSes with that change.
> Also tried adding the line to the next block in the test with the same if statements, but it didn’t help.
>
>
Sorry, ignore my comment.
I was accidentally running using the 8.3 branch.
When I use the latest master, it all works for me.
Alan.
> If it helps, my system is:
>
> Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-142-generic x86_64)
>
>
> End of /proc/cpuinfo:
>
> processor : 55
> vendor_id : GenuineIntel
> cpu family : 6
> model : 79
> model name : Intel(R) Xeon(R) CPU E5-2690 v4 @ 2.60GHz
> stepping : 1
> microcode : 0xb000036
> cpu MHz : 1200.000
> cache size : 35840 KB
> physical id : 1
> siblings : 28
> core id : 14
> cpu cores : 14
> apicid : 61
> initial apicid : 61
> fpu : yes
> fpu_exception : yes
> cpuid level : 20
> wp : yes
> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch epb invpcid_single intel_pt ssbd ibrs ibpb stibp kaiser tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm rdseed adx smap xsaveopt cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts flush_l1d
> bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf
> bogomips : 5196.88
> clflush size : 64
> cache_alignment : 64
> address sizes : 46 bits physical, 48 bits virtual
> power management:
>
>
>