fur(1)


fur -- ┤╪┐⌠ñ¬ñΦñ╙ѬÑ╓Ñ╕ѺѻÑ╚Ñ│í╝Ñ╔ñ╬ÑΩÑóÑ∞Ñ≤Ñ╕Ñπ

╖┴╝░

fur -o order-file|-l list-of-functions-file [-W] [-O var1=val1 var2=val2 ...] [-k|-K keep-file] relocatable-object

fur [-W] [-O var1=val1 var2=val2 ...] [-k|-K keep-file] [-B block-insertion-code] [-b all|flow|listfile] [-P prologue-insertion-code] [-p all|listfile] [-E epilogue-insertion-code] [-e all|listfile] [-c compile-command] relocatable-object

fur -r [-W ] [-O var1=val1 var2=val2 ...] [-k|-K keep-file] [-m] [-v] -f block-log-file... [-o order-file] [-l function-file] relocatable-object

mkblocklog [-p prefix] number-of-blocks name number-of-functions

mkproflog number-of-blocks name number-of-functions

╡í╟╜└Γ╠└

fur ñ╦ñ╧░╩▓╝ñ╬ 3 ñ─ñ╬┤╪╧ó╠▄┼¬ñ¼ñóñΩñ▐ñ╣íú

║╟╜Θñ╬╖┴╝░ñ╟ñ╧íófur ñ╧ 1 ñ▐ñ┐ñ╧ 2 ñ╬╗┼══íóñ╣ñ╩ñ∩ñ┴ order-file ñ▐ñ┐ñ╧ list-of-functions-file ñ╦┤≡ñ┼ñññ╞Ñ│í╝Ñ╔ñ≥║╞╟█╬≤ñ╖ñ▐ñ╣íúorder-file ñ╧ list-of-functions-file ñΦñΩ┤░┴┤ñ╦╛σ░╠ñ╦ñóñΩñ▐ñ╣ñ¼íó└╕└«╝Ω╜τñ╧╩ú╗¿ñ╟ñ╣íúlist-of-functions-file ñ╧┤╪┐⌠╠╛ñ╬╜τ╜°╔╒ñ▒ñΘñ∞ñ┐ÑΩÑ╣Ñ╚ñ╟ñ╣íúfur ñ╧▓─╟╜Ñ╒ÑíÑñÑδñ≥║╞╜τ╜°╔╒ñ▒ñ╖íóñ│ñ╬╜τ╜°ñ╦┼¼╣τñ╡ñ╗ñ▐ñ╣íúÑ╒ÑíÑñÑδñ╦ÑΩÑ╣Ñ╚ñ╡ñ∞ñ╞ñññ╩ññ┤╪┐⌠ñ╧(┴Ω┬╨┼¬ñ╦)╕╡ñ╬ñ╚ñ¬ñΩñ╬╜τ╜°ñ╟Ñ╒ÑíÑñÑδñ╦╟█├╓ñ╡ñ∞ñ▐ñ╣íúlist-of-functions ñ╧─╠╛∩Ñ╒Ñφí╝Ñ╫ÑφÑ╒ÑíÑñÑΩÑ≤Ñ░ñ¬ñΦñ╙ lrt_scan(1) Ñ─í╝Ñδñ╦ñΦñΩ║ε└«ñ╡ñ∞ñ▐ñ╣íú

order-file ñ╧ñΓñ├ñ╚╛▄║┘ñ╟ñ╣íú┤╪┐⌠ñ╚ñ╜ñ╬╜τ╜°ñ≥ÑΩÑ╣Ñ╚ñ╖ñ╞ñññ▐ñ╣ñ¼íó│╞Ñ╒ÑíÑ≤Ñ»Ñ╖ÑτÑ≤╞Γñ╬Ñ╓ÑφÑ├Ñ»ñ╬╜τ╜°ñΓ╝¿ñ╖ñ▐ñ╣(Ñ╓ÑφÑ├Ñ»ñ╚ñ╧í╓Ñ╣Ñ╚Ñ∞í╝Ñ╚ÑΘÑñÑ≤Ñ│í╝Ñ╔í╫ñ╬ 1 ñ─ñ╬ñ│ñ╚ñ╟ñ╣íúÑ╓ÑΘÑ≤Ñ┴ñ╩ñ╖)íúñ│ñ╬Ñ╒ÑíÑñÑδñ╧ fur ╝½┐╚ñ¼ block profiles (▓╝╡¡╗▓╛╚) ñ≥╩¼└╧ñ╖ñ╞║ε└«ñ╖ñ▐ñ╣íú

