Open
Description
llvm support for ARC architecture does not support list of assembly instructions, attached in file: llvm_arc_missing_instructions_sort
.
As a sample, I wrote a example.c
with two unsupported inline assembly instructions:
int main() {
asm ("add1 r10, r10, 0x66");
asm ("bclr r0, r2, 0x55");
}
and if you look the objdump below taken via llvm-objdump version 14, it shows "unknown" instructions (attached: example-llvm-objdump) :
00000260 "main":
260: fc 1c c8 b6 st.aw %fp, [%sp,-4]
264: 0a 23 00 37 mov %fp, %sp
268: 94 22 81 19 <unknown>
26c: 10 22 80 0f <unknown>`
Whereas, if I use crossng tool to generate the objdump, it is able to disassemble them (attached: example-crossng-objdump):
00000260 "main":
260: 1cfc b6c8 st.aw fp,[sp,-4]
264: 230a 3700 mov fp,sp
268: 2294 1981 add1 r10,r10,102
26c: 2210 0f80 0000 0055 bclr r0,r2,0x55