Re: PATCH: Extend gdb remote protocol for AVX

H.J. Lu
2008-10-28T05:59:40Z

On Sun, Oct 12, 2008 at 3:17 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Sun, Oct 12, 2008 at 6:37 AM, Mark Kettenis <mark.kettenis@xs4all.nl> wrote:
>>> Gcc 4.4 supports AVX. Gcc uses the same register number internally
>>> for xmm0 and ymm0. It has no problems with register allocator.
>>
>> I guess that makes sense. Otherwise the register allocator might
>> think it can use xmm0 independently from ymm0.
>>
>>> > We really should make sure the DWARF register number mapping in the
>>> > AMD64 psABI gets updated for these new registers. Given the way the
>>> > current mapping us defined for %stN and %mmN, it probably makes sense
>>> > to give %ymmN their own numbers.
>>> >
>>>
>>> The AVX x86-64 psABI extension is at
>>>
>>> http://gcc.gnu.org/ml/gcc/2008-06/msg00408.html
>>>
>>> The ia32 psABI extension is similar to SSE. The only difference is
>>> __m256 requires 32byte alignment, instead of 16btye.
>>
>> And it doesn't mention the DWARF debug register mapping. That's sad.
>>
>>> I removed AVX register map:
>>>
>>> http://sourceware.org/ml/binutils/2008-08/msg00010.html
>>>
>>> since xmm/ymm registers are all caller-saved and there are
>>> no xmm/ymm registers in unwind info.
>>
>> That's a mistake. Unwind info for signal handlers should mention
>> xmm/ymm registers. Although I'm not sure how one would express the
>> xsave layout in DWARF.
>
> I removed ymm register map. But I reserved those ranges for future
> ymm register use. If it turns out that we really need them, we can
> reenable the map. So far I haven't found xmm register map is used
> anywhere, including signal handler.
>
>>
>>> For debug info, we can tell ymm from xmm with data size.
>>
>> But what should "info address" display for a variable stored in a %ymm
>> register? If we can't distinguish between the two, we'll probably end
>> up printing %xmm.
>>
>
> We can treat variables in xmm/ymm the same way as variables in al/ax/eax/rax.
>
> Thanks.
>

Are there any objections to my AVX patch?

Thanks.

--
H.J.