2 ╚╓╠▄ñ╬╖┴╝░ñ╟ñ╧íófur ñ╧│╞┤╪┐⌠ñ╬║╟╜Θñ╬Ñ╓ÑφÑ├Ñ»íó│╞┤╪┐⌠ñ╬ñ╣ñ┘ñ╞ñ╬Ñ╓ÑφÑ├Ñ»íóñ▐ñ┐ñ╧í╓ÑΩÑ┐í╝Ñ≤í╫╠┐╬ßñ≥╝┬╣╘ñ╣ñδ│╞Ñ╓ÑφÑ├Ñ»ñ╦Ñ│í╝Ñ╔ñ≥┴▐╞■ñ╖ñ▐ñ╣íúѬÑ╫Ñ╖ÑτÑ≤ñ╟ compile-command ñ≥╝┬╣╘ñ╣ñδñ│ñ╚ñΓñ╟ñ¡ñ▐ñ╣(┤╪╧óÑ│í╝Ñ╔ñ╬║ε└«ñ╬ñ┐ñßñ╦╗╚═╤)íúÑ╓ÑφÑ├Ñ»┐⌠ñ¬ñΦñ╙▓─╟╜ѬÑ╓Ñ╕ѺѻÑ╚ñ╬├╗╜╠╠╛ñ¼ compile-command ñ╦─╔▓├ñ╡ñ∞íóñ│ñ╬Ñ│Ñ▐Ñ≤Ñ╔ñ¼╝┬╣╘ñ╡ñ∞ñ▐ñ╣íúñ│ñ∞ñ╧▓─╟╜Ñ╒ÑíÑñÑδñ≥╝ΦñΩ╜╨ñ╖ñ╞íóÑ│í╝Ñ╔ñ≥║╞Ñ│Ñ≤Ñ╤ÑñÑδñ╣ñδñ│ñ╚ñ╩ñ»Ñ╫ÑφÑ╒ÑíÑñÑδñ╣ñδñ┐ñßñ╦╗╚═╤ñ╟ñ¡ñ▐ñ╣íúprof(1) Ñ╫ÑφÑ╒ÑíÑñÑδ▓─╟╜ѬÑ╓Ñ╕ѺѻÑ╚ñ≥║ε└«ñ╣ñδñ╦ñ╧íó╝íñ╬ñΦñªñ╦Ñ│Ñ▐Ñ≤Ñ╔╞■╬╧ñ╖ñ▐ñ╣íú

 
   fur -P prof.o -c mkproflog -p all relocatable-object 
fprof(1) Ñ╫ÑφÑ╒ÑíÑñÑδ▓─╟╜ѬÑ╓Ñ╕ѺѻÑ╚ñ≥║ε└«ñ╣ñδñ╦ñ╧íó╝íñ╬ñΦñªñ╦Ñ│Ñ▐Ñ≤Ñ╔╞■╬╧ñ╖ñ▐ñ╣íú
 
   fur -p all -e all relocatable-object 
╕╜║▀íólprof(1) ║╞╟█├╓▓─╟╜ѬÑ╓Ñ╕ѺѻÑ╚ñ╬║ε└«ñ╧Ñ╡Ñ▌í╝Ñ╚ñ╡ñ∞ñ╞ñññ▐ñ╗ñ≤íú

Ñ╓ÑφÑ├Ñ»Ñ╫ÑφÑ╒ÑíÑñÑΩÑ≤Ñ░ñ╬Ñ╫ÑφÑ╒ÑíÑñÑΩÑ≤Ñ░ñ╚ñññª 4 ╚╓╠▄ñ╬╖┴╝░ñ¼ñóñΩñ▐ñ╣íúñ│ñ╬╡í╟╜ñ╧ lprof(1) ñ╚╗≈ñ╞ñññ▐ñ╣ñ¼íóÑφí╝ѽÑΩÑ╞ÑúÑ┴Ñσí╝Ñ╦Ñ≤Ñ░ñ╦ñ╧ñΦñΩ┼¼ñ╖ñ╞ñññ▐ñ╣ñ¼íó┐═┤╓ñ╬▓─╞╔└¡ñ╚ñññª┼└ñ╟ñ╧╔╘┼¼┼÷ñ╟ñ╣íú

 
   fur -b all -c mkblocklog relocatable-object 
