Created attachment 160419 [details] result SUMMARY *** NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols. See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports *** STEPS TO REPRODUCE 1. compile the below demo program with debug (-g) using cross compiler. #include <stdio.h> #include <sys/select.h> /* According to earlier standards */ #include <sys/time.h> #include <sys/types.h> #include <unistd.h> #include <fcntl.h> #include <errno.h> #include <string.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <stdlib.h> #include <sys/types.h> /* See NOTES */ #include <sys/socket.h> void func_888() { printf("hello world\n"); return; } void func_666() { printf("你好 世界\n"); return; } int main(int argc, char *argv[]) { while(1) { func_888(); printf("blabla...\n"); func_666(); usleep(10); } return 0; } 2. using callgrind tool to run the demo: valgrind --tool=callgrind ./a.out 3. using kcachegrind to check the result. OBSERVED RESULT I did not get a right call graph, but it was right on x86_64. The wrong result named aarch64.png is attached. EXPECTED RESULT The right result named x86_64.png is attached. SOFTWARE/OS VERSIONS Windows: macOS: Linux/KDE Plasma: Linux tegra-ubuntu 5.10.104-rt63-tegra #3 SMP PREEMPT RT Wed Jul 19 14:09:01 CST 2023 aarch64 aarch64 aarch64 GNU/Linux (available in About System) KDE Plasma Version: KDE Frameworks Version: Qt Version: ADDITIONAL INFORMATION The kernel version of x86_64: Linux ubuntu 5.15.0-72-generic #79~20.04.1-Ubuntu SMP Thu Apr 20 22:12:07 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Strange. I suppose that the assembler for main has no surprises.
(In reply to Paul Floyd from comment #1) > Strange. I suppose that the assembler for main has no surprises. So, How can I deal with it.
Be very patient or start debugging Callgrind. I’ll see if I can reproduce the problem but won’t have time to work on it for several weeks.