[all-commits] [llvm/llvm-project] 77249e: [AVR] Support 16-bit LDS/STS on AVRTiny.

Ben Shi via All-commits all-commits at lists.llvm.org
Thu Dec 22 19:04:07 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 77249ea6bc6601d2637cf6c1d73c87c25faf1b71
      https://github.com/llvm/llvm-project/commit/77249ea6bc6601d2637cf6c1d73c87c25faf1b71
  Author: Ben Shi <powerman1st at 163.com>
  Date:   2022-12-23 (Fri, 23 Dec 2022)

  Changed paths:
    M llvm/lib/Target/AVR/AVRInstrFormats.td
    M llvm/lib/Target/AVR/AVRInstrInfo.td
    M llvm/lib/Target/AVR/Disassembler/AVRDisassembler.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.cpp
    A llvm/test/MC/AVR/inst-lds-tiny.s
    A llvm/test/MC/AVR/inst-sts-tiny.s

  Log Message:
  -----------
  [AVR] Support 16-bit LDS/STS on AVRTiny.

LDS/STS are 32-bit instructions on AVR, which can access up to
64KB data space. While they are 16-bit instructions on AVRTiny,
which can only access 128B data space.

Reviewed By: aykevl

Differential Revision: https://reviews.llvm.org/D139621


  Commit: a59e96f1a1649580df8bf19d1ff296ab1a027a1f
      https://github.com/llvm/llvm-project/commit/a59e96f1a1649580df8bf19d1ff296ab1a027a1f
  Author: Ben Shi <powerman1st at 163.com>
  Date:   2022-12-23 (Fri, 23 Dec 2022)

  Changed paths:
    M llvm/lib/Target/AVR/AVRInstrInfo.td
    M llvm/test/CodeGen/AVR/directmem.ll

  Log Message:
  -----------
  [AVR] Select 16-bit LDS/STS for load/store on AVRTiny.

The 32-bit LDS/STS are not available on AVRTiny, so we have
to use their compact 16-bit form for memory access.

Reviewed By: aykevl

Differential Revision: https://reviews.llvm.org/D139687


Compare: https://github.com/llvm/llvm-project/compare/e0a66116fccc...a59e96f1a164


More information about the All-commits mailing list