llvm / llvm/llvm-project

Mips: should not use $1 for inline asm

Open
#172,969 9 comments 0 reactions 0 assignees View on GitHub
backend:MIPS inline-asm
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

```llvm
define i32 @f() local_unnamed_addr {
entry:
%0 = tail call i32 asm sideeffect "divu ${0}, ${1}, ${2}", "=r,r,r,~{hi},~{lo},~{$1}"(i32 2, i32 1)
ret i32 %0
}
```

we get

```asm
addiu $1, $zero, 2 # here, we should not use $1 here, as $1 may be used when expand macros.
addiu $3, $zero, 1
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.