================
@@ -0,0 +1,58 @@
+/// Test the callgraph section to make sure the indirect callsites
+/// (annotated by generated temporary labels .Ltmp*) are associated
+/// with the corresponding callee type identifiers.
+
+// RUN: llvm-mc -triple=x86_64 -filetype=obj -o - < %s | llvm-readelf -x 
.callgraph - | FileCheck %s
+       
+       .text
+       .globl  ball                            # -- Begin function ball
+       .p2align        4
+       .type   ball,@function
+ball:                                   # @ball
+.Lfunc_begin0: 
+# %bb.0:                                # %entry
+       pushq   %rbx    
+       subq    $32, %rsp       
+       movl    $0, 4(%rsp)
+       movq    foo@GOTPCREL(%rip), %rcx
+       movq    %rcx, 24(%rsp)
+       xorl    %eax, %eax
+       callq   *%rcx
+.Ltmp0:
+       movq    bar@GOTPCREL(%rip), %rax
+       movq    %rax, 16(%rsp)
+       movsbl  3(%rsp), %edi
+       callq   *%rax
+.Ltmp1:
+       movq    baz@GOTPCREL(%rip), %rax
+       movq    %rax, 8(%rsp)
+       leaq    3(%rsp), %rbx
+       movq    %rbx, %rdi
+       callq   *%rax
+.Ltmp2:
+       callq   foo@PLT
+       movsbl  3(%rsp), %edi
+       callq   bar@PLT
+       movq    %rbx, %rdi
+       callq   baz@PLT
+       addq    $32, %rsp       
+       popq    %rbx    
+       retq
+       .section        .callgraph,"o",@progbits,.text
+       .quad   0
+       .quad   .Lfunc_begin0
+       .quad   1
+       .quad   3
+       /// MD5 hash of the callee type ID for foo.
+    // CHECK: 2444f731 f5eecb3e
+       .quad   0x3ecbeef531f74424
+       .quad   .Ltmp0
+       /// MD5 hash of the callee type ID for bar.
+    // CHECK: 5486bc59 814b8e30
+       .quad   0x308e4b8159bc8654
+       .quad   .Ltmp1
+       /// MD5 hash of the callee type ID for baz.
+    // CHECK: 7ade6814 f897fd77
----------------
ilovepi wrote:

```suggestion
    // CHECK: 2444f731 f5eecb3e
        .quad   0x3ecbeef531f74424
        .quad   .Ltmp0
        /// MD5 hash of the callee type ID for bar.
        // CHECK: 5486bc59 814b8e30
        .quad   0x308e4b8159bc8654
        .quad   .Ltmp1
        /// MD5 hash of the callee type ID for baz.
        // CHECK: 7ade6814 f897fd77
```
The alignment here seems pretty odd.

https://github.com/llvm/llvm-project/pull/87576
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to