[RFC 2/5] xtensa: make configuration dynamic

augustine.sterling@gmail.com augustine.sterling@gmail.com
Fri May 26 18:15:00 GMT 2017


On Fri, May 26, 2017 at 11:10 AM, augustine.sterling@gmail.com
<augustine.sterling@gmail.com> wrote:
> On Mon, May 22, 2017 at 2:12 PM, Max Filippov <jcmvbkbc@gmail.com> wrote:
>> Now that XCHAL_* macros don't have to be preprocessor constants add
>> include/xtensa-dynconfig.h that defines them as fields of a structure
>> returned from the xtensa_get_config function.
>> Define that structure and fill it with default parameter values
>> specified in the include/xtensa-config.h.
>> Define reusable function xtensa_load_config that tries to load
>> configuration and return an address of an exported object from it.
>> Define the function xtensa_get_config that uses xtensa_load_config to
>> get structure xtensa_config, either dynamically configured or the
>> default.
>>
>> 2017-05-22  Max Filippov  <jcmvbkbc@gmail.com>
>> bfd/
>>         * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Append
>>         xtensa-config.c.
>>         * Makefile.in: Regenerate.
>>         * configure: Regenerate.
>>         * configure.ac (xtensa_elf32_be_vec, xtensa_elf32_le_vec): Add
>>         xtensa-config.lo to the tb.
>>         * elf32-xtensa.c (xtensa-config.h): Replace #include with
>>         xtensa-dynconfig.h.
>>         * xtensa-config.c: New file.
>>
>> gas/
>>         * config/tc-xtensa.c (xtensa-config.h): Replace #include with
>>         xtensa-dynconfig.h.
>>         * config/tc-xtensa.h: Likewise.
>>         * config/xtensa-relax.c: Likewise.
>>
>> include/
>>         * xtensa-dynconfig.h: New file.
>>
>> ld/
>>         * Makefile.am (eelf32xtensa.c): Add $(INCDIR)/xtensa-dynconfig.h
>>         to the list of dependencies.
>>         * Makefile.in: Regenerate.
>>         * emultempl/xtensaelf.em (xtensa-config.h): Replace #include
>>         with xtensa-dynconfig.h.
>
> This is ok.

Actually, check that. I missed that this does both the refactoring
necessary to add a plugin mechanism and actually adds the plugin
mechanism.

So: This introduces a plugin mechanism to gdb and binutils. That needs
a higher-level discussion regarding licensing and plugin mechanisms
generally, but from the general maintainers of both binutils and gdb.

Would one of the general maintainers review this please?



More information about the Gdb-patches mailing list