On Thu, Mar 27, 2014 at 08:13:00PM +0400, Ilya Verbin wrote: > On 27 Mar 15:02, Jakub Jelinek wrote: > > The tables need to be created before IPA, that way it really shouldn't > > matter in what order you emit them. E.g. the outlined target functions > > could be added to the table during ompexp pass which actually creates the > > outlined functions, the vars need to be added before target lto or host lto > > is streamed. > > For host tables it's ok, but when target compiler will create tables with > functions? > It reads bytecode from target_lto sections, so it never executes ompexp pass.
Which is why the table created for host by the ompexp pass should be streamed into the target_lto sections (marked specially somehow, special attribute or whatever), and then corresponding target table created from that, rather then created from some possibly different ordering there. Jakub