ñ╚ñññªñ│ñ╬Ñ│Ñ▐Ñ≤Ñ╔ñ╧│╞Ñ╓ÑφÑ├Ñ»ñ╦Ñ╓ÑφÑ├Ñ»Ñ╫ÑφÑ╒ÑíÑñÑΩÑ≤Ñ░Ñ│í╝Ñ╔ñ≥┴▐╞■ñ╖íórelocatable-object log.basename-of-relocatable-object.o ñ≥║╟╕σñ╬ѬÑ╓Ñ╕ѺѻÑ╚ñ╦ÑΩÑ≤Ñ»ñ╡ñ╗ñ▐ñ╣(í╓╗╚═╤╬πí╫╗▓╛╚)íúñ│ñ╬╖┴┬╓ñ╬ÑφÑ░║╬╝Φñ╧íóñ╜ñ╬╜╨╬╧Ñ╒ÑíÑñÑδñ╦┬╨ñ╖ñ╞╝┬╣╘ñ╡ñ∞ñδ(ñ╜ñ╖ñ╞ñ╜ñ∞ñ╛ñ∞ñ╬Ñ╫ÑφÑ╗Ñ╣ñ╟ÑΩÑ≤Ñ»ñ╡ñ∞ñδ)│╞║╞╟█├╓▓─╟╜Ñ╒ÑíÑñÑδñ╦┬╨ñ╖íóblock.basename-of-relocatable-object.num (ñ│ñ│ñ╟ num ñ╧íó░∞░╒╠╛ñ¼╕½ñ─ñ½ñδñ▐ñ╟┴²▓├ñ╡ñ∞ñ▐ñ╣) ñ╚ñññª╠╛┴░ñ╟íó╜╨╬╧Ñ╒ÑíÑñÑδñ≥║ε└«ñ╖ñ▐ñ╣íúñ│ñ∞ñ≥íófur ñ╟ñ╧íóblock-log-file ѬÑ╫Ñ╖ÑτÑ≤ñ╚ñ╖ñ╞╗╚ñªñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣(▓╝╡¡╗▓╛╚)íú-ball ñ╬┬σñ∩ñΩñ╦ -b flow ñ¼╗╚═╤ñ╡ñ∞ñ┐╛∞╣τíóÑ╫ÑφÑ░ÑΘÑαñ╬└⌐╕µÑ╒Ñφí╝ñ¼╟º╝▒ñ╡ñ∞ñδñ┐ñßñ╦╜╜╩¼ñ╩Ñ╓ÑφÑ├Ñ»ñ╦ñ╬ñ▀Ñ│í╝Ñ╔ñ¼┴▐╞■ñ╡ñ∞ñ▐ñ╣íúñ┐ñ╚ñ¿ñ╨íó╠╡╛≥╖∩Ñ╕ÑπÑ≤Ñ╫ñ╬═ú░∞ñ╬Ñ┐í╝Ñ▓Ñ├Ñ╚ñ╧íóÑ╜í╝Ñ╣ñ≥ñññ─╝┬╣╘ñ╖ñ╞ñΓÑ┐í╝Ñ▓Ñ├Ñ╚ñ¼╝┬╣╘ñ╡ñ∞ñδñ╬ñ╟íóÑ│í╝Ñ╔ñ╧┴▐╞■ñ╡ñ∞ñ▐ñ╗ñ≤íú

ѵí╝Ñ╢ñ¼╝½╩¼ñ╟Ñ│í╝Ñ╔ñ≥╜±ñññ╞║╞╟█├╓▓─╟╜Ñ╒ÑíÑñÑδñ╬╗╪─ΩÑ▌ÑñÑ≤Ñ╚ñ╦┴▐╞■ñ╟ñ¡ñδñ│ñ╚ñ╦├φ░╒ñ╖ñ╞ñ»ñ└ñ╡ññíú▓╝╡¡ñ╬└⌐╕┬ñ╦┼¼╣τñ╣ñδ║╞╟█├╓▓─╟╜Ñ╒ÑíÑñÑδñ≥ fur ñ╬ block-insertion-codeíóprologue-insertion-code ñ▐ñ┐ñ╧ epilogue-insertion-code Ñ╤ÑΘÑßí╝Ñ┐ñ╦ñΦñΩ║ε└«ñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íú

ñ│ñ∞ñΘñ╬└⌐╕┬ñ╦┬╨▒■ñ╣ñδ║╟ñΓ┤╩├▒ñ╩╩²╦íñ╧ñ│ñ╬┴▐╞■Ñ│í╝Ñ╔ñ≥┤╪┐⌠╕╞ñ╙╜╨ñ╖ñ╚ñ╖íó┤╪┐⌠ñ≥╩╠ñ╦Ñ│Ñ≤Ñ╤ÑñÑδñ╣ñδñ│ñ╚ñ╟ñ╣íú

3 ╚╓╠▄ñ╬╖┴╝░ñ╟ñ╧íófur ñ╧Ñ╓ÑφÑ├Ñ»ÑφÑ░ñ≥╩¼└╧ñ╖ñ▐ñ╣íú-r (╞╔ñ▀╣■ñ▀└∞═╤) ѬÑ╫Ñ╖ÑτÑ≤ñ¼ñóñ∞ñ╨ fur ñ╧║╞╟█├╓▓─╟╜Ñ╒ÑíÑñÑδñ≥╩╤╣╣ñ╖ñ▐ñ╗ñ≤(-r ñ¼ñ╩ñññ╚íóÑ╒ÑíÑñÑδñ╧ block-log-file ñ╬╛≡╩≤ñ╦┤≡ñ┼ñññ╞─┤└░ñ╡ñ∞ñ▐ñ╣)íú-v ѬÑ╫Ñ╖ÑτÑ≤ñ¼ñóñδñ╚ fur ñ╧ÑφÑ░ñ╬í╓Ñ╙Ñσí╝í╫ñ≥╔╜╝¿ñ╖íóÑφÑ░ñ╬╛≡╩≤ñ≥╜╨╬╧ñ╖ñ▐ñ╣íú-m ѬÑ╫Ñ╖ÑτÑ≤ñ¼ñóñδñ╚ fur ñ╧íóÑφÑ░ñ╬╛≡╩≤ñ╦┤≡ñ┼ñññ╞Ñ│í╝Ñ╔ñ╚╩╤┤╣ñ╖ñ┐ñ│ñ╚ñ╦ñΦñΩÑ│í╝Ñ╔ñ¼ñ╔ñ∞ñ└ñ▒▓■┴▒ñ╡ñ∞ñ┐ñ½ñ╦ñ─ñññ╞ñ╬┬¼─Ω╖δ▓╠ñ≥╜╨╬╧ñ╖ñ▐ñ╣íú░╩▓╝ñ╬ 4 ╝∩╬αñ╬Ñ╟í╝Ñ┐ñ¼╝¿ñ╡ñ∞ñ▐ñ╣íú

