[erlang-questions] Threaded VM with llvm-gcc
Tue Sep 24 11:50:05 CEST 2013
Le 24 sept. 2013 à 07:37, Björn Gustavsson a écrit :
> At least in the version of the installation guide you linked to,
> it says nothing about jump tables being the reason for the
> recommendation. It says that the performance will be worse
> if GCC is not used, but it does not say why.
> It does compile jump tables efficiently, but it does a worse job
> of register allocation, especially for huge function such as
> process_main() in beam_emu.c. That said, code generation
> has improved in each new version of clang, making it less
> important to use a "real" GCC.
Ok, then it is kinda confusing that the only EMU_CC test is whether &&label is supported or not.
> What is the problem you want to fix? Have you observed
> any situation where jump tables where not used when they
> should be?
> The test is where to protect against an old broken version
> of llvm-gcc that did not handle jump tables correctly.
> It will also make sure that Erlang/OTP can be compiled
> on systems where no compiler that supports jump tables
> can be found.
Shouldn't the test be fixed for more recent versions? I don't like limiting stuff because of old and outdated versions.
More information about the erlang-questions