ΠΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ΠΎ Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ GNU Binutils 2.43, Π²ΠΊΠ»ΡΡΠ²Π°ΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΊΠ°ΡΠΎ GNU linker, GNU assembler, nm, objdump, strings, strip.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- Π GNU assembler Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΡΠ° ".base64" Π·Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΠ½Π΅ Π½Π° Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° Π½ΠΈΠ·ΠΎΠ²Π΅ Π² base64. ΠΠ·Π²ΡΡΡΠ΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° "\+" Π² ΠΌΠ°ΠΊΡΠΎΡΠΈ ΠΈ Π²ΡΡΡΠ΅ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΈ .irp, .irpc ΠΈ .rept Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° Π±ΡΠΎΡ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΡΡΠ° Π½Π° ΠΌΠ°ΠΊΡΠΎΡΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈΡΠ΅ CFCMOV, NF, CCMP ΠΈ CTEST, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π² Π½Π°Π±ΠΎΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Intel APX.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° βarmv9.5-aβ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π½Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡΡΠ° LUT ΠΈ LUTv2 (AArch64 Lookup Table Extension).
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ Π·Π° RISC-V: XSfCease, Zacas, Zcmp, Zfbfmin, Zvfbfmin, Zvfbfwma, Smcsrind, Sscsrind, XCvMem, XCvBi ΠΈ XCvElw.
- Π ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠ° ΡΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΎΠΏΡΠΈΠΈΡΠ΅: "βrosegment" (ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΎΠΏΡΠΈΡΡΠ° "-z separate-code" ΡΡΠ·Π΄Π°Π²Π° Π΅Π΄ΠΈΠ½ ΡΠ΅Π³ΠΌΠ΅Π½Ρ Π² ΡΠ΅ΠΆΠΈΠΌ ΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ Π²ΠΌΠ΅ΡΡΠΎ Π΄Π²Π°), "βsection-ordering-file " (ΡΠΎΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° Π²Ρ ΠΎΠ΄ΡΡΠΈ ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ½ΠΈ ΡΠ΅ΠΊΡΠΈΠΈ) ΠΈ "βplugin-save-temps" (ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ ΠΏΠ»ΡΠ³ΠΈΠ½ΠΈ). ΠΠ° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈΡΠ΅ AArch64 ΠΈ LoongArch Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠΎΡΠΌΠ°ΡΠ° Π·Π° ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅ Π½Π° Π°Π΄ΡΠ΅ΡΠ½ΠΈ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½ΠΈΡ DT_RELR (relocation), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΠΉΠΊΠΈ Π΄Π° ΡΠ΅ Π½Π°ΠΌΠ°Π»ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡΡ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ° Π·Π° ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»Π½ΠΈΡΠ΅ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½ΠΈΡ Π² ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½ΠΈ ΠΎΠ±Π΅ΠΊΡΠΈ ΠΈ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅.
- Π ΡΡΠΈΠ»ΠΈΡΠ΅ΡΠ° readelf Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΄Π΅ΡΠ°ΠΉΠ»ΠΈ Π·Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π°Π΄ΡΠ΅ΡΠΈ (DT_RELR). ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΎΠΏΡΠΈΡ "-j" ("βdisplay-section") Π·Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΅ΠΊΡΠΈΡΡΠ°, Π·Π°Π΄Π°Π΄Π΅Π½Π° ΠΏΠΎ ΠΈΠΌΠ΅ ΠΈΠ»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΡΠΈ ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΅ΠΊΡΠΈΡΡΠ° ".eh_frame" ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π° ΡΠ΅ΠΊΡΠΈΡΡΠ° ".eh_frame_hdr", Π°ΠΊΠΎ Π΅ Π½Π°Π»ΠΈΡΠ½Π°.
- Π ΡΡΠΈΠ»ΠΈΡΠ΅ΡΠ° gprofng Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π½Π°ΡΠ°Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° RISC-V. ΠΡΠ΅ΡΠ°Π±ΠΎΡΠ΅Π½ Π΅ ΠΊΠΎΠ΄ΡΡ Π·Π° ΡΠ°Π±ΠΎΡΠ° ΡΡΡ ΡΡΠ΅ΡΠΎΠ²ΠΎΠ΄Π½ΠΈ ΡΡΠ±ΠΈΡΠΈΡ. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ° ΡΡΠ±ΠΈΡΠΈΡ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π·Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈΡΠ΅ AMD ZEN3, AMD ZEN4 ΠΈ Intel Ice Lake, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΠΈΠΏΠΈΡΠ½ΠΈ ΡΡΠ±ΠΈΡΠΈΡ Π·Π° ARM ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