║╟┬τ╝┬╣╘╡í╟╜
Ñ╟í╝Ñ┐ñ╬┐«═Ω└¡ñ≥╝¿ñ╖ñ▐ñ╣íúÑ│í╝Ñ╔ñ≥═¡▒╫ñ╚ñ╣ñδñ╦ñ╧╜╜╩¼ñ╦Ñ│í╝Ñ╔ñ≥│Φ═╤ñ╖ñ╩ñ▒ñ∞ñ╨ñ╩ñΩñ▐ñ╗ñ≤íú

Ñ╕ÑπÑ≤Ñ╫╬¿
Ñ│í╝Ñ╔ñ╧Ñ╕ÑπÑ≤Ñ╫┐⌠ñ≥║∩╕║ñ╣ñδñΦñªñ╦╩╤╣╣ñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íúñ│ñ╬┐⌠╗·ñ╧╕╡ñ╬Ñ╕ÑπÑ≤Ñ╫ñ╬ñªñ┴┐╖ñ╖ññÑ╨í╝Ñ╕ÑτÑ≤ñ╬Ñ│í╝Ñ╔ñ╦╝ΦñΩ╞■ñ∞ñδñ│ñ╚ñ¼ñ╟ñ¡ñδñΓñ╬ñ╬Ñ╤í╝Ñ╗Ñ≤Ñ╞í╝Ñ╕ñ╟ñ╣íúñ│ñ╬┐⌠╗·ñ¼╛«ñ╡ñññ█ñ╔Ñ│í╝Ñ╔ñ╬─┤└░ñ╦ñΦñδ╕·▓╠ñ¼┬τñ¡ñ»ñ╩ñΩñ▐ñ╣íú

╣╘╗╚═╤╕·╬¿(─┤└░ñ╬┴░ñ¬ñΦñ╙╕σ)
─┤└░ñ╬┴░╕σñ╟ñ╬Ñ│í╝Ñ╔ñ╬ÑßÑΓÑΩñ╚Ñ¡ÑπÑ├Ñ╖Ñσñ╪ñ╬┼¼╣τ┼┘ñ≥╝¿ñ╖ñ▐ñ╣íú║╟┴▒ñ╬├═ñ╧ 100% ñ╟ñ╣íú

order-file ѬÑ╫Ñ╖ÑτÑ≤ñ¼ñóñδñ╚ñ¡ñ╦ñ╧íóÑφÑ░╞Γñ╬Ñ╟í╝Ñ┐ñ╦║╟ñΓ┼¼╣τñ╣ñδÑ╓ÑφÑ├Ñ»╜τ╜°ñ¼┼÷│║Ñ╒ÑíÑñÑδñ╦╜±ñ¡╣■ñ▐ñ∞ñ▐ñ╣(ñ│ñ╬Ñ╒ÑíÑñÑδñ╧╛σ╜╥ñ╬┬Φ░∞ñ╬╖┴╝░ñ╬ѬÑ╫Ñ╖ÑτÑ≤ñ╚ñ╖ñ╞ fur ñ╦─≤╢íñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣)íúlist-of-function-file ѬÑ╫Ñ╖ÑτÑ≤ñ¼╔╒ñ▒ñΘñ∞ñ╞ñññδñ╚ñ¡ñ╦ñ╧íóorder-file ñ╦╜±ñ¡╣■ñ▐ñ∞ñδ┤╪┐⌠ñ╬╜τ╚╓ñ╧ñ│ñ╬Ñ╒ÑíÑñÑδ╞Γñ╦╝¿ñ╡ñ∞ñ┐╜τ╚╓ñ╚ñ╩ñΩíó░∞╩²│╞┤╪┐⌠╞Γñ╬Ñ╓ÑφÑ├Ñ»ñ╬╜τ╚╓ñ╧ block-log-file ñ╬╛≡╩≤ñ╦┤≡ñ┼ñññ┐╜τ╚╓ñ╚ñ╩ñΩñ▐ñ╣íú

