• marmulak
    link
    fedilink
    arrow-up
    5
    arrow-down
    2
    ·
    2 years ago

    What’s wrong with the compiler Rust already has

    • jokeyrhyme
      link
      fedilink
      arrow-up
      13
      ·
      2 years ago

      LLVM supports fewer target machines than GCC

      https://gcc.gnu.org/backends.html has a big table

                 |      Characteristics
      Target     | HMSLQNFICBD lqrpbfmgiates
      -----------+--------------------------
      aarch64    |     Q        q  b  gia  s
      alpha      |  ?  Q   C    q    mgi  e
      arc        |          B      b  gia
      arm        |                 b   ia  s
      avr        |    L  FI    l  p   g
      bfin       |       F            gi
      c6x        |   S     CB         gi
      cr16       |    L  F C          g    s
      cris       |       F  B         gi   s
      csky       |                 b   ia
      epiphany   |         C          gi   s
      fr30       | ??    FI B     pb mg    s
      frv        | ??       B      b   i   s
      gcn        |   S     C D  q       a e
      h8300      |       FI B         g    s
      i386       |     Q        q  b   ia
      ia64       |   ? Q   C    qr b m i
      iq2000     | ???   FICB      b  g  t
      lm32       |       F            g
      m32c       |    L  FI    l   b  g    s
      m32r       |       FI        b       s
      m68k       |                pb   i
      mcore      |  ?    FI       pb mg    s
      mep        |       F C       b  g  t s
      microblaze |         CB          i   s
      mips       |     Q   CB   qr     ia  s
      mmix       | HM  Q   C    q      i  e
      mn10300    | ??                 gi   s
      moxie      |       F            g  t s
      msp430     |    L  FI    l   b  g    s
      nds32      |       F C           ia  s
      nios2      |         C           ia
      nvptx      |   S Q   C    q    mg   e
      pa         |     Q   CBD  qr b   i  e
      pdp11      |    L   IC    qr b      e
      pru        |    L  F              a  s
      riscv      |     Q   C    qr    gia
      rl78       |    L  F     l      g    s
      rs6000     |     Q   C    qrpb   ia
      rx         |                         s
      s390       |     Q        qr    gia e
      sh         |     Q   CB   qrp    i
      sparc      |     Q   CB   qr b   ia
      stormy16   | ???L  FIC D l   b   i
      tilegx     |     Q   C    q     gi  e
      tilepro    |   S   F C          gi  e
      v850       |                    g a  s
      vax        |  M     I        b   i  e
      visium     |          B         g  t s
      xtensa     |         C
      

      https://www.llvm.org/Features.html

      An easily retargettable code generator, which currently supports X86, X86-64, PowerPC, PowerPC-64, ARM, Thumb, SPARC, Alpha, CellSPU, MIPS, MSP430, SystemZ, WebAssembly and XCore.

    • thervingiOP
      link
      fedilink
      arrow-up
      6
      ·
      edit-2
      2 years ago

      From what understand GCC supports more architectures than LLVM.

      Also having alternatives is always nice.

  • kingthrillgore
    link
    fedilink
    arrow-up
    2
    arrow-down
    5
    ·
    2 years ago

    I feel like Hank Hill needs to step in and say “You’re not making a good compiler, you’re just making Rust bad.”