gcc之Linux内核转储堆栈中的 ".clone"是什么意思
soundcode
阅读:34
2025-02-15 21:57:57
评论:0
堆栈跟踪示例:
[<e50ff630>] adf_os_mem_alloc_outline+0x50/0x60 [adf]
[<e50f4d20>] amalloc_private+0x40/0x80 [asf]
[<e53f6508>] ieee80211_scan_entry_update.clone.2+0xac0/0xe18 [umac]
[<e53f7080>] ieee80211_scan_table_update+0x41c/0x5b8 [umac]
[<e53d0b98>] ieee80211_update_beacon+0x30/0x80 [umac]
[<e53d0dec>] ieee80211_recv_mgmt+0x204/0x18a4 [umac]
[<e5404cc8>] ieee80211_input+0x23c/0x1484 [umac]
[<e5405fe8>] ieee80211_input_all+0xd8/0x158 [umac]
[<e53c4abc>] ath_net80211_rx+0x764/0x77c [umac]
[<e528f474>] ath_rx_indicate+0x60/0xc8 [ath_dev]
[<e527bd2c>] ath_rx_process+0x1d4/0x5f8 [ath_dev]
[<e528c080>] ath_rx_handler+0x408/0x5cc [ath_dev]
[<e528c284>] ath_rx_edma_tasklet+0x40/0x68 [ath_dev]
[<e528f404>] ath_handle_rx_intr+0x28/0x38 [ath_dev]
[<e52714dc>] ath_handle_intr+0x25c/0x8c0 [ath_dev]
[<e5409284>] ath_tasklet+0x24/0x34 [umac]
ieee80211_scan_entry_update.clone.2是什么意思?
当然源代码只包含ieee80211_scan_entry_update()函数。
为什么 gcc 制作克隆函数?
谢谢
请您参考如下方法:
在编译器的上下文中,function cloning正在创建一个函数的多个副本并进行一些修改。
例如,如果编译器发现一个函数使用相同的初始参数被多次调用,它可能会克隆该函数以产生一个少一个参数的版本,然后将所有调用者更改为调用克隆。
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。