Runtime: Backend LLVM

Criado em 11 mai. 2019  ·  3Comentários  ·  Fonte: dotnet/runtime

De acordo com este problema que criei (https://github.com/dotnet/coreclr/issues/17294), criar um novo back-end para uma nova arquitetura é uma tarefa complexa, então por que não criar um novo back-end que suporte múltiplas arquiteturas?
Mono implementou um back-end LLVM .
Digo isso porque a arquitetura Power e s390x está voltando com relativa intensidade ...

area-CodeGen-coreclr question

Comentários muito úteis

Alguns anos atrás, trabalhamos em um gerador de código LLVM para .Net: LLILC . Encontramos vários problemas que pareciam difíceis de resolver: suporte para GC preciso, suporte completo para o modelo de exceção .Net e baixo rendimento. Você pode ler alguns dos detalhes aqui: LLILC em Seis Meses .

Mono via LLVM usa GC conservador e (pelo menos em alguns casos) não lida com toda a gama de comportamentos de exceção. Isso é aceitável para os destinos de aplicativos do Mono, mas não é geral o suficiente para nossos propósitos.

O LLILC ainda pode ser interessante como um jit de nível superior (algum dia) ou como um veículo de criação para fazer o codegen básico funcionar em uma nova arquitetura.

Todos 3 comentários

Alguns anos atrás, trabalhamos em um gerador de código LLVM para .Net: LLILC . Encontramos vários problemas que pareciam difíceis de resolver: suporte para GC preciso, suporte completo para o modelo de exceção .Net e baixo rendimento. Você pode ler alguns dos detalhes aqui: LLILC em Seis Meses .

Mono via LLVM usa GC conservador e (pelo menos em alguns casos) não lida com toda a gama de comportamentos de exceção. Isso é aceitável para os destinos de aplicativos do Mono, mas não é geral o suficiente para nossos propósitos.

O LLILC ainda pode ser interessante como um jit de nível superior (algum dia) ou como um veículo de criação para fazer o codegen básico funcionar em uma nova arquitetura.

Olá @AndyAyersMS

Corrigi um problema de compilação simples para LLILC https://github.com/dotnet/llilc/issues/1097

Por favor, reveja.

Obrigado,
Leslie Zhai

Vou encerrar este assunto, pois a questão já foi respondida.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

chunseoklee picture chunseoklee  ·  3Comentários

v0l picture v0l  ·  3Comentários

jzabroski picture jzabroski  ·  3Comentários

nalywa picture nalywa  ·  3Comentários

Timovzl picture Timovzl  ·  3Comentários