keep-file ѬÑ╫Ñ╖ÑτÑ≤ñ╧íófur ñ╬░╩╕σñ╬╝┬╣╘ñ╬ñ┐ñßñ╦║╞╟█├╓▓─╟╜ѬÑ╓Ñ╕ѺѻÑ╚ñ╦┤╪ñ╣ñδ╛≡╩≤ñ≥╩▌┬╕ñ╣ñδñ┐ñßñ╦╗╚═╤ñ╡ñ∞ñ▐ñ╣íúkeep-file ñ¼┬╕║▀ñ╖ñ╩ñññ╚ñ¡ñ╧íó║╞╟█├╓▓─╟╜ѬÑ╓Ñ╕ѺѻÑ╚ñ╦┤╪ñ╣ñδ╛≡╩≤ñ╦ñΦñΩ║ε└«ñ╡ñ∞ñ▐ñ╣íúkeep-file ñ¼┬╕║▀ñ╣ñδñ╚ñ¡ñ╧íófur ñ¼║╞╟█├╓▓─╟╜Ñ╒ÑíÑñÑδñ≥╞╔ñ▀╣■ñα╗■┤╓ñ¼┬τ╔²ñ╦├╗╜╠ñ╡ñ∞ñ▐ñ╣íú-k ñ≥╗╪─Ωñ╖íókeep-file ñ¼║╞╟█├╓▓─╟╜Ñ╒ÑíÑñÑδñ╦░∞├╫ñ╖ñ╩ññ╛∞╣τíófur ñ╧░█╛∩╜¬╬╗ñ╖ñ▐ñ╣íú-K ñ≥╗╪─Ωñ╖íókeep-file ñ¼║╞╟█├╓▓─╟╜Ñ╒ÑíÑñÑδñ╦░∞├╫ñ╖ñ╩ññ╛∞╣τíóñ│ñ∞ñ╧ keep-file ñ¼┬╕║▀ñ╖ñ╩ññ╛∞╣τñ╚╞▒ñ╕ñΦñªñ╦╜Φ═²ñ╡ñ∞ñ▐ñ╣(ѬÑ╓Ñ╕ѺѻÑ╚ñ╬╞╔ñ▀╝ΦñΩñ¼╣╘ñ∩ñ∞íókeep-fileñ╦╛≡╩≤ñ¼│╩╟╝ñ╡ñ∞ñ┐╛∞╣τ)íú

Ñ│Ñ▐Ñ≤Ñ╔╣╘ñ╟ѬÑ╫Ñ╖ÑτÑ≤╩╤┐⌠ñ≥╗╪─Ωñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣(order-file ñ¼║ε└«ñ╡ñ∞ñ╞ñññ∞ñ╨íóÑ╤ÑΘÑßí╝Ñ┐ñΓñ╜ñ│ñ╦│╩╟╝ñ╡ñ∞ñ╞ñññ▐ñ╣)íúѬÑ╫Ñ╖ÑτÑ≤╩╤┐⌠ñ╧┤─╢¡╩╤┐⌠ñ╟ñΓ└▀─Ωñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íúñ│ñ∞ñΘñ╬╩╤┐⌠ñ╧░╩▓╝ñ╬ñ╚ñ¬ñΩñ╟ñ╣íú

NUMFUNCALIGN
║╞╜τ╜°╔╒ñ▒ñ╡ñ∞ñ┐Ñ│í╝Ñ╔ñ╬└Φ╞¼ñ½ñΘ┐⌠ñ¿ñ╞íóñññ»ñ─ñ╬┤╪┐⌠ñ╬╢¡│ª─┤└░ñ≥╣╘ñªñ½ñ≥╗╪─Ωñ╖ñ▐ñ╣íú╛╩╬¼╗■ñ╧ñ╣ñ┘ñ╞ñ╬┤╪┐⌠ñ≥╢¡│ª─┤└░ñ╖ñ▐ñ╣íú

FUNCALIGN
┤╪┐⌠ñ╬└Φ╞¼ñ≥╢¡│ª─┤└░ñ╣ñδ├═ñ≥╗╪─Ωñ╖ñ▐ñ╣íú╛╩╬¼├═ñ╧ 16 ñ╟ñ╣íú

LOOPRATIO
fur ñ¼Ñδí╝Ñ╫ñ╚▓≥╝ßñ╣ñδ╚┐╔ⁿ▓≤┐⌠ñ≥─Ω╡┴ñ╖ñ▐ñ╣íú╛╩╬¼╗■ñ╦ñ╧ fur ñ╧íóñóñδÑ╓ÑφÑ├Ñ»ñ¼ñ╜ñ╬┴░ñ╬Ñ╓ÑφÑ├Ñ»ñΦñΩ 50 ▓≤┬┐ñ»╝┬╣╘ñ╡ñ∞ñ┐╛∞╣τñ╦ñ╜ñ╬Ñ╓ÑφÑ├Ñ»ñ≥Ñδí╝Ñ╫ñ╬└Φ╞¼ñ╟ñóñδñ╚▓≥╝ßñ╖ñ▐ñ╣íú

LOOPALIGN
Ñδí╝Ñ╫ñ╬└Φ╞¼ñ≥╢¡│ª─┤└░ñ╣ñδ├═ñ≥╗╪─Ωñ╖ñ▐ñ╣íú╛╩╬¼├═ñ╧ 16 ñ╟ñ╣íú

