Tôi đã có trước đó, here, được chỉ ra rằng các hàm C++ không dễ dàng được biểu diễn trong assembly. Bây giờ tôi quan tâm đến việc đọc 1 cách này hay cách khác bởi vì callgrind, một phần của valgrind, cho thấy chúng bị lộn xộn trong khi lắp ráp chúng được hiển thị bị cắt xén, vì vậy tôi muốn hoặc là mangle đầu ra chức năng valgrind hoặc demangle tên lắp ráp các chức năng. Có ai từng thử một thứ như thế không? Tôi đã nhìn vào một website và phát hiện ra những điều sau đây:chức năng cho các hàm mangle/demangle
Code to implement demangling is part of the GNU Binutils package; see libiberty/cplus-dem.c and include/demangle.h.
ai đã từng thử một cái gì đó như thế, tôi muốn demangle/mangle trong C? trình biên dịch của tôi là gcc 4.x
Tôi không hiểu câu hỏi của bạn - bạn đã đăng câu trả lời của riêng bạn, sử dụng mã từ binutils. Có các thư viện/đoạn mã tương tự cho các công cụ khác, vậy vấn đề ở đâu? –
IIRC sau đó valgrind đã có tùy chọn --demangle = yes để loại bỏ các ký hiệu C++ trên đầu ra. Callgrind có thể được gọi là 'valgrind --tool = callgrind --demangle = yes', phải không? –
@Luther: Tôi đã mở một diễn đàn khác để kiểm tra xem tôi có đang gỡ rối vallgrind http://stackoverflow.com/questions/4846411/de-mangeling-in-callgrind nhưng không ai trả lời. Tôi nhìn vào hướng dẫn sử dụng Linux để phá vỡ nó không cung cấp bất cứ điều gì! đề xuất của bạn đã hoạt động. thnks –