mstorsjo added a comment.

(Accidentally pressed submit too soon)

This was my conclusion at some point as well - but there's also a few issues 
with that approach which makes me quite hesitant:

- doing fixups in the code segment requires making it writable temporarily at 
runtime, which is disallowed in UWP
- the current set of runtime relocations only allows adding addresses in 1, 2, 
4 and 8 byte sized addresses. On arm/arm64, absolute addresses can be present 
in instructions with a much more complicated opcode format, and tweaking 
addresses there requires defining more runtime relocation formats.

So given all this - I only see bad options. I could just postpone this as well 
- I can live with only linking libc++ statically for now.

The other case you mentioned, with multiple inheritance for statically 
allocated objects, needs to be handled in one way or another though (unless one 
forbids C++ interfaces over DLL boundaries); how's that handled with the MSVC 
C++ ABI?


Repository:
  rC Clang

https://reviews.llvm.org/D43184



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to