Issue 122728
Summary [PowerPC] li of 0 into arg registers of unused arguments
Labels new issue
Assignees
Reporter diggerlin
    cat > test.c 

```
typedef signed char sb;
void foo(sb);
void __attribute__((noinline)) bar(sb sb1, sb var2, sb var3, sb var4,
                                   sb sb5)
{
 foo(sb5);
}
void __attribute__((noinline)) test() {
  bar(1, 2, 3, 4, 125);
}
```

bash-5.2$  /home/zhijian/llvm/dev/build/bin/ibm-clang  seg.c -m32 -S  -o seg.s

there is code as 

```

.bar:
# %bb.0: # %entry
        mflr 0
        stwu 1, -64(1)
 mr      3, 7
        stw 0, 72(1)
        bl .foo[PR]
        nop
 addi 1, 1, 64
        lwz 0, 8(1)
        mtlr 0
 blr


.test:
# %bb.0:                                # %entry
 mflr 0
        stwu 1, -64(1)
        li 3, 0
        li 4, 0
        li 5, 0
        li 6, 0
        stw 0, 72(1)
        li 7, 125
        bl .bar
        nop
```


_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to