FORCE_CONTIGUOUS
ñ│ñ╬Ñ╤ÑΘÑßí╝Ñ┐ñ¼ 0 ñ╟ñ╩ññ╛∞╣τíóÑ│í╝Ñ╔ñ¼║╞╟█╬≤ñ╡ñ∞ñ┐ñ╚ñ¡ñ╦┤╪┐⌠╞Γñ╬ñ╣ñ┘ñ╞ñ╬Ñ╓ÑφÑ├Ñ»ñ¼╩▌╗²ñ╡ñ∞ñ▐ñ╣íú┬┐ñ»ñ╬╛∞╣τíófur ñ╬Ñ│í╝Ñ╔╜Φ═²ñ¼├┘ñ»ñ╩ñΩñ▐ñ╣íú╛╩╬¼├═ñ╧ 0 ñ╟ñ╣íú

EXIST_WARNINGS
ñ│ñ╬╩╤┐⌠ñ¼ 0 ñ╦└▀─Ωñ╡ñ∞ñ╞ñññ╩ññ╛∞╣τíóorder-file ñ¼║╞╟█├╓▓─╟╜Ñ╒ÑíÑñÑδñ╦┤▐ñ▐ñ∞ñ╞ñññ╩ññ┤╪┐⌠ñ≥╗▓╛╚ñ╖ñ╞ñññ∞ñ╨íófur ñ╧╖┘╣≡ñ≥╚»ñ╖ñ▐ñ╣íú╛╩╬¼├═ñ╧ 1 ñ╟ñ╣íú├▒░∞ñ╬ order-file ñ¼╩ú┐⌠ñ╬ѬÑ╓Ñ╕ѺѻÑ╚ñ╦┬╨ñ╖ñ╞╗╚═╤ñ╡ñ∞ñ╞ñññδ╛∞╣τíóorder-file ñ╦ñ╧│╞ѬÑ╓Ñ╕ѺѻÑ╚ñ╦┤╪╧óñ╖ñ╞ñññ╩ññ╛≡╩≤ñ≥┤▐ñ≤ñ╟ñññδñ╚╗╫ñ∩ñ∞ñ▐ñ╣íúñ│ñ╬╛∞╣τíó╖┘╣≡ñ≥ѬÑ╒ñ╦ñ╖ñ┐╩²ñ¼╬╔ñññ╟ñ╖ñτñªíú
2 ñ─ñ╬ѬÑ╫Ñ╖ÑτÑ≤╩╤┐⌠ñ¼íófur ñ¼╣╘ñªÑñÑ≤ÑΘÑñÑ≤ñ╬╬╠ñ≥Ñ│Ñ≤Ñ╚Ñφí╝Ñδñ╖ñ▐ñ╣íú░╩▓╝ñ╬ 2 ñ─ñ╬┤≡╜α╬╛╩²ñ╦│║┼÷ñ╖íóñ╜ñ∞░╩│░ñ╬╛∞╣τñ╧╝⌡┬·ñ╡ñ∞ñδ╕╞ñ╙╜╨ñ╖ñ╬ñ▀ñ¼ÑñÑ≤ÑΘÑñÑ≤╜Φ═²ñ╡ñ∞ñ▐ñ╣íú

INLINE_CRITERIA
ñ│ñ╬╩╤┐⌠ñ╧íófur ñ¼╣╘ñªÑñÑ≤ÑΘÑñÑ≤ñ╬╬╠ñ≥Ñ│Ñ≤Ñ╚Ñφí╝Ñδñ╖ñ▐ñ╣íú├═ñ╧ 0 ñ½ñΘ 100 ñ▐ñ╟ñ╟ñ╣íú0 ñ╬╛∞╣τñ╧┤╪┐⌠ñ╧ñ▐ñ├ñ┐ñ»ÑñÑ≤ÑΘÑñÑ≤╜Φ═²ñ╡ñ∞ñ║íó100 ñ╬╛∞╣τ fur ñ╧▓─╟╜ñ╩┤╪┐⌠╕╞ñ╙╜╨ñ╖ñ≥ñ╣ñ┘ñ╞ÑñÑ≤ÑΘÑñÑ≤╜Φ═²ñ╖ñ▐ñ╣íú├═ñ≥ 10 ñ╦ñ╣ñδñ╚íófur ñ╧íó┤╪┐⌠╕╞ñ╙╜╨ñ╖ñ╬║╟╜Θñ╬ 10% ñ╬ñ▀ñ≥ÑñÑ≤ÑΘÑñÑ≤╜Φ═²ñ╖ñ▐ñ╣íú╛╩╬¼├═ñ╧ 80 ñ╟ñ╣(SCO UnixWare X.X Forum Beta ñ╬╛∞╣τíó╛╩╬¼├═ñ╧ 0 ñ╩ñ╬ñ╟├φ░╒ñ╖ñ╞ñ»ñ└ñ╡ññ)íú

