seeking a mailing list for llvm ports

Hi - sorry to intrude, but can somebody point me to a suitable mailing
list where a tyro can get some advice on modifying an existing llvm
llvm assembler ... rather lightly?

I want to add an extra instruction to the assembler/machine code
supported by the OR1K llvm port.

Well, there are a few more things I need to do, but that will be
good enough to start with!

I was able to what I wanted easily enough for gas, but I don't really
see where to start with llvm. The files that do the business seem to be
those with ".td" suffixes (which look like they're written in a kind of
ML, which is OK with me!). Is that right? I've tried making my
additions in

  lib/Target/OR1K/OR1KInstrFormats.td
  lib/Target/OR1K/OR1KInstrInfo.td

in the llvm (port) source. Surely there must be somewhere where my
attempts at additions should be referenced, from, however! Where is
that?

Regards, and hoping to get a pointer to where I should be posting!

PTB

Hi Peter,

While I’m not familiar with the OR1K port specifics, since it’s an out of tree port, you’re in the general right place for LLVM related questions, including about the assembler infrastructure.

You are correct that the .td files contain most of the information for instructions. All of it for simple instructions, really. Those files are used to create .inc files for asm matchers (it’s a bunch of data tables, and a few helper functions) via the tblgen utility.

The main assembler functionality is in the lib/MC library of llvm, with target specific bits in lib/Target/<targetname>/AsmParser. You can start by perusing that code a bit and stepping through the instruction matching. The llvm-mc utility is handy for this, as it’s a developer tool that provides a no-frills front end to the assembler and disassembler engines.

-Jim