On Tue, Oct 13, 2015 at 1:53 PM, Ramana Radhakrishnan
<ramana.radhakrish...@foss.arm.com> wrote:
>
>
>
> On 12/10/15 21:44, Jeff Law wrote:
>> On 10/09/2015 03:17 AM, Ramana Radhakrishnan wrote:
>>> This started as a Friday afternoon project ...
>>>
>>> It turned out enabling VTV for AArch64 and ARM was a matter of fixing
>>> PR67868 which essentially comes from building libvtv with section
>>> anchors turned on. The problem was that the flow of control from
>>> output_object_block through to switch_section did not have the same
>>> special casing for the vtable section that exists in
>>> assemble_variable.
>> That's some ugly code.  You might consider factoring that code into a 
>> function and just calling it from both places.  Your version doesn't seem to 
>> handle PECOFF, so I'd probably refactor from assemble_variable.
>>
>
> I was a bit lazy as I couldn't immediately think of a target that would want 
> PECOFF, section anchors and VTV. That combination seems to be quite rare, 
> anyway point taken on the refactor.
>
> Ok if no regressions ?

Ping.

Ramana

>
>>>
>>> However both these failures also occur on x86_64 - so I'm content to
>>> declare victory on AArch64 as far as basic enablement goes.
>> Cool.
>>
>>>
>>> 1. Are the generic changes to varasm.c ok ? 2. Can we take the
>>> AArch64 support in now, given this amount of testing ? Marcus /
>>> Caroline ? 3. Any suggestions / helpful debug hints for VTV debugging
>>> (other than turning VTV_DEBUG on and inspecting trace) ?
>> I think that with refactoring they'd be good to go.  No opinions on the 
>> AArch64 specific question -- call for the AArch64 maintainers.
>>
>> Good to see someone hacking on vtv.  It's in my queue to look at as well.
>
> Yeah figuring out more about vtv is also in my background queue.
>
> regards
> Ramana
>
> PR other/67868
>
> * varasm.c (assemble_variable): Move special vtv handling to..
> (handle_vtv_comdat_sections): .. here. New function.
> (output_object_block): Handle vtv sections.
>
> libvtv/Changelog
>
> * configure.tgt: Support aarch64 and arm.

Reply via email to