On Thu, Jul 27, 2017 at 2:29 PM, Georg-Johann Lay <a...@gjlay.de> wrote: > For some targets, the best place to put read-only lookup tables as > generated by -ftree-switch-conversion is not the generic address space > but some target specific address space. > > This is the case for AVR, where for most devices .rodata must be > located in RAM. > > Part #1 adds a new, optional target hook that queries the back-end > about the desired address space. There is currently only one user: > tree-switch-conversion.c::build_one_array() which re-builds value_type > and array_type if the address space returned by the backend is not > the generic one. > > Part #2 is the AVR part that implements the new hook and adds some > sugar around it.
Given that switch-conversion just creates a constant initializer doesn't AVR benefit from handling those uniformly (at RTL expansion?). Not sure but I think it goes through the regular constant pool handling. Richard. >