INLINE_CALL_RATIO
ñ│ñ╬╩╤┐⌠ñΓñ▐ñ┐íófur ñ¼╣╘ñªÑñÑ≤ÑΘÑñÑ≤ñ╬╬╠ñ≥Ñ│Ñ≤Ñ╚Ñφí╝Ñδñ╖ñ▐ñ╣íúñ│ñ╬╩╤┐⌠ñ╬│╡╟░ñ╧íó┤╪┐⌠ñ╬╞├─Ωñ╬╕╞ñ╙╜╨ñ╖ñ¼íó┬┐╬╠ñ╬┤╪┐⌠╕╞ñ╙╜╨ñ╖ñ╦ñ╩ñΘñ╩ñññ╩ñΘíó░∞╕─╜Ωñ╦┤╪┐⌠ñ≥ÑñÑ≤ÑΘÑñÑ≤ñ╣ñδñ╬ñ╧╠╡┬╠ñ└íóñ╚ñññªñ│ñ╚ñ╟ñ╣íú10 ñ╚ñññª├═ñ╧íó┤╪┐⌠╕╞ñ╙╜╨ñ╖ñ╬╛»ñ╩ñ»ñ╚ñΓ 10% ñ≥└Ωñßñδ┤╪┐⌠╕╞ñ╙╜╨ñ╖ñ¼ÑñÑ≤ÑΘÑñÑ≤ñ╡ñ∞ñΦñªñ╚ñ╖ñ╞ñññδñ│ñ╚ñ≥░╒╠úñ╖ñ▐ñ╣íú╛╩╬¼├═ñ╧ 50 ñ╟ñ╣(SCO UnixWare X.X Forum Beta ñ╬╛∞╣τíó╛╩╬¼├═ñ╧ 90 ñ╩ñ╬ñ╟├φ░╒ñ╖ñ╞ñ»ñ└ñ╡ññ)íú

-w ѬÑ╫Ñ╖ÑτÑ≤ñ╧ fur ñ½ñΘñ╬╖┘╣≡ÑßÑ├Ñ╗í╝Ñ╕ñ≥╔╜╝¿ñ╖ñ╩ñññΦñªñ╦ñ╖ñ▐ñ╣íú

mkblocklog ñ¬ñΦñ╙ mkproflog ñ╧ fur ñ¼╗╚═╤ñ╣ñδѵí╝Ñ╞ÑúÑΩÑ╞ÑúÑ╫ÑφÑ░ÑΘÑαñ╟ñ╣íúñ│ñ∞ñΘñ╧ -c ѬÑ╫Ñ╖ÑτÑ≤ñ≥╗╚═╤ñ╖ñ╞║ε└«ñ╡ñ∞ñ┐Ñ│Ñ▐Ñ≤Ñ╔╣╘ñ╬░∞╔⌠ñ╚ñ╖ñ╞ñ╬ñ▀╗╚═╤ñ╟ñ¡ñ▐ñ╣íúfur ñ╧╝½╞░┼¬ñ╦Ñ╓ÑφÑ├Ñ»┐⌠íó┤╪┐⌠╠╛ñ¬ñΦñ╙┐⌠ñ≥─╔▓├ñ╖ñ▐ñ╣ñ╬ñ╟íóѬÑ╫Ñ╖ÑτÑ≤ñ╧╔╘═╫ñ╟ñ╣íú-p ѬÑ╫Ñ╖ÑτÑ≤ñ╧ÑφÑ░Ñ╒ÑíÑñÑδñ≥╜±ñ¡╣■ñα╛∞╜Ωñ≥╗╪─Ωñ╖ñ▐ñ╣(┐⌠╗·ñ¼ prefix ñ╦─╔▓├ñ╡ñ∞ñ▐ñ╣)íú╛╩╬¼╗■ñ╧ block.name ñ¼Ñ╫Ñ∞Ñ╒ÑúÑ»Ñ╣ñ╟ñ╣íúmkblocklog ñ╧ log.name.o ñ≥║ε└«ñ╖ñ▐ñ╣ñ¼íóñ│ñ∞ñ≥╕╡ñ╬║╞╟█├╓▓─╟╜Ñ╒ÑíÑñÑδñ╚ÑΩÑ≤Ñ»ñ╖ñ╞ÑφÑ░║╬╝Φñ╣ñδ╔¼═╫ñ¼ñóñΩñ▐ñ╣íúmkproflog ñ╧ prof.name.o ñ≥║ε└«ñ╖ñ▐ñ╣íú

├φ░╒

keep-file ѬÑ╫Ñ╖ÑτÑ≤ñ╧═°╩╪ñ╬ñ┐ñßñ╦─≤╢íñ╡ñ∞ñ╞ñññδñΓñ╬ñ╟ñ╣íúÑ─í╝Ñδñ╬Ñ╨í╝Ñ╕ÑτÑ≤┤╓ñ╟Ñ╒ÑíÑñÑδ╖┴╝░ñ¼╩╤╣╣ñ╡ñ∞ñ╩ñññ╚ñññª╩▌╛┌ñ╧ñóñΩñ▐ñ╗ñ≤íúñ▐ñ┐ block-log-file ñ╬╖┴╝░ñ¼╩╤╣╣ñ╡ñ∞ñ╩ñññ╚ñññª╩▌╛┌ñΓñóñΩñ▐ñ╗ñ≤íú

╗╚═╤╬π

║╞Ñ│Ñ≤Ñ╤ÑñÑδñ╣ñδñ│ñ╚ñ╩ñ»Ñ│í╝Ñ╔ñ≥Ñ╫ÑφÑ╒ÑíÑñÑδñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íúÑ╫ÑφÑ╒ÑíÑñÑΩÑ≤Ñ░═╤ñ╬Ñ│Ñ≤Ñ╤ÑñÑδñ╦╗╚═╤ñ╣ñδñ╚ñ¡ñ╧░╩▓╝ñ╬ñΦñªñ╦ñ╩ñΩñ▐ñ╣íú

cc -p -c x.c
cc -p -c y.c
cc -p -o z x.o y.o

ñ│ñ│ñ╟íó░╩▓╝ñ╬ñΦñªñ╦ñ╖ñ▐ñ╣íú

cc -c x.c
cc -c y.c
fur -P prof.o -c mkproflog -p all x.o
fur -P prof.o -p all y.o
cc -p -o z x.o y.o prof.x.o prof.y.o

Ñ╓ÑφÑ├Ñ»ÑφÑ«Ñ≤Ñ░ñ╬Ñ╗Ñ├Ñ╖ÑτÑ≤╬πñ≥╝¿ñ╖ñ▐ñ╣íúÑ╫ÑφÑ░ÑΘÑαñ≥░╩▓╝ñ╬ñΦñªñ╦Ñ│Ñ≤Ñ╤ÑñÑδñ╖ñ▐ñ╣íú

  1. cc -c prog1.c

  2. cc -c prog2.c

  3. cc -o prog prog1.o prog2.o
ñ│ñ∞ñ≥╝íñ╬ñΦñªñ╦╩╤╣╣ñ╖ñ▐ñ╣íú

  1. cc -c prog1.c

  2. cc -c prog2.c

  3. cc -o prog prog.o
Ñ╣Ñ╞Ñ├Ñ╫ 3 ñ╚Ñ╣Ñ╞Ñ├Ñ╫ 4 ñ╬┤╓ñ╟íó╝½═│ñ╦─┤└░ñ╟ñ¡ñ▐ñ╣íúñ┐ñ╚ñ¿ñ╨╝íñ╬ñΦñªñ╟ñ╣íú

3.1
cp prog.o hold.o

3.2
fur -c mkblocklog -b all prog.o

3.3
cc -o prog prog.o log.prog.o

3.4
prog [options]

3.5
cp hold.o prog.o

3.6
fur -r -o prog.order -f block.prog.00 prog.o

3.7
fur -o prog.order prog.o

4.
cc -o prog prog.o

╖┘╣≡

fur ñ╧ UnixWare C Compilation System ñ≥╗╚═╤ñ╖ñ╞║╞╟█├╓▓─╟╜Ñ╒ÑíÑñÑδñ≥║ε└«ñ╖ñ┐ñ╚ñ¡ñ╦ñ╬ñ▀Ñ∩í╝Ñ¡Ñ≤Ñ░Ñ│í╝Ñ╔ñ╬║ε└«ñ≥╩▌╛┌ñ╖ñ▐ñ╣íúÑóÑ╗Ñ≤Ñ╓ÑΩÑ│í╝Ñ╔ñ▐ñ┐ñ╧┬╛ñ╬Ñ│Ñ≤Ñ╤ÑñÑΘñ╟║ε└«ñ╡ñ∞ñ┐Ñ│í╝Ñ╔ñ≥╗╚═╤ñ╣ñδñ╚íóѬÑ╓Ñ╕ѺѻÑ╚Ñ│í╝Ñ╔ñ¼└╡╛∩ñ╦╞░║εñ╖ñ╩ññ▓─╟╜└¡ñ¼ñ┤ñ»ñ∩ñ║ñ½ñóñΩñ▐ñ╣íúñ│ñ╬╗÷┬╓ñ¼└╕ñ╕ñδñ╬ñ╧░╩▓╝ñ╬ 2 ñ─ñ╬╛⌡╢╖ñ╬ñññ║ñ∞ñ½ñ╟ñ╬ñ▀ñ╟ñ╣íú

┐╟├╟

fur ñ╧░╩▓╝ñ╬╛∞╣τñ╦░█╛∩╜¬╬╗ñ╖ñ▐ñ╣íú

┤╪╧ó╣α╠▄

CC(1C++), cc(1), fprof(1), lprof(1), lrt_scan(1), prof(1)


SCO UnixWare Forum Beta Release (BL12) -- September 1997
© 1997 The Santa Cruz Operation, Inc. All rights reserved.