%!PS-Adobe-2.0 %%Creator: dvips(k) 5.86 Copyright 1999 Radical Eye Software %%Title: gcc.dvi %%Pages: 364 %%PageOrder: Ascend %%BoundingBox: 0 0 596 842 %%EndComments %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips -o gcc.ps gcc.dvi %DVIPSParameters: dpi=600, compressed %DVIPSSource: TeX output 2002.07.26:1524 %%BeginProcSet: texc.pro %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{ landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[ matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{ statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0] N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin /FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array /BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2 array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get }B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr 1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3 1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{ rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B /chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{ /cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{ A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse} ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17 {2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{ 1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop} forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put }if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{ SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{ userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X 1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4 index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N /p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{ /Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT) (LaserWriter 16/600)]{A length product length le{A length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot} imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M} B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{ p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end %%EndProcSet TeXDict begin 39158280 55380996 1000 600 600 (gcc.dvi) @start %DVIPSBitmapFont: Fa cmti9 9 1 /Fa 1 47 df<121C127F12FFA412FE12380808778718>46 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fb cmbxti10 13.15 3 /Fb 3 111 df97 D<943801FF800403B512C0 5E1980A282EE000F1900A25FA260A2173FA260A2177FA260A217FFA260A25EEDFFC10207 01F15B023F13FD91B7FC4913E00107D9003F5B49487F49487F495A49486D5B495A485D5C 4894C7FC5A4A5B5A91C75B5A163FA248485DA2167F127F495DA216FF12FF495DA25D181E 49EDE03FA24B5C187E17C0A2007F5F5D4B1380003F4AEB81F85D6C6C49EB83F06C6C48B5 5B2707FE0FFC13CF6CB539F07FFFC06C4A6C5B6C6CD9800F90C7FC903A0FFC0003FC3A4D 75CB41>100 D110 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fc cmtt12 13.14 5 /Fc 5 112 df43 D97 D100 D<387FFFFEB6FCA57EC77EB3B3B1007FB7FCB81280A56C16 00294379C238>108 D111 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fd cmsl9 9 11 /Fd 11 117 df97 D<137EEA1FFE5B123F1201A2120012015BA512035BA5 0007137F9038E1FFC09038E781F09038FE00FC01F8137E49133E4848133FED1F805BA216 C0A2121F5BA4153F003F158090C7FCA3ED7F00A24814FE007E5C4A5A007F13035D397B80 07C039F1C01F8026E0E07EC7FC38C07FF838001FC0223578B32B>II<167EED1FFE16FC153F1501A416F8A415 03A216F0A4150714FE903907FFC7E090381F81E790387E007749133F4848131F4848130F 484814C0120F485AA24848131FA2007F158090C7FCA3153F5A481500A3127E5DA2157E6C 14FE14016C13036C6C487E2607C00E13F03803E07C3800FFF090393F80FC0027357BB32B >II105 D 108 D<90260F80FFEB07F82603FF839038C01FFE48903A8F03E0781F913B9C01F0E00F80 26007FB8D9F9C013C0D93FF0EBFB8002E0EBFF0002C05B02805BA202005BA2490103141F 017E4A1480A501FE0107143F494A1400A50001020F5C494A137EA40003021F14FE3D7FFF C3FFFE1FFFF0A2B500C75C3C217EA041>I<90380F80FE3A03FF83FF804890388F07E0EC 9C0326007FB813F0EB3FF014E014C01480A2140015075B017E14E0A4150F13FE4914C0A4 151F1201491480A40003143F3A7FFFC7FFFCA2B5FC26217EA02B>I<903807F83890383F FF7890387C07F03801E0013803C00048481370A2120F90C712607FA26D130013F0EBFF80 6C13F86C13FE6C7F6C1480013F13C013019038001FE0140F003013071403A2007014C0A2 1278EC0780127CEC0F0000FE131E38F7807C38E1FFF038C07F801D237EA11E>115 D<13065BA4131CA25BA2137813F812011203485A381FFFFEB5FCA23803F000A212075BA5 120F5BA5121FEB8018A41438003F13301300A214706C1360EB80E0380F81C0EBC3803803 FF00EA00FC172F7AAD1E>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fe cmss10 10.95 2 /Fe 2 42 df<14FCEB01F8EB03F0EB07E0EB0FC0131F1480EB3F005B137E5B12015B1203 A2485AA25B120FA25B121FA25B123FA448C7FCA712FEB3A2127FA76C7EA4121F7FA2120F 7FA212077FA26C7EA212017F1200137E137F7FEB1F8014C0130FEB07E0EB03F0EB01F8EB 00FC165A79C323>40 D<12FC127E7E6C7E6C7E7F12076C7E7F12016C7E7F137E137FA2EB 3F80A2131F14C0A2130F14E0A2130714F0A4EB03F8A7EB01FCB3A2EB03F8A7EB07F0A414 E0130FA214C0131FA21480133FA2EB7F00A2137E13FE5B485A12035B485A120F5B485A48 C7FC127E5A165A7BC323>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Ff cmtt10 12 23 /Ff 23 122 df<147014F8497EA7007815F000FEEC03F800FF140701C1131F01E1133F01 F913FF6CB612F0001F15C000071500000114FC6C6C13F06D5B010F1380013F13E0497F48 B512FC000714FF001F15C0007F15F026FFF9FC13F801E1133F01C1131F0101130700FE14 030078EC00F000001500A76D5A1470252B79B334>42 D<007FB7FCA2B81280A36C1600A2 29077B7D34>95 D97 DIIIII<49B4EB1FE001079038C0FFF8011F01F313FC017F90B512FE90B7FC 5A48018313F1903AFC007F80FC484890383FC07849011F130048486D7EA2001F81491307 A66D130F000F5DA26C6C495A6D133F6C6C495A9038FF83FF91B5C7FC485C5D4814F001C7 13C001C190C8FC01C0C9FCA47F6C7E90B512FE6CECFFE06C15F8000715FE488148168090 26F0000313C0D83FC09038003FE090C8120F48ED07F0007E150300FE16F8481501A56C15 03007E16F0007F15076C6CEC0FE001E0143FD81FF8ECFFC0270FFF800F13806C90B61200 6C5DC615F8013F14E0010F1480010001F8C7FC2F447DAB34>II<14F0497E 497E497EA46D5A6D5A6D5A91C8FCA9383FFFFC487FA47EC7FCB3AD003FB612F04815F8B7 FCA27E6C15F0253E79BD34>I<383FFFFE487FB6FCA27E7EC77EB3B3AD003FB612FE4881 B81280A26C16006C5D293D7BBC34>108 D<027FEB1FC03B3FE1FF807FE0D87FF39038E0 FFF8B612E303F77F6C91B57E6C01C313F000030181EBE07ED9FE01EB807F6E80491400A2 495BA3495BB3A53C3FFF03FFC0FFF048018701E113F8B500CF01F313FCA26C018701E113 F86C010301C013F0362C81AB34>I<15FF267FFC0713E026FFFE1F7F027F7F91B57E90B6 7E6C1481C69038FC00FF02F07F4A804A133F5CA291C7FCA35BB3A4277FFFFC0FB5FCB56C 481480A46C496C1400312C7FAB34>I<14FE903807FFC0011F13F0017F13FC90B57E4880 48010113803A07FC007FC04848EB3FE049131F4848EB0FF0491307003F15F8491303007F 15FC90C71201A300FEEC00FEAA6C14016C15FCA26D1303003F15F86D1307A26C6CEB0FF0 6C6CEB1FE06D133F6C6CEB7FC03A03FF83FF806C90B512006C5C6D5B011F13F0010713C0 010190C7FC272E7AAC34>II<4BB4FC273FFFC00F13C048D9E03F13E0B590B512F002E114F86C13E76C 01EF130FD8000F13F8ECFFE09238C007F092388003E092C8FC5C5CA25CA25CA45CB1003F B6FC4881B77EA26C5D6C92C7FC2D2C7DAB34>114 D<90390FFF078090B5EACFC0000314 FF5A5A5A383FF803397F80007F90C7123F12FE48141FA47E007FEC0F8001C090C7FCEA3F F8381FFFE06C13FF6C14E06C14F8C614FE011F7FD9007F1380020313C09138003FE0ED0F F0003C1407007EEC03F800FE1401A27EA36D13036D14F06D13076DEB1FE001FE13FF90B6 12C016801600D8FC7F13FC6D13F0D878071380252E79AC34>III<3B3FFFE00FFFF8486D 4813FCB515FEA26C16FC6C496C13F8D801FCC7EA7F000000157EA26D14FE017E5CA2017F 13016D5CA2EC8003011F5CA2ECC007010F5CA2ECE00F01075CA36D6C485AA3ECF83F0101 91C7FCA26E5A0100137EA2ECFEFEEC7EFCA2147F6E5AA36E5A6E5A2F2B7EAA34>I<3B3F FFE07FFFC0486DB512E0B515F0A26C16E06C496C13C0C690390007F0006D495A6D6C485A EB1FC06E485A010F49C7FC903807F0FEEB03F8903801F9FCECFFF86D5B147F6E5A5D6E5A 81143F4A7E81ECFDF8EB01F9903803F8FCECF07E903807E07F010F6D7E90381FC01F0280 7F013F6D7E49486C7E137E01FE6D7E3B7FFFC01FFFF0B56C4813F86E5AA24A7E6C496C13 F02D2B7DAA34>120 D<3B7FFFC01FFFF0B56C4813F802F014FCA202E014F86C496C13F0 D801F8C7EAFE005E7F000014016D5C137E1503017F5C7FA26E485A131F14C0010F495AA2 14E00107495AA2EB03F04BC7FCA2EB01F8A2157EEB00FCA2EC7C7CEC7EFCA2EC3EF8143F A26E5AA2140F5DA35DA2141F5DA2143F92C8FCA25C001F137E383F80FE486C5A13C1EB03 F81307EB1FF06CB45A5C6C5B91C9FC6C5AEA03F02E427DAA34>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fg cmbx12 13.14 60 /Fg 60 123 df<923803FFE092B512FC020714FF021F81027F9038007FC0DAFFF0EB0FE0 010301C0804990C7EA3FF84948147F4A81494814FF495AA2137F5CA2715A715A715AEF07 8094C8FCA8EF07FCB9FCA526007FF0C7123F171FB3B3003FB5D8E00FB512F8A53D4D7ECC 44>12 D<923807FFF092B6127C020715FC141F91397FFE003FECFFF0010301C0137F4990 C7FC495A4A14FF4948147F495AA2017F153F4A141FAFB9FCA526007FF0C7121FB3B3A200 3FB5D8E00FB512F8A53D4D7ECC44>I45 DI<177817F8EE01FCA216 03A2EE07F8A217F0160FA217E0161FA2EE3FC0A21780167FA217005EA24B5AA25E1503A2 4B5AA25E150FA25E151FA24B5AA25E157FA24BC7FCA25D1401A25D1403A24A5AA25D140F A24A5AA25D143FA25D147FA24AC8FCA25C1301A25C1303A2495AA25C130FA2495AA25C13 3FA25C137FA249C9FCA25B1201A2485AA25B1207A25B120FA2485AA25B123FA25B127FA2 48CAFCA25AA2127CA22E6D79D13D>II<15F014011407141F147FEB03FF137FB6FCA3 13FC1380C7FCB3B3B2007FB712E0A52B4777C63D>IIIIII<121F7F7F13FE90B812E0A45A18C01880 18005F5FA25F485E90C8EA07E0007E4B5A5F007C151F4CC7FC167E5E485D15014B5A4B5A C8485A4B5AA24BC8FC157EA25D1401A24A5A1407A24A5AA2141FA24A5AA2147FA314FFA3 495BA45BA55BAA6D5BA26D90C9FCEB007C334B79C93D>III65 DI<93261FFF80EB01C00307B500F81303033F02FE13074AB7EA800F 0207EEE01F021F903AFE007FF83F027F01E0903807FC7F91B5C73801FEFF010301FCEC00 7F4901F0814901C0150F4949814990C97E494882495A48498248197F5C48193F5C48191F 5C48190FA2485BA21A075AA391CDFCA2B5FCAD7EA280F207C0A27EA36C7F1A0F6C1A8080 6C191F6E18006C61806C197E6C6D177C6D6C17FC6D6C4C5A6D6D4B5A6D6D4B5A6D01F0ED 1FC06D01FC4B5A010001FF03FFC7FC6E01E0EB07FE021F01FEEB3FFC020790B612F00201 16C0DA003F92C8FC030714F8DB001F13804A4D79CB59>IIII<93261FFF80EB01 C00307B500F81303033F02FE13074AB7EA800F0207EEE01F021F903AFE007FF83F027F01 E0903807FC7F91B5C73801FEFF010301FCEC007F4901F0814901C0150F4949814990C97E 494882495A48498248197F5C48193F5C48191F5C48190FA2485BA21A075AA391CEFCA2B5 FCAD7E050FB712C080A37E94C7001FEBC000807EA27E807E807E806C7F7E6D7E6D7E6D7F 6D01E05D6D6D5D6D13FC010001FF4AB5FC6E01E0EB07F9021F01FFEB3FF0020791B5EAE0 7F0201EEC01FDA003FED0007030702F81301DB001F018090C8FC524D79CB60>III75 DIIIII82 DI<003FBB12C0A5DA80019038FC001FD9FC001601D87FF09438007F E001C0183F49181F90C7170FA2007E1907A3007C1903A500FC1AF0481901A5C894C7FCB3 B3A749B812FCA54C4A7CC955>I86 DI<003FB600FC011FB61280A5D8000701FCC8D81FF0C7FC6D6D 6F5A626D6D4B5A6D6E4AC8FC616E6D147E6E6D5C70495A6E15036E6D5C6E6D495A4E5A6E 6D131F6E6D5C4EC9FC6EEC807E6FEBC0FE715A6FEBE1F86FEBF3F06F13FF606F5C6F5CA2 6F91CAFC6F80707FA2707F707FA2707F845E4C7F84047E805E03016D7F4C6C7FED03F04B 486C7F030F6D7F16C04B486C7F4B486C7F717F157E4B6D8002016F7F5D4A486E7F4A486E 7F140F4B6E7F4A486E7F4AC86C7F5C027E6F7F4A6F80495A0103717F496C707FB600FC02 7FB612FCA5564B7DCA5D>II97 DI<91380FFF8091B512F8010314FF010F158090263FFE00 13C0D97FF8EB1FE0D9FFE0EB3FF04849EB7FF8484913FF4890C7FC5A5B121F5B003FED7F F0EE3FE0007FED1FC093C7FC5BA212FFAC127F7FA2123FA26D153E121F6D157E6C167C6C 6D14FC6C16F86C6D13036C01F0EB07F0D97FFCEB1FE06DB4EBFFC0010F90B5120001035C 010014F0020F13802F337CB137>IIIIII<13FCEA03FF487F487FA2487F A66C5BA26C5B6C90C7FCEA00FC90C8FCACEB7FC0B5FCA512037EB3B3B61280A5194D7BCC 22>I108 D<90287FC001FFE0EC7FF8B5010F01FC0103B5FC033F6D010F804B6D6C4814E0DBFE0790 26C03F817F9126C3F0019138FC007F0003D9C7E0DAE1F8806CDA8000D9F1E06D7E02CFC7 EBF3C002DE91267FF780131F02FC03FFC77FA24A5DA24A5DA34A5DB3A9B6D8C03FB5D8F0 0FB512FCA55E317BB067>I<903A7FC001FFC0B5010F13F8033F13FE4B7F9126C1FE077F 9126C3F0037F00039038C7C0016CD9CF8080150002DE7F02FC81A25CA25CA35CB3A9B6D8 C07FEBFFE0A53B317BB044>I<913807FF80027F13F80103B6FC010F15C090261FFE017F 903A7FF0003FF8D9FFC0EB0FFC48496D7E4890C76C7E4817804980000F17C048486E13E0 A2003F17F049157FA2007F17F8A400FF17FCAB007F17F8A36C6CEDFFF0A3001F17E06D5C 000F17C06C6C4A13806C17006C6D495A6C01E0EB1FFC6D6C495A903A3FFE01FFF0010FB6 12C0010392C7FCD9007F13F80207138036337DB13D>I<90397FC00FFFB5017F13F002C1 B512FC02C714FF9126CFF80F7F9126FFC00313E0000391C77F6C01FC6E7E4A6E7E5C4A6E 7E848319808319C0A47113E0AC4D13C0A319805FA219004D5A804D5A6E4A5A6E4A5A02FF 495BDB80075B9126EFF01F5B02E7B548C7FC02E314F802E014E0DB0FFEC8FC92CAFCAFB6 12C0A53B467CB044>I<9039FF803FE0B5EBFFF8028113FE02837FDA87E11380EC8F8300 03D99F0713C06C139E14BCA214F8A24A6C13806F13004A6C5A93C7FCA45CB3A7B612E0A5 2A317CB032>114 D<90390FFF8070017FEBF1F048B6FC1207380FFC01391FE0003F4848 130F491307127F90C712035A1501A27FA213E06D90C7FC13FE387FFFF0ECFFC015F06C14 FC6C14FF6C15806C15C06C15E0C615F0013F14F8010714FCEB007F14019138003FFE150F 0078140700F81403A26C1401A37E16FC6C14036D14F87F6DEB07F001F8EB1FE001FFEBFF C091B51280D8FC7F1400D8F81F13FCD8E00313C027337CB130>I<14F8A61301A41303A2 1307A2130FA2131F133F137F13FF1203000F90B512F0B7FCA426007FF8C7FCB3A6167CAA 013F14F880A290391FFE01F0010F1303903907FF87E06DEBFFC06D14806D6C1300EC0FFC 26467EC430>IIIII<007FB500C090387FFFE0A5C6 01F0C73803F8006E5D017F5E6E1407013F5E6E140F011F5E6E141FA26D6D91C7FC5F6D15 3E6F137E6D157C6F13FC6D5DEDF0016D5DEDF803027F5C15FC1607DA3FFE5B160F021F5C EDFF1F6E91C8FC16BF6E13BE16FE6E5BA36E5BA26E5BA26F5AA26F5AA26F5AA393C9FC5D 153E157E157CD81F8013FC486C5B387FE001D8FFF05B14035D14074A5A49485A007F49CA FCEBC07E383F81FC6CB45A6C5B6C13C0C648CBFC3B467EAF41>I<001FB712FCA4DA0001 13F801F84913F001E04913E05B494913C04B138048C7481300A24B5A4B5A003E495B5C5E 4A5B4A5BC7485BA24A90C7FC4A5A4A5AA2495B4949137C495BA2495B495B4990C712F85B 5C495A48491301485BA248491303484913074849130F161F4890C7EA7FF04848EB03FFB8 FCA42E307DAF37>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fh cmtt9 9 77 /Fh 77 123 df<123C127E12FFAF127EAE123C1200A7123C127E12FFA4127E123C082F71 AE27>33 D<90383C03C090387E07E0A7EBFE0F01FC13C0A2007FB512FEB7FCA4003F14FE 3901F81F80AC003FB512FEB7FCA46C14FE3903F03F00A200075BEBE07EA73803C03C202E 7DAD27>35 DI<000F1470486C13F838 3FC001EA7FE0140315F038FFF00700F914E0A2140F15C0A2141F00FF1480387FE03F1500 A26C485A381F807E380F00FEC75AA213015CA213035C13075CA2130F5C131F5CA2133F91 C7FCA24913F090387E01F89038FE03FC9038FC07FEA212019038F80FFF0003149F13F0A2 120713E0A2000F14FF9038C007FE121F1380EC03FC000FEB01F86CC712F0203A7DB327> I<131FEB7FC0497E5A80EA03F1EBE1F8EA07E013C0A513C15C9039C3F1FF80D9E3E113C0 3803E7E3EBEFC101FF1480913881F800EC01F0EA01FEEBFC0301F85B00031307D807FC5B 120F381FFE0FD83FBE5BEB3F1FD87E1F90C7FC149F38FC0FBF14FE1307ECFC020103EB0F 80EB01F8A238FE03FC387E07FE397F1FFF9F6CB61200149F6CEB0FFE390FFC03FC3903F0 00F822307EAE27>I<130F497EA60078EB81E000FEEB87F000FF138FEBDFBF6CB512E06C 14C0000F1400000313FCC613F0A2000313FC000F13FF003F14C04814E039FFDFBFF0EB1F 8F00FE13870078EB81E00000EB8000A66DC7FC1C207BA627>42 DI<007FB512F8B612FCA46C14F81E 067C9927>45 D<121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A0A728927>I48 D<130E131FA25B5BA25B5A5A127FB5FCA213BFEA7E3F1200B3AA003FB51280 5A15C01580A21A2F79AE27>IIII<001FB512E04814F0A315E090C8FCACEB1FF0EBFFFC14FF 158015C09038F03FE09038C00FF0EB0007003EEB03F8001C1301C7FC15FC1400A3127C12 FEA2140115F84813036C14F0007F130F9038801FE0393FE07FC06CB512806C14006C5B00 0113F838007FC01E2F7CAD27>I<14FF010713C0011F13F04913F890B5FC48EB81FC3803 FE0113F8EA07F0EA0FE09038C000F8001F1400485A90C8FCA25A127EEB0FF838FE3FFE48 B51280B612C015E09038F80FF09038E007F890388001FC90C7FC15FE48147E157F153F5A 7E127EA3127F6C147F157E6C6C13FE9038C001FC120F9038F007F83907F81FF06CB512E0 6C14C06C148090383FFE00EB0FF820307DAE27>I<1278B612FE15FFA315FE39FC0001FC EC03F8EC07F0007814E0C7120FEC1FC01580143FEC7F00147E14FE5C13015C13035C1307 5CA2495AA3495AA3133F91C7FCA55B137EA9133C20307DAE27>III<121EEA7F80A2EAFFC0A4EA7F80A2EA1E00C7FCAC121EEA7F80A2EAFFC0A4EA7F80 A2EA1E000A20729F27>I<153815FC14011407140FEC3FF8EC7FE0ECFFC001031300495A EB1FF8495A495A3801FF804890C7FCEA0FFC485AEA7FF0EAFFC05BA27FEA7FF0EA1FF86C 7EEA03FF6C7F38007FE06D7E6D7EEB07FE6D7E010013C0EC7FE0EC3FF8EC0FFC14071401 140015381E287CAA27>60 D<007FB512FEB7FCA4003F14FEC9FCA6003FB512FEB7FCA46C 14FE20127D9F27>I<127012FC7E6C7E7FEA7FF0EA1FF86C7EEA03FF6C7F38007FE06D7E 6D7EEB07FE6D7E010013C0EC7FE0EC3FF8EC0FFC1407A2140FEC3FF8EC7FE0ECFFC00103 1300495AEB1FF8495A495A3801FF804890C7FCEA0FFC485AEA7FF0EAFFC05B48C8FC5A12 701E287CAA27>IIII<007FB5FCB612C08115F87E39 07E003FCEC00FE157E157F81A6157EA25D1403EC0FF890B55A15C015F081819038E000FE 157FED3F80151FA2ED0FC0A6151F1680153FED7F004A5A007FB55AB65A5D15E06C148022 2E7FAD27>I<903803F80E90381FFE1F90383FFFBF90B6FC5A3803FE0F3807F803497E48 487E485A49137FA248C7123FA25A127E151E150012FE5AAA7E127EA2151E007F143F7EA2 6C7E157F6D137E6C6C13FE3907F001FCEBF8033903FE0FF86CB512F06C14E0013F13C06D 1300EB03F820307DAE27>I<387FFFFC14FFB612C06C80813907E00FF81407EC01FC6E7E A2157E157F811680151FA316C0150FABED1F80A3153F1600A25D15FEA24A5A4A5A140F00 7FB55A5DB65A6C91C7FC14FC222E7FAD27>I<007FB61280B712C0A37E3907E0000FA6ED 078092C7FCA4EC07804A7EA390B5FCA5EBE00FA36E5A91C8FCA4ED03C0ED07E0A7007FB6 FCB7FCA36C15C0232E7FAD27>I<007FB61280B712C0A37E3907E0000FA6ED078092C7FC A4EC07804A7EA390B5FCA5EBE00FA36E5A91C8FCAC387FFF80B57EA36C5B222E7EAD27> I<903807F03890381FFC7C90387FFFFC90B5FC5A3803FC1F3807F00F380FE007EBC00300 1F13011380123F90C7FCA2127EA2157892C7FC5AA8EC1FFF4A1380A3007E6D1300EC00FC A36C1301A21380121FEBC003120FEBE0073807F00F3803FC1F6CB5FC7EEB7FFE90381FFC 78D907F0C7FC21307DAE27>I<3A7FFE07FFE0B54813F0A36C486C13E03A07E0007E00AF 90B512FEA59038E0007EB03A7FFE07FFE0B54813F0A36C486C13E0242E7FAD27>I<007F B512E0B612F0A36C14E039001F8000B3B2007FB512E0B612F0A36C14E01C2E7BAD27>I< 90381FFFF84913FCA36D13F89038001F80B3AC127CA212FEA2EC3F005C387F81FE13FF6C 5B6C5B000713E0C690C7FC1E2F7BAD27>I<387FFFC080B5FC7E5CD803F0C8FCB3AAED07 80ED0FC0A7007FB6FCA2B7FC7E1680222E7FAD27>76 DI<3A7FF003FFE0486C4813F0A213FC007F6D13E000079038003E0013 DEA313CFA3148013C714C0A213C314E0A213C114F0A3EBC0F8A31478147CA2143C143EA2 141E141F140FA3EC07BEA3EC03FEEA7FFCEAFFFE1401A26C486C5A242E7FAD27>II<007FB5FCB612E081816C803907E003FEEC00FF81ED3F80151F16C0150FA6 151F1680153FED7F005DEC03FE90B55A5D5D5D92C7FC01E0C8FCADEA7FFEB5FCA36C5A22 2E7FAD27>II<387FFFF0B512FE6E7E816C803907E01FF014076E7E1401811400A51401 5D14034A5A141F90B55A5D5DA281EBE01F6E7E14076E7EA816F0EDF1F8A4397FFE01FBB5 EBFFF08016E06C48EB7FC0C8EA1F00252F7FAD27>I<90387FC0E03901FFF1F0000713FF 5A5AEA3FE0EB801F387F000F007E130712FE5A1403A3EC01E06C90C7FC127E127FEA3FC0 13F86CB47E6C13F86C13FE6CEBFF80C614C0010F13E0010013F0140FEC07F81403140115 FC1400127812FCA46CEB01F8A26C130390388007F09038F01FE090B5FC15C0150000F85B 38701FF81E307CAE27>I<007FB61280B712C0A439FC03F00FA60078EC0780000091C7FC B3AB90B512C04880A36C5C222E7EAD27>I<3A7FFE01FFF8B54813FCA36C486C13F83A07 E0001F80B3AB6D133F00031500A26D5B0001147E6D13FE6C6C485A90387F87F814FF6D5B 010F13C06D5BD901FEC7FC262F80AD27>I<3A7FFC03FFE06D5A00FF15F0007F15E0497E 3A07E0007E00A46C6C5BA4EBF80100015CA46C6C485AA490387E07E0A56D485AA4011F5B 149FA3010F90C7FCA5EB07FEA46D5AA26D5A242F7FAD27>II<393FFC1FFE387FFE3F815D383FFC1F3903F00FE001F85B1201EB FC1F00005CEBFE3F017E90C7FCEB7F7FEB3F7E14FE6D5AA26D5AA26D5AA2130313078013 0F80131F80EB3F7E147F497E017E7F141F01FC7F140FD801F87F14071203496C7E120701 E07F3A7FFC0FFF8000FF15C06D5A497E007F1580222E7EAD27>I<3A7FFC03FFE06D5A00 FF15F0007F15E0497E3A07F000FE0000035CEBF80100015CA2EBFC0300005CEBFE07017E 5BA26D485AA290381F9F80A3010F90C7FCA2EB07FEA26D5AA26D5AAF90381FFF80497FA3 6D5B242E7FAD27>I<127812F87EA27E127E127F7E7F121F7F120F7F12077F1203A27F12 017F12007F137E137F7F80131F80130FA280130780130380130180130080147E147F80A2 1580141F15C0140F15E0140715F0140315F8140115FC1400A2157C15381E3A7CB327>92 D<007FB512F8B612FCA46C14F81E067C7E27>95 D<3803FFC0000F13F04813FC4813FF81 1380EC1FC0381F000F000480C71207A2EB0FFF137F0003B5FC120F5A383FFC07EA7FC013 0012FE5AA46C130F007F131FEBC0FF6CB612806C15C07E000313F1C69038807F8022207C 9F27>97 DIIIII<153F90391FC0FF80D97FF313C048B612E05A4814 EF390FF07F873A1FC01FC3C0EDC000EB800F48486C7EA66C6C485AEBC01FA2390FF07F80 90B5C7FC5C485BEB7FF0EB1FC090C9FCA27F6CB5FC15E015F84814FE4880EB8001007EC7 EA3F80007C140F00FC15C0481407A46C140F007C1580007F143F6C6CEB7F009038F807FF 6CB55A000714F86C5CC614C0D90FFCC7FC23337EA027>II<130F497E497EA46D5A6DC7FC90C8FCA7383FFF8048 7FA37EEA000FB3A4007FB512F0B6FC15F815F07E1D2F7BAE27>I<143C147E14FFA4147E 143C1400A73801FFFE4813FFA37EC7123FB3B0147E1238007C13FE38FE01FC1303B512F8 14F06C13E06C13803807FE0018407CAE27>II<387FFF80B57EA37EEA000FB3B2007FB512F8B612FCA3 6C14F81E2E7CAD27>I<397F07C01F3AFF9FF07FC09039FFF9FFE091B57E7E3A0FFC7FF1 F89038F03FC001E0138001C01300A3EB803EB03A7FF0FFC3FF486C01E3138001F913E701 F813E36C4801C313002920819F27>I<387FE07F39FFF1FFC001F713F090B5FC6C800003 13C1EC01FCEBFE005B5BA25BB03A7FFF83FFE0B500C713F0A36C018313E024207F9F27> II<387FE0FFD8FFF313C090 B512F0816C800003EB81FE49C67E49EB3F8049131F16C049130FA216E01507A6150F16C0 7F151F6DEB3F80157F6DEBFF009038FF83FEECFFFC5D5D01F313C0D9F0FEC7FC91C8FCAC 387FFF80B57EA36C5B23317F9F27>I<90380FF03C90383FFE7E90B5FC000314FE5A380F FC1F381FE007EBC003383F800148C7FC127EA200FE147E5AA67E007E14FEA2007F1301EA 3F80EBC003381FE007380FF81F6CB5FC7E6C147E38007FFCEB0FF090C7FCAC91381FFFF8 A24A13FC6E13F8A226317E9F27>I<397FFC03FC39FFFE0FFF023F13804A13C0007F90B5 FC39007FFE1F14F89138F00F809138E002004AC7FC5CA291C8FCA2137EAD007FB57EB67E A36C5C22207E9F27>I<9038FFF3800007EBFFC0121F5A5AEB803F38FC000F5AA2EC0780 6C90C7FCEA7F8013FC383FFFF06C13FC000713FF00011480D8000F13C09038003FE01407 0078EB03F000FC1301A27E14036CEB07E0EBE01F90B512C01580150000FB13FC38707FF0 1C207B9F27>I<133C137EA8007FB512F0B612F8A36C14F0D8007EC7FCAE1518157EA415 FE6D13FC1483ECFFF86D13F06D13E0010313C0010013001F297EA827>I<397FE01FF848 6C487EA3007F131F00031300B21401A21403EBFC0F6CB612E016F07EEB3FFE90390FF87F E024207F9F27>I<3A7FFC0FFF80486C4813C0A36C486C13803A07C000F800EBE0010003 5CA2EBF00300015CA2EBF80700005CA390387C0F80A36D48C7FCA3EB3F3FEB1F3EA214FE 6D5AA36D5AA26D5A22207E9F27>I<3A7FFE07FFE000FF15F06D5A497E007F15E03A0F80 001F00A36D5B0007143EA414F0EBC1F83903E3FC7CA4EBE79EA200011478A301F713F8A2 EBFF0F6C5CA3EBFE0790387C03E024207F9F27>I<393FFC1FFF486C5A168016006C487E 3901F807E06C6C485A4A5A017E90C7FC6D5AEB1F7E5C6D5A13076D5A5C80497E130F497E 143EEB3E3FEB7E1F90387C0F8001F87F00016D7E3803F0033A7FFE1FFF80A2B54813C06C 486C1380A222207E9F27>I<3A7FFC0FFF80486C4813C0A36C486C13803A07E000F80000 0313015D13F00001130301F85B1200A26D485A137CA290387E0F80133EA2011F90C7FC5C A2130F149E14BE130714FC1303A25C1301A25CA213035CA213075C1208EA3E0F007F5B13 1FD87E7FC8FCEA7FFE6C5A5B6C5AEA07C022317E9F27>I<001FB512FE4814FFA4903800 01FEEC03FCEC07F8EC0FF0001EEB1FE0C7EA3FC0EC7F80ECFF00495A495A495AEB1FE049 5A495A49C7FC485A4848131E4848133F485A485A485A485AB7FCA46C14FE20207E9F27> I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fi cmr9 9 78 /Fi 78 123 df<91393FE00FE0903A01FFF83FF8903A07E01EF83C903A1F800FF07E903A 3F001FE0FE017E133F4914C0485A1738484890381F8000ACB812C0A33B03F0001F8000B3 A7486C497EB50083B5FCA32F357FB42D>11 DII I<033013180378133CA203F8137CA24B1378A3020114F8A24B5BA202031301A203C05BA3 02071303A203805BA3020F1307007FB812FCB912FEA26C17FCC7263E001FC7FCA2023C13 1EA3027C133EA20278133CA302F8137CA2007FB812FCB912FEA26C17FC280003E001F0C7 FC02C05BA201071303A202805BA2010F1307A202005BA249130FA2011E91C8FCA2013E5B A2013C131EA2017C133EA20178133CA20130131837437CB340>35 D<1307A3EB1FE0EBFFFC00037F3907E71F80390F8703C0391E0701E0003C130015700078 1430153800F014F814011403A312F8EC01F000FC90C7FCA2127EEA7F87EA3FE713FF6C13 E06C13F86C13FE6C7FC61480013F13C0010713E0143FEC0FF014071403EC01F81400127C 12FE1578A312FC12F800E014F012601270EC01E00038EB03C0001C1307001FEB0F80390F C73F003803FFFCC613F0EB3FC00107C7FCA31D3C7CB726>I<017C1503D803FEED078026 078780140F260F01C0141F261E00E0EC3F00003E01F8147E003C017CEB01FE007C90397F 8007FC913933FFFEF800789038307FF900F89039380001F00218495A16075F4C5A161F4C C7FC163E5E023813FC007801305B007C4A5AEC7003003C01605B003E9038E007C0001EEB C00FD80F015C270787801FC8FC3903FE003FD8007C133E90C748131F03FCEBFF809239F8 01E1E0913A01F003C07002039038078030DBE00F1338DA07C0EB0018020F49131C038014 0C91381F001E4A013E130E023E15065C14FC495A5C495A13075C4948150E011F021E130C 91C7121F013E161C017E6E1318017CED803849020713300001923803C07049913801E1E0 49913800FF806C48ED1F00373C7CB740>I<123C127EB4FCA21380A2127F123D1201A412 031300A25A1206120E120C121C5A5A126009177AB315>39 D<14C01301EB0380EB0F0013 0E5B133C5B5BA2485A485AA212075B120F90C7FC5AA2121E123EA3123C127CA55AB0127C A5123C123EA3121E121FA27E7F12077F1203A26C7E6C7EA213787F131C7F130FEB0380EB 01C01300124A79B71E>I<12C07E1270123C121C7E120F6C7E6C7EA26C7E6C7EA27F1378 137C133C133EA2131E131FA37F1480A5EB07C0B0EB0F80A514005BA3131E133EA2133C13 7C137813F85BA2485A485AA2485A48C7FC120E5A123C12705A5A124A7CB71E>I<123C12 7EB4FCA21380A2127F123D1201A412031300A25A1206120E120C121C5A5A126009177A87 15>44 DI<123C127E12FFA4127E123C08087A8715>I<15301578 15F8A215F01401A215E01403A215C01407A21580140FA215005CA2143EA2143C147CA214 7814F8A25C1301A25C1303A25C1307A2495AA291C7FC5BA2131E133EA2133C137CA21378 13F8A25B1201A25B1203A2485AA25B120FA290C8FC5AA2121E123EA2123C127CA2127812 F8A25A12601D4B7CB726>II<13075B5B137FEA07FFB5FC13BFEAF83F1200B3B3A2497E007FB51280A319327AB126> IIII<000C14C0380FC00F90B5128015005C5C14F014C0D80C18C7FC90C8FCA9 EB0FC0EB7FF8EBF07C380FC03F9038001F80EC0FC0120E000CEB07E0A2C713F01403A215 F8A41218127E12FEA315F0140712F8006014E01270EC0FC06C131F003C14806CEB7F0038 0F80FE3807FFF8000113E038003F801D347CB126>I<14FE903807FF80011F13E090383F 00F0017C13703901F801F8EBF003EA03E01207EA0FC0EC01F04848C7FCA248C8FCA35A12 7EEB07F0EB1FFC38FE381F9038700F809038E007C039FFC003E0018013F0EC01F8130015 FC1400A24814FEA5127EA4127F6C14FCA26C1301018013F8000F14F0EBC0030007EB07E0 3903E00FC03901F81F806CB51200EB3FFCEB0FE01F347DB126>I<1230123C003FB6FCA3 4814FEA215FC0070C7123800601430157015E04814C01401EC0380C7EA07001406140E5C 141814385CA25CA2495A1303A3495AA2130FA3131F91C7FCA25BA55BA9131C20347CB126 >III<123C127E12FFA4127E123C1200B0123C127E12FFA4127E123C08207A9F15>I63 D<15E0A34A7EA24A7EA34A7EA3EC0DFE140CA2EC 187FA34A6C7EA202707FEC601FA202E07FECC00FA2D901807F1507A249486C7EA301066D 7EA2010E80010FB5FCA249800118C77EA24981163FA2496E7EA3496E7EA2000182160748 7ED81FF04A7ED8FFFE49B512E0A333367DB53A>65 DIIIIIIII<017FB5FCA39038003FE0EC1FC0B3B1127EB4FCA4EC3F805A 0060140000705B6C13FE6C485A380F03F03803FFC0C690C7FC20357DB227>IIIIIII82 D<90381FE00390387FFC0748B5FC3907F01FCF390F8003FF48C7FC003E80814880A20078 8000F880A46C80A27E92C7FC127F13C0EA3FF013FF6C13F06C13FF6C14C06C14F0C68001 3F7F01037F9038003FFF140302001380157F153FED1FC0150F12C0A21507A37EA26CEC0F 80A26C15006C5C6C143E6C147E01C05B39F1FC03F800E0B512E0011F138026C003FEC7FC 22377CB42B>I<007FB712FEA390398007F001D87C00EC003E0078161E0070160EA20060 160600E01607A3481603A6C71500B3AB4A7E011FB512FCA330337DB237>IIII<267FFFFC90B512C0A3000101E090381FF80026007F80EB 0FC0013F6E5A6E91C7FC6D6C130E010F140C6E5B6D6C133801035C6E13606D6C13E06D6C 485A5EDA7F83C8FCEC3FC715C6EC1FECEC0FFC5D14076E7EA26E7E815C6F7E9138063FC0 140E4A6C7E9138180FF0EC380702707F91386003FCECC0010101804A6C7E49C77E498101 0E6E7E010C6E7E131C496E7E01786E7E13FCD807FEEC1FFEB56C90B512F8A335337EB23A >I91 D93 D<12035A120E5A12181238123012701260A212E05AA412DEB4FC13 80A2127FA2EA3F00121E09177BB315>96 DIII<153FEC0FFFA3EC007F81AEEB07F0EB3F FCEBFC0F3901F003BF3907E001FF48487E48487F8148C7FCA25A127E12FEAA127E127FA2 7E6C6C5BA26C6C5B6C6C4813803A03F007BFFC3900F81E3FEB3FFCD90FE0130026357DB3 2B>III<151F90391FC07F809039FFF8E3C03901F07FC739 07E03F033A0FC01F83809039800F8000001F80EB00074880A66C5CEB800F000F5CEBC01F 6C6C48C7FCEBF07C380EFFF8380C1FC0001CC9FCA3121EA2121F380FFFFEECFFC06C14F0 6C14FC4880381F0001003EEB007F4880ED1F8048140FA56C141F007C15006C143E6C5C39 0FC001F83903F007E0C6B51280D91FFCC7FC22337EA126>IIIIII<2703F01FE013FF00FF90267FF803 13C0903BF1E07C0F03E0903BF3803E1C01F02807F7003F387FD803FE1470496D486C7EA2 495CA2495CB3486C496C487EB53BC7FFFE3FFFF0A33C217EA041>I<3903F01FC000FFEB 7FF09038F1E0FC9038F3807C3907F7007EEA03FE497FA25BA25BB3486CEB7F80B538C7FF FCA326217EA02B>II<3903 F03F8000FFEBFFE09038F3C0F89038F7007ED807FE7F6C48EB1F804914C049130F16E0ED 07F0A3ED03F8A9150716F0A216E0150F16C06D131F6DEB3F80160001FF13FC9038F381F8 9038F1FFE0D9F07FC7FC91C8FCAA487EB512C0A325307EA02B>I<903807F00390383FFC 07EBFC0F3901F8038F3807E001000F14DF48486CB4FC497F123F90C77E5AA25A5AA9127F A36C6C5B121F6D5B000F5B3907E003BF3903F0073F3800F81EEB3FF8EB0FE090C7FCAAED 7F8091380FFFFCA326307DA029>I<3803E07C38FFE1FF9038E38F809038E71FC0EA07EE EA03ECA29038FC0F8049C7FCA35BB2487EB512E0A31A217FA01E>II<1330A51370A313F0A21201A212031207381FFFFE B5FCA23803F000AF1403A814073801F806A23800FC0EEB7E1CEB1FF8EB07E0182F7FAD1E >IIIII<3A7FFF807FF8A33A07F8001FC00003EC0F800001EC070015 066C6C5BA26D131C017E1318A26D5BA2EC8070011F1360ECC0E0010F5BA2903807E180A2 14F3010390C7FC14FBEB01FEA26D5AA31478A21430A25CA214E05CA2495A1278D8FC03C8 FCA21306130EEA701CEA7838EA1FF0EA0FC025307F9F29>I<003FB512F0A2EB000F003C 14E00038EB1FC00030EB3F800070137F1500006013FE495A13035CC6485A495AA2495A49 5A49C7FC153013FE485A12035B48481370485A001F14604913E0485A387F000348130F90 B5FCA21C207E9F22>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fj cmr7 7 5 /Fj 5 55 df<13381378EA01F8121F12FE12E01200B3AB487EB512F8A215267BA521>49 D<13FF000313E0380E03F0381800F848137C48137E00787F12FC6CEB1F80A4127CC7FC15 005C143E147E147C5C495A495A5C495A010EC7FC5B5B903870018013E0EA018039030003 0012065A001FB5FC5A485BB5FCA219267DA521>I<13FF000313E0380F01F8381C007C00 30137E003C133E007E133FA4123CC7123E147E147C5C495AEB07E03801FF8091C7FC3800 01E06D7E147C80143F801580A21238127C12FEA21500485B0078133E00705B6C5B381F01 F03807FFC0C690C7FC19277DA521>I<0018130C001F137CEBFFF85C5C1480D819FCC7FC 0018C8FCA7137F3819FFE0381F81F0381E0078001C7F0018133EC7FC80A21580A2123012 7C12FCA3150012F00060133E127000305B001C5B380F03E03803FFC0C648C7FC19277DA5 21>53 DI E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fk cmcsc10 10.95 19 /Fk 19 121 df97 D99 DIIIIII108 DIIII114 D<90383FC00C9038FFF81C0003EBFE3C390FE03FFC381F8007EB 0003003E1301481300157C5A153CA36C141CA27E6C14006C7E13E013FE383FFFE06C13FE 6CEBFF806C14E0000114F06C6C13F8010F13FC1300EC07FE14011400157F153F12E0151F A37EA2151E6C143E6C143C6C147C6C14F89038C001F039FBF807E000F1B512C0D8E07F13 0038C007FC20317BAF2A>I<007FB712F8A39039801FF0073A7E000FE00000781678A200 70163800F0163CA348161CA5C71500B3A8EC3FF8011FB512F0A32E2E7CAD36>III<3B7FFFF001FFFEA30003D9C000 13E0C649EB7F80017F027EC7FC167C6D6C13786D6C5B6D6C5B15016D6C485AD903FC5B15 076D6C48C8FC903800FF1EEC7F9C15BCEC3FF86E5AA2140F6E7E14034A7E4A7EEC1EFF14 1C91383C7F804A6C7E14709138F01FE049486C7E49486C7E148001076D7E49486C7E130E 011E6D7E496E7E017C6E7E13FC000382D80FFEEC7FF8B549B512C0A3322F7DAE38>120 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fl cmb10 10.95 28 /Fl 28 122 df39 D46 D58 D66 D68 D73 D78 D87 D97 D<13FFB5FCA512077EAFEC03FE91381FFFC002 7F13F091B57E9138FE0FFE9138F003FF4A7E02C014804A6C13C017E0A3EE7FF0A317F8AC 17F0A3EEFFE0A217C05D02C014806E4813006E485A9138FC1FFC01FCB55A496C13E0D9F0 1F1380C7D807FCC7FC2D407EBE33>III<49B47E010F13F0013F7F90B512FE48EBC3FF4801001380 4848EB7FC04848133F001F15E05B003FEC1FF0A2485A150F16F8A212FFA290B6FCA401F0 C8FCA5127FA37F003F15F8A26C6C1301000F15F06D13036C6CEB07E06C9038800FC06C90 38F07F806C6CB512006D5B010F13F8010013C0252B7EA92A>III<13FFB5FCA512077EAFED7FE0913801FFF8 02077F4A7F91381FC3FFDA3E031380147CEC780102F014C014E0A214C0A31480B3A4B5D8 FE1F13FFA5303F7EBE33>II<13FFB5FCA512077EB092B512E0A5 92380FE0004B5A4B5A4BC7FC15FE4A5A4A5A4A5A4A5A4A5A143FECFFE0A28181A2ECDFFC EC8FFE140F6E7E6E7FA26E7F6E7FA26F7E6F7EA26F7E6F7EB539FC7FFFF8A52D3F7FBE30 >107 D<13FFB5FCA512077EB3B3AFB512FCA5163F7EBE19>I<01FFD97FE0EB3FF0B52601 FFF8EBFFFC0207D9FC037F4A6D487F91281FC3FF0FE17FDA3E03D99F017F0007017C14BE 6CD97801EBBC0002F002F88002E05CA202C05CA302805CB3A4B5D8FE1FD9FF0FEBFF80A5 49297EA84C>I<01FFEB7FE0B53801FFF802077F4A7F91381FC3FFDA3E0313800007137C 6CEB780102F014C014E0A214C0A31480B3A4B5D8FE1F13FFA530297EA833>I<49B47E01 0F13F0013F13FC90B6FC48018113803A03FE007FC04848EB3FE0000F15F049131F001F15 F8A24848EB0FFCA2007F15FEA400FF15FFAB007F15FEA3003F15FC6D131F001F15F8A26C 6CEB3FF0000715E06C6CEB7FC03A01FF81FF806C90B51200013F13FC010F13F001011380 282B7EA92D>I<9038FF03FEB5381FFFC0027F13F091B57E9138FE1FFE9138F007FF0007 497E6C01C014804A6C13C017E081A217F0A2167F17F8ACEEFFF0A317E05D17C0A26E4813 806E4813006E485A9138FC1FFC91B55A16E0029F1380DA87FCC7FC0280C8FCACB512FEA5 2D3B7EA833>I<3901FE07F800FFEB0FFE91383FFF804A13C0EC7C7F9138F8FFE03807FF F06C5B5CA2ED7FC09138803F80ED1F0092C7FCA291C8FCB3A3B6FCA523297FA827>114 D<90387FE1E03803FFFB4813FF5A381FE07F383F801F387F000F007E130712FE1403A27E A26DC7FC13F013FF6C13F014FC6C13FF15806C14C07E6C14E0000114F06C7E010313F8EB 003F140F0078130712F814037EA36C14F06C1307A29038800FE09038F03FC090B5128015 0000F813FC38E03FF01D2B7DA924>I<131FA65BA55BA25BA25A5A5A001FEBFFC0B6FCA4 000790C7FCB3EC03E0A97EEC87C0A26CEBCF806C13FF6D1300EB1FFEEB07F81B3B7EB923 >II121 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fm cmtt12 17.28 5 /Fm 5 119 df43 D<92387FFFC00203B512FC 021F14FF027F15C049B712E013074916F04916F85B49EBE00090B5C7127F4813FC14F048 5B4849EC3FF04AEC1FE04890C8EA0FC0484892C7FC5BA2485AA2485AA25BA212FFA25BA9 7FA2127FA27FA26C7EA27F001FEE03FC7F6C6CED07FE806C6D140F6C13F06EEC1FFC6C01 FE147F6C6D6CEBFFF86DD9F80713F06D90B6FC6D16E06D16C06D16800101EDFE006D5D02 1F14F0020714809126007FF8C7FC374176BF4A>99 D103 D111 D<003FB56C013FB5128048 6E4914C06F90B6FCB617E0A36C19C04B7F6C4A6D148026003FC0C8387F80006E15FF011F 94C7FCA26E5C010F5EA26E140301075EA26E140701035EA26E140F01015EA26E141F6D5E A26F133F027F5DA26F137F023F5DA26F13FF021F92C8FCA26F5A020F5CA2EDF80302075C A2EDFC0702035CA2EDFE0F02015CA2EDFF1F6E5CA216BF037F5BA216FF6F5BA36F90C9FC A26F5AED03F8433F7DBD4A>118 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fn cmsl10 10.95 72 /Fn 72 123 df<9339FFC003F8030F9038F01FFE923A3FC07C7E0F923BFE001FF81F80DA 03F890383FF07F4A48D9FFE013C0EC1FE04A4848EBC0FF03804A1380DA7F00157F4A9238 003E004A6D91C7FC8301015D4A5CA4160113034A5CA416030007B812FCA3290007F00003 F8C8FCA21607130F4A5CA4160F131F4A5CA4161F133F4A5CA4163F137F91C75BA4167F5B 4992C9FCA31201486C49487EB5D8F83F13FF5DA242407EBF35>11 DIII<39078003C0391FE00FF0003F13 1F01F013F8A6390F3007980000EB00180170133801601330A201E01370491360A2000114 E039038001C001001380481303000EEB0700000C1306001C130E485B485B485B4813601D 1C75BE2D>34 D<1570A4EC03FC91381FFF80027F13E0903901FCE3F0903907E0E0F8D90F 80133CD91F00131E90383E01C0017C140FA201F8140713F00001153F91380380FFD803E0 1381A416FE91380700FC01F01478160013F813FC13FEEBFF0E6C13EE14FE6CEBFFC015F0 6D13FC011F7F6D7F01031480EB007F021F13C0141CEC383FED1FE0150FA21507A2000F13 70D83F801303EA7FC0A3150726FF80E013C0130012FC00F0EC0F801270ED1F00903801C0 1E0078143E00385C003C5C001EEBC1F0001FEBC7E03907E39F806CB5C7FCC613FCEB1FE0 EB0380A249C8FCA2284979C32D>36 D39 D<1530157015E0EC03C0EC0780EC0F00141E5C147C5C5C495A1303495A5C130F49C7FCA2 133E137E137C13FC5B1201A2485AA25B1207A2485AA3485AA448C8FCA45A127EA512FE5A A95AA87EA2127CA5123C123EA2121EA2121F7EA26C7EA26C7EA26C7E120013707FA21318 1C5A74C323>I<497E806D7E1470147880A280A280A2EC0780A215C01403A215E0A3EC01 F0A615F8AF140315F0A5140715E0A4140F15C0A3141F1580A3EC3F00A2143E147EA2147C 14FC5C13015C13035C13075C495AA249C7FC131E133E5B13785B485A485A12075B000EC8 FC5A5A12F05A1D5A7FC323>I44 D<007FB5FCA2B512FEA418067C961E>I<121EEA3F80EA7FC012FFA41380EA7F00123C0A 0A788919>I<1703EF0780170FA2EF1F00A2173EA25FA25FA24C5AA24C5AA24C5AA24C5A A24CC7FCA2163E167E167C5EA24B5AA24B5AA24B5AA24B5AA24BC8FCA2153EA25DA25DA2 4A5AA24A5AA24A5AA24A5AA24AC9FCA2143EA25CA25CA2495AA2495AA2495AA2495A131F 91CAFC133EA25BA25BA2485AA2485AA2485AA2485AA248CBFCA2123EA25AA25AA2127031 5B7FC32D>II<157015F014011407143F903803FFE0137FEBFFCFEBF80F130014 1F15C0A5143F1580A5147F1500A55C5CA513015CA513035CA513075CA5130F5CA3131F49 7EB612F8A31D3D78BC2D>III<161C163C167CA216 FCED01F815031507150FA2151DED3BF0157315E315C31401EC038391380707E0140E141C A2143814709138E00FC0EB01C014801303EB0700130E49EB1F805B133013705B485A4848 EB3F0090C7FC5A120E5A5A48147E1260B8FCA3C73801FE00A25DA41403A25DA314074A7E 0107B512F8A3283E7BBD2D>I<01061403D90780131F90390FF801FE91B512FC16F816F0 16E0168049EBFE0015F890381C7FC091C8FCA3133C1338A513781370A2EC1FE0ECFFF890 3873E03E9038FF001F01FCEB0F804914C049EB07E04914F049130390C7FC16F8A61507A2 1206EA3F80487EA2150F00FF15F0A24914E090C7121F00FC15C000F0143F00701580ED7F 0012786C14FE4A5A6C495A390F800FE03907E03FC06CB5C7FCC613FCEB1FE0283F7ABC2D >IIIII<000FB912FE5AA27ECDFCAE007FB912F0 BAFCA27E3F1679A147>61 D<17E016011603831607A2160FA2161F83163FA2167F167716 F7EEE7FCED01E316C3150316831507EE03FEED0F01150E151E151C153C03387FED780015 7015F05D4A4880177F4A5AA24AC7FCA2020E81173F5C021FB6FC5CA20270C7EA3FE0171F 5CA2495AA2494881170F49C8FCA2130EA24982013C1507A2137CD801FE4B7E2607FF80EC 3FFEB500F00107B512FC19F85E3E417DC044>65 D<013FB7FC18E018FC903B007FE00007 FE6E48903801FF809438007FC05DF03FE0F01FF0A3027F16F892C8FCA54A16F04A153F19 E0187F19C0F0FF8001014B13004A4A5A4D5AEF1FF04D5ADC03FFC7FC49B612F8EFFF8002 F8C7EA3FE0EF0FF0EF07FC717E010715014A81711380A319C0130F5CA5011F4B13805C19 005F601707013F4B5A4A4A5A4D5A4D5A017F913801FF8001FF020F90C7FCB812FC17F094 C8FC3D3E7DBD40>II<013FB7FC18 E018F8903B007FF0000FFE6E48EB01FF9438007FC04B6E7E180F85727E727E147F4B6E7E A2727EA302FF178092C9FCA54918C05CA41A8013034A5DA41A0013074A5DA261A24E5A13 0F4A5E180F61181F61011F4C5A5C4E5A4EC7FC4D5A4D5A013F4B5A4A4A5AEF3FE0EF7F80 017F4A48C8FC01FFEC1FFCB812F0178004FCC9FC423E7DBD45>I<013FB812F8A3902600 7FF0C7127F6E48140F18034B14011800A31978147F4B1570A502FF147092C7FCA3190017 F0495D4A1301A21607161F91B6FC495DA29138FC003F160F1607160301075D5CA219E018 0119C0010FEC07004A90C712031980A218071900011F5E5C181EA2183E183C013F167C4A 15FC4D5A1707017F151F01FF4AB45AB9FCA2603D3E7DBD3E>I<013FB812E0A3903A007F F000016E48EB003F180F4B14071803A31801147F4B15C0A514FF92C71270A395C7FC17F0 495D5C160116031607161F49B65AA39138FC003F160F160701075D4A1303A5010F4AC8FC 5C93C9FCA4131F5CA5133F5CA3137FEBFFF0B612F8A33B3E7DBD3B>I<4BB46C1370031F 01F013F0037F9038FC01E0913A03FF807E03913A0FF8000F83DA1FE0EB07C7DA7F80EB01 EF4AC812FFD903FE16C04948157F4948153F495A4948151F495A4948168091C9120F5A48 5AA2485A000F18004982121FA248485EA295C7FC485AA412FF5BA6043FB512E05BA29339 001FFC00715AA2607F127FA2171F123F6D5EA2121F7F000F163F6C7E6C6C4B5A7F6C6C15 FF6C6DEB01EFD93FC0EB07C7D91FF0EB1F87D907FE9038FE03800101B5EAF8016D6C01E0 C8FCDA07FEC9FC3C4276BF47>I<013FB5D8F807B6FC04F015FEA29026007FF0C7380FFE 006E486E5AA24B5DA4180F147F4B5DA4181F14FF92C85BA4183F5B4A5EA491B8FC5B6102 FCC8127FA318FF13074A93C7FCA45F130F4A5DA41703131F4A5DA41707133F4A5DA3017F 150F496C4A7EB6D8E01FB512FC6115C0483E7DBD44>I<011FB512FC5BA29039003FF800 6E5AA25DA5143F5DA5147F5DA514FF92C7FCA55B5CA513035CA513075CA5130F5CA5131F 5CA3133F497E007FB512F0A2B6FC263E7EBD21>I<013FB512FEA25E9026007FF8C8FCEC 3FE0A25DA5147F5DA514FF92C9FCA55B5CA513035CA513075CA21838A21870130F5CA218 E0A3011F15014A15C01703A21707EF0F80013F151F4A143F177FEFFF00017F140301FF14 3FB9FC5FA2353E7DBD39>76 D<90263FFFF093381FFFF85013F0629026007FF8EFF00002 3F4D5AA2023B933801DFC0A2DA39FCED039FA2F1073F14790271040E5BEC70FE191C1938 1A7F02F01670DAE07F94C7FC19E0A2F001C06201016D6C495A02C05FF00700A2180E6F6C 14010103161C028003385BA218706F7EF0E00313070200DA01C05BA2923907F00380A294 380700075B010E902603F80E5C5FA25F190F011E6D6C5A011C605FA2EEFDC0DB00FF141F 013C5D013860013C92C7FC017C5C01FE027E143F2607FF80017C4A7EB500FC037FB512E0 04785E4A1338553E7CBD53>I<90263FFFE0023FB5FC6F16FEA29026003FF8020313C002 1F030013004A6C157C023B163C6F15381439810238167802787FDA707F157082153F8203 1F15F002F07FDAE00F5D8215078203031401010180DAC0015D82811780047F1303010315 C04A013F5C17E0161F17F0040F1307010715F891C7000791C7FC17FC160317FE04015B49 15FF010E6E130E188E177F18CEEF3FDE011E16FE011C6F5AA2170FA21707133C01386F5A 133C017C150113FE2607FF801400B512FC18705C483E7DBD44>I<923803FF80031F13F0 9238FE01FE913903F0003FDA0FC0EB1FC0DA3F80EB07E0027EC76C7E49486E7E49488149 486E7E4948157F495A013F17804948ED3FC049C9FCA24848EE1FE012035B000718F05B12 0FA2485A19F8123F5BA2127FA219F04848163FA5F07FE0A35BF0FFC0A219805F19007F4D 5A127F4D5A60003F160F6D5E001F4C5A4D5A6C6C4B5A95C7FC6C6C15FE00034B5A6C6C4A 5A6C6C4A5A017FEC1FC06D6C495AD90FE001FEC8FC903903F807F80100B512C0DA0FFCC9 FC3D4276BF47>I<013FB612FEEFFFE018F8903B007FF0000FFC6E48EB01FF7113804BEC 7FC0183F19E0F01FF0A2147F5D19F8A402FFED3FF092C8FCA219E0A2F07FC05B4AEDFF80 19004D5A4D5AEF0FF80103ED3FE04A903801FF8091B648C7FC17F002FCCAFCA213075CA5 130F5CA5131F5CA5133F5CA3137F497EB612E0A25D3D3E7DBD3E>I<013FB612F017FF18 E0903B007FF0003FF86E48EB07FCEF01FE4B6D7EF07F8019C0183F19E0147F4B15F0A502 FFED7FE092C8FCA219C0F0FF80A2494B13004A5D4D5AEF0FF04D5AEF7F800103DA07FEC7 FC91B612F017809139FC0007E0EE03F8EE00FC0107814A147F717EA284A2130F5CA48401 1F157F5CA41902013F17075CA2F0F00F017F170E496C143FB600E0011F131C94380FF83C 4B01071378CA3801FFE09438003F8040407DBD43>82 D<9238FF80070207EBE00F021FEB F81E91387F00FE02FCEB1F3ED903F0EB0FFE49481307494813034AEB01FC49C7FC491400 133E137E177C491578A57F1770A26D1500808080EB7FFEECFFE06D13FEEDFFC06D14F06D 14FC010380010080143F02031480DA003F13C015031500EE7FE0163F161FA2160F121CA3 1607160F003C16C0A31780003E151F1700007E5D007F153E6D5C16FC01E0495AD87DF049 5AD8FCFCEB0FC03AF87F803F8027F01FFFFEC7FCD8E00713F839C0007FC030427BBF33> I<0007B912F0A33C0FFE000FF8003F01F0160F01C04A13034848160190C7FC121EF000E0 48141F5E1238A212781270153F5E5AA3C81600157F5EA515FF93C9FCA55C5DA514035DA5 14075DA5140F5DA3141FEC7FFC0003B7FCA33C3D76BC42>II87 D<010FB500F090B512F85B5FD9003F902680 003F1300DA0FFEC7EA1FF84BEC0FE00207168096C7FC6E6C141E181C6E6C143C606E6D5B 4D5ADB7FC05B4D5A92383FE0074DC8FC92381FF01E171C6F6C5A5F923807FCF0EEFDE06F B45A5F6F90C9FCA26F7FA2707EA216FF4B7FED03DF9238079FF0ED0F1F92380E0FF8151C 92383C07FC15784B6C7EEC01E04B6C7EEC038002076D7F4AC7FC021E6E7E5C02386E7E5C 02F06E7E495A49486E7E130749486E7E497E017F4B7E2603FFF091383FFF80007F01FC49 B512FEB55CA2453E7EBD44>I<0118130C0138131C491338491370484813E039038001C0 390700038000061400000E5B48130E0018130C0038131C00301318A20070133800601330 A300EFEB778039FFC07FE001E013F0A4397FC03FE0A2393F801FC0391E000F001E1C6CBE 2D>92 D<13181338137013E0EA01C0EA0380EA07001206120E5A121812381230A2127012 60A312EFEAFFC013E0A4EA7FC0A2EA3F80EA1E000D1C73BE19>96 DIIIIII<177C913907F803FE91393FFE0F8F9139FC0F9C3F903901F007F8903907E003 E0D90FC013F0011F903801F80C02801400133FD97F007FA315035B495CA3017E495A5E15 0F6D5C6D495A90263F803EC7FCECC0FC903871FFF09038E07F8091C9FC485AA47FA27F90 B512F8EDFF806C15E016F86D8048B6FC3A07E0000FFED80F801300003FC8127F003E815A 00FC815AA25E163EA25E6C15FC007C4A5A6C4A5A6CEC0FC0D80FC0013FC7FC3903F801FC C6B512F0010F90C8FC303D7FA82D>I<147FEB3FFFA313017FA25CA513015CA513035CA4 ED07F80107EB1FFF9139F0781FC09138F1E00F9139F38007E0ECF70002FE14F0495A5CA2 5CA24A130F131F4A14E0A4161F133F4A14C0A4163F137F91C71380A4167F5B491500A300 015D486C491380B5D8F87F13FCA32E3F7DBE33>I<1478EB01FE130314FFA25B14FE1303 14FCEB00F01400ACEB03F8EA01FF14F0A2EA001F130FA314E0A5131F14C0A5133F1480A5 137F1400A55B5BA4EA03FF007F13F0A2B5FC183E7DBD1A>II<147FEB3FFF A313017FA25CA513015CA513035CA501070103B5FC02F014FEA26F13F06F1380EEFE0001 0F14F84A485AED03C04B5A031FC7FC153E011F13784A5AECC3E0ECC7F0ECCFF814FF497F 14F9ECE1FE14C04A7E4A7E4980017E133F82151F82150F01FE8049130782A2000181486C 49B4FCB5D8F03F13F04B13E0A2303F7EBE30>I<143FEB1FFF5BA213017FA214FEA51301 14FCA5130314F8A5130714F0A5130F14E0A5131F14C0A5133F1480A5137F1400A55B5BA4 EA03FF007F13F8A2B5FC183F7DBE1A>I<902707F007F8EB03FCD803FFD91FFF90380FFF 80913CE0781FC03C0FE09126E1E00FEBF0073E001FE38007E1C003F090260FE700EBE380 02EEDAF70013F802FC14FE02D85C14F84A5CA24A5C011F020F14074A4A14F0A5013F021F 140F4A4A14E0A5017F023F141F91C74914C0A549027F143F4992C71380A300014B147F48 6C496DEBFFC0B5D8F87FD9FC3F13FEA347287DA74C>I<903907F007F8D803FFEB1FFF91 39E0781FC09138E1E00F3B001FE38007E090380FE70002EE14F014FC14D814F85CA24A13 0F131F4A14E0A4161F133F4A14C0A4163F137F91C71380A4167F5B491500A300015D486C 491380B5D8F87F13FCA32E287DA733>II<91387F01FE903A7F FF0FFFC09139FE3E03F09238F801F8903A03FFE000FE6D49137F4B7F92C713804A15C04A 141FA218E0A20103150F5C18F0A3171F010716E05CA3173F18C0130F4A147F1880A2EFFF 004C5A011F5D16034C5A6E495AEE1FC06E495AD93FDC017EC7FC91388F01F8913883FFE0 028090C8FC92C9FC137FA291CAFCA45BA25BA31201487EB512F8A3343A81A733>I<9139 0FE003C0DAFFFC1380903903F81E0790390FE0070F90391F80038FD97F0013DF01FE1301 4848903800FF00485A1207485A8248485C123F495CA2485AA2150112FF90C75BA41503A2 5EA37E15077F003F4A5A151F6C6C133F6C6C137F000714FF3903F003CF3A00FC0F8FE090 383FFE0FEB0FF090C7FC151F5EA5153F5EA4157F4B7E023F13FEA32A3A7AA730>I<9039 07F01F80D803FFEB7FE09138E1E1F09138E387F839001FE707EB0FE614EE02FC13F002D8 13E09138F801804AC7FCA25C131FA25CA4133F5CA5137F91C8FCA55B5BA31201487EB512 FEA325287EA724>I<9138FF81C0010713E390381F807F90397C003F8049131F4848130F 5B00031407A248481400A27FA27F6D90C7FCEBFF8014FC6C13FF6C14C015F06C6C7F011F 7F13079038007FFE1403140100381300157EA2123C153E157E007C147CA2007E147815F8 007F495A4A5A486C485A26F9E01FC7FC38E0FFFC38C01FE0222A7DA824>II<01FE147F00FFEC7FFF4914FEA20007140300 031401A34914FCA4150312074914F8A41507120F4914F0A4150F121F4914E0A2151FA315 3F4914C0157F15FFEC01DF3A0FC003BFE09138073FFF3803F01E3801FFF826003FE01380 282977A733>III<48B539C07FFFC0A33C000FFE003FF8 006D48EB1FE0010315800101023EC7FC6E133C01005C027F5B6F5A91383F81C0EDC380DA 1FC7C8FC15EFEC0FFE6E5A5D140381A24A7E140FEC1E7F023C7FEC383F02707FECE01F01 0180903803C00F49486C7ED90F007F491303017E80D801FE80D807FF497EB5D8803F13F8 A332277FA630>I<90B539E007FFF05E18E0902707FE000313006D48EB01FC705A5F0101 4A5A5F16036E5C0100140794C7FC160E805E805E1678ED8070023F13F05EED81C015C191 381FC38015C793C8FC15EF15EEEC0FFCA25DA26E5AA25DA26E5A5DA24AC9FC5C140E141E 141C5C121C003F5B5A485B495A130300FE5B4848CAFCEA701EEA783CEA3FF0EA0FC0343A 80A630>I<017FB512FEA2ECC00190397E0003FC49EB07F849EB0FF049EB1FE049EB3FC0 ED7F8000011500495B4A5A4A5A4848485A4A5AC7485A4A5A5D147F4AC7FC495A495A4948 1370494813E0495A5C133F90387F8001D9FF0013C0485A48481303485A4848EB07804913 0F4848131F003F143F397F8001FFB71200A227277EA628>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fo cmr8 8 3 /Fo 3 84 df67 D69 D<90383F80303901FFF0703807C07C390F00 0EF0001E13074813034813011400127000F01470A315307EA26C1400127E127FEA3FE013 FE381FFFE06C13FC6C13FF00011480D8003F13E013039038003FF0EC07F81401140015FC 157C12C0153CA37EA215787E6C14706C14F06CEB01E039F78003C039E3F00F0038E07FFE 38C00FF01E2F7CAD27>83 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fp cmsy9 9 2 /Fp 2 106 df104 D<126012F07EA21278127CA27EA2 121E121FA26C7EA212077FA26C7EA212017FA26C7EA21378137CA27FA2131E131FA2EB0F 80A2130714C0A41480130FA2EB1F00A2131E133EA25BA2137813F8A2485AA25B1203A248 5AA25B120FA248C7FCA2121E123EA25AA2127812F8A25A1260124A7CB71E>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fq cmtt10 10.95 94 /Fq 94 127 df<121C127FEAFF80B3EA7F00B2123EC7FCA8121C127FA2EAFF80A3EA7F00 A2121C09396DB830>33 D<00101304007C131F00FEEB3F80A26C137FA248133FB2007E14 00007C7F003C131E00101304191C75B830>I<903907C007C0A2496C487EA8011F131FA2 02C05BA3007FB7FCA2B81280A36C16006C5D3A007F807F80A2020090C7FCA9495BA2003F 90B512FE4881B81280A36C1600A22701FC01FCC7FCA300031303A201F85BA76C486C5AA2 29387DB730>I<1438147C14FCA4EB03FF011F13E090B512FC4880000780481580261FFE FD13C09039F0FC3FE0D83FC0131FD87F80EB0FF001001307007E15F800FE14035A1507A3 6CEC03F0A2007F91C7FC138013C0EA3FF0EA1FFE13FF6C13FF6C14E0000114F86C6C7F01 1F7F01037F0100148002FD13C09138FC7FE0151FED0FF015070018EC03F8127E1501B4FC A35AA26CEC03F07E01801307ED0FE0D83FC0131F01F0EB7FC0D81FFEB512806CB612006C 5C6C5CC614F0013F13C0D907FEC7FCEB00FCA5147C143825477BBE30>II II<141E147F14FF5BEB03 FEEB07FCEB0FF0EB1FE0EB3FC0EB7F80EBFF00485A5B12035B485A120F5BA2485AA2123F 5BA2127F90C7FCA412FEAD127FA47F123FA27F121FA26C7EA27F12076C7E7F12017F6C7E EB7F80EB3FC0EB1FE0EB0FF0EB07FCEB03FEEB01FF7F147F141E184771BE30>I<127812 FE7E7F6C7E6C7EEA0FF06C7E6C7E6C7E6C7EEB7F80133F14C0131FEB0FE014F01307A2EB 03F8A214FC1301A214FE1300A4147FAD14FEA4130114FCA2130314F8A2EB07F0A2130F14 E0EB1FC0133F1480137FEBFF00485A485A485A485AEA3FE0485A485A90C7FC5A12781847 78BE30>I<14E0497E497EA60038EC0380007EEC0FC0D8FF83EB3FE001C3137F9038F3F9 FF267FFBFB13C06CB61280000FECFE00000314F86C5C6C6C13C0011F90C7FC017F13C048 B512F04880000F14FE003FECFF80267FFBFB13C026FFF3F913E09038C3F87F0183133FD8 7E03EB0FC00038EC0380000091C7FCA66D5A6D5A23277AAE30>I<143EA2147FAF007FB7 FCA2B81280A36C1600A2C76CC8FCAF143EA229297DAF30>II<007FB612F0A2B712F8A36C15F0A225077B9E30>I<120F EA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0EA0F000C0C6E8B30>I<16F01501ED03F8A2 1507A2ED0FF0A2ED1FE0A2ED3FC0A2ED7F80A2EDFF00A24A5AA25D1403A24A5AA24A5AA2 4A5AA24A5AA24A5AA24AC7FCA2495AA25C1303A2495AA2495AA2495AA2495AA2495AA249 C8FCA2485AA25B1203A2485AA2485AA2485AA2485AA2485AA248C9FCA25AA2127CA22547 7BBE30>I<14FE903807FFC0497F013F13F8497F90B57E48EB83FF4848C6138049137F48 48EB3FC04848EB1FE049130F001F15F0491307A24848EB03F8A290C712014815FCA400FE EC00FEAD6C14016C15FCA36D1303003F15F8A26D1307001F15F0A26D130F6C6CEB1FE0A2 6C6CEB3FC06C6CEB7F806D13FF2601FF8313006CEBFFFE6D5B6D5B010F13E06D5BD900FE C7FC273A7CB830>IIIII<000FB6128048 15C05AA316800180C8FCAEEB83FF019F13C090B512F015FC8181D9FE0313809039F0007F C049133F0180EB1FE06CC7120F000E15F0C81207A216F81503A31218127EA2B4FC150716 F048140F6C15E06C141F6DEB3FC06D137F3A3FE001FF80261FFC0F13006CB55A6C5C6C5C 6C14E06C6C1380D90FFCC7FC25397BB730>II<127CB712FC16FEA416FC48C7EA 0FF816F0ED1FE0007CEC3FC0C8EA7F80EDFF00A24A5A4A5A5D14075D140F5D4A5AA24A5A A24AC7FCA25C5C13015CA213035CA213075CA4495AA6131F5CA96D5A6DC8FC273A7CB830 >I<49B4FC011F13F0017F13FC90B57E0003ECFF804815C048010113E03A1FF8003FF049 131FD83FC0EB07F8A24848EB03FC90C71201A56D1303003F15F86D13076C6CEB0FF06C6C EB1FE0D807FCEB7FC03A03FF83FF806C90B512006C6C13FC011F13F0497F90B512FE4880 2607FE0013C0D80FF8EB3FE0D81FE0EB0FF04848EB07F8491303007F15FC90C712014815 FE481400A66C14016C15FC6D1303003F15F86D1307D81FF0EB1FF06D133F3A0FFF01FFE0 6C90B512C06C1580C6ECFE006D5B011F13F0010190C7FC273A7CB830>I<49B4FC010F13 E0013F13F890B57E4880488048010113803A0FFC007FC0D81FF0EB3FE04848131F49EB0F F048481307A290C7EA03F85A4815FC1501A416FEA37E7E6D1303A26C6C13076C6C130F6D 133FD80FFC13FF6CB6FC7E6C14FE6C14F9013FEBE1FC010F138190380060011400ED03F8 A2150716F0150F000F15E0486C131F486CEB3FC0157FEDFF804A1300EC07FE391FF01FFC 90B55A6C5C6C5C6C1480C649C7FCEB3FF0273A7CB830>I<120FEA3FC0EA7FE0A2EAFFF0 A4EA7FE0A2EA3FC0EA0F00C7FCAF120FEA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0EA0F 000C276EA630>II<16F01503ED07F8151F157FEDFFF0 14034A13C0021F138091383FFE00ECFFF8495B010713C0495BD93FFEC7FC495A3801FFF0 485B000F13804890C8FCEA7FFC5BEAFFE05B7FEA7FF87FEA1FFF6C7F000313E06C7F3800 7FFC6D7E90380FFF806D7F010113F06D7FEC3FFE91381FFF80020713C06E13F01400ED7F F8151F1507ED03F01500252F7BB230>I<007FB7FCA2B81280A36C16006C5DCBFCA7003F B612FE4881B81280A36C1600A229157DA530>I<1278127EB4FC13C07FEA7FF813FEEA1F FF6C13C000037F6C13F86C6C7EEB1FFF6D7F010313E06D7F9038007FFC6E7E91380FFF80 6E13C0020113F080ED3FF8151F153FEDFFF05C020713C04A138091383FFE004A5A903801 FFF0495B010F13804990C7FCEB7FFC48485A4813E0000F5B4890C8FCEA7FFE13F8EAFFE0 5B90C9FC127E1278252F7BB230>III<147F4A7EA2497FA4497F14F7A401077F14E3A301 0F7FA314C1A2011F7FA490383F80FEA590387F007FA4498049133F90B6FCA34881A39038 FC001F00038149130FA4000781491307A2D87FFFEB7FFFB56CB51280A46C496C13002939 7DB830>I<007FB512F0B612FE6F7E82826C813A03F8001FF815076F7E1501A26F7EA615 015EA24B5A1507ED1FF0ED7FE090B65A5E4BC7FC6F7E16E0829039F8000FF8ED03FC6F7E 1500167FA3EE3F80A6167F1700A25E4B5A1503ED1FFC007FB6FCB75A5E16C05E6C02FCC7 FC29387EB730>I<91387F803C903903FFF03E49EBFC7E011F13FE49EBFFFE5B9038FFE0 7F48EB801F3903FE000F484813075B48481303A2484813015B123F491300A2127F90C8FC 167C16005A5AAC7E7EA2167C6D14FE123FA27F121F6D13016C6C14FCA26C6CEB03F86D13 076C6CEB0FF03901FF801F6C9038E07FE06DB512C06D14806D1400010713FC6D13F09038 007FC0273A7CB830>I<003FB512E04814FCB67E6F7E6C816C813A03F8007FF0ED1FF815 0F6F7E6F7E15016F7EA2EE7F80A2163F17C0161FA4EE0FE0AC161F17C0A3163F1780A216 7F17005E4B5A15034B5A150F4B5AED7FF0003FB65A485DB75A93C7FC6C14FC6C14E02B38 7FB730>I<007FB7FCB81280A47ED803F8C7123FA8EE1F0093C7FCA4157C15FEA490B5FC A6EBF800A4157C92C8FCA5EE07C0EE0FE0A9007FB7FCB8FCA46C16C02B387EB730>I<00 3FB712804816C0B8FCA27E7ED801FCC7121FA8EE0F8093C7FCA5153E157FA490B6FCA690 38FC007FA4153E92C8FCAE383FFFF8487FB5FCA27E6C5B2A387EB730>I<02FF13F00103 EBC0F8010F13F1013F13FD4913FF90B6FC4813C1EC007F4848133F4848131F49130F485A 491307121F5B123F491303A2127F90C7FC6F5A92C8FC5A5AA892B5FC4A14805CA26C7F6C 6D1400ED03F8A27F003F1407A27F121F6D130F120F7F6C6C131FA2D803FE133F6C6C137F ECC1FF6C90B5FC7F6D13FB010F13F30103EBC1F0010090C8FC293A7DB830>I<3B3FFF80 0FFFE0486D4813F0B56C4813F8A26C496C13F06C496C13E0D803F8C7EAFE00B290B6FCA6 01F8C7FCB3A23B3FFF800FFFE0486D4813F0B56C4813F8A26C496C13F06C496C13E02D38 7FB730>I<007FB6FCB71280A46C1500260007F0C7FCB3B3A8007FB6FCB71280A46C1500 213879B730>I<49B512F04914F85BA27F6D14F090C7EAFE00B3B3123C127EB4FCA24A5A 1403EB8007397FF01FF86CB55A5D6C5C00075C000149C7FC38003FF025397AB730>II<383FFFF8487FB57EA26C5B6C5BD801FCC9FCB3B0EE0F80EE1FC0A9003FB7FC5AB8 FCA27E6C16802A387EB730>III<90383FFFE048B512FC000714FF4815804815C04815 E0EBF80001E0133FD87F80EB0FF0A290C71207A44815F8481403B3A96C1407A26C15F0A3 6D130FA26D131F6C6CEB3FE001F813FF90B6FC6C15C06C15806C1500000114FCD8003F13 E0253A7BB830>I<007FB512F0B612FE6F7E16E0826C813903F8003FED0FFCED03FE1501 6F7EA2821780163FA6167F17005EA24B5A1503ED0FFCED3FF890B6FC5E5E16804BC7FC15 F001F8C9FCB0387FFFC0B57EA46C5B29387EB730>I<90383FFFE048B512FC000714FF48 15804815C04815E0EBF80001E0133F4848EB1FF049130F90C71207A44815F8481403B3A8 147E14FE6CEBFF076C15F0EC7F87A2EC3FC7018013CF9038C01FFFD83FE014E0EBF80F90 B6FC6C15C06C15806C1500000114FCD8003F7FEB00016E7EA21680157F16C0153F16E015 1F16F0150FED07E025467BB830>I<003FB57E4814F0B612FC15FF6C816C812603F8017F 9138003FF0151F6F7E15071503821501A515035E1507150F4B5A153F4AB45A90B65A5E93 C7FC5D8182D9F8007FED3FE0151F150F821507A817F8EEF1FCA53A3FFF8003FB4801C0EB FFF8B56C7E17F06C496C13E06C49EB7FC0C9EA1F002E397FB730>I<90390FF803C0D97F FF13E048B512C74814F74814FF5A381FF80F383FE001497E4848137F90C7123F5A48141F A2150FA37EED07C06C91C7FC7F7FEA3FF0EA1FFEEBFFF06C13FF6C14E0000114F86C8001 1F13FF01031480D9003F13C014019138007FE0151FED0FF0A2ED07F8A2007C140312FEA5 6C140716F07F6DEB0FE06D131F01F8EB3FC001FF13FF91B51280160000FD5CD8FC7F13F8 D8F81F5BD878011380253A7BB830>I<003FB712C04816E0B8FCA43AFE003F800FA8007C ED07C0C791C7FCB3B1011FB5FC4980A46D91C7FC2B387EB730>I<3B7FFFC007FFFCB56C 4813FEA46C496C13FCD803F8C7EA3F80B3B16D147F00011600A36C6C14FE6D13016D5CEC 800390393FE00FF890391FF83FF06DB55A6D5C6D5C6D91C7FC9038007FFCEC1FF02F3980 B730>III<3A3FFF01FF F84801837F02C77FA202835B6C01015B3A01FC007F806D91C7FC00005C6D5BEB7F01EC81 FCEB3F8314C3011F5B14E7010F5B14FF6D5BA26D5BA26D5BA26D90C8FCA4497FA2497FA2 815B81EB0FE781EB1FC381EB3F8181EB7F0081497F49800001143F49800003141F498000 07140FD87FFEEB7FFFB590B5128080A25C6C486D130029387DB730>II<001FB612 FC4815FE5AA490C7EA03FCED07F816F0150FED1FE016C0153FED7F80003E1500C85A4A5A 5D14034A5A5D140F4A5A5D143F4A5A92C7FC5C495A5C1303495A5C130F495A5C133F495A 91C8FC5B4848147C4914FE1203485A5B120F485A5B123F485A90B6FCB7FCA46C15FC2738 7CB730>I<007FB5FCB61280A4150048C8FCB3B3B3A5B6FC1580A46C140019476DBE30>I< 127CA212FEA27EA26C7EA26C7EA26C7EA26C7EA26C7EA26C7EA212017FA26C7EA26D7EA2 6D7EA26D7EA26D7EA26D7EA26D7EA2130180A26D7EA26E7EA26E7EA26E7EA26E7EA26E7E A26E7EA2140181A26E7EA2ED7F80A2ED3FC0A2ED1FE0A2ED0FF0A2ED07F8A21503A2ED01 F0150025477BBE30>I<007FB5FCB61280A47EC7123FB3B3B3A5007FB5FCB6FCA46C1400 19477DBE30>I<1307EB1FC0EB7FF0497E000313FE000FEBFF80003F14E0D87FFD13F039 FFF07FF8EBC01FEB800F38FE0003007CEB01F00010EB00401D0E77B730>I<007FB612F0 A2B712F8A36C15F0A225077B7D30>I<1338137CEA01FE12031207EA0FFC13F0EA1FE013 C0EA3F8013005A127EA212FE5AA5EAFFC013E013F0127FA2123FA2EA1FE0EA07C00F1D70 BE30>IIII<913801FFE04A7F5CA28080EC0007AAEB03FE90381FFF874913E790B6FC5A 5A481303380FFC00D81FF0133F49131F485A150F4848130790C7FCA25AA25AA87E6C140F A27F003F141F6D133F6C7E6D137F390FF801FF2607FE07EBFFC06CB712E06C16F06C14F7 6D01C713E0011F010313C0D907FCC8FC2C397DB730>I<49B4FC010713E0011F13F8017F 7F90B57E488048018113803A07FC007FC04848133FD81FE0EB1FE0150F484814F0491307 127F90C7FCED03F85A5AB7FCA516F048C9FC7E7EA27F003FEC01F06DEB03F86C7E6C7E6D 1307D807FEEB1FF03A03FFC07FE06C90B5FC6C15C0013F14806DEBFE00010713F8010013 C0252A7CA830>IIII<14E0EB03F8A2497EA36D5AA2EB00E091C8FCA9381FFF F8487F5AA27E7EEA0001B3A9003FB612C04815E0B7FCA27E6C15C023397AB830>III<387FFFF8B57EA47EEA0001B3B3A8007F B612F0B712F8A46C15F025387BB730>I<02FC137E3B7FC3FF01FF80D8FFEF01877F90B5 00CF7F15DF92B57E6C010F13872607FE07EB03F801FC13FE9039F803FC01A201F013F8A3 01E013F0B3A23C7FFE0FFF07FF80B548018F13C0A46C486C01071380322881A730>II<49B4FC010F13E0013F13F8497F90B57E0003ECFF8014 013A07FC007FC04848EB3FE0D81FE0EB0FF0A24848EB07F8491303007F15FC90C71201A3 00FEEC00FEA86C14016C15FCA26D1303003F15F86D13076D130F6C6CEB1FF06C6CEB3FE0 6D137F3A07FF01FFC06C90B512806C15006C6C13FC6D5B010F13E0010190C7FC272A7CA8 30>II<49B413F8010FEBC1 FC013F13F14913FD48B6FC5A481381390FFC007F49131F4848130F491307485A49130312 7F90C7FC15015A5AA77E7E15037FA26C6C1307150F6C6C131F6C6C133F01FC137F3907FF 01FF6C90B5FC6C14FD6C14F9013F13F1010F13C1903803FE0190C7FCAD92B512F84A14FC A46E14F82E3C7DA730>II<90381FFC1E48B5129F000714FF5A5A5A387FF0 07EB800100FEC7FC4880A46C143E007F91C7FC13E06CB4FC6C13FC6CEBFF806C14E00001 14F86C6C7F01037F9038000FFF02001380007C147F00FEEC1FC0A2150F7EA27F151F6DEB 3F806D137F9039FC03FF0090B6FC5D5D00FC14F0D8F83F13C026780FFEC7FC222A79A830 >III<3B3FFFC07FFF80486DB512C0B515E0A26C16C06C496C1380 3B01F80003F000A26D130700005DA26D130F017E5CA2017F131F6D5CA2EC803F011F91C7 FCA26E5A010F137EA2ECE0FE01075BA214F101035BA3903801FBF0A314FF6D5BA36E5A6E 5A2B277EA630>I<3B3FFFC01FFFE0486D4813F0B515F8A26C16F06C496C13E0D807E0C7 EA3F00A26D5C0003157EA56D14FE00015DEC0F80EC1FC0EC3FE0A33A00FC7FF1F8A2147D A2ECFDF9017C5C14F8A3017E13FBA290393FF07FE0A3ECE03FA2011F5C90390F800F802D 277FA630>I<3A3FFF81FFFC4801C37FB580A26C5D6C01815BC648C66CC7FC137FEC80FE 90383F81FC90381FC3F8EB0FE3ECE7F06DB45A6D5B7F6D5B92C8FC147E147F5C497F8190 3803F7E0EB07E790380FE3F0ECC1F890381F81FC90383F80FE90387F007E017E137F01FE 6D7E48486D7E267FFF80B5FCB500C1148014E3A214C16C0180140029277DA630>I<3B3F FFC07FFF80486DB512C0B515E0A26C16C06C496C13803B01FC0003F000A2000014076D5C 137E150F017F5C7F151FD91F805BA214C0010F49C7FCA214E00107137EA2EB03F0157C15 FCEB01F85DA2EB00F9ECFDF0147D147FA26E5AA36E5AA35DA2143F92C8FCA25C147EA200 0F13FE486C5AEA3FC1EBC3F81387EB8FF0EBFFE06C5B5C6C90C9FC6C5AEA01F02B3C7EA6 30>I<001FB612FC4815FE5AA316FC90C7EA0FF8ED1FF0ED3FE0ED7FC0EDFF80003E4913 00C7485A4A5A4A5A4A5A4A5A4A5A4A5A4990C7FC495A495A495A495A495A495A4948133E 4890C7127F485A485A485A485A485A48B7FCB8FCA46C15FE28277DA630>II<127CA212FEB3B3B3AD127CA207476CBE30>II<017C133848B4137C48EB80FE4813C14813C348EBEFFC397FEFFF F0D8FF8713E0010713C0486C1380D87C0113003838007C1F0C78B730>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fr cmti10 10.95 64 /Fr 64 125 df<933807FF80043F13E09338FE00F8DB01F0133EDB07E0130E4B48131F4C 137F031F14FF4BC7FCA218FE157E1878180015FE5DA31401A25DA414030103B712F0A218 E0903A0003F000070207140F4B14C0A3171F020F15805DA2173F1800141F5D5F177EA214 3F92C712FE5FA34A1301027EECF81CA3160302FEECF03C4A1538A21878187013014A0101 13F018E0933800F1C0EF7F804948EC1F0094C7FCA35C1307A2001E5B127F130F00FF5BA2 49CAFC12FEEAF81EEA703CEA7878EA1FF0EA07C0385383BF33>12 D<15FCEC07FF91261F038014F091263E01C0EB01F84A6C6C13035C49481370494816F001 0716014948150091268001F014E0011F01071401030F15C0D93F001503F00780495C017E EE0F00DB0780131E92C85A01FE5E495EEF03E04D5A021F141FDAFFC0497ED9FBE1ECF8F0 903AFFC0E001F00280903807C0780200EB0F80017E91381E0038D9FC0149133C0001DAC0 38131C01FE14783A03FF03807048EB8700D9E3FE13F0260FE0F8EBE38049C7EAEFC0001F ED7FE0A2484815C0163F93380F003C007F92C7123890CAFCA21878187000FE17F060127E 4D5A170360007F16076C4CC7FC171E6C6C151C5F6C6C15F06C6C4A5A6C6CEC07C06C6C02 1FC8FCD8007E147C90391FC007F00107B512809026007FF8C9FC3D4375C046>38 DI<387FFFFCA3B5FCA21605799521>45 D<120FEA3FC0127FA212FFA31380EA7F00123C0A0A77891C>I<1838187CA218F8170118 F0EF03E0A2EF07C0A2EF0F80171F1800173EA25FA25F16015F4C5AA24C5AA24C5A161F94 C7FC163EA25EA25E15015E4B5AA24B5AA24B5A151F93C8FC153EA25DA25D14015D4A5AA2 4A5AA24A5A141F92C9FC143EA25CA25C13015C495AA2495AA2495A131F91CAFC133EA25B A25B12015B485AA2485AA2485A121F90CBFC123EA25AA25AA25A5A365B7FC32E>I<15FE 913807FF8091381F07C091387C01F0ECF000494813F8494813780107147C495A49C7FC16 7E133E137EA25BA2485AA2000315FEA25B000715FCA2491301120FA34848EB03F8A44848 EB07F0A448C7EA0FE0A316C0007E141F12FE1680153FA2481500A2157EA25DA25D481301 5D6C495A127C4A5A4A5A6C49C7FC143E6C5B380FC1F03803FFC0C648C8FC273F76BC2E> I<15031507150F151F151E153E157EEC01FEEC03FC1407141FEB01FF90380FFBF8EB1FC3 EB0E07130015F0A2140FA215E0A2141FA215C0A2143FA21580A2147FA21500A25CA25CA2 1301A25CA21303A25CA21307A25CA2130FA25CA2131FA25CEB7FE0B612F0A215E0203D77 BC2E>I<15FE913803FFC091380F01F091383C00F84A137C4A7F4948133F49487F4A1480 49C7FC5BEB0E0C011E15C0EB1C0EEB3C06133813781370020E133FD9F00C148013E0141C 0218137F00011600EBC0384A13FEEC600102E05B3A00E3C003F89039FF0007F0013C495A 90C7485A5E037FC7FC15FC4A5A4A5AEC0FC04AC8FC147E14F8EB03E0495A011FC9FC133E 49141801F0143C48481438485A1678485A48C85A120E001E4A5AD83FE0130301FF495A39 7C3FF01FD8780FB55AD8700391C7FCD8F0015B486C6C5A6E5AEC07C02A3F79BC2E>II<1638 167E16FE16FCA3150116F8A3150316F0A2150716E0A2ED0FC0A3ED1F80A216005DA2157E A2157C15FC5D14015D14035D4A5AA24A5AA24AC7FC143EED038091387C0FC014F8ECF01F 01011480EB03E014C0903807803F010F1400EB1F00133E495B49137E485A485A484813FE 48B46C5A4813F04813FE267C00FF130800F090380FFFFC00601301C714E0913803F8005D A314075DA3140F5DA3141F5DA3020EC7FC274F7DBC2E>I<02C0EB018002F0130FD901FE EB7F0091B512FE5E5E4914E016804BC7FCECBFF8D90780C8FC91C9FCA35B130EA3131E13 1CA3133C9038381FC0ECFFF090383BE07C90387F003E017E133F017C7F0178805B498090 C7FCA6153FA4001F147F486C5C487EA24913FF00FF92C7FC90C7FC48495A12E04A5A5D6C 495A140F00705C0078495A6C495A003E01FEC8FC381F03FC380FFFF0000313C0C648C9FC 293F77BC2E>II<157F913801FFE0913807C0F091381F007C023C133C4A133E4A131F1301495A5C 1307A2495AA2163F011F143EA2167E6E137C16F8ECE00102F013F09138F803E09138FC07 C090390FFE0F00ECFFBE6D13F86D5B7F6D7F8101037F90380F9FFFD91F0F1380D97C0713 C0497E48486C13E03903E0007F4848133F4848131F001F140F90C7FC003E1407A2127E12 7CA200FC15C05AA2ED0F80A2ED1F00153E007C143C157C007E5C6CEB03F0391F8007C039 0FE03F802607FFFEC7FC000113F838003FC0283F78BC2E>56 D<15FF020713C091381F81 E091383E00F002FC13F84948137C495A4948137E010F143E495A133F4A133F017F147F91 C7FC5BA2485AA216FF12035B16FE150112075B1503A216FC491307A20003140F16F8151F 12016D133F0000EC7FF015EF90387C01CF90393E079FE090380FFE1FD903F813C090C712 3FA21680157F160015FEA24A5A001C5C007F1303485C4A5A4A5A4A5A4849C7FC00F8137E 00E05B6C485A387C07E0383FFFC06C90C8FCEA03F8283F77BC2E>I<131EEB3F80137FEB FFC05AA214806C13005B133C90C7FCB3120FEA3FC0127FA212FFA35B6CC7FC123C122777 A61C>I<171C173C177CA217FCA216011603A21607A24C7EA2161DA216391679167116E1 A2ED01C1A2ED038115071601150EA2031C7FA24B7EA25D15F05D4A5AA24A5AA24AC7FC5C 140E5C021FB6FC4A81A20270C7127FA25C13015C495AA249C8FCA2130E131E131C133C5B 01F882487ED807FEEC01FFB500E0017FEBFF80A25C39417BC044>65 D<49B712C018F818FE903B0003FC0001FF9438007F804BEC3FC0A2F01FE014074B15F018 0FA2140F5D181FA2021F16E05D183F19C0023FED7F804B14FF19004D5A027F4A5A92C7EA 07F0EF1FE0EF7F804AD903FEC7FC92B512F017FE4AC7EA3F800101ED1FE04A6E7E170784 01036F7E5CA30107825CA3010F5E4A1407A260011F150F5C4D5A60013F153F4A4A5A4D5A 017F4A90C7FC4C5A91C7EA0FF849EC3FF0B812C094C8FC16F83C3E7BBD40>I<9339FF80 01C0030F13E0033F9038F803809239FF807E07913A03FC001F0FDA0FF0EB071FDA1FC0EC BF00DA7F806DB4FC4AC77E495AD903F86E5A495A130F4948157E4948157C495A13FF91C9 FC4848167812035B1207491670120FA2485A95C7FC485AA3127F5BA312FF5BA490CCFCA2 170FA2170EA2171E171C173C173817786C16706D15F04C5A003F5E6D1403001F4B5A6D4A C8FC000F151E6C6C5C6C6C14F86C6C495A6C6CEB07C090397FC03F8090261FFFFEC9FC01 0713F0010013803A4272BF41>I<49B712C018F818FE903B0003FE0003FF9438007F804B EC1FC0F00FE0F007F014074BEC03F8F001FCA2140F4BEC00FEA3141F4B15FFA3143F5DA3 027F5D5DA219FE14FF92C81203A34917FC4A1507A219F813034A150F19F0A20107EE1FE0 5CF03FC0A2010FEE7F804A16006060011F4B5A4A4A5A4D5AA2013F4B5A4AEC3FC04DC7FC 017F15FEEE03FC4AEB0FF001FFEC7FE0B8128004FCC8FC16E0403E7BBD45>I<49B812F8 A390260003FEC7121F18074B14031801F000F014075DA3140F5D19E0A2141F4B1338A2EF 7801023F027013C04B91C7FCA217F0027F5CED80011603160F91B65AA3ED001F49EC0780 5CA3010392C8FC5CF003804C13070107020E14005C93C75A180E010F161E4A151C183CA2 011F5E5C60A2013F15014A4A5A1707017F150F4D5A4A147F01FF913807FF80B9FCA295C7 FC3D3E7BBD3E>I<9339FF8001C0030F13E0033F9038F803809239FF807E07913A03FC00 1F0FDA0FF0EB071FDA1FC0ECBF00DA7F806DB4FC4AC77E495AD903F86E5A495A130F4948 157E4948157C495A13FF91C9FC4848167812035B1207491670120FA2485A95C7FC485AA3 127F5BA312FF5BA30303B512FC90C7FCA2DB000190C7FCA25FA216035FA316076C5E7FA2 003F150F6D5D121F6D141F000F153F6C6C4A5A6C6C14F76C6CEB01E36CB4EB07C1903A7F C03F81C090391FFFFE00010701F890C8FC010013803A4272BF46>71 D<49B648B6FC495DA2D9000390C7000313004B5D4B5DA2180714074B5DA2180F140F4B5D A2181F141F4B5DA2183F143F4B5DA2187F147F4B5DA218FF91B8FC96C7FCA292C712015B 4A5DA2170313034A5DA2170713074A5DA2170F130F4A5DA2171F131F4A5DA2173F133F4A 5DA2017F157FA24A5D496C4A7EB66CB67EA3483E7BBD44>I<49B6FC5BA2D9000313005D 5DA314075DA3140F5DA3141F5DA3143F5DA3147F5DA314FF92C7FCA35B5CA313035CA313 075CA3130F5CA3131F5CA3133F5CA2137FA25C497EB67EA3283E7BBD23>I<49B6903807 FFFE605ED9000390C7000113E04B6E13004B15FC4E5A19E002074B5A4BEC0F804EC7FC18 3C020F5D4B5C4D5AEF07C0021F4AC8FC4B131E5F5F023F5C9238C003E0EE07804CC9FC02 7F5B4B5AEEFF801581ECFF834B7FED0F7FED1E3F49017C7FECFEF89138FFE01F03C07F49 1380ED000F4A805C010714074A80A21603010F815C160183131F4A6D7FA2177F013F825C 173F017F82A24A81496C4A7EB6D8800FB512C0A261473E7BBD46>75 D<49B612C0A25FD9000390C8FC5D5DA314075DA3140F5DA3141F5DA3143F5DA3147F5DA3 14FF92C9FCA35B5CA313035C18C0EF01E0010716C05C17031880130F4A140718005F131F 4A141EA2173E013F5D4A14FC1601017F4A5A16074A131F01FFECFFF0B8FCA25F333E7BBD 39>I<49B5933807FFFC496062D90003F0FC00505ADBBF805E1A771AEF1407033F923801 CFE0A2F1039F020FEE071F020E606F6C140E1A3F021E161C021C04385BA2F1707F143C02 3804E090C7FCF001C0629126780FE0495A02705FF00700F00E0114F002E0031C5BA2F038 03010116704A6C6C5D18E019070103ED01C00280DA03805BA2943807000F13070200020E 5C5FDB03F8141F495D010E4B5CA24D133F131E011CDAF9C05CEEFB80197F013C6DB4C7FC 013895C8FC5E01784A5C13F8486C4A5CD807FE4C7EB500F04948B512FE16E01500563E7B BD52>I<902601FFFE020FB5FC496D5CA2D900016D010013C04AEE3F00193E70141C193C EC07BFDB3FE01438151F1978020F7FDA0E0F15708219F0EC1E07021C6D5CA20303140102 3C7FDA38015DA2701303EC7800027002805BA2047F130702F014C04A013F91C7FCA2715A 0101141F4AECF00EA2040F131E010315F84A151C1607EFFC3C0107140391C7143817FE04 0113784915FF010E16708218F0131E011C6F5AA2173F133C01385E171F137813F8486C6F 5AEA07FEB500F01407A295C8FC483E7BBD44>II<49B77E18F018FC903B0003FE00 03FEEF00FF4BEC7F80F03FC00207151F19E05DA2020F16F0A25DA2141FF03FE05DA2023F 16C0187F4B1580A2027FEDFF00604B495A4D5A02FF4A5A4D5A92C7EA3FC04CB4C7FC4990 B512FC17E04ACAFCA21303A25CA21307A25CA2130FA25CA2131FA25CA2133FA25CA2137F A25C497EB67EA33C3E7BBD3E>I<49B612FCEFFF8018F0903B0003FE000FF8EF03FE4BEB 00FF8419800207ED3FC05DA219E0140F5DA3021FED7FC05DA2F0FF80143F4B15004D5A60 027F4A5A4B495A4D5AEF3F8002FF02FEC7FC92380007F892B512E01780499038000FE04A 6D7E707E707E0103814A130083A213075CA25E130F5C5F1603131F5CA3013F020714404A 16E05F017F160119C04A01031303496C1680B6D8800113079438FE0F009338007E1ECAEA 3FFCEF07F03B407BBD42>82 D<92391FE00380ED7FFC913A01FFFE0700913907F01F8F91 390FC007DF4AC66CB4FC023E6D5A4A130014FC495A4948147CA2495AA2010F15785CA301 1F1570A46E91C7FCA2808014FE90380FFFE015FC6DEBFF8016E06D806D806D6C7F141F02 037FEC003FED07FF1501A281A282A212075A167E120EA2001E15FE5EA25E003E14015E00 3F14034B5A486C5C150F6D495A6D49C8FCD8F9F0137C39F8FE01F839F03FFFF0D8E00F13 C026C001FEC9FC314279BF33>I<48B9FCA25A903AFE001FF00101F89138E0007FD807E0 163E49013F141E5B48C75BA2001E147FA2001C4B131C123C003814FFA2007892C7FC1270 4A153C00F01738485CC716001403A25DA21407A25DA2140FA25DA2141FA25DA2143FA25D A2147FA25DA214FFA292C9FCA25BA25CA21303A25CEB0FFE003FB67E5AA2383D71BC41> I86 D<277FFFFE01B500FC90B512E0B5FCA20003902680000790C7380FFC006C90C701FCEC07 F049725A04035EA26350C7FCA20407150EA2040F5D1A3C041F153862163B6216734F5A6D 14E303014B5A6C15C303034BC8FC1683DB0703140E191E030E151C61031C7F61ED380161 157003F04A5A15E002014B5A15C0DA03804AC9FC60DA0700140E60140E605C029C5D14B8 D97FF85D5C715A5C4A5DA24A92CAFC5F91C7FC705A137E5F137C5F137801705D53406EBD 5B>I<91B690383FFFFC605E020101E0010F13006E49EB07F84C6D5A19C06F6C495A96C7 FC033F140E705B183C031F5C705B4D5A030F5C70485A4DC8FC0307130EEEFC1E5F03035B EEFE705F6F6C5A5FA26F90C9FC83A2707EA216FF4B7F5DED079FEE1FF0150EED1C0F0338 7F1578EDF007DA01E07F15C09138038003DA07007F140E021E13014A805C02707F4A8149 5A4948147F01078249C8FC013F6F7E496C147F2603FFC049487EB500F8011FEBFFE0A261 463E7CBD44>I<130C131C137813E0EA01C013801203EA0700120E120C121C1218123812 3012701260A212E012CFEAFFC0A61380EA7F00123C0E1C6EBE1C>96 D<147E49B47E903907C1C38090391F80EFC090383F00FF017E137F4914804848133F485A A248481400120F5B001F5C157E485AA215FE007F5C90C7FCA21401485C5AA21403EDF038 5AA21407EDE078020F1370127C021F13F0007E013F13E0003E137FECF3E1261F01E313C0 3A0F8781E3803A03FF00FF00D800FC133E252977A72E>IIIII<167C4BB4FC923807C780 92380F83C0ED1F87161FED3F3FA2157EA21780EE0E004BC7FCA414015DA414035DA30103 B512F8A390260007E0C7FCA3140F5DA5141F5DA4143F92C8FCA45C147EA414FE5CA41301 5CA4495AA4495AA4495A121E127F5C12FF49C9FCA2EAFE1EEAF83C1270EA7878EA3FE0EA 0F802A5383BF1C>III<1478EB01FCA21303A314F8EB00E01400AD137C48B4FC38038F80EA0707000E13C0 121E121CEA3C0F1238A2EA781F00701380A2EAF03F140012005B137E13FE5BA212015BA2 12035B1438120713E0000F1378EBC070A214F0EB80E0A2EB81C01383148038078700EA03 FEEA00F8163E79BC1C>I<1507ED1FC0A2153FA31680ED0E0092C7FCADEC07C0EC3FF0EC 78F8ECE07CEB01C01303EC807EEB0700A2010E13FE5D131E131CEB3C01A201005BA21403 A25DA21407A25DA2140FA25DA2141FA25DA2143FA292C7FCA25CA2147EA214FEA25CA213 015CA2121C387F03F012FF495A5C495A4848C8FCEAF83EEA707CEA3FF0EA0FC0225083BC 1C>II< EB07F0EA03FF14E0A2EA000FA214C0A2131FA21480A2133FA21400A25BA2137EA213FEA2 5BA21201A25BA21203A25BA21207A25BA2120FA25BA2121FA25BA2123FA290C7FCA25A13 07127EA2EAFE0F130E12FCA2131E131CA2EA7C381378EA3C70EA1FE0EA0780144079BE17 >IIII<903903E001F890390FF807FE903A1E7C1E0F80903A1C3E3C07C0 013C137801389038E003E0EB783F017001C013F0ED80019038F07F0001E015F8147E1603 000113FEA2C75AA20101140717F05CA20103140F17E05CA20107EC1FC0A24A1480163F01 0F15005E167E5E131F4B5A6E485A4B5A90393FB80F80DA9C1FC7FCEC0FFCEC03E049C9FC A2137EA213FEA25BA21201A25BA21203A2387FFFE0B5FCA22D3A80A72E>I<027E136090 3901FF81E0903807C1C390391F80E7C090383F00F7017E137F5B4848EB3F80485AA2485A 000F15005B121F5D4848137EA3007F14FE90C75AA3481301485CA31403485CA314074A5A 127C141F007E133F003E495A14FF381F01EF380F879F3903FF1F80EA00FC1300143F92C7 FCA35C147EA314FE5CA21301130390B512F05AA2233A77A72A>IIII<137C48B4141C26038F80137EEA0707000E7F001E15FE121CD83C0F 5C12381501EA781F007001805BA2D8F03F1303140000005D5B017E1307A201FE5C5B150F 1201495CA2151F0003EDC1C0491481A2153F1683EE0380A2ED7F07000102FF13005C01F8 EBDF0F00009038079F0E90397C0F0F1C90391FFC07F8903907F001F02A2979A731>I<01 7CEB01C048B4EB07F038038F80EA0707000E01C013F8121E001C1403EA3C0F0038EC01F0 A2D8781F130000705BA2EAF03F91C712E012005B017E130116C013FE5B1503000115805B A2ED07001203495B150EA25DA25D1578000114706D5B0000495A6D485AD97E0FC7FCEB1F FEEB03F0252979A72A>I<017C167048B491387001FC3A038F8001F8EA0707000E01C015 FE001E1403001CEDF000EA3C0F0038177C1507D8781F4A133C00701380A2D8F03F130F02 0049133812005B017E011F14784C137013FE5B033F14F0000192C712E05BA2170100034A 14C049137E17031880A2EF070015FE170E00010101141E01F86D131C0000D9039F5BD9FC 076D5A903A3E0F07C1E0903A1FFC03FFC0902703F0007FC7FC372979A73C>I<903903F0 01F890390FFC07FE90393C1E0E0F9026780F1C138001F0EBB83FD801E013F89039C007F0 7FEA0380000714E0D9000F140048151C000E4AC7FCA2001E131FA2C75BA2143F92C8FCA3 5C147EA314FE4A131CA30101143C001E1538003F491378D87F811470018314F000FF5D90 39077801C039FE0F7C033A7C0E3C078027783C1E1EC7FC391FF80FFC3907E003F029297C A72A>I<137C48B4143826038F8013FCEA0707000E7F001E1401001C15F8EA3C0F123815 03D8781F14F000701380A2D8F03F1307020013E012005B017E130F16C013FE5B151F1201 491480A2153F000315005BA25D157EA315FE5D00011301EBF8030000130790387C1FF8EB 3FF9EB07E1EB00035DA21407000E5CEA3F80007F495AA24A5AD8FF0090C7FC143E007C13 7E00705B387801F0383803E0381E0FC06CB4C8FCEA03F8263B79A72C>II124 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fs cmbx12 14.4 78 /Fs 78 123 df<922601FFFC903801FFE0033F9026FF801F13F84AB6D8E07F13FE020F03 F9B6FC023FD9C00FB500C0138091277FFC0003D9FE0113C0902601FFE049495A49494949 4813E04990C714F049484A13E0495A19C0495A7413C0017F17804A6E6E1380719138007E 007192C7FCAEBCFCA526007FF8C7000301C0C8FCB3B3A7007FB5D8F803B612F0A553547D D34E>11 DI33 D35 D<15F8A691380FFF8091B512F8010714FF011F15C049819026FFF8F8 13F84801C0EB0FFC2603FE00EB03FE4848EC00FF49153F4848ED1F804848ED0FC0A24848 ED07E0A24848157FEFFFF05EA200FF5DA37FA27F7013E06D6E13C06DED7F806DED1E006C B492C7FC14C014F86C13FF81EDFFC06C15F86C15FE826C16C06C826C826C826D816D8113 0F01038101001680141F020115C08003F814E0163F160F82040113F0D81FE080487E486C 157FA2486C153FA2171FA44916E05B6C5A1380007EC7EC3FC0A26C1780177F6C6CEDFF00 7F6C6C4A5AD807F84A5A6C6CEC0FF82601FF80EB3FF06C9039F8F9FFE06DB65A011F92C7 FC010714FC010114F0D9001F90C8FCEC00F8A6346179D943>I<49B419F0010F01E01701 013F6D4D7E4901FC17079026FFC1FE170F48D9007F4D5A4848D93FC0163F0007DA1FF04C 5A48486D6C4B485A6FB403075B484803C0141F003F6E01F891B5C8FC9327EFFFC00F5B04 F190B6FC4848902601F07FECF7FC0507EC8FF8943A003FF00FF07090C7121F00FF02004C 5A505A631AFF4F90C9FC624F5A19074F5A62191F4F5A4F5A007F02015E4C14FF4E90CAFC 4E5A6C6C01035D4C13074E5A001F02075D6C6C4A495A030F143F6C6C4948495A00034AC7 5B6C6C017E14FF6CD9C1FC4990CBFC6DB448495A6D495C010F491307010190C74848EC1F F090C94848ECFFFE4E01037F053F4A804D4890390FFC1FC04E90391FF007E04DC748486C 7E4C037F6D7E4C484A486C7E4D177C04074A49137E4C4849153E4C5A4D173F043F4A90C7 7E4C5A4C5A94C717804B4B150F4B5A5E4B5A150F4B5A5E153F4B5A4B5A93C8FC5C4A5A4A 486F151F4B1A00140F4A5A4B6F6D5B4A48193E147F4A486F157E92CA6D137C491BFC4948 716C485A4948053F495A4A716C485A010F95390FFC1FC04A71B55A4A7191C7FC6D480500 5B0103F11FF0616179D970>I II42 D44 DIII<913803FFC0023F13FC91B6FC010315C0010F01 8113F0903A1FFC003FF849486D7E49486D7E49486D7E48496D138048496D13C0A24817E0 4890C813F0A34817F8A24817FC49157FA3007F17FEA600FF17FFB3A5007F17FEA6003F17 FCA26D15FFA26C17F8A36C17F0A26C6D4913E0A26C6D4913C06C17806E5B6C6D4913006D 6C495AD91FFCEB3FF8903A0FFF81FFF06D90B55A01011580D9003F01FCC7FC020313C038 4F7BCD43>I<157815FC14031407141F14FF130F0007B5FCB6FCA2147F13F0EAF800C7FC B3B3B3A6007FB712FEA52F4E76CD43>II<91380FFF C091B512FC0107ECFF80011F15E090263FF8077F9026FF800113FC4848C76C7ED803F86E 7E491680D807FC8048B416C080486D15E0A4805CA36C17C06C5B6C90C75AD801FC1680C9 FC4C13005FA24C5A4B5B4B5B4B13C04B5BDBFFFEC7FC91B512F816E016FCEEFF80DA0007 13E0030113F89238007FFE707E7013807013C018E07013F0A218F8A27013FCA218FEA2EA 03E0EA0FF8487E487E487EB57EA318FCA25E18F891C7FC6C17F0495C6C4816E001F04A13 C06C484A1380D80FF84A13006CB44A5A6CD9F0075BC690B612F06D5D011F1580010302FC C7FCD9001F1380374F7ACD43>I<177C17FEA2160116031607160FA2161F163F167FA216 FF5D5DA25D5DED1FBFED3F3F153E157C15FCEC01F815F0EC03E01407EC0FC01580EC1F00 5C147E147C5C1301495A495A5C495A131F49C7FC133E5B13FC485A5B485A1207485A485A 90C8FC123E127E5ABA12C0A5C96C48C7FCAF020FB712C0A53A4F7CCE43>III<121F7F7FEBFF8091B81280A45A1900606060A2606060485F01 80C86CC7FC007EC95A4C5A007C4B5A5F4C5A160F4C5A484B5A4C5A94C8FC16FEC812014B 5A5E4B5A150F4B5AA24B5AA24B5A15FFA24A90C9FCA25C5D1407A2140FA25D141FA2143F A4147F5DA314FFA55BAC6D5BA2EC3FC06E5A395279D043>I<913807FFC0027F13FC0103 B67E010F15E090261FFC0113F8903A3FE0003FFCD97F80EB0FFE49C76C7E48488048486E 1380000717C04980120F18E0177FA2121F7FA27F7F6E14FF02E015C014F802FE4913806C 7FDBC00313009238F007FE6C02F85B9238FE1FF86C9138FFBFF06CEDFFE017806C4BC7FC 6D806D81010F15E06D81010115FC010781011F81491680EBFFE748018115C048D9007F14 E04848011F14F048487F48481303030014F8484880161F4848020713FC1601824848157F 173FA2171FA2170FA218F8A27F007F17F06D151FA26C6CED3FE0001F17C06D157F6C6CED FF806C6C6C010313006C01E0EB0FFE6C01FCEBFFFC6C6CB612F06D5D010F1580010102FC C7FCD9000F13C0364F7ACD43>I<91380FFF8091B512F8010314FE010F6E7E4901037F90 267FF8007F4948EB3FF048496D7E484980486F7E484980824817805A91C714C05A7013E0 A218F0B5FCA318F8A618FCA46C5DA37EA25E6C7F6C5DA26C5D6C7F6C6D137B6C6D13F390 387FF803011FB512E36D14C30103028313F89039007FFE03EC00401500A218F05EA3D801 F816E0487E486C16C0487E486D491380A218005E5F4C5A91C7FC6C484A5A494A5A49495B 6C48495BD803FC010F5B9027FF807FFEC7FC6C90B55A6C6C14F06D14C0010F49C8FC0100 13F0364F7ACD43>II<00 7FBD1280A2BE12C0A36C1C806C1C00D1FCB3A3003FBDFC481C80BE12C0A36C1C80A25A23 79AE69>61 D<91B5FC010F14F8017F14FF90B712C00003D9C00F7F2707FC00017FD80FE0 6D7F48486E7E48C87FD87FE06E7E7F7F486C1680A66C5A18006C485C6C5AC9485A5F4B5B 4B5B4B5B4B5B4B90C7FC16FC4B5A4B5A16C04B5A93C8FC4A5A5D14035D5D14075DA25D14 0FA25DAB91CAFCAAEC1FC04A7EECFFF8497FA2497FA76D5BA26D5BEC3FE06E5A315479D3 40>63 D<171F4D7E4D7EA24D7EA34C7FA24C7FA34C7FA34C7FA24C7FA34C8083047F8016 7E8304FE804C7E03018116F8830303814C7E03078116E083030F814C7E031F8116808303 3F8293C77E4B82157E8403FE824B800201835D840203834B800207835D844AB87EA24A83 A3DA3F80C88092C97E4A84A2027E8202FE844A82010185A24A820103854A82010785A24A 82010F855C011F717FEBFFFCB600F8020FB712E0A55B547BD366>65 DI<932601FFFCEC01C0047F D9FFC013030307B600F81307033F03FE131F92B8EA803F0203DAE003EBC07F020F01FCC7 383FF0FF023F01E0EC0FF94A01800203B5FC494848C9FC4901F882494982494982494982 4949824990CA7E494883A2484983485B1B7F485B481A3FA24849181FA3485B1B0FA25AA2 98C7FC5CA2B5FCAE7EA280A2F307C07EA36C7FA21B0F6C6D1980A26C1A1F6C7F1C006C6D 606C6D187EA26D6C606D6D4C5A6D6D16036D6D4C5A6D6D4C5A6D01FC4C5A6D6DEE7F806D 6C6C6C4BC7FC6E01E0EC07FE020F01FEEC1FF80203903AFFE001FFF0020091B612C0033F 93C8FC030715FCDB007F14E0040101FCC9FC525479D261>IIII<9326 01FFFCEC01C0047FD9FFC013030307B600F81307033F03FE131F92B8EA803F0203DAE003 EBC07F020F01FCC7383FF0FF023F01E0EC0FF94A01800203B5FC494848C9FC4901F88249 49824949824949824949824990CA7E494883A2484983485B1B7F485B481A3FA24849181F A3485B1B0FA25AA298C8FC5CA2B5FCAE6C057FB712E0A280A36C94C7003FEBC000A36C7F A36C7FA27E6C7FA26C7F6C7FA26D7E6D7F6D7F6D6D5E6D7F6D01FC93B5FC6D13FF6D6C6D 5C6E01F0EC07FB020F01FEEC1FF10203903AFFF001FFE0020091B6EAC07F033FEE001F03 0703FC1307DB007F02E01301040149CAFC5B5479D26A>III<027FB71280A591C76C90C7FCB3 B3B3EA07F0EA1FFC487E487EA2B57EA44C5AA34A485B7E49495BD83FF8495BD81FE05DD8 0FFC011F5B2707FF807F90C8FC000190B512FC6C6C14F0011F14C0010101F8C9FC39537D D145>IIII< B600FC93B7FC8181A282D800076E9239003FFC0070EE07E08282A28202EF7F02E77F02E3 80A202E18002E0806F7F6F7F6F7FA26F7F6F7F6F806F80A26F80707F707F707F707FA270 7F7080708070808583717F717F717F717FA27114807114C07114E07213F07213F8A27213 FC7213FE7213FF721487A27214C77214E77313F77313FF85A285858585A28586868686A2 86868686A2D93FFC187FB7173F1B1F1B0F1B07755A60527CD169>I<93380FFFC00303B6 FC031F15E092B712FC0203D9FC0013FF020F01C0010F13C0023F90C7000313F0DA7FFC02 007F494848ED7FFE4901E0ED1FFF49496F7F49496F7F4990C96C7F49854948707F494870 7FA24849717E48864A83481B804A83481BC0A2481BE04A83A2481BF0A348497113F8A5B5 1AFCAF6C1BF86E5FA46C1BF0A26E5F6C1BE0A36C6D4D13C0A26C6D4D1380A26C1B006C6D 4D5A6E5E6C626D6C4C5B6D6D4B5B6D6D4B5B6D6D4B5B6D6D4B5B6D6D4B90C7FC6D6D4B5A 6D01FF02035B023F01E0011F13F0020F01FC90B512C0020390B7C8FC020016FC031F15E0 030392C9FCDB001F13E0565479D265>II<93380FFFC00303B6FC031F15E092B712FC0203D9FC 0013FF020F01C0010F13C0023F90C7000313F0DA7FFC02007F902601FFF0ED3FFE49496F 7E49496F7F49496F7F4990C96C7F4948707F4948707F01FF854A177F48864849717EA248 49711380A2481BC04A83481BE0A24A83481BF0A3481BF8A291CB7EA3B51AFCAF6C1BF8A2 6E5FA36C1BF0A36C6D4D13E0A36C1BC06E5F6C1B806E5F6CDB01FE16006C6D902607FF80 495A4C13E06C6D013F6D495A017F91267F03F85C6D6C90277C00FC015B6D6C49D97E035B 6D01806E485B6D6D48D91F8F5B6D01E0039F90C7FC6D01F06EB45A6DD9FCF85DDA3FFF6E 13F0020F6D4913C0020301FF90B5C8FC020091B512FC031F180C0303181EDB001FEBE3FE 93C7EA01FF74133E74137E7413FEF2F8077290B5FC1CFCA285A21CF8A2851CF07314E0A2 7314C0731480731400735B9638007FF8F21FE0576A79D265>II<91260FFF80130791B500F85B010702FF5B011FEDC0 3F49EDF07F9026FFFC006D5A4801E0EB0FFD4801800101B5FC4848C87E48488149150F00 1F824981123F4981007F82A28412FF84A27FA26D82A27F7F6D93C7FC14C06C13F014FF15 F86CECFF8016FC6CEDFFC017F06C16FC6C16FF6C17C06C836C836D826D82010F82130301 0082021F16801400030F15C0ED007F040714E01600173F050F13F08383A200788200F882 A3187FA27EA219E07EA26CEFFFC0A27F6D4B13806D17006D5D01FC4B5A01FF4B5A02C04A 5A02F8EC7FF0903B1FFFC003FFE0486C90B65AD8FC0393C7FC48C66C14FC48010F14F048 D9007F90C8FC3C5479D24B>I<003FBC1280A59126C0003F9038C0007F49C71607D87FF8 060113C001E08449197F49193F90C8171FA2007E1A0FA3007C1A07A500FC1BE0481A03A6 C994C7FCB3B3AC91B912F0A553517BD05E>IIII<003FB7D8 8003B7FCA5D8000749C8000701F8C7FC6D6D9238007F806D6E93C8FC7015FE6D17016E6D 5D704A5A6E16076E6D4A5A6E6D5D4F5A6E6D143F6E6D4A5A7191C9FC6E16FE6EECC00171 485A6F5D6F6D485A6FEBF80F71485A6F5D6F6D485AEFFF7F6F4ACAFC6F5C6F5CA2705B70 5B8482707F707FA2707F7080855E4C80855E4C80DC3FCF7F058F7FEE7F074C6C7FDB01FE 814C7E4B486C8003076E7F4B48814C7F4B486D7F033F824C7F4BC76C7F4B6E7F4A5A4B6E 804A486E800207844A48814B6F7F4A4883023F824A486F7F92C96C7F02FE840101830103 718090263FFFC084B76C0103B712F8A55D527CD166>II<001FBA12C0 1AE0A40380C714C002F8C75A02C0178091C8481400495D495F494B5B495D495F48484B5B 5F495F94B55A5E90C85D4C91C7FC5E60003E4B5B5E604C5B5EC95C93B55A5D604B91C8FC 5D5F4B5B5D5F4B5B5D5F92B55A5C5F4A91C9FC5C5E4A5B5C4CEC03E04A5B5C5E91B55A5B 4C14074991C8FC4918C05D495B5B4B150F495B5B4B151F90B55A48183F5D4891C9127F48 18FF4A5D48495D485F4A5D4849033F1380484CB5FC4A143FBBFCA47E435279D152>I97 DI<913801FFF8021FEBFF8091B612F0010315FC010F9038C00FFE903A1FFE0001 FFD97FFC491380D9FFF05B4817C048495B5C5A485BA2486F138091C7FC486F1300705A48 92C8FC5BA312FFAD127F7FA27EA2EF03E06C7F17076C6D15C07E6E140F6CEE1F806C6DEC 3F006C6D147ED97FFE5C6D6CEB03F8010F9038E01FF0010390B55A01001580023F49C7FC 020113E033387CB63C>I<4DB47E0407B5FCA5EE001F1707B3A4913801FFE0021F13FC91 B6FC010315C7010F9038E03FE74990380007F7D97FFC0101B5FC49487F4849143F484980 485B83485B5A91C8FC5AA3485AA412FFAC127FA36C7EA37EA26C7F5F6C6D5C7E6C6D5C6C 6D49B5FC6D6C4914E0D93FFED90FEFEBFF80903A0FFFC07FCF6D90B5128F0101ECFE0FD9 003F13F8020301C049C7FC41547CD24B>I<913803FFC0023F13FC49B6FC010715C04901 817F903A3FFC007FF849486D7E49486D7E4849130F48496D7E48178048497F18C0488191 C7FC4817E0A248815B18F0A212FFA490B8FCA318E049CAFCA6127FA27F7EA218E06CEE01 F06E14037E6C6DEC07E0A26C6DEC0FC06C6D141F6C6DEC3F806D6CECFF00D91FFEEB03FE 903A0FFFC03FF8010390B55A010015C0021F49C7FC020113F034387CB63D>IIII<137F497E 000313E0487FA2487FA76C5BA26C5BC613806DC7FC90C8FCADEB3FF0B5FCA512017EB3B3 A6B612E0A51B547BD325>I<157FEDFF80020313E04A13F0A24A13F8A76E13F0A26E13E0 02001380ED7F0092C7FCADED1FF891B5FCA51401EC007FB3B3B1EA0780EA1FE0487E487E 486C13FF16F0A216E05C16C04A13806C4848130049485A003F495A000FB512F06C5C0001 148026001FFCC7FC256C87D329>IIIII<913801FFE0021F13FE91B612C0010315F0010F9038 807FFC903A1FFC000FFED97FF86D6C7E49486D7F48496D7F48496D7F4A147F48834890C8 6C7EA24883A248486F7EA3007F1880A400FF18C0AC007F1880A3003F18006D5DA26C5FA2 6C5F6E147F6C5F6C6D4A5A6C6D495B6C6D495B6D6C495BD93FFE011F90C7FC903A0FFF80 7FFC6D90B55A010015C0023F91C8FC020113E03A387CB643>I<903A3FF001FFE0B5010F 13FE033FEBFFC092B612F002F301017F913AF7F8007FFE0003D9FFE0EB1FFFC602806D7F 92C76C7F4A824A6E7F4A6E7FA2717FA285187F85A4721380AC1A0060A36118FFA2615F61 6E4A5BA26E4A5B6E4A5B6F495B6F4990C7FC03F0EBFFFC9126FBFE075B02F8B612E06F14 80031F01FCC8FC030313C092CBFCB1B612F8A5414D7BB54B>I<912601FFE0EB0780021F 01F8130F91B500FE131F0103ECFF80010F9039F03FC03F499039800FE07F903A7FFE0003 F04948903801F8FF4849EB00FD4849147F4A805A4849805A4A805AA291C87E5AA35B12FF AC6C7EA37EA2806C5EA26C6D5CA26C6D5C6C6D5C6C93B5FC6C6D5B6D6C5B6DB4EB0FEF01 0F9038C07FCF6D90B5120F010114FED9003F13F80203138091C8FCB1040FB61280A5414D 7CB547>I<90397FE003FEB590380FFF80033F13E04B13F09238FE1FF89139E1F83FFC00 03D9E3E013FEC6ECC07FECE78014EF150014EE02FEEB3FFC5CEE1FF8EE0FF04A90C7FCA5 5CB3AAB612FCA52F367CB537>I<903903FFF00F013FEBFE1F90B7FC120348EB003FD80F F81307D81FE0130148487F4980127F90C87EA24881A27FA27F01F091C7FC13FCEBFFC06C 13FF15F86C14FF16C06C15F06C816C816C81C681013F1580010F15C01300020714E0EC00 3F030713F015010078EC007F00F8153F161F7E160FA27E17E07E6D141F17C07F6DEC3F80 01F8EC7F0001FEEB01FE9039FFC00FFC6DB55AD8FC1F14E0D8F807148048C601F8C7FC2C 387CB635>I<143EA6147EA414FEA21301A313031307A2130F131F133F13FF5A000F90B6 FCB8FCA426003FFEC8FCB3A9EE07C0AB011FEC0F8080A26DEC1F0015806DEBC03E6DEBF0 FC6DEBFFF86D6C5B021F5B020313802A4D7ECB34>II< B600F00107B5FCA5000101F8C8EA7FE06C6DED3F00A2017F163E6E157E013F167C6E15FC 6D5E6F13016D5E8117036D5E6F13076D5E6F130F6D5E6F131F6D93C7FC815F6E6C133E17 7E023F147C6F13FC6E5C16816E5C16C3A26EEBE3E016E76E5C16FF6E5CA26E91C8FCA26F 5AA36F5AA26F5AA26F5AA26F5A6F5A40367DB447>II<007FB500F090387FFFFEA5C66C48C7000F90C7FC6D6CEC07F86D6D 5C6D6D495A6D4B5A6F495A6D6D91C8FC6D6D137E6D6D5B91387FFE014C5A6E6C485A6EEB 8FE06EEBCFC06EEBFF806E91C9FCA26E5B6E5B6F7E6F7EA26F7F834B7F4B7F92B5FCDA01 FD7F03F87F4A486C7E4A486C7E020F7FDA1FC0804A486C7F4A486C7F02FE6D7F4A6D7F49 5A49486D7F01076F7E49486E7E49486E7FEBFFF0B500FE49B612C0A542357EB447>II<001FB8FC1880A3912680007F130001FCC7B5FC01F0495B495D 49495B495B4B5B48C75C5D4B5B5F003E4A90C7FC92B5FC4A5B5E4A5B5CC7485B5E4A5B5C 4A5B93C8FC91B5FC495B5D4949EB0F805B495B5D495B49151F4949140092C7FC495A485E 485B5C485E485B4A5C48495B4815074849495A91C712FFB8FCA37E31357CB43C>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Ft cmtt12 14.4 23 /Ft 23 123 df<157815FC4A7EB3A2003FB812E04817F0B912F8A46C17F06C17E0C7D801 FEC8FCB3A26E5A157835347CBE3E>43 D<177817FCEE03FE1607161F163FEEFFFC030313 F84B13F0031F13C04B13809238FFFE004A13F802075B4A13C0023F5B4A48C7FC49485A49 13F0010F5B491380017F90C8FCEBFFFC00035B4813E0001F5B4890C9FC485AEAFFF85BA2 7FEA7FFE6C7E6C13C000077F6C13F8C67F6DB4FC011F7F6D13E001037F6D13FC6D6C7E6E 6C7E020F7F6E13F0020113FC6E7F92383FFF806F13C0030713F06F13F8030013FCEE7FFE 161F16071603EE00FC17782F3C79C23E>60 D<123C127EB47E7F13F07FEA7FFE6C6C7E6C 7F000713F06C7FC613FE6D7E011F13C001077F6D13F801007F6EB4FC021F7F6E13E00203 7F6E13FC6E6C7E92383FFF80030F13C06F13F0030113F86F13FCEE3FFE161FA2163FEEFF FC4B13F8030713F04B13C0033F138092387FFE004A485A4A13F0020F5B4A1380027F90C7 FCECFFFC01035B4913E0011F5B017F90C8FC495A000313F8485B001F13C0485B4848C9FC EAFFF85B13C05B007ECAFC123C2F3C79C23E>62 D<123C127EB4FCA27FA26C7EA2123F7F 121F7FA26C7EA26C7EA26C7EA26C7EA27E80137F80A26D7EA26D7EA26D7EA21307801303 80A26D7EA26D7FA26E7EA26E7EA2141F81140F81A26E7EA26E7EA26E7EA26E7FA2157F82 153F82A26F7EA26F7EA26F7EA2150382150182A26F1380A2EE7FC0A2EE3FE0A2EE1FF0A2 160F17F8160717FCA2EE03FEA21601A2EE00FC17782F5D79D23E>92 D<90380FFFC0017F13F848B512FE486E7E4815E04881823A1FFC007FFC49EB0FFE1507ED 01FFA26C486D7F6C48147FC97F163FA60203B5FC147F0103B6FC131F137F90B7FC0003EC C03F48EBF800481380D81FFCC7FCEA3FF05B485A5B12FF90C8FCA56D147F127F6D14FF6C 6C130301F8010F7F6CB490B612F86C90B7FC18FC6C15CF000115076CDAFC0313F8013F90 38F0007F010790C9FC363679B43E>97 D<913807FFF0023F13FE49B61280010715C04915 E04915F0137F903AFFFC003FF84801E0131F48138091C7FC485A4848EC0FF049EC07E048 4891C7FC5B123F5B127F5BA312FF90CAFCA97F127FA27F123F7F17FC6C6CEC01FE7F6C7E 6C6C14036DEC07FC6C01C0130F6C01F0EB1FF86C01FEEBFFF06DB612E06D15C0010F1580 6D1500010114FC6D6C13F0020790C7FC2F3678B43E>99 D<923803FFF85D4B7FA38181ED 0003AEEC1FF0ECFFFE0103EBFF83010F14E34914F3017F14FB90B7FC48EBF80F48EBC001 91C7FC4848143F4848141F5B4848140F491407123F491403127F5BA312FF90C8FCA97F12 7FA216077F123F6D140FA26C6C141F6D143F000F157F6C6C14FF01FF5B6C6D5A6CD9F01F EBFFFC6C90B500FB13FE6D02F313FF6D14E3010F14C36D020113FE010101FC14FC902600 3FE0C8FC384A7CC83E>II<9238 01FFC0030F13F0033F13FC92B512FE5C4A14FF5C4A1303EC1FF89238F001FEEC3FE09238 C000FC027F14005DAA003FB712F05AB812F8A36C16F0A2C7D87F80C7FCB3B3003FB7FCA2 481680A36C1600A2304A7CC93E>II<14 3E147F4A7E497FA56D5B6EC8FC143E91C9FCAC003FB57E5A81A47EC7123FB3B3007FB712 80B812C0A56C16802A4A76C93E>105 D<007FB512C0B6FC81A47EC7121FB3B3B3A5007F B712F8B812FCA56C16F82E4978C83E>108 DIIII114 D<903901FFF00F011F9038FE1F8090B612BF000315FF5A5A5A393FFE003F01F013 07D87FC0130190C8FC5A48157FA47EEE3F00D87FC091C7FC13F0EA3FFE381FFFF06CEBFF C06C14FE6C6E7EC615E0013F14F8010780D9003F7F02007F03071380030013C0003EED3F E0007F151F48150F17F06D1407A37FA26D140F6D15E0161F01FCEC3FC06D14FF9026FFC0 0F138091B612005E485D013F5C6D14E0D8FC0714802778007FF8C7FC2C3677B43E>I<14 7C14FC497EAD003FB712FC5AB87EA36C5EA2260001FEC9FCB3A6173FA2EF7F80A76E14FF 6D16006F5A9238C007FE91387FF01F92B55A6E5C6E5C6E5C6E1480020149C7FC9138003F F031437DC13E>I<263FFF80EB7FFF4892B5FCB56C4880A36C806C81D8003FEC007FB3AC 17FFA25E5E80011F140F6E5B02FE90B612806DB812C06D17E083010114FE6DDAF83F13C0 023F01E01480020790C9FC3B347FB23E>I<267FFFF890383FFFFCB56C4913FE6E90B5FC A34A7F6C496D13FCC648C8EAFE00A26D14016D5DA26E1303013F5DA26E1307011F5DA26E 130F010F5DA26E131F01075DA26E133F01035DA26E137F010192C7FCA26E5B01005CA2EC FF01027F5BA21583023F5BA215C7021F5BA215EF020F5BA215FF6E5BA36E5B6E90C8FC6E 5A37347DB23E>I<263FFFFC90383FFFFC484B13FEB56C90B5FCA36C497F6C6F13FCC690 C8EAFE007F4C5A80013F14036E5C131F16076E5C130F804C5A13078001034A5AA2800101 4A5A8013004CC7FC808016FEEC3F80A2ED81FCEC1FC1A25EEC0FE3A202075B15F7A20203 5B15FF805EA2805E157FA293C8FCA25D5DA214015DA214035DA214075D3807800FD81FE0 5B141FD83FF05B143F4A5A14FF01E390C9FC6CB45AA26C5B5C6C13E000015BD8007ECAFC 374F7DB23E>121 D<000FB812804817C04817E0A418C001C0C712014C13804C1300EE1F FE4C5AEE7FF06C484A5A4B5BC8485B4B90C7FC4B5A4B5A4B5A4B5A4B5A4A5B4A5B4A90C8 FC4A5A4A5A4A5A4A5A4A5A495B495B4990C9FC495A495A4948EC0FC0495A4948EC1FE048 5B00075B4890C8FCEA1FFC485A485A90B8FCB9FCA46C17C07E33337CB23E>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fu cmbxti10 14.4 1 /Fu 1 47 df<13FCEA03FF000F13804813C05AA25AA2B5FCA31480A214006C5A6C5A6C5A EA0FE0121271912B>46 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fv cmbx12 17.28 59 /Fv 59 122 df<94387FFF80041FB512F04BB612FC030F81037F6F7E4AB5D8E0077F4A49 C76C7E020F01F0EC1FF04A01C0147F4A90C8487E4A485C4A484A7F49495C495BA2495B4E 7F49705B5DA3725B725B725B735A96C9FCAB0503B512FEBBFCA6D8000F01E0C7120184B3 B3AF003FB6D8F803B71280A651657DE45A>12 D44 DI<19F0F001F8F003FCA3180719 F8180FA219F0181F19E0183FA219C0187F198018FFA219005F601703A260170760170FA2 60171F60173FA260177F6017FFA295C7FC5E5F1603A25F16075F160FA25F161F5F163FA2 5F167F5F16FFA294C8FC5D5E1503A25E15075E150FA25E151F5EA2153F5E157FA25E15FF 93C9FC5CA25D14035D1407A25D140F5D141FA25D143F5D147FA25D14FF92CAFC5BA25C13 035C1307A25C130F5C131FA25C133F5C137FA25C13FF91CBFC5AA25B12035B1207A25B12 0F5B121FA25B123F5B127FA25B12FF90CCFCA3127E123C3E9077EB51>47 DI<16F04B7E1507151F153FEC01FF1407147F010FB5FCB7FCA41487EBF007C7 FCB3B3B3B3007FB91280A6395E74DD51>I<913801FFF8021FEBFFC091B612F8010315FF 010F16C0013F8290267FFC0114F89027FFE0003F7F4890C7000F7F48486E7FD807F86E14 8048486E14C048486E14E048486F13F001FC17F8486C816D17FC6E80B56C16FE8380A219 FFA283A36C5BA26C5B6C90C8FCD807FC5DEA01F0CA14FEA34D13FCA219F85F19F04D13E0 A294B512C019804C14004C5B604C5B4C5B604C13804C90C7FC4C5A4C5A4B13F05F4B1380 4B90C8FC4B5AED1FF84B5A4B5A4B48143F4A5B4A48C8FC4A5A4A48157E4A5A4A5AEC7F80 92C9FC02FE16FE495A495A4948ED01FCD90FC0150749B8FC5B5B90B9FC5A4818F85A5A5A 5A5ABAFCA219F0A4405E78DD51>I<92B5FC020F14F8023F14FF49B712C04916F0010FD9 C01F13FC90271FFC00077FD93FE001017F49486D8049C86C7F484883486C6F7F14C0486D 826E806E82487FA4805CA36C5E4A5E6C5B6C5B6C495E011FC85A90C95CA294B55A614C91 C7FC604C5B4C5B4C5B4C5B047F138092260FFFFEC8FC020FB512F817E094C9FC17F817FF 91C7003F13E0040713F8040113FE707F717F7113E085717FA2717F85A285831A80A31AC0 EA03FCEA0FFF487F487F487FA2B57EA31A80A34D14005C7E4A5E5F6C495E49C8485BD81F F85F000F5ED807FE92B55A6C6C6C4914806C01F0010791C7FC6C9026FF803F5B6D90B65A 011F16F0010716C001014BC8FCD9001F14F0020149C9FC426079DD51>II<01C0EE01C0D801F8160F01 FF167F02F0EC07FFDAFF8090B5FC92B7128019006060606060606095C7FC17FC5F17E017 8004FCC8FC16E09026FC3FFCC9FC91CBFCADED3FFE0203B512F0020F14FE023F6E7E91B7 12E001FDD9E00F7F9027FFFE00037F02F801007F02E06EB4FC02806E138091C8FC496F13 C04917E07113F0EA00F090C914F8A219FC83A219FEA419FFA3EA03F0EA0FFC487E487E48 7FA2B57EA319FEA35C4D13FC6C90C8FC5B4917F8EA3FF001804B13F06D17E0001F5E6C6C 17C06D4B1380D807FC92B512006C6C4A5B6C6C6C01075B6C01E0011F5BD97FFE90B55A6D B712C0010F93C7FC6D15FC010115F0D9003F1480020301F0C8FC406078DD51>III< 92383FFF800203B512FC021FECFF80027F15E049B712F849D9F0077F010F90C76C7ED91F FCEC1FFFD93FF06E7F494802037F494882717F484980854890C9127FA24884183FA25A80 A380806E157F6E5E14FE6E7E6F4A5A6C14F003FC495B03FF495B6C1580DCE0075B6CDBF8 0F90C7FC9338FE1FFE6C9238FF7FF84D5A6D16C06D5E6D4BC8FC6D6F7E6D16E00101826D 16FC023F814A8149B87E010783498390263FFE3F8190267FFC0F819026FFF003814849C6 FC48496D804849131F4890C7000780160148486E1580003F163F49150F007F7014C04915 01717E8400FF835B8484A384A21A80A27F007F1900607F003F606D160F001F606D4C5A6C 6D153F6C6D4B5A6C01F04B5A6C01FC02035B6C01FF021F5B6D9027F001FFFEC7FC6D90B6 5A010F16F001035E010093C8FC020F14F8DA007F90C9FC426079DD51>III65 DI<4DB5ED03C0057F02F014070407B600FE140F047FDBFFC013 1F4BB800F0133F030F05FC137F033F9127F8007FFE13FF92B6C73807FF814A02F0020113 C3020702C09138007FE74A91C9001FB5FC023F01FC16074A01F08291B548824902808249 91CB7E49498449498449498449865D49498490B5FC484A84A2484A84A24891CD127FA25A 4A1A3F5AA348491A1FA44899C7FCA25CA3B5FCB07EA380A27EA2F50FC0A26C7FA37E6E1A 1F6C1D80A26C801D3F6C6E1A00A26C6E616D1BFE6D7F6F4E5A7F6D6D4E5A6D6D4E5A6D6D 4E5A6D6E171F6D02E04D5A6E6DEFFF806E01FC4C90C7FC020F01FFEE07FE6E02C0ED1FF8 020102F8ED7FF06E02FF913803FFE0033F02F8013F1380030F91B648C8FC030117F86F6C 16E004071680DC007F02F8C9FC050191CAFC626677E375>IIII<4DB5ED03C0057F02F014070407B600FE140F 047FDBFFC0131F4BB800F0133F030F05FC137F033F9127F8007FFE13FF92B6C73807FF81 4A02F0020113C3020702C09138007FE74A91C9001FB5FC023F01FC16074A01F08291B548 82490280824991CB7E49498449498449498449865D49498490B5FC484A84A2484A84A248 91CD127FA25A4A1A3F5AA348491A1FA44899C8FCA25CA3B5FCB07E071FB812F880A37EA2 96C70001ECC000A26C7FA37E807EA26C80A26C80A26C807F6D7F816D7F7F6D7F6D6D5F6D 14C06D6E5E6E7F6E01FC5E020F01FF5E6E02C0ED7FEF020102F8EDFFC76E02FF02071383 033F02FC013F1301030F91B638FC007F03014D131F6F6C04E01307040704801301DC007F 02F8CAFC050191CBFC6D6677E37F>III<020FB812F0A691C70001EC8000B3B3B3ACEA03 FCEA0FFF487F487F487FA2B57EA45E96C7FCA36C49495B604A5B6C90C75C6C484A5B01F8 4A5BD80FFE4A5B6C6C6C90B55A0001D9F80749C8FC6C90B65A013F15F0010F15C001014A C9FCD9001F13C044647CE153>IIIII<94381FFFE00407B67E043F15F04BB712FE03 0FEEFFC0033FD9FC0014F092B500C0010F13FC020349C7000113FF4A01F86E6C7F021F49 6F13E04A01C0030F7F4A496F7F91B5C96C7F0103497013FF494970804B834949717F4987 4949717F49874B8390B586484A717FA24891CB6C7FA2481D804A84481DC0A348497214E0 A3481DF0A34A85481DF8A5B51CFCB06C1DF8A36E96B5FCA36C1DF0A46C6D4E14E0A36C1D C06E606C1D80A26C6E4D1400A26C6E4D5BA26C6E4D5BA26D6D4D5B6D636D6D4D5B6F94B5 FC6D636D6D4C5C6D6D4C91C7FC6D6E4B5B6D02E0031F5B023F6D4B13F06E01FC92B55A6E 01FF02035C020302C0010F91C8FC020002FC90B512FC033F90B712F0030F17C0030394C9 FCDB007F15F804071580DC001F01E0CAFC666677E379>II82 D I<001FBEFCA64849C79126E0000F148002E0180091C8171F498601F81A0349864986A249 1B7FA2491B3F007F1DC090C9181FA4007E1C0FA600FE1DE0481C07A5CA95C7FCB3B3B3A3 021FBAFCA663617AE070>III<913803FFFE027FEBFFF00103B612 FE010F6F7E4916E090273FFE001F7FD97FE001077FD9FFF801017F486D6D7F717E486D6E 7F85717FA2717FA36C496E7FA26C5B6D5AEB1FC090C9FCA74BB6FC157F0207B7FC147F49 B61207010F14C0013FEBFE004913F048B512C04891C7FC485B4813F85A5C485B5A5CA2B5 5AA45FA25F806C5E806C047D7F6EEB01F96C6DD903F1EBFF806C01FED90FE114FF6C9027 FFC07FC01580000191B5487E6C6C4B7E011F02FC130F010302F001011400D9001F90CBFC 49437CC14E>97 D<903807FF80B6FCA6C6FC7F7FB3A8EFFFF8040FEBFF80047F14F00381 B612FC038715FF038F010014C0DBBFF0011F7FDBFFC001077F93C76C7F4B02007F03F882 4B6F7E4B6F13804B17C0851BE0A27313F0A21BF8A37313FCA41BFEAE1BFCA44F13F8A31B F0A24F13E0A24F13C06F17804F1300816F4B5A6F4A5B4AB402075B4A6C6C495B9126F83F E0013F13C09127F00FFC03B55A4A6CB648C7FCDAC00115F84A6C15E091C7001F91C8FC90 C8000313E04F657BE35A>I<92380FFFF04AB67E020F15F0023F15FC91B77E01039039FE 001FFF4901F8010113804901E0010713C04901804913E0017F90C7FC49484A13F0A2485B 485B5A5C5A7113E0485B7113C048701380943800FE0095C7FC485BA4B5FCAE7EA280A27E A2806C18FCA26C6D150119F87E6C6D15036EED07F06C18E06C6D150F6D6DEC1FC06D01E0 EC7F806D6DECFF00010701FCEB03FE6D9039FFC03FFC010091B512F0023F5D020F158002 0102FCC7FCDA000F13C03E437BC148>II<92380FFFC04AB512FC020FECFF80023F15E091B7 12F80103D9FE037F499039F0007FFF011F01C0011F7F49496D7F4990C76C7F49486E7F48 498048844A804884485B727E5A5C48717EA35A5C721380A2B5FCA391B9FCA41A0002C0CB FCA67EA380A27EA27E6E160FF11F806C183F6C7FF17F006C7F6C6D16FE6C17016D6C4B5A 6D6D4A5A6D01E04A5A6D6DEC3FE0010301FC49B45A6D9026FFC01F90C7FC6D6C90B55A02 1F15F8020715E0020092C8FC030713F041437CC14A>III<903807 FF80B6FCA6C6FC7F7FB3A8EF1FFF94B512F0040714FC041F14FF4C8193267FE07F7F9227 81FE001F7FDB83F86D7FDB87F07FDB8FC0814C7F039FC78015BE03BC8003FC825DA25DA2 5DA45DB3B2B7D8F007B71280A651647BE35A>II I<903807FF80B6FCA6C6FC7F7FB3B3B3B3ADB712E0A623647BE32C>108 D<902607FF80D91FFFEEFFF8B691B500F00207EBFF80040702FC023F14E0041F02FF91B6 12F84C6F488193267FE07F6D4801037F922781FE001F9027E00FF0007FC6DA83F86D9026 F01FC06D7F6DD987F06D4A487F6DD98FC0DBF87EC7804C6D027C80039FC76E488203BEEE FDF003BC6E4A8003FC04FF834B5FA24B5FA24B94C8FCA44B5EB3B2B7D8F007B7D8803FB6 12FCA67E417BC087>I<902607FF80EB1FFFB691B512F0040714FC041F14FF4C8193267F E07F7F922781FE001F7FC6DA83F86D7F6DD987F07F6DD98FC0814C7F039FC78015BE03BC 8003FC825DA25DA25DA45DB3B2B7D8F007B71280A651417BC05A>I<923807FFE092B6FC 020715E0021F15F8027F15FE494848C66C6C7E010701F0010F13E04901C001037F49496D 7F4990C87F49486F7E49486F7E48496F13804819C04A814819E048496F13F0A24819F8A3 48496F13FCA34819FEA4B518FFAD6C19FEA46C6D4B13FCA36C19F8A26C6D4B13F0A26C19 E06C6D4B13C0A26C6D4B13806C6D4B13006D6C4B5A6D6D495B6D6D495B010701F0010F13 E06D01FE017F5B010090B7C7FC023F15FC020715E0020092C8FC030713E048437CC151> I<902607FF80EBFFF8B6010FEBFF80047F14F00381B612FC038715FF038F010114C09227 BFF0003F7FC6DAFFC0010F7F6D91C76C7F6D496E7F03F86E7F4B6E7F4B17804B6F13C0A2 7313E0A27313F0A21BF885A21BFCA3851BFEAE4F13FCA41BF861A21BF0611BE0611BC06F 92B512801B006F5C6F4A5B6F4A5B03FF4A5B70495B04E0017F13C09226CFFC03B55A03C7 B648C7FC03C115F803C015E0041F91C8FC040313E093CBFCB3A3B712F0A64F5D7BC05A> I114 D<913A3FFF8007800107B5EAF81F011FEC FE7F017F91B5FC48B8FC48EBE0014890C7121FD80FFC1407D81FF0801600485A007F167F 49153FA212FF171FA27F7F7F6D92C7FC13FF14E014FF6C14F8EDFFC06C15FC16FF6C16C0 6C16F06C826C826C826C82013F1680010F16C01303D9007F15E0020315F0EC001F150004 1F13F81607007C150100FC81177F6C163FA2171F7EA26D16F0A27F173F6D16E06D157F6D 16C001FEEDFF806D0203130002C0EB0FFE02FCEB7FFC01DFB65A010F5DD8FE0315C026F8 007F49C7FC48010F13E035437BC140>II<902607FFC0ED3FFEB60207B5FCA6C6EE00076D826D82B3B3 A260A360A2607F60183E6D6D147E4E7F6D6D4948806D6DD907F0ECFF806D01FFEB3FE06D 91B55A6E1500021F5C020314F8DA003F018002F0C7FC51427BC05A>III<007FB600C0017FB512F8A6D8001F01F8C70007EBF0006D040190C7FC 6D6D5D6D6D4A5A6D6D4A5A70495A6D4C5A6E7F6E6D495A6E6D495A7049C8FC6E4A5A6E6D 485A6E6D485A6E13FFEF8FF06EEC9FE06FEBFFC06F5C6F91C9FC5F6F5B816F7F6F7F8481 707F8493B57E4B805D4B80DB0FF37FDB1FE17F04C080153F4B486C7F4B486C7F4A486D7F 4A486D7F4A5A4B6D7F020F6E7F4A486D7F4A486D804A5A4AC86C7F49486F7F4A6F7F0107 707FEB3FFFB600F049B7FCA650407EBF55>II E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fw cmr12 12 61 /Fw 61 122 df<4AB4FC020F13E091387F80F8903901FC001C49487FD907E0130F494813 7F011FECFF80495A49C7FCA25B49EC7F00163E93C7FCACEE3F80B8FCA3C648C7FC167F16 3FB3B0486CEC7FC0007FD9FC1FB5FCA330467EC536>12 D<140C141C1438147014E0EB01 C01303EB0780EB0F00A2131E5BA25B13F85B12015B1203A2485AA3485AA348C7FCA35AA2 123EA2127EA4127CA312FCB3A2127CA3127EA4123EA2123FA27EA36C7EA36C7EA36C7EA2 12017F12007F13787FA27F7FA2EB0780EB03C01301EB00E014701438141C140C166476CA 26>40 D<12C07E12707E7E7E120F6C7E6C7EA26C7E6C7EA21378137C133C133E131E131F A2EB0F80A3EB07C0A3EB03E0A314F0A21301A214F8A41300A314FCB3A214F8A31301A414 F0A21303A214E0A3EB07C0A3EB0F80A3EB1F00A2131E133E133C137C13785BA2485A485A A2485A48C7FC120E5A5A5A5A5A16647BCA26>I<121EEA7F8012FF13C0A213E0A3127FEA 1E601200A413E013C0A312011380120313005A1206120E5A5A5A12600B1D78891B>44 DI<1618163C167CA2167816F8A216F01501A216E01503A216C0 1507A21680150FA2ED1F00A2151E153EA2153C157CA2157815F8A25D1401A24A5AA25D14 07A25D140FA292C7FC5CA2141E143EA2143C147CA25CA25C1301A25C1303A25C1307A25C 130FA291C8FC5BA2133EA2133C137CA2137813F8A25B1201A25B1203A2485AA25B120FA2 90C9FC5AA2121E123EA2123C127CA2127812F8A25A126026647BCA31>47 D<14FF010713E090381F81F890383E007C01FC133F4848EB1F8049130F4848EB07C04848 EB03E0A2000F15F0491301001F15F8A2003F15FCA390C8FC4815FEA54815FFB3A46C15FE A56D1301003F15FCA3001F15F8A26C6CEB03F0A36C6CEB07E0000315C06D130F6C6CEB1F 806C6CEB3F00013E137C90381F81F8903807FFE0010090C7FC28447CC131>I<143014F0 13011303131F13FFB5FC13E713071200B3B3B0497E497E007FB6FCA3204278C131>II<49B4FC010F13E0013F13FC9038FE01FE 3A01F0007F80D803C0EB3FC048C7EA1FE0120EED0FF0EA0FE0486C14F8A215077F5BA26C 48130FEA03C0C813F0A3ED1FE0A2ED3FC01680ED7F0015FE4A5AEC03F0EC1FC0D90FFFC7 FC15F090380001FCEC007FED3F80ED1FC0ED0FE016F0ED07F816FC150316FEA2150116FF A3121EEA7F80487EA416FE491303A2007EC713FC00701407003015F80038140F6C15F06C EC1FE06C6CEB3FC0D803E0EB7F803A01FE01FE0039007FFFF8010F13E0010190C7FC2844 7CC131>II<000615C0D807C0130701FCEB7F8090B612005D5D5D15E0158026 063FFCC7FC90C9FCAE14FF010713C090381F01F090383800FC01F0137ED807C07F49EB1F 8016C090C7120F000615E0C8EA07F0A316F81503A216FCA5123E127F487EA416F890C712 075A006015F0A20070140F003015E00038EC1FC07E001EEC3F806CEC7F006C6C13FE6C6C 485A3901F807F039007FFFE0011F90C7FCEB07F826447BC131>II<121CA2EA1F8090B712C0A3481680A217005E0038C8120C0030151C00705D 0060153016705E5E4814014B5A4BC7FCC81206150E5D151815385D156015E04A5AA24A5A 140792C8FC5CA25C141E143EA2147E147CA214FCA21301A3495AA41307A6130FAA6D5AEB 01C02A457BC231>I<14FF010713E0011F13F890387F00FE01FC133FD801F0EB1F804848 EB0FC049EB07E00007EC03F048481301A290C713F8481400A47FA26D130116F07F6C6CEB 03E013FC6C6CEB07C09039FF800F806C9038C01F006CEBF03EECF87839007FFEF090383F FFC07F01077F6D13F8497F90381E7FFFD97C1F1380496C13C02601E00313E048486C13F0 00079038007FF84848EB3FFC48C7120F003EEC07FE150148140016FF167F48153FA2161F A56C151E007C153EA2007E153C003E157C6C15F86DEB01F06C6CEB03E06C6CEB07C0D803 F8EB1F80C6B4EBFF0090383FFFFC010F13F00101138028447CC131>I<14FF010713E001 1F13F890387F80FC9038FC007E48487F4848EB1F804848EB0FC0000FEC07E0485AED03F0 485A16F8007F140190C713FCA25AA216FE1500A516FFA46C5CA36C7E5D121F7F000F5C6C 6C130E150C6C6C131C6C6C5BD8007C5B90383F01E090390FFF80FE903801FE0090C8FC15 0116FCA4ED03F8A216F0D80F801307486C14E0486C130F16C0ED1F80A249EB3F0049137E 001EC75A001C495A000F495A3907E01FE06CB51280C649C7FCEB1FF028447CC131>I<12 1EEA7F80A2EAFFC0A4EA7F80A2EA1E00C7FCB3A5121EEA7F80A2EAFFC0A4EA7F80A2EA1E 000A2B78AA1B>I<16C04B7EA34B7EA34B7EA34B7EA3ED19FEA3ED30FFA203707FED607F A203E07FEDC03FA2020180ED801FA2DA03007F160FA20206801607A24A6D7EA34A6D7EA3 4A6D7EA20270810260147FA202E08191B7FCA249820280C7121FA249C87F170FA2010682 1707A2496F7EA3496F7EA3496F7EA201788313F8486C83D80FFF03037FB500E0027FEBFF C0A342477DC649>65 DIIIIIIII<010FB512FEA3D9000313806E130080B3B3AB123F487E487EA44A5A13 801300006C495A00705C6C13076C5C6C495A6CEB1F802603E07FC7FC3800FFFCEB1FE027 467BC332>IIIIII I82 D<49B41303010FEBE007013F13F89039FE00FE0FD801F8131FD807E0EB079F49 EB03DF48486DB4FC48C8FC4881003E81127E82127C00FC81A282A37E82A27EA26C6C91C7 FC7F7FEA3FF813FE381FFFE06C13FE6CEBFFE06C14FC6C14FF6C15C0013F14F0010F8001 0180D9001F7F14019138001FFF03031380816F13C0167F163F161F17E000C0150FA31607 A37EA36C16C0160F7E17806C151F6C16006C5D6D147ED8FBC05CD8F9F0495AD8F07C495A 90393FC00FE0D8E00FB51280010149C7FC39C0003FF02B487BC536>I<003FB912F8A390 3BF0001FF8001F01806D481303003EC7150048187C0078183CA20070181CA30060180CA5 481806A5C81600B3B3A54B7EED7FFE49B77EA33F447DC346>III97 DII<167FED3FFFA315018182B3EC7F80903803 FFF090380FC07C90383F000E017E1307496D5AD803F87F48487F5B000F81485AA2485AA2 127FA290C8FC5AAB7E7FA2123FA26C7EA2000F5D7F6C6C5B00035C6C6C9038077F806C6C 010E13C0013F011C13FE90380FC0F8903803FFE09026007F0013002F467DC436>IIIIII<143C14FFA2491380A46D1300A2143C91 C7FCADEC7F80EB3FFFA31300147F143FB3B3AA123E127F39FF807F00A2147EA25C6C485A 383C01F06C485A3807FF80D801FEC7FC195785C21E>I108 DI<3901FC01FE00FF903807FFC091381E07F0913838 01F8000701707F0003EBE0002601FDC07F5C01FF147F91C7FCA25BA35BB3A8486CECFF80 B5D8F83F13FEA32F2C7DAB36>II<3901FC 03FC00FF90380FFF8091383C07E091387001F83A07FDE000FE00030180137FD801FFEC3F 8091C7EA1FC04915E049140F17F0160717F8160317FCA3EE01FEABEE03FCA3EE07F8A217 F0160F6D15E0EE1FC06D143F17806EEB7E00D9FDC05B9039FCF003F891383C0FE091381F FF80DA03FCC7FC91C9FCAE487EB512F8A32F3F7DAB36>I<3903F803F000FFEB1FFCEC3C 3EEC707F0007EBE0FF3803F9C000015B13FBEC007E153C01FF13005BA45BB3A748B4FCB5 12FEA3202C7DAB26>114 D<90383FE0183901FFFC383907E01F78390F0003F8001E1301 481300007C1478127800F81438A21518A27EA27E6C6C13006C7E13FC383FFFE06C13FC6C 13FF6C14C06C14E0C614F0011F13F81300EC0FFC140300C0EB01FE1400157E7E153EA27E A36C143C6C147C15786C14F86CEB01F039F38003E039F1F00F8039E07FFE0038C00FF01F 2E7DAC26>I<1306A5130EA4131EA3133E137EA213FE12011207001FB512F0B6FCA2C648 C7FCB3A4150CAA017E131C017F1318A26D133890381F8030ECC070903807E0E0903801FF C09038007F001E3E7EBC26>IIIIII E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fx cmsy10 10.95 4 /Fx 4 18 df<007FB812F8B912FCA26C17F83604789847>0 D13 D15 D<007FB912E0BA12F0A26C18E0CDFCAE007FB912E0BA12F0A26C18E0CDFCAE007FB912E0 BA12F0A26C18E03C287BAA47>17 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fy cmr10 10.95 92 /Fy 92 128 df<4AB4EB0FE0021F9038E03FFC913A7F00F8FC1ED901FC90383FF03FD907 F090397FE07F80494801FF13FF4948485BD93F805C137F0200ED7F00EF003E01FE6D91C7 FC82ADB97EA3C648C76CC8FCB3AE486C4A7E007FD9FC3FEBFF80A339407FBF35>11 DIII<121EEA7F80EAFFC0A9EA7F80ACEA3F00AC 121EAB120CC7FCA8121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A4179C019>33 D<001E130F397F803FC000FF137F01C013E0A201E013F0A3007F133F391E600F30000013 00A401E01370491360A3000114E04913C00003130101001380481303000EEB070048130E 0018130C0038131C003013181C1C7DBE2D>I<4B6C130C4B6C131EA20307143EA24C133C A2030F147CA293C71278A24B14F8A2031E5CA2033E1301A2033C5CA3037C1303A203785C A203F81307A24B5CA20201140F007FBAFCBB1280A26C1900C72707C0003EC8FC4B133CA3 020F147CA292C71278A24A14F8A2021E5CA3023E1301007FBAFCBB1280A26C1900C727F8 0007C0C8FC4A5CA20101140FA24A91C9FCA301035CA24A131EA20107143EA24A133CA201 0F147CA291C71278A34914F8A2011E5CA2013E1301A2013C5CA201186D5A41517BBE4C> I<14E0A4EB07FC90383FFF8090B512E03901F8E3F03903E0E0FCD807C0133CD80F807FD8 1F007F003E80003C1580007C140316C00078141F00F8143F157FA47EED3F806CEC0E0092 C7FC127F138013C0EA3FF013FEEA1FFF6C13FC6C13FF6C14C06C806C6C13F8011F7F1303 01007FECE7FF14E102E01380157F153FED1FC0A2003E140F127FD8FF801307A5130000FC 158000F0140F1270007815005D6C141E153E6C5C6C5C3907C0E1F03903F8EFE0C6B51280 D93FFEC7FCEB0FF8EB00E0A422497BC32D>I<013F1603D9FFC04B7E2601E0E0150F2607 C070151F48486C4BC7FC023E157E48486C15FE48D90FC0EB03FC003ED90EF0EB0FF8DA0F 3F13FD007E903A070FFFF1F0007C0200EB03E0160000FC6D6C495A170F604DC8FC5F173E 5F17FC5F4C5A1603007CD907005B4C5A007E150F003E495C020E49C9FC003F5D6C49133E 260F803C5B023813FC6C6C485B3A01E0E001F03800FFC090273F0003E0133F90C70007EC FFC09339C001E0E0923A0F8007C070031F49487E0400143C033E90381F001C037E497F03 7C133E4B150F0201027E7F4B137C4A5A020702FCEB03805D4A5A141F92C7FC143E147E14 7C5CA2495A0103037CEB07005C4948147E010F033E5B4A160E49C8123F496F5B013E9238 0F803C49173801FC6F6C5A49923801E0E0496FB45A0160043FC7FC41497BC34C>II<121EEA7F8012FF13C0A213E0A3127FEA1E601200A413E013C0A312 011380120313005A120E5A1218123812300B1C79BE19>I<1430147014E0EB01C0EB0380 1307EB0F00131E133E133C5B13F85B12015B1203A2485AA2120F5BA2121F90C7FCA25AA3 123E127EA6127C12FCB2127C127EA6123E123FA37EA27F120FA27F1207A26C7EA212017F 12007F13787F133E131E7FEB07801303EB01C0EB00E014701430145A77C323>I<12C07E 12707E7E121E7E6C7E7F12036C7E7F12007F1378137CA27FA2133F7FA21480130FA214C0 A3130714E0A6130314F0B214E01307A614C0130FA31480A2131F1400A25B133EA25BA213 7813F85B12015B485A12075B48C7FC121E121C5A5A5A5A145A7BC323>II<1506150FB3A9 007FB912E0BA12F0A26C18E0C8000FC9FCB3A915063C3C7BB447>I<121EEA7F8012FF13 C0A213E0A3127FEA1E601200A413E013C0A312011380120313005A120E5A121812381230 0B1C798919>II<121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A0A 798919>IIIIII<150E151E153EA2157EA215FE1401A21403 EC077E1406140E141CA214381470A214E0EB01C0A2EB0380EB0700A2130E5BA25B5BA25B 5B1201485A90C7FC5A120E120C121C5AA25A5AB8FCA3C8EAFE00AC4A7E49B6FCA3283E7E BD2D>I<00061403D80780131F01F813FE90B5FC5D5D5D15C092C7FC14FCEB3FE090C9FC ACEB01FE90380FFF8090383E03E090387001F8496C7E49137E497F90C713800006141FC8 13C0A216E0150FA316F0A3120C127F7F12FFA416E090C7121F12FC007015C012780038EC 3F80123C6CEC7F00001F14FE6C6C485A6C6C485A3903F80FE0C6B55A013F90C7FCEB07F8 243F7CBC2D>II<1238123C123F90 B612FCA316F85A16F016E00078C712010070EC03C0ED078016005D48141E151C153C5DC8 127015F04A5A5D14034A5A92C7FC5C141EA25CA2147C147814F8A213015C1303A31307A3 130F5CA2131FA6133FAA6D5A0107C8FC26407BBD2D>III< 121EEA7F80A2EAFFC0A4EA7F80A2EA1E00C7FCB3121EEA7F80A2EAFFC0A4EA7F80A2EA1E 000A2779A619>I<121EEA7F80A2EAFFC0A4EA7F80A2EA1E00C7FCB3121E127FEAFF80A2 13C0A4127F121E1200A412011380A3120313005A1206120E120C121C5A1230A20A3979A6 19>I<007FB912E0BA12F0A26C18E0CDFCAE007FB912E0BA12F0A26C18E03C167BA147> 61 D63 D<15074B7EA34B7EA34B7EA34B7EA34B7E15E7A2913801C7FC15C3A29138 0381FEA34AC67EA3020E6D7EA34A6D7EA34A6D7EA34A6D7EA34A6D7EA349486D7E91B6FC A249819138800001A249C87EA24982010E157FA2011E82011C153FA2013C820138151FA2 017882170F13FC00034C7ED80FFF4B7EB500F0010FB512F8A33D417DC044>65 DII IIIIII<011FB512FCA3D9000713006E5A1401B3B3A6123FEA7F 80EAFFC0A44A5A1380D87F005B007C130700385C003C495A6C495A6C495A2603E07EC7FC 3800FFF8EB3FC026407CBD2F>IIIIIIIIII<003FB91280A3903AF0007FE001018090393FC0003F48 C7ED1FC0007E1707127C00781703A300701701A548EF00E0A5C81600B3B14B7E4B7E0107 B612FEA33B3D7DBC42>IIII<007FB5D8C003B512E0A3C649C7EBFC 00D93FF8EC3FE06D48EC1F806D6C92C7FC171E6D6C141C6D6C143C5F6D6C14706D6D13F0 4C5ADA7FC05B023F13036F485ADA1FF090C8FC020F5BEDF81E913807FC1C163C6E6C5A91 3801FF7016F06E5B6F5AA26F7E6F7EA28282153FED3BFEED71FF15F103E07F913801C07F 0203804B6C7EEC07004A6D7E020E6D7E5C023C6D7E02386D7E14784A6D7E4A6D7F130149 486E7E4A6E7E130749C86C7E496F7E497ED9FFC04A7E00076DEC7FFFB500FC0103B512FE A33F3E7EBD44>II<003FB712F8A3 91C7EA1FF013F801E0EC3FE00180EC7FC090C8FC003EEDFF80A2003C4A1300007C4A5A12 784B5A4B5AA200704A5AA24B5A4B5AA2C8485A4A90C7FCA24A5A4A5AA24A5AA24A5A4A5A A24A5A4A5AA24990C8FCA2495A4948141CA2495A495AA2495A495A173C495AA24890C8FC 485A1778485A484815F8A24848140116034848140F4848143FED01FFB8FCA32E3E7BBD38 >II<486C13C00003130101001380 481303000EEB070048130E0018130C0038131C003013180070133800601330A300E01370 481360A400CFEB678039FFC07FE001E013F0A3007F133FA2003F131F01C013E0390F0007 801C1C73BE2D>II96 DII<49B4FC010F13E090383F00F8017C131E4848131F4848137F0007EC FF80485A5B121FA24848EB7F00151C007F91C7FCA290C9FC5AAB6C7EA3003FEC01C07F00 1F140316806C6C13076C6C14000003140E6C6C131E6C6C137890383F01F090380FFFC0D9 01FEC7FC222A7DA828>IIII<167C903903F801FF903A1FFF078F 8090397E0FDE1F9038F803F83803F001A23B07E000FC0600000F6EC7FC49137E001F147F A8000F147E6D13FE00075C6C6C485AA23901F803E03903FE0FC026071FFFC8FCEB03F800 06CAFC120EA3120FA27F7F6CB512E015FE6C6E7E6C15E06C810003813A0FC0001FFC48C7 EA01FE003E140048157E825A82A46C5D007C153E007E157E6C5D6C6C495A6C6C495AD803 F0EB0FC0D800FE017FC7FC90383FFFFC010313C0293D7EA82D>III<1478EB01FEA2EB03FFA4EB01FEA2EB00781400AC147FEB7FFFA313017F147FB3B3A5 123E127F38FF807E14FEA214FCEB81F8EA7F01387C03F0381E07C0380FFF803801FC0018 5185BD1C>III<2701F801FE14 FF00FF902707FFC00313E0913B1E07E00F03F0913B7803F03C01F80007903BE001F87000 FC2603F9C06D487F000101805C01FBD900FF147F91C75B13FF4992C7FCA2495CB3A6486C 496CECFF80B5D8F87FD9FC3F13FEA347287DA74C>I<3901F801FE00FF903807FFC09138 1E07E091387803F000079038E001F82603F9C07F0001138001FB6D7E91C7FC13FF5BA25B B3A6486C497EB5D8F87F13FCA32E287DA733>I<14FF010713E090381F81F890387E007E 01F8131F4848EB0F804848EB07C04848EB03E0000F15F04848EB01F8A2003F15FCA248C8 12FEA44815FFA96C15FEA36C6CEB01FCA3001F15F86C6CEB03F0A26C6CEB07E06C6CEB0F C06C6CEB1F80D8007EEB7E0090383F81FC90380FFFF0010090C7FC282A7EA82D>I<3901 FC03FC00FF90381FFF8091387C0FE09039FDE003F03A07FFC001FC6C496C7E6C90C7127F 49EC3F805BEE1FC017E0A2EE0FF0A3EE07F8AAEE0FF0A4EE1FE0A2EE3FC06D1580EE7F00 7F6E13FE9138C001F89039FDE007F09039FC780FC0DA3FFFC7FCEC07F891C9FCAD487EB5 12F8A32D3A7EA733>I<02FF131C0107EBC03C90381F80F090397F00387C01FC131CD803 F8130E4848EB0FFC150748481303121F485A1501485AA448C7FCAA6C7EA36C7EA2001F14 036C7E15076C6C130F6C7E6C6C133DD8007E137990383F81F190380FFFC1903801FE0190 C7FCAD4B7E92B512F8A32D3A7DA730>I<3901F807E000FFEB1FF8EC787CECE1FE3807F9 C100031381EA01FB1401EC00FC01FF1330491300A35BB3A5487EB512FEA31F287EA724> I<90383FC0603901FFF8E03807C03F381F000F003E1307003C1303127C0078130112F814 00A27E7E7E6D1300EA7FF8EBFFC06C13F86C13FE6C7F6C1480000114C0D8003F13E00103 13F0EB001FEC0FF800E01303A214017E1400A27E15F07E14016C14E06CEB03C090388007 8039F3E01F0038E0FFFC38C01FE01D2A7DA824>I<131CA6133CA4137CA213FCA2120112 031207001FB512C0B6FCA2D801FCC7FCB3A215E0A912009038FE01C0A2EB7F03013F1380 90381F8700EB07FEEB01F81B397EB723>IIIIII<001FB61280A2EBE0000180140049485A001E495A121C4A5A003C495A141F00385C 4A5A147F5D4AC7FCC6485AA2495A495A130F5C495A90393FC00380A2EB7F80EBFF005A5B 484813071207491400485A48485BA248485B4848137F00FF495A90B6FCA221277EA628> III<001C130E007FEB3F8039FF807FC0 A5397F003F80001CEB0E001A0977BD2D>127 D E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fz cmbx12 20.736 17 /Fz 17 117 df<96267FFFE01670063FB6ED01F80503B700F01403053F04FC14074CB96C 130F040706E0131F043F72133F93BA00FC137F0303DC00076D13FF030F03C09039003FFF 814B02FCC8000713C3037F02E0030113F792B600806F6CB5FC02034ACA121F4A02F8834A 02E0834A4A1701027F4A8391B548CC7E494A85495C4C854988494A85494A85495C8A4991 CDFC90B54886A2484A1B7FA2481E3F5D481E1F5D5A1F0FA2485CA3481E075DA2F703F048 9BC7FCA45DA2B6FCB27EA281A47EA2F703F06FF307F87EA36C80A21F0F7E6F1CF07E6F1B 1F7E20E06C6E1B3F816DF57FC06D80F7FF806D806D6E4F13006D6E616D525A826D6E4F5A 6D6E4F5A6E6D6C4E5A021F6EF0FFE06E6E4D5B6E02F84D5B6E02FE050F90C7FC02006E6C EE3FFE6F02F0EEFFFC031F02FE03035B6FDAFFC0021F13E0030303FF0103B55A030093B7 C8FC043F18FC040718F0040118C0DC003F94C9FC050316F8DD003F1580DE007F01F0CAFC 757A75F78C>67 D<96267FFFE01670063FB6ED01F80503B700F01403053F04FC14074CB9 6C130F040706E0131F043F72133F93BA00FC137F0303DC00076D13FF030F03C09039003F FF814B02FCC8000713C3037F02E0030113F792B600806F6CB5FC02034ACA121F4A02F883 4A02E0834A4A1701027F4A8391B548CC7E494A85495C4C854988494A85494A85495C8A49 91CDFC90B54886A2484A1B7FA2481E3F5D481E1F5D5A1F0FA2485CA3481E075DA2795A48 9BC9FCA45DA2B6FCB27EA26F0403BA12C0A47EA3816C96C8000302F8C7FCA36C80A36C80 A27E817E817E817F6D80827F6D806D806D80826D6E606D806E80021F6E5F6E02F05F6E80 6E02FE5F0200DAFFC05E6F02F04BB6FC031F02FE030713CF6FDAFFE0021F138703039226 FF8003B51201030093B6EAFC00043F4E133F040706E0131F04014E1307DC003F4CC71201 050304F8EC0070DD003F038092C8FCDE007F01F0CCFC827A75F798>71 D78 D85 D<93383FFFF00307B612C0033F15F84AB712FE0207707E021F17E0027F8391B526FC001F 7F010302C001037F4991C7487F49495C495B4901F04A7F5B90B55A485CA2485C4891C8FC A248715B5C48715B725B4A6F5B489438007FC0071FC7FC96C8FC5AA25CA3B5FCAF7E80A4 7E80A27E806CF11F80F23FC06C6E167FA26C6EEEFF80816C606C6E17006D6D4B5A6D6D15 076D6D4B5A6D6D6C4A5A6D02E0EC7FF06D02F849485A01009126FF801F5B6E91B6C7FC02 1F5E020716F8020116E06E6C1580030702FCC8FCDB003F13804A507ACE56>99 D<93387FFF80030FB512FC037FECFF804AB712E0020716F8021F16FE027FD9F8077F49B5 D8C000804991C7003F13E04901FC020F7F49496E7F49498049496E7F49496E7F90B55A48 727E92C914804884485B1BC048841BE0485BA27313F05AA25C5AA21BF885A2B5FCA391BA FCA41BF002F8CCFCA67EA3807EA47E806CF103F0F207F86C7F1A0F6C6E17F06C191F6F17 E06C6E163F6D6DEE7FC06D6D16FF6D6D4B13806D6D4B13006D6D6CEC0FFE6D02E0EC3FFC 6D02F8ECFFF86D9126FFC00F5B023F91B65A020F178002034CC7FC020016F8031F15E003 0392C8FCDB000F13E04D507BCE58>101 D103 D<903801FFFCB6FCA8C67E131F7FB3AD95380FFFE095B512FE05036E 7E050F15E0053F15F84D81932701FFF01F7F4CD900077FDC07FC6D80DC0FF06D80DC1FC0 7F4C48824CC8FC047E6F7F5EEDFDF85E03FF707F5EA25EA25EA293C9FCA45DB3B3A6B8D8 E003B81280A8617879F76C>II<903801FFFCB6FCA8C67E131F7FB3B3B3B3 B3ABB812C0A82A7879F735>108 D<902601FFF891260FFFE093383FFF80B692B500FE03 03B512F805036E6C020F14FE050F03E0023F6E7E053F03F891B712E04D6F4982932701FF F01F6D0107D9C07F7F4CD900076D90270FFC001F7FDC07FC6D9126801FF06D7FC66CDA0F F06D9126C03FC06D7F011FDA1FC06D4BC77E6D4A48DCE0FE834CC8ECE1FC047E6FD9F1F8 6E804CEFF3F0DBF9F8EFF7E04C6003FB7001FF6F804C6015FF4C95C9FCA24C5FA293C95C A44B60B3B3A6B8D8E003B8D8800FB712FEA8974E79CDA2>I<902601FFF891380FFFE0B6 92B512FE05036E7E050F15E0053F15F84D81932701FFF01F7F4CD900077FDC07FC6D80C6 6CDA0FF06D80011FDA1FC07F6D4A48824CC8FC047E6F7F5EEDF9F85E03FB707F5E15FF5E A25EA293C9FCA45DB3B3A6B8D8E003B81280A8614E79CD6C>I<93381FFFE00303B6FC03 1F15E092B712FC020316FF020F17C0023FD9FC0014F091B500C0010F13FC4991C700037F 4901FC02007F010F496F13C049496F7F49496F7F4B8149496F7F90B5C96C7F4886A24849 707F481B80A248497014C0A2481BE0A348497113F0A3481BF8A5B51AFCAE6C1BF8A46C1B F06E94B5FCA36C1BE0A26C6D4C14C0A26C1B806E5E6C1B006C6E4B5BA26C6E4B5B6D6D4B 5B6D6D4B5B6D6D4B5B6D6D92B55A6D01FF02035C6D02C0010F91C7FC010002FC90B512FC 6E90B75A021F17E00207178002014CC8FCDA003F15F0030392C9FCDB001F13E056507BCE 61>I<902601FFFCEC7FFEB6020FB512F0057F14FE4CB712C0040716F0041F82047F16FE 93B5C66C7F92B500F0010F14C0C66C0380010380011F4AC76C806D4A6E8004F06F7F4C6F 7F4C6F7F4C8193C915804B7014C0861DE0A27414F0A27414F8A47513FCA57513FEAF5113 FCA598B512F8A31DF0621DE0621DC0621D806F5E701800704B5B505B704B5B7092B55A04 FC4A5C704A5C706C010F5C05E0013F49C7FC9227FE7FFC01B55A70B712F0040F16C00403 93C8FC040015F8053F14C0050301F0C9FC94CCFCB3A6B812E0A85F6F7ACD6C>I<902601 FFF8EB07FEB691383FFFC094B512F00403804C14FE4C8093261FFC3F138093263FE07F13 C0DC7F80B5FCC66C5D011FDAFE0114E06DEBF9FC16F815FB16F016E015FF16C07114C05E 72138095381FFE0093C76C5AF001E095C8FCA25DA65DB3B3A2B812F8A8434E7ACD4F> 114 D<912603FFFCEB0780027F9039FFE00FC00103B6EAF83F010FEDFEFF013F92B5FC49 EB000F2601FFF01300480180143F4890C8120F4848814848814981123F83485A187FA212 FF6D163FA37F7F6DEE1F8002C092C7FC14F014FEECFFF06CECFF8016FEEEFFE06C16FC6C 16FF18C06C836C17F86C836C836C83013F17806D17C0010717E0010117F0EB003F020716 F8EC001F030015FC1607EE007F051F13FE1707007E82B482836D167FA2183F7F181FA27F 19FC7FA26D163F6D17F86D167F19F06D16FF6E4A13E002E04A13C06E4A138002FE023F13 00913AFFC003FFFE01E790B65A01C316F0018016C026FE003F92C7FC48010714F80070D9 007F90C8FC3F507ACE4C>I<15FFA75CA55CA45CA25CA25CA25CA25C91B5FCA25B5B5B13 1F5B90B9FC120FBAFCA6D8000791C9FCB3B3A3F01FE0AE183F7014C07F187F7014806D16 FF826D4B13006E6D485AEEFE0F6E90B55A020F5D6E5D020115C06E6C5C031F49C7FC0301 13F03B6E7CEC4B>I E %EndDVIPSBitmapFont end %%EndProlog %%BeginSetup %%Feature: *Resolution 600dpi TeXDict begin %%PaperSize: A4 %%EndSetup %%Page: 1 1 1 0 bop 401 1318 a Fz(Using)65 b(the)g(GNU)g(Compiler)g(Collection)1533 1647 y Fy(Ric)m(hard)29 b(M.)i(Stallman)1401 2086 y(Last)g(up)s(dated)e (20)i(April)d(2002)1706 2305 y(for)i(GCC)g(3.1)p eop %%Page: 2 2 2 1 bop 150 2518 a Fy(Cop)m(yrigh)m(t)604 2515 y(c)578 2518 y Fx(\015)32 b Fy(1988,)i(1989,)g(1992,)g(1993,)g(1994,)g(1995,)f (1996,)h(1997,)g(1998,)g(1999,)g(2000,)g(2001,)g(2002)150 2627 y(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)30 b(Inc.)150 2981 y(F)-8 b(or)31 b(GCC)f(V)-8 b(ersion)30 b(3.1)150 3335 y(Published)d(b)m(y)j(the)h(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation)150 3444 y(59)31 b(T)-8 b(emple)30 b(Place|Suite)g(330)150 3554 y(Boston,)i(MA)e (02111-1307,)35 b(USA)150 3664 y(Last)c(prin)m(ted)e(April,)f(1998.)150 3773 y(Prin)m(ted)h(copies)h(are)h(a)m(v)-5 b(ailable)30 b(for)g($50)i(eac)m(h.)150 4127 y(P)m(ermission)e(is)g(gran)m(ted)j(to) f(cop)m(y)-8 b(,)33 b(distribute)c(and/or)j(mo)s(dify)e(this)g(do)s (cumen)m(t)h(under)g(the)g(terms)h(of)150 4236 y(the)37 b(GNU)g(F)-8 b(ree)38 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)36 b(1.1)i(or)f(an)m(y)g(later)g(v)m(ersion)f(published)d(b)m (y)k(the)150 4346 y(F)-8 b(ree)23 b(Soft)m(w)m(are)f(F)-8 b(oundation;)24 b(with)d(the)g(In)m(v)-5 b(arian)m(t)21 b(Sections)h(b)s(eing)e(\\GNU)i(General)f(Public)f(License",)150 4456 y(the)30 b(F)-8 b(ron)m(t-Co)m(v)m(er)33 b(texts)e(b)s(eing)d (\(a\))k(\(see)f(b)s(elo)m(w\),)f(and)f(with)g(the)h(Bac)m(k-Co)m(v)m (er)j(T)-8 b(exts)31 b(b)s(eing)e(\(b\))h(\(see)150 4565 y(b)s(elo)m(w\).)40 b(A)28 b(cop)m(y)g(of)h(the)f(license)f(is)g (included)e(in)i(the)h(section)g(en)m(titled)g(\\GNU)h(F)-8 b(ree)29 b(Do)s(cumen)m(tation)150 4675 y(License".)150 4809 y(\(a\))i(The)f(FSF's)h(F)-8 b(ron)m(t-Co)m(v)m(er)33 b(T)-8 b(ext)31 b(is:)150 4944 y(A)f(GNU)h(Man)m(ual)150 5078 y(\(b\))g(The)e(FSF's)i(Bac)m(k-Co)m(v)m(er)i(T)-8 b(ext)31 b(is:)150 5213 y(Y)-8 b(ou)45 b(ha)m(v)m(e)i(freedom)e(to)g (cop)m(y)h(and)e(mo)s(dify)g(this)f(GNU)j(Man)m(ual,)j(lik)m(e)44 b(GNU)i(soft)m(w)m(are.)86 b(Copies)150 5322 y(published)27 b(b)m(y)j(the)g(F)-8 b(ree)32 b(Soft)m(w)m(are)f(F)-8 b(oundation)30 b(raise)g(funds)f(for)h(GNU)h(dev)m(elopmen)m(t.)p eop %%Page: -1 3 -1 2 bop 3723 -116 a Fw(i)150 299 y Fv(Short)53 b(Con)l(ten)l(ts)150 540 y Fw(In)m(tro)s(duction)16 b Fu(.)j(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h (.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.) h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)48 b Fw(1)150 681 y(1)146 b(Compile)31 b(C,)i(C)p Ft(++)p Fw(,)f(Ob)5 b(jectiv)m(e-C,)34 b(Ada,)f(F)-8 b(ortran,)31 b(or)h(Ja)m(v)-5 b(a)20 b Fu(.)g(.)f(.)h(.)f(.)h(.)f(.)52 b Fw(3)150 822 y(2)146 b(Language)32 b(Standards)i(Supp)s(orted)f(b)m(y)g(GCC)40 b Fu(.)19 b(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)71 b Fw(5)150 963 y(3)146 b(GCC)33 b(Command)f(Options)e Fu(.)20 b(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f (.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)63 b Fw(7)150 1104 y(4)146 b(C)33 b(Implemen)m(tation-de\014ned)f(b)s(eha)m(vior)37 b Fu(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f (.)70 b Fw(151)150 1245 y(5)146 b(Extensions)34 b(to)e(the)h(C)g (Language)f(F)-8 b(amily)16 b Fu(.)h(.)j(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.) f(.)h(.)f(.)h(.)f(.)g(.)49 b Fw(155)150 1386 y(6)146 b(Extensions)34 b(to)e(the)h(C)p Ft(++)f Fw(Language)23 b Fu(.)c(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.) f(.)h(.)55 b Fw(249)150 1528 y(7)146 b(GNU)32 b(Ob)5 b(jectiv)m(e-C)34 b(run)m(time)e(features)11 b Fu(.)20 b(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)44 b Fw(261)150 1669 y(8)146 b Ft(gcov)p Fw(:)42 b(a)32 b(T)-8 b(est)34 b(Co)m(v)m(erage)g(Program)27 b Fu(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f (.)61 b Fw(267)150 1810 y(9)146 b(Kno)m(wn)33 b(Causes)i(of)d(T)-8 b(rouble)32 b(with)g(GCC)39 b Fu(.)19 b(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h (.)f(.)h(.)f(.)h(.)f(.)g(.)71 b Fw(273)150 1951 y(10)97 b(Rep)s(orting)31 b(Bugs)20 b Fu(.)h(.)e(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.) h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f (.)g(.)h(.)f(.)53 b Fw(293)150 2092 y(11)97 b(Ho)m(w)33 b(T)-8 b(o)33 b(Get)f(Help)h(with)f(GCC)23 b Fu(.)d(.)f(.)h(.)f(.)h(.)f (.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)56 b Fw(299)150 2233 y(12)97 b(Con)m(tributing)32 b(to)g(GCC)h(Dev)m (elopmen)m(t)39 b Fu(.)20 b(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h (.)f(.)g(.)h(.)f(.)72 b Fw(301)150 2374 y(13)97 b(Using)32 b(GCC)h(on)g(VMS)11 b Fu(.)20 b(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f (.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)43 b Fw(303)150 2516 y(F)-8 b(unding)32 b(F)-8 b(ree)32 b(Soft)m(w)m(are)37 b Fu(.)19 b(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h (.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.) 68 b Fw(309)150 2657 y(The)34 b(GNU)e(Pro)5 b(ject)33 b(and)g(GNU/Lin)m(ux)11 b Fu(.)19 b(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f (.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)43 b Fw(311)150 2798 y(GNU)32 b(GENERAL)h(PUBLIC)h(LICENSE)22 b Fu(.)f(.)f(.)f(.)g(.)h (.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)55 b Fw(313)150 2939 y(GNU)32 b(F)-8 b(ree)33 b(Do)s(cumen)m(tation)e (License)i Fu(.)19 b(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.) f(.)g(.)h(.)f(.)h(.)f(.)h(.)64 b Fw(321)150 3080 y(Con)m(tributors)33 b(to)f(GCC)27 b Fu(.)20 b(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g (.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.) 59 b Fw(329)150 3221 y(Option)32 b(Index)12 b Fu(.)21 b(.)e(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f (.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.) 45 b Fw(337)150 3362 y(Index)22 b Fu(.)e(.)g(.)f(.)h(.)f(.)h(.)f(.)g(.) h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f (.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)54 b Fw(347)p eop %%Page: -2 4 -2 3 bop 150 -112 a Fw(ii)1670 b(Using)32 b(the)h(GNU)f(Compiler)f (Collection)g(\(GCC\))p eop %%Page: -3 5 -3 4 bop 3674 -116 a Fy(iii)150 299 y Fv(T)-13 b(able)54 b(of)g(Con)l(ten)l(ts)150 641 y Fs(In)l(tro)t(duction)23 b Fu(.)c(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.) f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)67 b Fs(1)150 911 y(1)135 b(Compile)46 b(C,)f(C)p Ft(++)p Fs(,)g(Ob)7 b(jectiv)l(e-C,)46 b(Ada,)f(F)-11 b(ortran,)45 b(or)419 1044 y(Ja)l(v)-7 b(a)35 b Fu(.)20 b(.)f(.)h(.)f(.)h(.)f(.)g(.) h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f (.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)79 b Fs(3)150 1313 y(2)135 b(Language)45 b(Standards)g(Supp)t(orted)f(b)l(y)h(GCC)38 b Fu(.)19 b(.)g(.)h(.)82 b Fs(5)150 1583 y(3)135 b(GCC)45 b(Command)g(Options)33 b Fu(.)20 b(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h (.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)78 b Fs(7)449 1720 y Fy(3.1)92 b(Option)29 b(Summary)12 b Fr(.)h(.)i(.)g(.)g(.)g(.)h(.)f (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)42 b Fy(7)449 1830 y(3.2)92 b(Options)29 b(Con)m(trolling)f(the)j(Kind)d (of)j(Output)c Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)57 b Fy(16)449 1939 y(3.3)92 b(Compiling)27 b(C)p Fq(++)j Fy(Programs)22 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)h(.)f(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)51 b Fy(19)449 2049 y(3.4)92 b(Options)29 b(Con)m(trolling)f(C)i(Dialect)14 b Fr(.)i(.)f(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.) g(.)43 b Fy(19)449 2159 y(3.5)92 b(Options)29 b(Con)m(trolling)f(C)p Fq(++)i Fy(Dialect)9 b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)39 b Fy(24)449 2268 y(3.6)92 b(Options)29 b(Con)m(trolling)f(Ob)5 b(jectiv)m(e-C)31 b(Dialect)24 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)53 b Fy(30)449 2378 y(3.7)92 b(Options)29 b(to)i(Con)m(trol)f(Diagnostic)h(Messages)h(F)-8 b(ormatting)29 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)58 b Fy(31)449 2487 y(3.8)92 b(Options)29 b(to)i(Request)g(or)f(Suppress)e(W)-8 b(arnings)16 b Fr(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)45 b Fy(31)449 2597 y(3.9)92 b(Options)29 b(for)h(Debugging)g(Y)-8 b(our)31 b(Program)f(or)h(GCC)12 b Fr(.)i(.)h(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)41 b Fy(43)449 2707 y(3.10)92 b(Options)29 b(That)i(Con)m(trol)f (Optimization)c Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Fy(50)449 2816 y(3.11)92 b(Options)29 b(Con)m(trolling)g(the)h(Prepro)s(cessor)21 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g (.)g(.)g(.)50 b Fy(61)449 2926 y(3.12)92 b(P)m(assing)30 b(Options)f(to)i(the)g(Assem)m(bler)25 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Fy(68)449 3035 y(3.13)92 b(Options)29 b(for)h(Linking)25 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) h(.)55 b Fy(68)449 3145 y(3.14)92 b(Options)29 b(for)h(Directory)h (Searc)m(h)16 b Fr(.)g(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)45 b Fy(71)449 3254 y(3.15)92 b(Sp)s(ecifying)28 b(subpro)s(cesses)h(and)h (the)h(switc)m(hes)f(to)h(pass)f(to)h(them)654 3364 y Fr(.)15 b(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)53 b Fy(73)449 3474 y(3.16)92 b(Sp)s(ecifying)28 b(T)-8 b(arget)32 b(Mac)m(hine)f(and)e(Compiler)g(V)-8 b(ersion)22 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)51 b Fy(79)449 3583 y(3.17)92 b(Hardw)m(are)31 b(Mo)s(dels)f(and)f (Con\014gurations)20 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fy(80)748 3693 y(3.17.1)93 b(M680x0)32 b(Options)13 b Fr(.)h(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)42 b Fy(80)748 3802 y(3.17.2)93 b(M68hc1x)32 b(Options)12 b Fr(.)h(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Fy(82)748 3912 y(3.17.3)93 b(V)-10 b(AX)31 b(Options)d Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)58 b Fy(83)748 4022 y(3.17.4)93 b(SP)-8 b(AR)m(C)30 b(Options)18 b Fr(.)c(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)47 b Fy(83)748 4131 y(3.17.5)93 b(Con)m(v)m(ex)31 b(Options)23 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)52 b Fy(86)748 4241 y(3.17.6)93 b(AMD29K)32 b(Options)21 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)50 b Fy(87)748 4350 y(3.17.7)93 b(ARM)31 b(Options)17 b Fr(.)d(.)h(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)h(.)46 b Fy(89)748 4460 y(3.17.8)93 b(MN10200)33 b(Options)23 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.) g(.)52 b Fy(93)748 4570 y(3.17.9)93 b(MN10300)33 b(Options)23 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)52 b Fy(93)748 4679 y(3.17.10)93 b(M32R/D)33 b(Options)12 b Fr(.)h(.)i(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)41 b Fy(94)748 4789 y(3.17.11)93 b(M88K)32 b(Options)23 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54 b Fy(95)748 4898 y(3.17.12)93 b(IBM)31 b(RS/6000)h(and)e(P)m(o)m(w)m (erPC)h(Options)11 b Fr(.)j(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Fy(98)748 5008 y(3.17.13)93 b(IBM)31 b(R)-8 b(T)31 b(Options)21 b Fr(.)13 b(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)50 b Fy(105)748 5117 y(3.17.14)93 b(MIPS)30 b(Options)10 b Fr(.)k(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)39 b Fy(106)748 5227 y(3.17.15)93 b(In)m(tel)31 b(386)g(and)f(AMD)h (x86-64)i(Options)21 b Fr(.)13 b(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51 b Fy(111)748 5337 y(3.17.16)93 b(HPP)-8 b(A)31 b(Options)19 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fy(116)p eop %%Page: -4 6 -4 5 bop 150 -116 a Fy(iv)1779 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))748 83 y(3.17.17)93 b(In)m(tel)31 b(960)g(Options)14 b Fr(.)g(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44 b Fy(117)748 193 y(3.17.18)93 b(DEC)31 b(Alpha)e(Options)20 b Fr(.)13 b(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fy(118)748 302 y(3.17.19)93 b(DEC)31 b(Alpha/VMS)e(Options)24 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Fy(123)748 412 y(3.17.20)93 b(Clipp)s(er)27 b(Options)19 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fy(123)748 521 y(3.17.21)93 b(H8/300)33 b(Options)19 b Fr(.)14 b(.)h(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)49 b Fy(123)748 631 y(3.17.22)93 b(SH)30 b(Options)22 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g (.)g(.)g(.)g(.)51 b Fy(124)748 741 y(3.17.23)93 b(Options)29 b(for)i(System)f(V)13 b Fr(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43 b Fy(125)748 850 y(3.17.24)93 b(TMS320C3x/C4x)32 b(Options)11 b Fr(.)j(.)h(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Fy(125)748 960 y(3.17.25)93 b(V850)32 b(Options)22 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)51 b Fy(127)748 1069 y(3.17.26)93 b(AR)m(C)31 b(Options)24 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Fy(128)748 1179 y(3.17.27)93 b(NS32K)31 b(Options)26 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Fy(128)748 1289 y(3.17.28)93 b(A)-10 b(VR)31 b(Options)26 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Fy(130)748 1398 y(3.17.29)93 b(MCore)31 b(Options)10 b Fr(.)k(.)h(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)40 b Fy(131)748 1508 y(3.17.30)93 b(IA-64)32 b(Options)13 b Fr(.)h(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)43 b Fy(132)748 1617 y(3.17.31)93 b(D30V)32 b(Options)10 b Fr(.)k(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)39 b Fy(133)748 1727 y(3.17.32)93 b(S/390)32 b(and)e(zSeries)g(Options)d Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)58 b Fy(133)748 1836 y(3.17.33)93 b(CRIS)30 b(Options)16 b Fr(.)d(.)i(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)46 b Fy(134)748 1946 y(3.17.34)93 b(MMIX)31 b(Options)12 b Fr(.)i(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)41 b Fy(136)748 2056 y(3.17.35)93 b(PDP-11)32 b(Options)10 b Fr(.)k(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)40 b Fy(137)748 2165 y(3.17.36)93 b(Xstorm)m(y16)32 b(Options)15 b Fr(.)f(.)h(.)g(.)g (.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)45 b Fy(138)748 2275 y(3.17.37)93 b(Xtensa)32 b(Options)27 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)59 b Fy(138)449 2384 y(3.18)92 b(Options)29 b(for)h(Co)s(de)g(Generation)h (Con)m(v)m(en)m(tions)11 b Fr(.)k(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)41 b Fy(140)449 2494 y(3.19)92 b(En)m(vironmen)m(t)30 b(V)-8 b(ariables)30 b(A\013ecting)g(GCC)18 b Fr(.)d(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)48 b Fy(145)449 2604 y(3.20)92 b(Running)28 b(Protoize)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54 b Fy(148)150 2846 y Fs(4)135 b(C)45 b(Implemen)l(tation-de\014ned)h(b)t (eha)l(vior)23 b Fu(.)d(.)g(.)f(.)g(.)h(.)f(.)67 b Fs(151)449 2983 y Fy(4.1)92 b(T)-8 b(ranslation)20 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)50 b Fy(151)449 3093 y(4.2)92 b(En)m(vironmen)m(t)11 b Fr(.)j(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Fy(151)449 3202 y(4.3)92 b(Iden)m(ti\014ers)26 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)57 b Fy(151)449 3312 y(4.4)92 b(Characters)10 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)40 b Fy(151)449 3421 y(4.5)92 b(In)m(tegers)26 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)55 b Fy(152)449 3531 y(4.6)92 b(Floating)30 b(p)s(oin)m(t)c Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)56 b Fy(152)449 3641 y(4.7)92 b(Arra)m(ys)30 b(and)g(p)s(oin)m(ters)23 b Fr(.)14 b(.)h(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)52 b Fy(153)449 3750 y(4.8)92 b(Hin)m(ts)11 b Fr(.)k(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h (.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)41 b Fy(153)449 3860 y(4.9)92 b(Structures,)30 b(unions,)e(en)m(umerations,)i(and)g(bit-\014elds)14 b Fr(.)g(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44 b Fy(153)449 3969 y(4.10)92 b(Quali\014ers)13 b Fr(.)g(.)i(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)42 b Fy(153)449 4079 y(4.11)92 b(Prepro)s(cessing)29 b(directiv)m(es)f Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) 58 b Fy(153)449 4188 y(4.12)92 b(Library)29 b(functions)8 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)38 b Fy(154)449 4298 y(4.13)92 b(Arc)m(hitecture)19 b Fr(.)d(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fy(154)449 4408 y(4.14)92 b(Lo)s(cale-sp)s(eci\014c)30 b(b)s(eha)m(vior)10 b Fr(.)k(.)h(.)g(.)g (.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)40 b Fy(154)p eop %%Page: -5 7 -5 6 bop 3702 -116 a Fy(v)150 83 y Fs(5)135 b(Extensions)46 b(to)f(the)g(C)g(Language)h(F)-11 b(amily)22 b Fu(.)e(.)f(.)h(.)f(.)66 b Fs(155)449 220 y Fy(5.1)92 b(Statemen)m(ts)32 b(and)d(Declarations)i (in)e(Expressions)19 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)49 b Fy(155)449 330 y(5.2)92 b(Lo)s(cally)29 b(Declared)i(Lab)s(els)c Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.) f(.)g(.)g(.)57 b Fy(156)449 439 y(5.3)92 b(Lab)s(els)29 b(as)i(V)-8 b(alues)25 b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)55 b Fy(157)449 549 y(5.4)92 b(Nested)31 b(F)-8 b(unctions)11 b Fr(.)j(.)h(.)g(.)h(.)f (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Fy(158)449 658 y(5.5)92 b(Constructing)29 b(F)-8 b(unction)30 b(Calls)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)59 b Fy(159)449 768 y(5.6)92 b(Naming)30 b(an)g(Expression's)f(T)m(yp)s(e) 16 b Fr(.)e(.)i(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)46 b Fy(160)449 878 y(5.7)92 b(Referring)29 b(to)i(a)g(T)m(yp)s(e)f(with)f Fq(typeof)20 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)50 b Fy(161)449 987 y(5.8)92 b(Generalized)30 b(Lv)-5 b(alues)22 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)52 b Fy(161)449 1097 y(5.9)92 b(Conditionals)28 b(with)h(Omitted)g(Op)s (erands)21 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)51 b Fy(162)449 1206 y(5.10)92 b(Double-W)-8 b(ord)31 b(In)m(tegers)25 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)53 b Fy(163)449 1316 y(5.11)92 b(Complex)30 b(Num)m(b)s(ers)25 b Fr(.)15 b(.)g(.)h(.)f(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Fy(163)449 1425 y(5.12)92 b(Hex)31 b(Floats)f Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)58 b Fy(164)449 1535 y(5.13)92 b(Arra)m(ys)31 b(of)f(Length)h(Zero)17 b Fr(.)e(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)47 b Fy(164)449 1645 y(5.14)92 b(Arra)m(ys)31 b(of)f(V)-8 b(ariable)30 b(Length)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)57 b Fy(165)449 1754 y(5.15)92 b(Macros)32 b(with)d(a)i(V)-8 b(ariable)29 b(Num)m(b)s(er)h(of)g(Argumen)m(ts.)19 b Fr(.)c(.)g(.)g(.)g(.)h(.)f(.)g (.)g(.)48 b Fy(166)449 1864 y(5.16)92 b(Sligh)m(tly)29 b(Lo)s(oser)h(Rules)f(for)i(Escap)s(ed)e(Newlines)f Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)59 b Fy(167)449 1973 y(5.17)92 b(String)29 b(Literals)h(with)f(Em)m(b)s(edded)g (Newlines)20 b Fr(.)13 b(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)50 b Fy(167)449 2083 y(5.18)92 b(Non-Lv)-5 b(alue)31 b(Arra)m(ys)f(Ma)m(y)i(Ha)m(v)m(e)g(Subscripts)14 b Fr(.)e(.)j(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44 b Fy(168)449 2193 y(5.19)92 b(Arithmetic)30 b(on)g Fq(void)p Fy(-)g(and)f(F)-8 b(unction-P)m(oin)m(ters)8 b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)38 b Fy(168)449 2302 y(5.20)92 b(Non-Constan)m(t)32 b(Initializers)23 b Fr(.)12 b(.)j(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) 53 b Fy(168)449 2412 y(5.21)92 b(Comp)s(ound)29 b(Literals)12 b Fr(.)i(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)42 b Fy(168)449 2521 y(5.22)92 b(Designated)31 b(Initializers)17 b Fr(.)c(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)47 b Fy(169)449 2631 y(5.23)92 b(Case)31 b(Ranges)16 b Fr(.)f(.)g(.)g(.)h (.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f (.)g(.)45 b Fy(171)449 2741 y(5.24)92 b(Cast)31 b(to)g(a)g(Union)e(T)m (yp)s(e)23 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)53 b Fy(171)449 2850 y(5.25)92 b(Mixed)30 b(Declarations)h(and)f (Co)s(de)19 b Fr(.)14 b(.)h(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fy(171)449 2960 y(5.26)92 b(Declaring)30 b(A)m(ttributes)h(of)f(F)-8 b(unctions)28 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)58 b Fy(172)449 3069 y(5.27)92 b(A)m(ttribute)31 b(Syn)m(tax)13 b Fr(.)i(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43 b Fy(179)449 3179 y(5.28)92 b(Protot)m(yp)s(es)32 b(and)d(Old-St)m(yle) g(F)-8 b(unction)30 b(De\014nitions)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)58 b Fy(182)449 3289 y(5.29)92 b(C)p Fq(++)30 b Fy(St)m(yle)g(Commen)m(ts)19 b Fr(.)c(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)48 b Fy(183)449 3398 y(5.30)92 b(Dollar)30 b(Signs)f(in)g(Iden)m(ti\014er)g(Names)16 b Fr(.)g(.)f(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)46 b Fy(183)449 3508 y(5.31)92 b(The)30 b(Character)1313 3505 y Fp(h)p 1337 3452 139 4 v 1337 3508 a Fo(ESC)p 1337 3523 V 1471 3505 a Fp(i)1531 3508 y Fy(in)f(Constan)m(ts)9 b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)39 b Fy(183)449 3617 y(5.32)92 b(Inquiring)28 b(on)i(Alignmen)m(t)f(of)i (T)m(yp)s(es)f(or)g(V)-8 b(ariables)26 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)56 b Fy(183)449 3727 y(5.33)92 b(Sp)s(ecifying)28 b(A)m(ttributes)i(of)h(V)-8 b(ariables)24 b Fr(.)15 b(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)54 b Fy(184)449 3836 y(5.34)92 b(Sp)s(ecifying)28 b(A)m(ttributes)i(of)h (T)m(yp)s(es)22 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)52 b Fy(188)449 3946 y(5.35)92 b(An)30 b(Inline)e(F)-8 b(unction)30 b(is)g(As)g(F)-8 b(ast)32 b(As)e(a)h(Macro)13 b Fr(.)k(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)43 b Fy(191)449 4056 y(5.36)92 b(Assem)m(bler)30 b(Instructions)f(with)g(C)h(Expression)e(Op)s(erands)21 b Fr(.)13 b(.)i(.)g(.)51 b Fy(193)748 4165 y(5.36.1)93 b(i386)31 b(\015oating)f(p)s(oin)m(t)g(asm)g(op)s(erands)12 b Fr(.)i(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)42 b Fy(197)449 4275 y(5.37)92 b(Constrain)m(ts)30 b(for)g Fq(asm)g Fy(Op)s(erands)19 b Fr(.)13 b(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fy(198)748 4384 y(5.37.1)93 b(Simple)28 b(Constrain)m(ts)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)56 b Fy(198)748 4494 y(5.37.2)93 b(Multiple)28 b(Alternativ)m(e)j(Constrain)m(ts)12 b Fr(.)i(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)42 b Fy(200)748 4604 y(5.37.3)93 b(Constrain)m(t)30 b(Mo)s(di\014er)f (Characters)18 b Fr(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)48 b Fy(201)748 4713 y(5.37.4)93 b(Constrain)m(ts)30 b(for)g(P)m(articular)f(Mac)m(hines)15 b Fr(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)h(.)f(.)44 b Fy(201)449 4823 y(5.38)92 b(Con)m(trolling)29 b(Names)i(Used)f(in)f(Assem)m(bler)h(Co)s(de)18 b Fr(.)d(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)48 b Fy(210)449 4932 y(5.39)92 b(V)-8 b(ariables)30 b(in)f(Sp)s(eci\014ed)f(Registers)11 b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Fy(211)748 5042 y(5.39.1)93 b(De\014ning)29 b(Global)h(Register)g(V)-8 b(ariables)18 b Fr(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)48 b Fy(211)748 5152 y(5.39.2)93 b(Sp)s(ecifying)28 b(Registers)i(for)g (Lo)s(cal)h(V)-8 b(ariables)24 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)54 b Fy(212)449 5261 y(5.40)92 b(Alternate)31 b(Keyw)m(ords)19 b Fr(.)c(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fy(213)p eop %%Page: -6 8 -6 7 bop 150 -116 a Fy(vi)1779 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))449 83 y(5.41)92 b(Incomplete)31 b Fq(enum)e Fy(T)m(yp)s(es)18 b Fr(.)c(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.) g(.)g(.)g(.)g(.)47 b Fy(214)449 193 y(5.42)92 b(F)-8 b(unction)30 b(Names)h(as)g(Strings)13 b Fr(.)h(.)h(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)43 b Fy(214)449 302 y(5.43)92 b(Getting)31 b(the)g(Return)f(or)g(F)-8 b(rame)31 b(Address)e(of)i(a)g(F)-8 b(unction)29 b Fr(.)15 b(.)g(.)g(.)59 b Fy(215)449 412 y(5.44)92 b(Using)30 b(v)m(ector)i(instructions)c(through)i(built-in)d (functions)15 b Fr(.)e(.)i(.)h(.)f(.)44 b Fy(216)449 521 y(5.45)92 b(Other)30 b(built-in)e(functions)g(pro)m(vided)h(b)m(y)i (GCC)d Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)58 b Fy(217)449 631 y(5.46)92 b(Built-in)29 b(F)-8 b(unctions)29 b(Sp)s(eci\014c)g(to)i(P)m(articular)f(T)-8 b(arget)32 b(Mac)m(hines)653 741 y Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h (.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)52 b Fy(221)748 850 y(5.46.1)93 b(X86)31 b(Built-in)e(F)-8 b(unctions)13 b Fr(.)h(.)h(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)43 b Fy(221)748 960 y(5.46.2)93 b(P)m(o)m(w)m(erPC)31 b(AltiV)-8 b(ec)31 b(Built-in)d(F)-8 b(unctions)25 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Fy(225)449 1069 y(5.47)92 b(Pragmas)31 b(Accepted)h(b)m(y)e(GCC)17 b Fr(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.) f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)47 b Fy(247)748 1179 y(5.47.1)93 b(ARM)31 b(Pragmas)22 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) h(.)f(.)g(.)g(.)g(.)g(.)51 b Fy(247)748 1289 y(5.47.2)93 b(Darwin)29 b(Pragmas)g Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) 58 b Fy(247)748 1398 y(5.47.3)93 b(Solaris)29 b(Pragmas)21 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)50 b Fy(247)748 1508 y(5.47.4)93 b(T)-8 b(ru64)30 b(Pragmas)13 b Fr(.)j(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43 b Fy(248)449 1617 y(5.48)92 b(Unnamed)30 b(struct/union)f(\014elds)g (within)f(structs/unions.)13 b Fr(.)h(.)h(.)g(.)g(.)43 b Fy(248)150 1860 y Fs(6)135 b(Extensions)46 b(to)f(the)g(C)p Ft(++)f Fs(Language)25 b Fu(.)c(.)e(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)69 b Fs(249)449 1997 y Fy(6.1)92 b(Minim)m(um)28 b(and)i(Maxim)m(um)g(Op)s (erators)f(in)h(C)p Fq(++)12 b Fr(.)h(.)i(.)g(.)g(.)g(.)g(.)g(.)h(.)f (.)g(.)g(.)g(.)g(.)41 b Fy(249)449 2106 y(6.2)92 b(When)30 b(is)g(a)g(V)-8 b(olatile)31 b(Ob)5 b(ject)30 b(Accessed?)11 b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)41 b Fy(249)449 2216 y(6.3)92 b(Restricting)30 b(P)m(oin)m(ter)g(Aliasing)15 b Fr(.)f(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)45 b Fy(250)449 2325 y(6.4)92 b(V)-8 b(ague)32 b(Link)-5 b(age)21 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51 b Fy(251)449 2435 y(6.5)92 b(Declarations)31 b(and)e(De\014nitions)g(in)g(One)h(Header)23 b Fr(.)15 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)52 b Fy(252)449 2545 y(6.6)92 b(Where's)31 b(the)f(T)-8 b(emplate?)22 b Fr(.)15 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)52 b Fy(254)449 2654 y(6.7)92 b(Extracting)30 b(the)h(function)e(p)s(oin)m(ter)g(from)h(a)h(b)s(ound)d(p)s(oin)m(ter) i(to)631 2764 y(mem)m(b)s(er)f(function)g Fr(.)15 b(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)59 b Fy(256)449 2873 y(6.8)92 b(C)p Fq(++)p Fy(-Sp)s(eci\014c)28 b(V)-8 b(ariable,)30 b(F)-8 b(unction,)31 b(and)e(T)m(yp)s(e)h(A)m (ttributes)19 b Fr(.)c(.)g(.)g(.)49 b Fy(257)449 2983 y(6.9)92 b(Ja)m(v)-5 b(a)31 b(Exceptions)12 b Fr(.)j(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)41 b Fy(257)449 3093 y(6.10)92 b(Deprecated)32 b(F)-8 b(eatures)10 b Fr(.)17 b(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) 40 b Fy(258)449 3202 y(6.11)92 b(Bac)m(kw)m(ards)32 b(Compatibilit)m(y) 21 b Fr(.)13 b(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51 b Fy(259)150 3445 y Fs(7)135 b(GNU)45 b(Ob)7 b(jectiv)l(e-C)46 b(run)l(time)g(features)26 b Fu(.)21 b(.)e(.)h(.)f(.)g(.)h(.)70 b Fs(261)449 3582 y Fy(7.1)92 b Fq(+load)p Fy(:)39 b(Executing)30 b(co)s(de)h(b)s(efore)f(main)14 b Fr(.)g(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44 b Fy(261)748 3691 y(7.1.1)93 b(What)31 b(y)m(ou)f(can)h(and)f(what)g(y)m (ou)h(cannot)g(do)f(in)f Fq(+load)953 3801 y Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)53 b Fy(262)449 3910 y(7.2)92 b(T)m(yp)s(e)30 b(enco)s(ding)18 b Fr(.)c(.)h(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)48 b Fy(263)449 4020 y(7.3)92 b(Garbage)31 b(Collection)15 b Fr(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)45 b Fy(264)449 4130 y(7.4)92 b(Constan)m(t)31 b(string)e(ob)5 b(jects)18 b Fr(.)e(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) h(.)f(.)g(.)g(.)47 b Fy(265)449 4239 y(7.5)92 b(compatibilit)m(y)p 1188 4239 28 4 v 31 w(alias)8 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)38 b Fy(266)150 4482 y Fs(8)135 b Ft(gcov)p Fs(:)58 b(a)45 b(T)-11 b(est)45 b(Co)l(v)l(erage)i(Program)20 b Fu(.)h(.)e(.)h(.)f(.)g(.)h(.)f(.)h(.)f (.)h(.)64 b Fs(267)449 4619 y Fy(8.1)92 b(In)m(tro)s(duction)29 b(to)i Fq(gcov)24 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)55 b Fy(267)449 4728 y(8.2)92 b(In)m(v)m(oking)30 b(gco)m(v)16 b Fr(.)h(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)45 b Fy(268)449 4838 y(8.3)92 b(Using)30 b Fq(gcov)f Fy(with)g(GCC)h(Optimization)20 b Fr(.)13 b(.)i(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)50 b Fy(270)449 4947 y(8.4)92 b(Brief)30 b(description)e(of)j Fq(gcov)e Fy(data)i(\014les)12 b Fr(.)i(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)42 b Fy(271)p eop %%Page: -7 9 -7 8 bop 3652 -116 a Fy(vii)150 83 y Fs(9)135 b(Kno)l(wn)45 b(Causes)g(of)h(T)-11 b(rouble)44 b(with)i(GCC)15 b Fu(.)k(.)h(.)f(.)g (.)h(.)59 b Fs(273)449 220 y Fy(9.1)92 b(Actual)30 b(Bugs)h(W)-8 b(e)31 b(Ha)m(v)m(en't)i(Fixed)d(Y)-8 b(et)16 b Fr(.)g(.)f(.)g(.)g(.)h (.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)46 b Fy(273)449 330 y(9.2)92 b(Cross-Compiler)28 b(Problems)19 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Fy(273)449 439 y(9.3)92 b(In)m(terop)s(eration)26 b Fr(.)15 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)h(.)f(.)56 b Fy(274)449 549 y(9.4)92 b(Problems)29 b(Compiling)e(Certain)j(Programs)9 b Fr(.)15 b(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)39 b Fy(277)449 658 y(9.5)92 b(Incompatibilities)27 b(of)j(GCC)c Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)55 b Fy(278)449 768 y(9.6)92 b(Fixed)30 b(Header)h(Files)22 b Fr(.)14 b(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)h(.)51 b Fy(281)449 878 y(9.7)92 b(Standard)29 b(Libraries)23 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.) g(.)g(.)54 b Fy(282)449 987 y(9.8)92 b(Disapp)s(oin)m(tmen)m(ts)29 b(and)h(Misunderstandings)16 b Fr(.)c(.)j(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)46 b Fy(282)449 1097 y(9.9)92 b(Common)30 b(Misunderstandings)d(with)i(GNU)i(C)p Fq(++)c Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Fy(284)748 1206 y(9.9.1)93 b(Declare)31 b Fr(and)41 b Fy(De\014ne)30 b(Static)h(Mem)m(b)s(ers)20 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)50 b Fy(284)748 1316 y(9.9.2)93 b(T)-8 b(emp)s(oraries)29 b(Ma)m(y)i(V)-8 b(anish)30 b(Before)h(Y)-8 b(ou)31 b(Exp)s(ect)14 b Fr(.)h(.)g(.)g(.)43 b Fy(284)748 1425 y(9.9.3)93 b(Implicit)27 b(Cop)m(y-Assignmen)m(t)k (for)f(Virtual)f(Bases)f Fr(.)16 b(.)f(.)g(.)57 b Fy(285)449 1535 y(9.10)92 b(Ca)m(v)m(eats)33 b(of)d(using)f Fq(protoize)14 b Fr(.)f(.)i(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44 b Fy(286)449 1645 y(9.11)92 b(Certain)30 b(Changes)g(W)-8 b(e)32 b(Don't)f(W)-8 b(an)m(t)32 b(to)f(Mak)m(e)10 b Fr(.)16 b(.)f(.)g(.)g(.)g(.)g(.)h(.)f (.)g(.)g(.)g(.)g(.)g(.)39 b Fy(287)449 1754 y(9.12)92 b(W)-8 b(arning)30 b(Messages)i(and)e(Error)f(Messages)10 b Fr(.)18 b(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)40 b Fy(290)150 1997 y Fs(10)135 b(Rep)t(orting)46 b(Bugs)38 b Fu(.)19 b(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f (.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)82 b Fs(293)449 2134 y Fy(10.1)92 b(Ha)m(v)m(e)33 b(Y)-8 b(ou)31 b(F)-8 b(ound)30 b(a)g(Bug?)17 b Fr(.)f(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)47 b Fy(293)449 2243 y(10.2)92 b(Where)31 b(to)g(Rep)s(ort)f (Bugs)g Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)59 b Fy(294)449 2353 y(10.3)92 b(Ho)m(w)31 b(to)h(Rep)s(ort)e(Bugs)e Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)58 b Fy(294)449 2462 y(10.4)92 b(The)30 b(gccbug)h(script)18 b Fr(.)c(.)h(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)48 b Fy(297)150 2705 y Fs(11)135 b(Ho)l(w)46 b(T)-11 b(o)44 b(Get)h(Help)h(with)f(GCC)28 b Fu(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f (.)h(.)f(.)g(.)h(.)72 b Fs(299)150 2975 y(12)135 b(Con)l(tributing)46 b(to)f(GCC)g(Dev)l(elopmen)l(t)23 b Fu(.)e(.)f(.)f(.)h(.)f(.)67 b Fs(301)150 3244 y(13)135 b(Using)46 b(GCC)e(on)h(VMS)20 b Fu(.)e(.)i(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.) f(.)h(.)f(.)64 b Fs(303)449 3381 y Fy(13.1)92 b(Include)29 b(Files)h(and)f(VMS)24 b Fr(.)15 b(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)54 b Fy(303)449 3491 y(13.2)92 b(Global)30 b(Declarations)h(and)e(VMS)13 b Fr(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)42 b Fy(304)449 3601 y(13.3)92 b(Other)30 b(VMS)h(Issues)11 b Fr(.)j(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)41 b Fy(306)150 3843 y Fs(F)-11 b(unding)44 b(F)-11 b(ree)44 b(Soft)l(w)l(are)c Fu(.)19 b(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f (.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)82 b Fs(309)150 4113 y(The)44 b(GNU)i(Pro)7 b(ject)45 b(and)g(GNU/Lin)l (ux)29 b Fu(.)20 b(.)g(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)73 b Fs(311)150 4383 y(GNU)45 b(GENERAL)g(PUBLIC)g(LICENSE)26 b Fu(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)70 b Fs(313)449 4520 y Fy(Pream)m(ble)13 b Fr(.)i(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)43 b Fy(313)449 4629 y(TERMS)29 b(AND)j(CONDITIONS)d (F)m(OR)h(COPYING,)631 4739 y(DISTRIBUTION)f(AND)i(MODIFICA)-8 b(TION)29 b Fr(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)58 b Fy(314)449 4848 y(Ho)m(w)31 b(to)g(Apply)e(These)h(T)-8 b(erms)30 b(to)h(Y)-8 b(our)31 b(New)f(Programs)14 b Fr(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44 b Fy(318)150 5091 y Fs(GNU)h(F)-11 b(ree)45 b(Do)t(cumen)l(tation)h(License)28 b Fu(.)20 b(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)72 b Fs(321)449 5228 y Fy(ADDENDUM:)33 b(Ho)m(w)e(to)g(use)f(this)f (License)h(for)g(y)m(our)g(do)s(cumen)m(ts)11 b Fr(.)k(.)g(.)g(.)40 b Fy(327)p eop %%Page: -8 10 -8 9 bop 150 -116 a Fy(viii)1727 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 83 y Fs(Con)l(tributors)46 b(to)f(GCC)36 b Fu(.)19 b(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f (.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)80 b Fs(329)150 353 y(Option)45 b(Index)27 b Fu(.)19 b(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f (.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.) h(.)f(.)h(.)f(.)71 b Fs(337)150 623 y(Index)34 b Fu(.)20 b(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f (.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.) f(.)g(.)79 b Fs(347)p eop %%Page: 1 11 1 10 bop 150 -116 a Fy(In)m(tro)s(duction)3056 b(1)150 299 y Fv(In)l(tro)t(duction)275 533 y Fy(This)35 b(man)m(ual)h(do)s (cumen)m(ts)h(ho)m(w)g(to)h(use)f(the)h(GNU)f(compilers,)h(as)f(w)m (ell)f(as)i(their)e(features)i(and)150 643 y(incompatibilities,)21 b(and)j(ho)m(w)g(to)g(rep)s(ort)g(bugs.)37 b(It)24 b(corresp)s(onds)f (to)h(GCC)g(v)m(ersion)f(3.1.)40 b(The)23 b(in)m(ternals)150 752 y(of)36 b(the)g(GNU)g(compilers,)g(including)c(ho)m(w)k(to)h(p)s (ort)e(them)g(to)i(new)e(targets)i(and)e(some)i(information)150 862 y(ab)s(out)g(ho)m(w)f(to)i(write)e(fron)m(t)h(ends)f(for)h(new)f (languages,)j(are)e(do)s(cumen)m(ted)g(in)e(a)j(separate)f(man)m(ual.) 150 971 y(See)31 b(section)f(\\In)m(tro)s(duction")g(in)f Fn(GNU)i(Compiler)d(Collection)i(\(GCC\))g(In)m(ternals)t Fy(.)p eop %%Page: 2 12 2 11 bop 150 -116 a Fy(2)1808 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 3 13 3 12 bop 150 -116 a Fy(Chapter)30 b(1:)41 b(Compile)28 b(C,)j(C)p Fq(++)p Fy(,)e(Ob)5 b(jectiv)m(e-C,)31 b(Ada,)g(F)-8 b(ortran,)31 b(or)g(Ja)m(v)-5 b(a)997 b(3)150 141 y Fv(1)80 b(Compile)54 b(C,)f(C)p Fm(++)p Fv(,)g(Ob)9 b(jectiv)l(e-C,)52 b(Ada,)i(F)-13 b(ortran,)53 b(or)311 299 y(Ja)l(v)-9 b(a)275 533 y Fy(Sev)m(eral)43 b(v)m(ersions)g(of)g(the)h(compiler)e (\(C,)h(C)p Fq(++)p Fy(,)j(Ob)5 b(jectiv)m(e-C,)44 b(Ada,)j(F)-8 b(ortran,)47 b(and)c(Ja)m(v)-5 b(a\))45 b(are)150 643 y(in)m(tegrated;)c(this)36 b(is)g(wh)m(y)g(w)m(e)i(use)f(the)g(name)g (\\GNU)h(Compiler)c(Collection".)60 b(GCC)37 b(can)g(compile)150 752 y(programs)i(written)g(in)f(an)m(y)i(of)g(these)g(languages.)69 b(The)39 b(Ada,)k(F)-8 b(ortran,)43 b(and)c(Ja)m(v)-5 b(a)40 b(compilers)f(are)150 862 y(describ)s(ed)28 b(in)h(separate)j (man)m(uals.)275 996 y(\\GCC")26 b(is)f(a)h(common)g(shorthand)f(term)h (for)g(the)g(GNU)g(Compiler)e(Collection.)38 b(This)25 b(is)g(b)s(oth)g(the)150 1106 y(most)j(general)g(name)g(for)g(the)g (compiler,)f(and)g(the)h(name)g(used)f(when)g(the)h(emphasis)f(is)f(on) i(compiling)150 1215 y(C)i(programs)g(\(as)h(the)f(abbreviation)g (formerly)f(sto)s(o)s(d)h(for)g(\\GNU)h(C)f(Compiler"\).)275 1350 y(When)c(referring)f(to)i(C)p Fq(++)e Fy(compilation,)h(it)g(is)f (usual)g(to)i(call)f(the)g(compiler)f(\\G)p Fq(++)p Fy(".)40 b(Since)25 b(there)i(is)150 1460 y(only)d(one)h(compiler,)g(it)f(is)g (also)h(accurate)i(to)e(call)f(it)h(\\GCC")g(no)g(matter)h(what)e(the)i (language)f(con)m(text;)150 1569 y(ho)m(w)m(ev)m(er,)31 b(the)e(term)g(\\G)p Fq(++)p Fy(")h(is)e(more)i(useful)d(when)h(the)h (emphasis)f(is)g(on)h(compiling)e(C)p Fq(++)h Fy(programs.)275 1704 y(Similarly)-8 b(,)29 b(when)i(w)m(e)i(talk)f(ab)s(out)g(Ada)g (compilation,)f(w)m(e)i(usually)d(call)h(the)h(compiler)f(\\GNA)-8 b(T",)150 1813 y(for)30 b(the)h(same)f(reasons.)275 1948 y(W)-8 b(e)45 b(use)f(the)g(name)g(\\GCC")h(to)g(refer)e(to)i(the)g (compilation)d(system)i(as)h(a)f(whole,)j(and)d(more)150 2057 y(sp)s(eci\014cally)27 b(to)k(the)f(language-indep)s(enden)m(t)e (part)h(of)h(the)g(compiler.)39 b(F)-8 b(or)30 b(example,)g(w)m(e)g (refer)f(to)i(the)150 2167 y(optimization)c(options)h(as)g(a\013ecting) h(the)g(b)s(eha)m(vior)e(of)i(\\GCC")f(or)h(sometimes)f(just)g(\\the)h (compiler".)275 2301 y(F)-8 b(ron)m(t)29 b(ends)f(for)h(other)g (languages,)h(suc)m(h)e(as)h(Mercury)g(and)f(P)m(ascal)h(exist)g(but)f (ha)m(v)m(e)i(not)f(y)m(et)h(b)s(een)150 2411 y(in)m(tegrated)25 b(in)m(to)f(GCC.)39 b(These)24 b(fron)m(t)g(ends,)h(lik)m(e)f(that)h (for)f(C)p Fq(++)p Fy(,)h(are)g(built)d(in)h(sub)s(directories)f(of)i (GCC)150 2521 y(and)33 b(link)f(to)i(it.)50 b(The)34 b(result)e(is)h(an)h(in)m(tegrated)g(compiler)e(that)i(can)g(compile)f (programs)g(written)g(in)150 2630 y(C,)d(C)p Fq(++)p Fy(,)g(Ob)5 b(jectiv)m(e-C,)31 b(or)f(an)m(y)h(of)f(the)h(languages)g (for)f(whic)m(h)f(y)m(ou)h(ha)m(v)m(e)i(installed)c(fron)m(t)j(ends.) 275 2765 y(In)g(this)h(man)m(ual,)h(w)m(e)g(only)f(discuss)f(the)i (options)f(for)g(the)h(C,)g(Ob)5 b(jectiv)m(e-C,)33 b(and)f(C)p Fq(++)g Fy(compilers)150 2874 y(and)39 b(those)h(of)g(the)f(GCC)g (core.)69 b(Consult)38 b(the)i(do)s(cumen)m(tation)f(of)h(the)f(other)h (fron)m(t)g(ends)e(for)i(the)150 2984 y(options)30 b(to)h(use)f(when)f (compiling)f(programs)i(written)g(in)f(other)i(languages.)275 3118 y(G)p Fq(++)26 b Fy(is)g(a)h Fr(c)-5 b(ompiler)p Fy(,)30 b(not)d(merely)f(a)h(prepro)s(cessor.)39 b(G)p Fq(++)27 b Fy(builds)c(ob)5 b(ject)28 b(co)s(de)f(directly)f(from)g(y)m (our)150 3228 y(C)p Fq(++)37 b Fy(program)h(source.)65 b(There)37 b(is)g(no)i(in)m(termediate)e(C)h(v)m(ersion)g(of)g(the)h (program.)63 b(\(By)39 b(con)m(trast,)150 3337 y(for)31 b(example,)h(some)g(other)g(implemen)m(tations)e(use)h(a)h(program)f (that)h(generates)h(a)f(C)f(program)g(from)150 3447 y(y)m(our)j(C)p Fq(++)f Fy(source.\))52 b(Av)m(oiding)34 b(an)f(in)m(termediate)h(C)g (represen)m(tation)g(of)g(the)h(program)e(means)h(that)150 3557 y(y)m(ou)e(get)h(b)s(etter)e(ob)5 b(ject)33 b(co)s(de,)f(and)f(b)s (etter)g(debugging)g(information.)43 b(The)31 b(GNU)h(debugger,)g(GDB,) 150 3666 y(w)m(orks)e(with)e(this)h(information)f(in)h(the)h(ob)5 b(ject)31 b(co)s(de)f(to)h(giv)m(e)f(y)m(ou)g(comprehensiv)m(e)g(C)p Fq(++)f Fy(source-lev)m(el)150 3776 y(editing)g(capabilities)f(\(see)k (section)e(\\C)h(and)e(C)p Fq(++)p Fy(")h(in)f Fn(Debugging)i(with)e (GDB)5 b Fy(\).)p eop %%Page: 4 14 4 13 bop 150 -116 a Fy(4)1808 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 5 15 5 14 bop 150 -116 a Fy(Chapter)30 b(2:)41 b(Language)31 b(Standards)e(Supp)s(orted)f(b)m(y)j(GCC)1478 b(5)150 299 y Fv(2)80 b(Language)53 b(Standards)g(Supp)t(orted)f(b)l(y)h(GCC) 275 526 y Fy(F)-8 b(or)37 b(eac)m(h)g(language)g(compiled)d(b)m(y)j (GCC)e(for)h(whic)m(h)f(there)i(is)e(a)i(standard,)g(GCC)f(attempts)h (to)150 635 y(follo)m(w)32 b(one)h(or)g(more)g(v)m(ersions)f(of)h(that) h(standard,)f(p)s(ossibly)d(with)h(some)j(exceptions,)g(and)e(p)s (ossibly)150 745 y(with)d(some)i(extensions.)275 878 y(GCC)j(supp)s(orts)f(three)i(v)m(ersions)f(of)h(the)g(C)f(standard,)h (although)f(supp)s(ort)f(for)i(the)g(most)g(recen)m(t)150 988 y(v)m(ersion)30 b(is)f(not)i(y)m(et)g(complete.)275 1121 y(The)25 b(original)f(ANSI)h(C)h(standard)f(\(X3.159-1989\))30 b(w)m(as)c(rati\014ed)f(in)g(1989)i(and)e(published)d(in)j(1990.)150 1230 y(This)32 b(standard)g(w)m(as)i(rati\014ed)e(as)i(an)f(ISO)f (standard)h(\(ISO/IEC)f(9899:1990\))38 b(later)33 b(in)f(1990.)51 b(There)150 1340 y(w)m(ere)28 b(no)f(tec)m(hnical)h(di\013erences)e(b)s (et)m(w)m(een)j(these)e(publications,)f(although)h(the)h(sections)f(of) h(the)f(ANSI)150 1450 y(standard)40 b(w)m(ere)i(ren)m(um)m(b)s(ered)e (and)h(b)s(ecame)h(clauses)f(in)f(the)h(ISO)f(standard.)73 b(This)40 b(standard,)j(in)150 1559 y(b)s(oth)h(its)f(forms,)48 b(is)43 b(commonly)h(kno)m(wn)g(as)g Fn(C89)p Fy(,)49 b(or)44 b(o)s(ccasionally)g(as)g Fn(C90)p Fy(,)49 b(from)43 b(the)i(dates)g(of)150 1669 y(rati\014cation.)61 b(The)37 b(ANSI)f(standard,)j(but)d(not)i(the)f(ISO)g(standard,)h(also)f(came)h (with)e(a)i(Rationale)150 1778 y(do)s(cumen)m(t.)50 b(T)-8 b(o)34 b(select)g(this)f(standard)f(in)h(GCC,)g(use)g(one)h(of)g(the)g (options)e(`)p Fq(-ansi)p Fy(',)i(`)p Fq(-std=c89)p Fy(')e(or)150 1888 y(`)p Fq(-std=iso9899:1990)p Fy(';)j(to)i(obtain)e(all)g(the)h (diagnostics)f(required)g(b)m(y)h(the)g(standard,)h(y)m(ou)f(should)150 1998 y(also)27 b(sp)s(ecify)f(`)p Fq(-pedantic)p Fy(')f(\(or)i(`)p Fq(-pedantic-errors)p Fy(')c(if)j(y)m(ou)i(w)m(an)m(t)g(them)f(to)g(b)s (e)g(errors)f(rather)h(than)150 2107 y(w)m(arnings\).)40 b(See)30 b(Section)h(3.4)g([Options)e(Con)m(trolling)g(C)h(Dialect],)h (page)g(19.)275 2240 y(Errors)23 b(in)g(the)i(1990)h(ISO)e(C)g (standard)g(w)m(ere)h(corrected)h(in)d(t)m(w)m(o)j(T)-8 b(ec)m(hnical)24 b(Corrigenda)g(published)150 2350 y(in)29 b(1994)j(and)e(1996.)42 b(GCC)30 b(do)s(es)g(not)h(supp)s(ort)e(the)h (uncorrected)h(v)m(ersion.)275 2483 y(An)37 b(amendmen)m(t)g(to)h(the)g (1990)h(standard)e(w)m(as)h(published)33 b(in)k(1995.)63 b(This)36 b(amendmen)m(t)i(added)150 2592 y(digraphs)22 b(and)h Fq(__STDC_VERSION__)d Fy(to)k(the)h(language,)g(but)f (otherwise)f(concerned)h(the)g(library)-8 b(.)37 b(This)150 2702 y(amendmen)m(t)c(is)f(commonly)g(kno)m(wn)g(as)h Fn(AMD1)7 b Fy(;)36 b(the)d(amended)f(standard)g(is)g(sometimes)g(kno)m (wn)h(as)150 2812 y Fn(C94)h Fy(or)26 b Fn(C95)p Fy(.)40 b(T)-8 b(o)26 b(select)h(this)e(standard)h(in)e(GCC,)i(use)g(the)h (option)e(`)p Fq(-std=iso9899:199409)p Fy(')d(\(with,)150 2921 y(as)31 b(for)f(other)g(standard)g(v)m(ersions,)g(`)p Fq(-pedantic)p Fy(')e(to)j(receiv)m(e)h(all)d(required)f (diagnostics\).)275 3054 y(A)g(new)g(edition)f(of)i(the)g(ISO)e(C)h (standard)g(w)m(as)h(published)24 b(in)j(1999)k(as)d(ISO/IEC)g (9899:1999,)33 b(and)150 3164 y(is)k(commonly)g(kno)m(wn)g(as)h Fn(C99)p Fy(.)63 b(GCC)37 b(has)g(incomplete)g(supp)s(ort)f(for)h(this) g(standard)f(v)m(ersion;)41 b(see)150 3273 y Fq (http://gcc.gnu.org/gcc-3)o(.1/c)o(99st)o(atu)o(s.ht)o(ml)31 b Fy(for)36 b(details.)59 b(T)-8 b(o)37 b(select)h(this)d(standard,)j (use)150 3383 y(`)p Fq(-std=c99)p Fy(')22 b(or)i(`)p Fq(-std=iso9899:1999)p Fy('.)34 b(\(While)23 b(in)f(dev)m(elopmen)m(t,) k(drafts)d(of)h(this)f(standard)f(v)m(ersion)150 3493 y(w)m(ere)31 b(referred)e(to)j(as)e Fn(C9X)p Fy(.\))275 3626 y(Errors)24 b(in)h(the)h(1999)h(ISO)e(C)g(standard)g(w)m(ere)h (corrected)h(in)e(a)h(T)-8 b(ec)m(hnical)25 b(Corrigendum)f(published) 150 3735 y(in)29 b(2001.)43 b(GCC)29 b(do)s(es)i(not)f(supp)s(ort)f (the)h(uncorrected)h(v)m(ersion.)275 3868 y(GCC)25 b(also)g(has)g(some) h(limited)e(supp)s(ort)f(for)j(traditional)e(\(pre-ISO\))h(C)g(with)f (the)i(`)p Fq(-traditional)p Fy(')150 3978 y(option.)55 b(This)34 b(supp)s(ort)g(ma)m(y)i(b)s(e)f(of)g(use)g(for)g(compiling)f (some)i(v)m(ery)f(old)g(programs)g(that)h(ha)m(v)m(e)h(not)150 4088 y(b)s(een)c(up)s(dated)g(to)i(ISO)e(C,)h(but)g(should)e(not)i(b)s (e)g(used)f(for)h(new)g(programs.)52 b(It)34 b(will)e(not)i(w)m(ork)g (with)150 4197 y(some)d(mo)s(dern)e(C)h(libraries)d(suc)m(h)j(as)h(the) g(GNU)g(C)e(library)-8 b(.)275 4330 y(By)25 b(default,)g(GCC)g(pro)m (vides)f(some)i(extensions)e(to)i(the)f(C)g(language)g(that)h(on)f (rare)g(o)s(ccasions)g(con-)150 4440 y(\015ict)j(with)e(the)j(C)e (standard.)39 b(See)29 b(Chapter)e(5)i([Extensions)e(to)i(the)f(C)g (Language)h(F)-8 b(amily],)29 b(page)f(155.)150 4549 y(Use)g(of)g(the)h(`)p Fq(-std)p Fy(')e(options)g(listed)g(ab)s(o)m(v)m (e)i(will)c(disable)h(these)i(extensions)g(where)f(they)h(con\015ict)g (with)150 4659 y(the)f(C)f(standard)f(v)m(ersion)h(selected.)40 b(Y)-8 b(ou)27 b(ma)m(y)h(also)e(select)h(an)g(extended)f(v)m(ersion)g (of)h(the)f(C)h(language)150 4769 y(explicitly)d(with)h(`)p Fq(-std=gnu89)p Fy(')g(\(for)h(C89)h(with)e(GNU)i(extensions\))g(or)f (`)p Fq(-std=gnu99)p Fy(')f(\(for)h(C99)h(with)150 4878 y(GNU)i(extensions\).)40 b(The)29 b(default,)f(if)g(no)h(C)f(language)h (dialect)g(options)f(are)h(giv)m(en,)g(is)f(`)p Fq(-std=gnu89)p Fy(';)150 4988 y(this)h(will)e(c)m(hange)32 b(to)e(`)p Fq(-std=gnu99)p Fy(')e(in)h(some)h(future)g(release)g(when)f(the)h(C99) h(supp)s(ort)d(is)h(complete.)150 5097 y(Some)h(features)h(that)g(are)g (part)f(of)h(the)f(C99)h(standard)f(are)g(accepted)i(as)f(extensions)f (in)f(C89)h(mo)s(de.)275 5230 y(The)h(ISO)f(C)i(standard)f(de\014nes)f (\(in)h(clause)h(4\))g(t)m(w)m(o)h(classes)f(of)g(conforming)e (implemen)m(tation.)44 b(A)150 5340 y Fn(conforming)25 b(hosted)g(implemen)m(tation)g Fy(supp)s(orts)e(the)j(whole)f(standard) g(including)d(all)i(the)i(library)d(fa-)p eop %%Page: 6 16 6 15 bop 150 -116 a Fy(6)1808 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y(cilities;)24 b(a)g Fn(conforming)f (freestanding)g(implemen)m(tation)f Fy(is)h(only)g(required)f(to)j(pro) m(vide)e(certain)g(library)150 408 y(facilities:)55 b(those)39 b(in)e Fq()p Fy(,)h Fq()p Fy(,)f Fq()p Fy(,)h(and)g Fq()p Fy(;)i(since)d(AMD1,)150 518 y(also)31 b(those)g(in)e Fq()p Fy(;)f(and)i(in)g(C99,)h (also)g(those)g(in)e Fq()f Fy(and)i Fq()p Fy(.)39 b(In)30 b(ad-)150 628 y(dition,)22 b(complex)f(t)m(yp)s(es,)j (added)d(in)f(C99,)k(are)e(not)g(required)d(for)j(freestanding)e (implemen)m(tations.)36 b(The)150 737 y(standard)28 b(also)g(de\014nes) f(t)m(w)m(o)j(en)m(vironmen)m(ts)e(for)g(programs,)h(a)g Fn(freestanding)e(en)m(vironmen)m(t)p Fy(,)i(required)150 847 y(of)34 b(all)f(implemen)m(tations)f(and)h(whic)m(h)g(ma)m(y)h(not) g(ha)m(v)m(e)h(library)c(facilities)h(b)s(ey)m(ond)h(those)i(required)d (of)150 956 y(freestanding)e(implemen)m(tations,)f(where)h(the)h (handling)d(of)j(program)g(startup)f(and)g(termination)g(are)150 1066 y(implemen)m(tation-de\014ned,)f(and)i(a)g Fn(hosted)h(en)m (vironmen)m(t)p Fy(,)f(whic)m(h)f(is)g(not)h(required,)f(in)g(whic)m(h) g(all)g(the)150 1176 y(library)36 b(facilities)g(are)j(pro)m(vided)d (and)i(startup)g(is)f(through)g(a)i(function)e Fq(int)29 b(main)g(\(void\))37 b Fy(or)h Fq(int)150 1285 y(main)29 b(\(int,)g(char)g(*[]\))p Fy(.)71 b(An)40 b(OS)g(k)m(ernel)g(w)m(ould)f (b)s(e)h(a)h(freestanding)f(en)m(vironmen)m(t;)45 b(a)c(program)150 1395 y(using)29 b(the)h(facilities)f(of)i(an)f(op)s(erating)g(system)g (w)m(ould)f(normally)g(b)s(e)h(in)f(a)h(hosted)h(implemen)m(tation.)275 1529 y(GCC)c(aims)g(to)m(w)m(ards)i(b)s(eing)d(usable)h(as)h(a)h (conforming)e(freestanding)f(implemen)m(tation,)i(or)g(as)g(the)150 1639 y(compiler)19 b(for)h(a)h(conforming)f(hosted)h(implemen)m (tation.)36 b(By)21 b(default,)h(it)e(will)e(act)j(as)g(the)g(compiler) e(for)i(a)150 1748 y(hosted)g(implemen)m(tation,)h(de\014ning)e Fq(__STDC_HOSTED__)d Fy(as)k Fq(1)g Fy(and)g(presuming)e(that)j(when)f (the)g(names)150 1858 y(of)i(ISO)f(C)h(functions)f(are)h(used,)h(they)f (ha)m(v)m(e)i(the)e(seman)m(tics)g(de\014ned)f(in)g(the)h(standard.)38 b(T)-8 b(o)23 b(mak)m(e)h(it)f(act)150 1968 y(as)i(a)f(conforming)g (freestanding)f(implemen)m(tation)g(for)h(a)h(freestanding)e(en)m (vironmen)m(t,)j(use)e(the)g(option)150 2077 y(`)p Fq(-ffreestanding)p Fy(';)40 b(it)e(will)e(then)i(de\014ne)g Fq(__STDC_HOSTED__)d Fy(to)k Fq(0)g Fy(and)f(not)h(mak)m(e)h(assumptions)150 2187 y(ab)s(out)f(the)h(meanings)e(of)h(function)f(names)i(from)f(the)g (standard)g(library)-8 b(,)39 b(with)f(exceptions)i(noted)150 2296 y(b)s(elo)m(w.)h(T)-8 b(o)32 b(build)c(an)i(OS)g(k)m(ernel,)h(y)m (ou)h(ma)m(y)f(w)m(ell)f(still)f(need)h(to)i(mak)m(e)g(y)m(our)f(o)m (wn)g(arrangemen)m(ts)g(for)150 2406 y(linking)d(and)h(startup.)41 b(See)30 b(Section)g(3.4)i([Options)d(Con)m(trolling)g(C)h(Dialect],)h (page)g(19.)275 2540 y(GCC)26 b(do)s(es)g(not)g(pro)m(vide)g(the)h (library)d(facilities)g(required)h(only)g(of)i(hosted)f(implemen)m (tations,)g(nor)150 2650 y(y)m(et)36 b(all)e(the)h(facilities)e (required)g(b)m(y)i(C99)g(of)h(freestanding)d(implemen)m(tations;)j(to) g(use)f(the)g(facilities)150 2760 y(of)29 b(a)g(hosted)g(en)m(vironmen) m(t,)g(y)m(ou)g(will)e(need)h(to)i(\014nd)d(them)i(elsewhere)f(\(for)h (example,)g(in)f(the)h(GNU)g(C)150 2869 y(library\).)39 b(See)30 b(Section)g(9.7)i([Standard)d(Libraries],)g(page)i(282.)275 3004 y(Most)i(of)f(the)h(compiler)e(supp)s(ort)f(routines)h(used)h(b)m (y)g(GCC)g(are)h(presen)m(t)f(in)f(`)p Fq(libgcc)p Fy(',)h(but)g(there) 150 3113 y(are)25 b(a)f(few)g(exceptions.)39 b(GCC)24 b(requires)f(the)h(freestanding)f(en)m(vironmen)m(t)h(pro)m(vide)g Fq(memcpy)p Fy(,)g Fq(memmove)p Fy(,)150 3223 y Fq(memset)h Fy(and)h Fq(memcmp)p Fy(.)38 b(Some)27 b(older)f(p)s(orts)g(of)h(GCC)f (are)h(con\014gured)f(to)i(use)e(the)h(BSD)g Fq(bcopy)p Fy(,)f Fq(bzero)150 3333 y Fy(and)36 b Fq(bcmp)f Fy(functions)g (instead,)i(but)e(this)h(is)f(deprecated)i(for)f(new)f(p)s(orts.)58 b(Finally)-8 b(,)37 b(if)e Fq(__builtin_)150 3442 y(trap)d Fy(is)h(used,)g(and)g(the)g(target)i(do)s(es)e(not)h(implemen)m(t)e (the)h Fq(trap)f Fy(pattern,)j(then)e(GCC)g(will)e(emit)i(a)150 3552 y(call)d(to)h Fq(abort)p Fy(.)275 3686 y(F)-8 b(or)22 b(references)g(to)h(T)-8 b(ec)m(hnical)21 b(Corrigenda,)i(Rationale)f (do)s(cumen)m(ts)f(and)g(information)g(concerning)150 3796 y(the)31 b(history)e(of)h(C)g(that)h(is)f(a)m(v)-5 b(ailable)29 b(online,)g(see)i Fq(http://gcc.gnu.org/reading)o(s.h)o (tml)275 3930 y Fy(There)36 b(is)g(no)g(formal)g(written)g(standard)g (for)h(Ob)5 b(jectiv)m(e-C.)60 b(The)36 b(most)h(authoritativ)m(e)h (man)m(ual)150 4040 y(is)32 b(\\Ob)5 b(ject-Orien)m(ted)34 b(Programming)e(and)h(the)g(Ob)5 b(jectiv)m(e-C)34 b(Language",)i(a)m (v)-5 b(ailable)32 b(at)j(a)e(n)m(um)m(b)s(er)150 4149 y(of)27 b(w)m(eb)f(sites;)i Fq(http://developer.apple.co)o(m/t)o(echp)o (ubs/)o(mac)o(osx/)o(Coco)o(a/O)o(bjec)o(tive)o(C/)20 b Fy(has)27 b(a)150 4259 y(recen)m(t)37 b(v)m(ersion,)f(while)e Fq(http://www.toodarkpark.o)o(rg/c)o(ompu)o(ter)o(s/ob)o(jc/)29 b Fy(is)35 b(an)g(older)g(exam-)150 4369 y(ple.)40 b Fq(http://www.gnustep.org)24 b Fy(includes)k(useful)h(information)f(as) j(w)m(ell.)275 4503 y(See)20 b(section)h(\\Ab)s(out)f(This)e(Guide")i (in)f Fn(GNA)-8 b(T)21 b(Reference)g(Man)m(ual)t Fy(,)h(for)e (information)f(on)h(standard)150 4613 y(conformance)31 b(and)f(compatibilit)m(y)e(of)j(the)f(Ada)h(compiler.)275 4747 y(See)22 b(section)h(\\The)f(GNU)h(F)-8 b(ortran)23 b(Language")h(in)d Fn(Using)h(and)f(P)m(orting)i(GNU)g(F)-8 b(ortran)p Fy(,)25 b(for)d(details)150 4857 y(of)31 b(the)f(F)-8 b(ortran)31 b(language)g(supp)s(orted)d(b)m(y)j(GCC.)275 4991 y(See)e(section)h(\\Compatibilit)m(y)d(with)h(the)i(Ja)m(v)-5 b(a)30 b(Platform")g(in)e Fn(GNU)i(gcj)s Fy(,)g(for)f(details)g(of)h (compati-)150 5101 y(bilit)m(y)e(b)s(et)m(w)m(een)j Fq(gcj)f Fy(and)g(the)g(Ja)m(v)-5 b(a)32 b(Platform.)p eop %%Page: 7 17 7 16 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f(Options) 2103 b(7)150 299 y Fv(3)80 b(GCC)53 b(Command)f(Options)275 516 y Fy(When)27 b(y)m(ou)h(in)m(v)m(ok)m(e)h(GCC,)e(it)g(normally)f (do)s(es)i(prepro)s(cessing,)e(compilation,)h(assem)m(bly)h(and)f (link-)150 626 y(ing.)65 b(The)38 b(\\o)m(v)m(erall)i(options")e(allo)m (w)g(y)m(ou)h(to)h(stop)f(this)e(pro)s(cess)i(at)g(an)g(in)m (termediate)f(stage.)67 b(F)-8 b(or)150 736 y(example,)29 b(the)f(`)p Fq(-c)p Fy(')g(option)g(sa)m(ys)h(not)f(to)h(run)e(the)i (link)m(er.)38 b(Then)27 b(the)i(output)f(consists)f(of)i(ob)5 b(ject)29 b(\014les)150 845 y(output)h(b)m(y)g(the)h(assem)m(bler.)275 976 y(Other)i(options)g(are)i(passed)f(on)f(to)i(one)g(stage)g(of)f (pro)s(cessing.)51 b(Some)34 b(options)f(con)m(trol)i(the)f(pre-)150 1086 y(pro)s(cessor)26 b(and)f(others)i(the)f(compiler)f(itself.)38 b(Y)-8 b(et)27 b(other)g(options)e(con)m(trol)i(the)f(assem)m(bler)g (and)f(link)m(er;)150 1196 y(most)31 b(of)f(these)h(are)g(not)f(do)s (cumen)m(ted)h(here,)f(since)g(y)m(ou)g(rarely)g(need)g(to)h(use)f(an)m (y)h(of)g(them.)275 1327 y(Most)25 b(of)g(the)f(command)g(line)f (options)h(that)h(y)m(ou)g(can)g(use)f(with)f(GCC)h(are)h(useful)e(for) h(C)g(programs;)150 1436 y(when)35 b(an)h(option)f(is)g(only)g(useful)f (with)g(another)i(language)h(\(usually)d(C)p Fq(++)p Fy(\),)i(the)g(explanation)f(sa)m(ys)150 1546 y(so)30 b(explicitly)-8 b(.)38 b(If)30 b(the)f(description)f(for)i(a)g (particular)e(option)h(do)s(es)g(not)h(men)m(tion)f(a)h(source)g (language,)150 1655 y(y)m(ou)h(can)f(use)g(that)h(option)f(with)f(all)h (supp)s(orted)e(languages.)275 1787 y(See)36 b(Section)f(3.3)i ([Compiling)c(C)p Fq(++)i Fy(Programs],)i(page)g(19,)h(for)e(a)g (summary)e(of)i(sp)s(ecial)f(options)150 1896 y(for)30 b(compiling)e(C)p Fq(++)i Fy(programs.)275 2027 y(The)c Fq(gcc)g Fy(program)g(accepts)i(options)e(and)g(\014le)g(names)h(as)g (op)s(erands.)38 b(Man)m(y)27 b(options)f(ha)m(v)m(e)i(m)m(ulti-)150 2137 y(letter)41 b(names;)47 b(therefore)41 b(m)m(ultiple)e (single-letter)h(options)g(ma)m(y)i Fr(not)50 b Fy(b)s(e)40 b(group)s(ed:)61 b(`)p Fq(-dr)p Fy(')41 b(is)f(v)m(ery)150 2247 y(di\013eren)m(t)30 b(from)g(`)p Fq(-d)g(-r)p Fy(')o(.)275 2378 y(Y)-8 b(ou)27 b(can)h(mix)e(options)h(and)g(other)g(argumen)m (ts.)40 b(F)-8 b(or)29 b(the)e(most)h(part,)g(the)f(order)g(y)m(ou)h (use)f(do)s(esn't)150 2487 y(matter.)46 b(Order)30 b(do)s(es)i(matter)h (when)d(y)m(ou)i(use)g(sev)m(eral)g(options)f(of)h(the)g(same)g(kind;)f (for)h(example,)g(if)150 2597 y(y)m(ou)f(sp)s(ecify)e(`)p Fq(-L)p Fy(')h(more)h(than)f(once,)h(the)g(directories)e(are)i(searc)m (hed)g(in)e(the)h(order)g(sp)s(eci\014ed.)275 2728 y(Man)m(y)71 b(options)g(ha)m(v)m(e)h(long)f(names)g(starting)g(with)f(`)p Fq(-f)p Fy(')h(or)g(with)f(`)p Fq(-W)p Fy('|for)h(example,)150 2838 y(`)p Fq(-fforce-mem)p Fy(',)46 b(`)p Fq(-fstrength-reduce)p Fy(',)e(`)p Fq(-Wformat)p Fy(')f(and)h(so)h(on.)83 b(Most)46 b(of)f(these)g(ha)m(v)m(e)h(b)s(oth)150 2947 y(p)s(ositiv)m(e)g(and)g (negativ)m(e)h(forms;)55 b(the)46 b(negativ)m(e)i(form)e(of)h(`)p Fq(-ffoo)p Fy(')f(w)m(ould)f(b)s(e)h(`)p Fq(-fno-foo)p Fy('.)88 b(This)150 3057 y(man)m(ual)30 b(do)s(cumen)m(ts)g(only)f(one) i(of)f(these)h(t)m(w)m(o)h(forms,)e(whic)m(hev)m(er)g(one)h(is)e(not)i (the)f(default.)275 3188 y(See)g([Option)f(Index],)i(page)g(337,)h(for) e(an)g(index)f(to)i(GCC's)f(options.)150 3435 y Fs(3.1)68 b(Option)45 b(Summary)275 3625 y Fy(Here)26 b(is)e(a)i(summary)e(of)i (all)e(the)i(options,)g(group)s(ed)e(b)m(y)i(t)m(yp)s(e.)39 b(Explanations)24 b(are)i(in)e(the)h(follo)m(wing)150 3734 y(sections.)150 3887 y Fr(Over)-5 b(al)5 b(l)33 b(Options)630 3997 y Fy(See)e(Section)f(3.2)h([Options)e(Con)m (trolling)g(the)i(Kind)d(of)i(Output],)g(page)h(16.)965 4122 y Fq(-c)48 b(-S)f(-E)g(-o)g Fn(\014le)52 b Fq(-pipe)47 b(-pass-exit-codes)c(-x)k Fn(language)918 4226 y Fq(-v)g(-###)g (--target-help)d(--help)150 4379 y Fr(C)33 b(L)-5 b(anguage)33 b(Options)630 4488 y Fy(See)e(Section)f(3.4)h([Options)e(Con)m (trolling)g(C)h(Dialect],)h(page)g(19.)965 4614 y Fq(-ansi)47 b(-std=)p Fn(standard)i Fq(-aux-info)c Fn(\014lename)918 4717 y Fq(-fno-asm)g(-fno-builtin)g(-fno-builtin-)p Fn(function)918 4821 y Fq(-fhosted)g(-ffreestanding)918 4925 y(-trigraphs)g (-no-integrated-cpp)e(-traditional)h(-traditional-cpp)918 5029 y(-fallow-single-precisio)o(n)e(-fcond-mismatch)918 5132 y(-fsigned-bitfields)h(-fsigned-char)918 5236 y (-funsigned-bitfields)f(-funsigned-char)918 5340 y(-fwritable-strings)h (-fshort-wchar)p eop %%Page: 8 18 8 17 bop 150 -116 a Fy(8)1808 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fr(C)p Fq(++)i Fr(L)-5 b(anguage)33 b(Options)630 408 y Fy(See)e(Section)f(3.5)h([Options)e (Con)m(trolling)g(C)p Fq(++)g Fy(Dialect],)j(page)f(24.)965 535 y Fq(-fno-access-control)43 b(-fcheck-new)i(-fconserve-space)918 639 y(-fno-const-strings)e(-fdollars-in-identifier)o(s)918 742 y(-fno-elide-constructors)918 846 y(-fno-enforce-eh-specs)f (-fexternal-templates)918 950 y(-falt-external-template)o(s)918 1054 y(-ffor-scope)i(-fno-for-scope)g(-fno-gnu-keywords)918 1158 y(-fno-implicit-templates)918 1261 y(-fno-implicit-inline-te)o (mpla)o(tes)918 1365 y(-fno-implement-inlines)d(-fms-extensions)918 1469 y(-fno-nonansi-builtins)h(-fno-operator-names)918 1573 y(-fno-optional-diags)g(-fpermissive)918 1676 y(-frepo)k (-fno-rtti)f(-fstats)h(-ftemplate-depth-)p Fn(n)918 1780 y Fq(-fuse-cxa-atexit)d(-fvtable-gc)i(-fno-weak)g(-nostdinc++)918 1884 y(-fno-default-inline)d(-Wctor-dtor-privacy)918 1988 y(-Wnon-virtual-dtor)h(-Wreorder)918 2092 y(-Weffc++)i (-Wno-deprecated)918 2195 y(-Wno-non-template-frien)o(d)d (-Wold-style-cast)918 2299 y(-Woverloaded-virtual)g (-Wno-pmf-conversions)918 2403 y(-Wsign-promo)i(-Wsynth)150 2558 y Fr(Obje)-5 b(ctive-C)31 b(L)-5 b(anguage)33 b(Options)630 2667 y Fy(See)e(Section)f(3.6)h([Options)e(Con)m(trolling)g(Ob)5 b(jectiv)m(e-C)31 b(Dialect],)g(page)g(30.)965 2794 y Fq(-fconstant-string-class=)p Fn(class-name)918 2898 y Fq(-fgnu-runtime)44 b(-fnext-runtime)g(-gen-decls)918 3001 y(-Wno-protocol)g(-Wselector)150 3156 y Fr(L)-5 b(anguage)33 b(Indep)-5 b(endent)34 b(Options)630 3266 y Fy(See)29 b(Section)g(3.7)h([Options)e(to)h(Con)m(trol)g(Diagnostic)g (Messages)i(F)-8 b(ormatting],)30 b(page)g(31.)965 3392 y Fq(-fmessage-length=)p Fn(n)918 3496 y Fq(-fdiagnostics-show-loca)o (tion)o(=)p Fy([)p Fq(once)o(|ev)o(ery-)o(line)o Fy(])150 3651 y Fr(Warning)j(Options)630 3761 y Fy(See)e(Section)f(3.8)h ([Options)e(to)j(Request)e(or)h(Suppress)d(W)-8 b(arnings],)30 b(page)h(31.)965 3887 y Fq(-fsyntax-only)45 b(-pedantic)g (-pedantic-errors)918 3991 y(-w)i(-W)g(-Wall)f(-Waggregate-return)918 4095 y(-Wcast-align)e(-Wcast-qual)h(-Wchar-subscripts)e(-Wcomment)918 4198 y(-Wconversion)h(-Wno-deprecated-declarati)o(ons)918 4302 y(-Wdisabled-optimization)d(-Wdiv-by-zero)j(-Werror)918 4406 y(-Wfloat-equal)g(-Wformat)h(-Wformat=2)918 4510 y(-Wformat-nonliteral)d(-Wformat-security)918 4614 y(-Wimplicit)j (-Wimplicit-int)918 4717 y(-Wimplicit-function-dec)o(lara)o(tion)918 4821 y(-Werror-implicit-functi)o(on-d)o(ecla)o(rat)o(ion)918 4925 y(-Wimport)g(-Winline)918 5029 y(-Wlarger-than-)p Fn(len)e Fq(-Wlong-long)918 5132 y(-Wmain)j(-Wmissing-braces)d (-Wmissing-declarations)918 5236 y(-Wmissing-format-attrib)o(ute)e (-Wmissing-noreturn)918 5340 y(-Wmultichar)j(-Wno-format-extra-args)e (-Wno-format-y2k)p eop %%Page: 9 19 9 18 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f(Options) 2103 b(9)918 299 y Fq(-Wno-import)44 b(-Wpacked)i(-Wpadded)918 403 y(-Wparentheses)e(-Wpointer-arith)g(-Wredundant-decls)918 506 y(-Wreturn-type)g(-Wsequence-point)f(-Wshadow)918 610 y(-Wsign-compare)h(-Wswitch)h(-Wsystem-headers)918 714 y(-Wtrigraphs)f(-Wundef)i(-Wuninitialized)918 818 y(-Wunknown-pragmas)d(-Wunreachable-code)918 922 y(-Wunused)i (-Wunused-function)e(-Wunused-label)h(-Wunused-parameter)918 1025 y(-Wunused-value)g(-Wunused-variable)f(-Wwrite-strings)150 1173 y Fr(C-only)33 b(Warning)g(Options)965 1258 y Fq (-Wbad-function-cast)43 b(-Wmissing-prototypes)f(-Wnested-externs)918 1362 y(-Wstrict-prototypes)g(-Wtraditional)150 1510 y Fr(Debugging)31 b(Options)630 1619 y Fy(See)g(Section)f(3.9)h([Options) e(for)i(Debugging)f(Y)-8 b(our)30 b(Program)h(or)f(GCC],)h(page)g(43.) 965 1742 y Fq(-d)p Fn(letters)52 b Fq(-dumpspecs)45 b(-dumpmachine)f (-dumpversion)918 1846 y(-fdump-unnumbered)f(-fdump-translation-unit)p Fy([)p Fq(-)p Fn(n)o Fy(])918 1950 y Fq(-fdump-class-hierarchy)p Fy([)p Fq(-)p Fn(n)o Fy(])918 2054 y Fq(-fdump-tree-original)p Fy([)p Fq(-)p Fn(n)p Fy(])f Fq(-fdump-tree-optimized)p Fy([)p Fq(-)p Fn(n)o Fy(])918 2157 y Fq(-fdump-tree-inlined)p Fy([)p Fq(-)p Fn(n)p Fy(])918 2261 y Fq(-fmem-report)i(-fpretend-float) 918 2365 y(-fprofile-arcs)g(-ftest-coverage)f(-ftime-report)918 2469 y(-g)k(-g)p Fn(lev)m(el)j Fq(-gcoff)d(-gdwarf)e(-gdwarf-1)h (-gdwarf-1+)f(-gdwarf-2)918 2572 y(-ggdb)h(-gstabs)g(-gstabs+)f(-gvms)i (-gxcoff)f(-gxcoff+)918 2676 y(-p)h(-pg)g(-print-file-name=)p Fn(lib)o(rary)i Fq(-print-libgcc-file-name)918 2780 y (-print-multi-directory)41 b(-print-multi-lib)918 2884 y(-print-prog-name=)p Fn(program)i Fq(-print-search-dirs)f(-Q)918 2988 y(-save-temps)i(-time)150 3136 y Fr(Optimization)34 b(Options)630 3245 y Fy(See)d(Section)f(3.10)i([Options)d(that)i(Con)m (trol)f(Optimization],)f(page)i(50.)965 3368 y Fq(-falign-functions=)p Fn(n)43 b Fq(-falign-jumps=)p Fn(n)918 3472 y Fq(-falign-labels=)p Fn(n)g Fq(-falign-loops=)p Fn(n)918 3576 y Fq(-fbranch-probabilities)e (-fcaller-saves)j(-fcprop-registers)918 3680 y(-fcse-follow-jumps)f (-fcse-skip-blocks)g(-fdata-sections)918 3783 y(-fdelayed-branch)g (-fdelete-null-pointer-che)o(cks)918 3887 y(-fexpensive-optimizatio)o (ns)f(-ffast-math)i(-ffloat-store)918 3991 y(-fforce-addr)g (-fforce-mem)h(-ffunction-sections)918 4095 y(-fgcse)h(-fgcse-lm)f (-fgcse-sm)918 4198 y(-finline-functions)e(-finline-limit=)p Fn(n)g Fq(-fkeep-inline-functions)918 4302 y(-fkeep-static-consts)f (-fmerge-constants)h(-fmerge-all-constants)918 4406 y (-fmove-all-movables)f(-fno-default-inline)h(-fno-defer-pop)918 4510 y(-fno-function-cse)g(-fno-guess-branch-probab)o(ili)o(ty)918 4614 y(-fno-inline)h(-fno-math-errno)g(-fno-peephole)g(-fno-peephole2) 918 4717 y(-funsafe-math-optimizat)o(ions)d(-fno-trapping-math)918 4821 y(-fomit-frame-pointer)h(-foptimize-register-move)918 4925 y(-foptimize-sibling-call)o(s)g(-fprefetch-loop-arrays)918 5029 y(-freduce-all-givs)h(-fregmove)i(-frename-registers)918 5132 y(-frerun-cse-after-loop)c(-frerun-loop-opt)918 5236 y(-fschedule-insns)i(-fschedule-insns2)918 5340 y(-fsingle-precision-cons)o(tant)e(-fssa)46 b(-fssa-ccp)g(-fssa-dce)p eop %%Page: 10 20 10 19 bop 150 -116 a Fy(10)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))918 299 y Fq(-fstrength-reduce)43 b(-fstrict-aliasing)g(-fthread-jumps)h(-ftrapv)918 403 y(-funroll-all-loops)f(-funroll-loops)918 506 y(--param)j Fn(name)5 b Fq(=)p Fn(v)-5 b(alue)52 b Fq(-O)47 b(-O0)g(-O1)g(-O2)g (-O3)g(-Os)150 665 y Fr(Pr)-5 b(epr)g(o)g(c)g(essor)36 b(Options)630 775 y Fy(See)31 b(Section)f(3.11)i([Options)d(Con)m (trolling)f(the)j(Prepro)s(cessor],)f(page)h(61.)965 903 y Fq(-$)48 b(-A)p Fn(question)p Fq(=)p Fn(answ)m(er)k Fq(-A-)p Fn(question)p Fy([)p Fq(=)p Fn(answ)m(er)7 b Fy(])918 1007 y Fq(-C)47 b(-dD)g(-dI)g(-dM)g(-dN)918 1111 y(-D)p Fn(macro)5 b Fy([)p Fq(=)p Fn(defn)p Fy(])47 b Fq(-E)g(-H)918 1214 y(-idirafter)e Fn(dir)918 1318 y Fq(-include)g Fn(\014le)52 b Fq(-imacros)46 b Fn(\014le)918 1422 y Fq(-iprefix)f Fn(\014le)52 b Fq(-iwithprefix)45 b Fn(dir)918 1526 y Fq(-iwithprefixbefore)e Fn(dir)52 b Fq(-isystem)46 b Fn(dir)918 1630 y Fq(-M)h(-MM)g(-MF)g(-MG)g(-MP)g (-MQ)f(-MT)h(-nostdinc)f(-P)h(-remap)918 1733 y(-trigraphs)e(-undef)h (-U)p Fn(macro)52 b Fq(-Wp,)p Fn(option)150 1892 y Fr(Assembler)33 b(Option)630 2002 y Fy(See)e(Section)f(3.12)i([P)m(assing)e(Options)f (to)i(the)g(Assem)m(bler],)f(page)h(68.)965 2130 y Fq(-Wa,)p Fn(option)150 2289 y Fr(Linker)i(Options)630 2398 y Fy(See)e(Section)f (3.13)i([Options)d(for)h(Linking],)f(page)i(68.)965 2527 y Fn(ob)5 b(ject-\014le-name)54 b Fq(-l)p Fn(library)918 2630 y Fq(-nostartfiles)44 b(-nodefaultlibs)g(-nostdlib)918 2734 y(-s)j(-static)f(-static-libgcc)e(-shared)h(-shared-libgcc)f (-symbolic)918 2838 y(-Wl,)p Fn(option)i Fq(-Xlinker)f Fn(option)918 2942 y Fq(-u)i Fn(sym)m(b)s(ol)150 3100 y Fr(Dir)-5 b(e)g(ctory)34 b(Options)630 3210 y Fy(See)d(Section)f (3.14)i([Options)d(for)h(Directory)h(Searc)m(h],)g(page)g(71.)965 3338 y Fq(-B)p Fn(pre\014x)53 b Fq(-I)p Fn(dir)f Fq(-I-)47 b(-L)p Fn(dir)52 b Fq(-specs=)p Fn(\014le)150 3497 y Fr(T)-7 b(ar)i(get)34 b(Options)630 3607 y Fy(See)d(Section)f(3.16)i ([T)-8 b(arget)32 b(Options],)d(page)i(79.)965 3735 y Fq(-b)48 b Fn(mac)m(hine)k Fq(-V)47 b Fn(v)m(ersion)150 3894 y Fr(Machine)33 b(Dep)-5 b(endent)33 b(Options)630 4003 y Fy(See)e(Section)f(3.17)i([Hardw)m(are)f(Mo)s(dels)e(and)h (Con\014gurations],)f(page)j(80.)630 4137 y Fr(M680x0)i(Options)965 4266 y Fq(-m68000)46 b(-m68020)g(-m68020-40)f(-m68020-60)g(-m68030)h (-m68040)918 4370 y(-m68060)g(-mcpu32)f(-m5200)h(-m68881)g(-mbitfield)f (-mc68000)h(-mc68020)918 4473 y(-mfpa)g(-mnobitfield)f(-mrtd)h(-mshort) g(-msoft-float)e(-mpcrel)918 4577 y(-malign-int)g(-mstrict-align)630 4711 y Fr(M68hc1x)34 b(Options)965 4840 y Fq(-m6811)47 b(-m6812)f(-m68hc11)f(-m68hc12)918 4943 y(-mauto-incdec)f(-mshort)i (-msoft-reg-count=)p Fn(coun)m(t)630 5077 y Fr(V)-9 b(AX)31 b(Options)965 5206 y Fq(-mg)47 b(-mgnu)g(-munix)630 5340 y Fr(SP)-7 b(AR)n(C)32 b(Options)p eop %%Page: 11 21 11 20 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(11)965 299 y Fq(-mcpu=)p Fn(cpu-t)m(yp)s(e)918 403 y Fq(-mtune=)p Fn(cpu-t)m(yp)s(e)918 506 y Fq(-mcmodel=)p Fn(co)s(de-mo)s(del)918 610 y Fq(-m32)46 b(-m64)918 714 y(-mapp-regs)f(-mbroken-saverestore)d(-mcypress)918 818 y(-mfaster-structs)h(-mflat)918 922 y(-mfpu)j(-mhard-float)f (-mhard-quad-float)918 1025 y(-mimpure-text)f(-mlive-g0)h (-mno-app-regs)918 1129 y(-mno-faster-structs)d(-mno-flat)k(-mno-fpu) 918 1233 y(-mno-impure-text)d(-mno-stack-bias)h(-mno-unaligned-doubles) 918 1337 y(-msoft-float)g(-msoft-quad-float)f(-msparclite)i (-mstack-bias)918 1440 y(-msupersparc)f(-munaligned-doubles)f(-mv8)630 1570 y Fr(Convex)33 b(Options)965 1694 y Fq(-mc1)47 b(-mc2)g(-mc32)f (-mc34)g(-mc38)918 1798 y(-margcount)f(-mnoargcount)918 1901 y(-mlong32)g(-mlong64)918 2005 y(-mvolatile-cache)e (-mvolatile-nocache)630 2135 y Fr(AMD29K)32 b(Options)965 2259 y Fq(-m29000)46 b(-m29050)g(-mbw)h(-mnbw)f(-mdw)h(-mndw)918 2362 y(-mlarge)f(-mnormal)f(-msmall)918 2466 y(-mkernel-registers)e (-mno-reuse-arg-regs)918 2570 y(-mno-stack-check)g(-mno-storem-bug)918 2674 y(-mreuse-arg-regs)g(-msoft-float)i(-mstack-check)918 2778 y(-mstorem-bug)f(-muser-registers)630 2907 y Fr(ARM)32 b(Options)965 3031 y Fq(-mapcs-frame)45 b(-mno-apcs-frame)918 3135 y(-mapcs-26)g(-mapcs-32)918 3239 y(-mapcs-stack-check)e (-mno-apcs-stack-check)918 3342 y(-mapcs-float)h(-mno-apcs-float)918 3446 y(-mapcs-reentrant)f(-mno-apcs-reentrant)918 3550 y(-msched-prolog)h(-mno-sched-prolog)918 3654 y(-mlittle-endian)f (-mbig-endian)i(-mwords-little-endian)918 3757 y(-malignment-traps)e (-mno-alignment-traps)918 3861 y(-msoft-float)h(-mhard-float)h(-mfpe) 918 3965 y(-mthumb-interwork)e(-mno-thumb-interwork)918 4069 y(-mcpu=)p Fn(name)51 b Fq(-march=)p Fn(name)g Fq(-mfpe=)p Fn(name)918 4173 y Fq(-mstructure-size-bounda)o(ry=)p Fn(n)918 4276 y Fq(-mbsd)46 b(-mxopen)g(-mno-symrename)918 4380 y(-mabort-on-noreturn)918 4484 y(-mlong-calls)e(-mno-long-calls) 918 4588 y(-msingle-pic-base)f(-mno-single-pic-base)918 4691 y(-mpic-register=)p Fn(reg)918 4795 y Fq(-mnop-fun-dllimport)918 4899 y(-mpoke-function-name)918 5003 y(-mthumb)j(-marm)918 5107 y(-mtpcs-frame)e(-mtpcs-leaf-frame)918 5210 y (-mcaller-super-interwor)o(king)d(-mcallee-super-interworki)o(ng)630 5340 y Fr(MN10200)34 b(Options)p eop %%Page: 12 22 12 21 bop 150 -116 a Fy(12)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))965 299 y Fq(-mrelax)630 439 y Fr(MN10300)k(Options)965 573 y Fq(-mmult-bug)45 b(-mno-mult-bug)918 677 y(-mam33)h(-mno-am33)918 781 y(-mno-crt0)f(-mrelax)630 921 y Fr(M32R/D)33 b(Options)965 1055 y Fq(-m32rx)47 b(-m32r)f(-mcode-model=)p Fn(mo)s(del-t)m(yp)s(e)j Fq(-msdata=)p Fn(sdata-t)m(yp)s(e)918 1159 y Fq(-G)e Fn(n)m(um)630 1299 y Fr(M88K)33 b(Options)965 1434 y Fq(-m88000)46 b(-m88100)g(-m88110)g(-mbig-pic)918 1537 y(-mcheck-zero-division)c (-mhandle-large-shift)918 1641 y(-midentify-revision)g (-mno-check-zero-division)918 1745 y(-mno-ocs-debug-info)g (-mno-ocs-frame-position)918 1849 y(-mno-optimize-arg-area)f (-mno-serialize-volatile)918 1953 y(-mno-underscores)i (-mocs-debug-info)918 2056 y(-mocs-frame-position)f (-moptimize-arg-area)918 2160 y(-mserialize-volatile)g(-mshort-data-)p Fn(n)m(um)h Fq(-msvr3)918 2264 y(-msvr4)j(-mtrap-large-shift)d (-muse-div-instruction)918 2368 y(-mversion-03.00)g (-mwarn-passed-structs)630 2508 y Fr(RS/6000)35 b(and)f(PowerPC)f (Options)965 2642 y Fq(-mcpu=)p Fn(cpu-t)m(yp)s(e)918 2746 y Fq(-mtune=)p Fn(cpu-t)m(yp)s(e)918 2850 y Fq(-mpower)46 b(-mno-power)f(-mpower2)g(-mno-power2)918 2954 y(-mpowerpc)g (-mpowerpc64)g(-mno-powerpc)918 3057 y(-maltivec)g(-mno-altivec)918 3161 y(-mpowerpc-gpopt)e(-mno-powerpc-gpopt)918 3265 y(-mpowerpc-gfxopt)g(-mno-powerpc-gfxopt)918 3369 y(-mnew-mnemonics)g (-mold-mnemonics)918 3472 y(-mfull-toc)i(-mminimal-toc)f (-mno-fp-in-toc)g(-mno-sum-in-toc)918 3576 y(-m64)i(-m32)h(-mxl-call)e (-mno-xl-call)g(-mpe)918 3680 y(-msoft-float)f(-mhard-float)h (-mmultiple)g(-mno-multiple)918 3784 y(-mstring)g(-mno-string)g (-mupdate)h(-mno-update)918 3888 y(-mfused-madd)e(-mno-fused-madd)g (-mbit-align)h(-mno-bit-align)918 3991 y(-mstrict-align)f (-mno-strict-align)f(-mrelocatable)918 4095 y(-mno-relocatable)g (-mrelocatable-lib)g(-mno-relocatable-lib)918 4199 y(-mtoc)j(-mno-toc)g (-mlittle)f(-mlittle-endian)f(-mbig)i(-mbig-endian)918 4303 y(-mcall-aix)f(-mcall-sysv)f(-mcall-netbsd)918 4406 y(-maix-struct-return)e(-msvr4-struct-return)h(-mabi=altivec)h (-mabi=no-altivec)p 4354 4406 42 56 v 918 4510 a(-mprototype)g (-mno-prototype)918 4614 y(-msim)i(-mmvme)g(-mads)h(-myellowknife)d (-memb)i(-msdata)918 4718 y(-msdata=)p Fn(opt)i Fq(-mvxworks)d(-G)i Fn(n)m(um)g Fq(-pthread)630 4858 y Fr(R)-7 b(T)33 b(Options)965 4992 y Fq(-mcall-lib-mul)44 b(-mfp-arg-in-fpregs)f(-mfp-arg-in-gregs) 918 5096 y(-mfull-fp-blocks)g(-mhc-struct-return)g(-min-line-mul)918 5200 y(-mminimum-fp-blocks)f(-mnohc-struct-return)630 5340 y Fr(MIPS)32 b(Options)p eop %%Page: 13 23 13 22 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(13)965 299 y Fq(-mabicalls)45 b(-march=)p Fn(cpu-t)m(yp)s(e)51 b Fq(-mtune=)p Fn(cpu=t)m(yp)s(e)918 403 y Fq(-mcpu=)p Fn(cpu-t)m(yp)s(e)g Fq(-membedded-data)43 b(-muninit-const-in-rodata)918 506 y(-membedded-pic)h(-mfp32)i(-mfp64)g (-mfused-madd)e(-mno-fused-madd)918 610 y(-mgas)i(-mgp32)g(-mgp64)918 714 y(-mgpopt)g(-mhalf-pic)f(-mhard-float)f(-mint64)i(-mips1)918 818 y(-mips2)g(-mips3)g(-mips4)g(-mlong64)g(-mlong32)f(-mlong-calls)g (-mmemcpy)918 922 y(-mmips-as)g(-mmips-tfile)f(-mno-abicalls)918 1025 y(-mno-embedded-data)f(-mno-uninit-const-in-ro)o(dat)o(a)918 1129 y(-mno-embedded-pic)g(-mno-gpopt)i(-mno-long-calls)918 1233 y(-mno-memcpy)f(-mno-mips-tfile)g(-mno-rnames)h(-mno-stats)918 1337 y(-mrnames)g(-msoft-float)918 1440 y(-m4650)h(-msingle-float)e (-mmad)918 1544 y(-mstats)i(-EL)g(-EB)h(-G)h Fn(n)m(um)f Fq(-nocpp)918 1648 y(-mabi=32)e(-mabi=n32)h(-mabi=64)f(-mabi=eabi)918 1752 y(-mfix7000)g(-mno-crt0)g(-mflush-func=)p Fn(func)k Fq(-mno-flush-func)630 1881 y Fr(i386)34 b(and)f(x86-64)h(Options)965 2005 y Fq(-mcpu=)p Fn(cpu-t)m(yp)s(e)52 b Fq(-march=)p Fn(cpu-t)m(yp)s(e)e Fq(-mfpmath=)p Fn(unit)918 2109 y Fq(-masm=)p Fn(dialect)d Fq(-mno-fancy-math-387)918 2213 y(-mno-fp-ret-in-387)c(-msoft-float)h(-msvr3-shlib)918 2317 y(-mno-wide-multiply)f(-mrtd)j(-malign-double)918 2420 y(-mpreferred-stack-bound)o(ary=)o Fn(n)m(um)918 2524 y Fq(-mmmx)g(-msse)g(-msse2)h(-msse-math)e(-m3dnow)918 2628 y(-mthreads)g(-mno-align-stringops)d(-minline-all-stringops)918 2732 y(-mpush-args)i(-maccumulate-outgoing-args)d(-m128bit-long-double) 918 2835 y(-m96bit-long-double)h(-mregparm=)p Fn(n)m(um)i Fq(-momit-leaf-frame-pointer)918 2939 y(-mno-red-zone)918 3043 y(-m32)i(-m64)630 3173 y Fr(HPP)-7 b(A)31 b(Options)965 3296 y Fq(-march=)p Fn(arc)m(hitecture-t)m(yp)s(e)918 3400 y Fq(-mbig-switch)44 b(-mdisable-fpregs)g(-mdisable-indexing)918 3504 y(-mfast-indirect-calls)e(-mgas)k(-mjump-in-delay)918 3608 y(-mlong-load-store)d(-mno-big-switch)g(-mno-disable-fpregs)918 3712 y(-mno-disable-indexing)f(-mno-fast-indirect-call)o(s)g(-mno-gas) 918 3815 y(-mno-jump-in-delay)h(-mno-long-load-store)918 3919 y(-mno-portable-runtime)f(-mno-soft-float)918 4023 y(-mno-space-regs)h(-msoft-float)i(-mpa-risc-1-0)918 4127 y(-mpa-risc-1-1)f(-mpa-risc-2-0)g(-mportable-runtime)918 4230 y(-mschedule=)p Fn(cpu-t)m(yp)s(e)49 b Fq(-mspace-regs)630 4360 y Fr(Intel)33 b(960)h(Options)965 4484 y Fq(-m)p Fn(cpu-t)m(yp)s(e)53 b Fq(-masm-compat)44 b(-mclean-linkage)918 4588 y(-mcode-align)g(-mcomplex-addr)g(-mleaf-procedures)918 4691 y(-mic-compat)g(-mic2.0-compat)g(-mic3.0-compat)918 4795 y(-mintel-asm)g(-mno-clean-linkage)f(-mno-code-align)918 4899 y(-mno-complex-addr)g(-mno-leaf-procedures)918 5003 y(-mno-old-align)h(-mno-strict-align)f(-mno-tail-call)918 5107 y(-mnumerics)i(-mold-align)f(-msoft-float)h(-mstrict-align)918 5210 y(-mtail-call)630 5340 y Fr(DEC)32 b(A)n(lpha)h(Options)p eop %%Page: 14 24 14 23 bop 150 -116 a Fy(14)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))965 299 y Fq(-mno-fp-regs)45 b(-msoft-float)f (-malpha-as)h(-mgas)918 403 y(-mieee)h(-mieee-with-inexact)c (-mieee-conformant)918 506 y(-mfp-trap-mode=)p Fn(mo)s(de)48 b Fq(-mfp-rounding-mode=)p Fn(mo)s(de)918 610 y Fq(-mtrap-precision=)p Fn(mo)s(de)g Fq(-mbuild-constants)918 714 y(-mcpu=)p Fn(cpu-t)m(yp)s(e)j Fq(-mtune=)p Fn(cpu-t)m(yp)s(e)918 818 y Fq(-mbwx)46 b(-mmax)g(-mfix)h(-mcix)918 922 y(-mfloat-vax)d (-mfloat-ieee)918 1025 y(-mexplicit-relocs)f(-msmall-data)h (-mlarge-data)918 1129 y(-mmemory-latency=)p Fn(time)630 1268 y Fr(DEC)32 b(A)n(lpha/VMS)h(Options)965 1401 y Fq(-mvms-return-codes)630 1540 y Fr(Clipp)-5 b(er)34 b(Options)965 1673 y Fq(-mc300)47 b(-mc400)630 1812 y Fr(H8/300)34 b(Options)965 1945 y Fq(-mrelax)46 b(-mh)h(-ms)g(-mint32)f (-malign-300)630 2083 y Fr(SH)32 b(Options)965 2217 y Fq(-m1)47 b(-m2)g(-m3)g(-m3e)918 2320 y(-m4-nofpu)e(-m4-single-only)f (-m4-single)h(-m4)918 2424 y(-m5-64media)f(-m5-64media-nofpu)918 2528 y(-m5-32media)g(-m5-32media-nofpu)918 2632 y(-m5-compact)g (-m5-compact-nofpu)918 2735 y(-mb)j(-ml)g(-mdalign)e(-mrelax)918 2839 y(-mbigtable)g(-mfmovd)h(-mhitachi)f(-mnomacsave)918 2943 y(-mieee)h(-misize)g(-mpadstruct)e(-mspace)918 3047 y(-mprefergot)g(-musermode)630 3186 y Fr(System)33 b(V)f(Options)965 3319 y Fq(-Qy)47 b(-Qn)g(-YP,)p Fn(paths)j Fq(-Ym,)p Fn(dir)630 3457 y Fr(AR)n(C)32 b(Options)965 3590 y Fq(-EB)47 b(-EL)918 3694 y(-mmangle-cpu)d(-mcpu=)p Fn(cpu)i Fq(-mtext=)p Fn(text-section)918 3798 y Fq(-mdata=)p Fn(data-section)h Fq(-mrodata=)p Fn(readonly-data-section)630 3937 y Fr(TMS320C3x/C4x)35 b(Options)965 4070 y Fq(-mcpu=)p Fn(cpu)46 b Fq(-mbig)g(-msmall)g (-mregparm)f(-mmemparm)918 4174 y(-mfast-fix)g(-mmpyi)h(-mbk)g(-mti)h (-mdp-isr-reload)918 4277 y(-mrpts=)p Fn(coun)m(t)h Fq(-mrptb)e(-mdb)h (-mloop-unsigned)918 4381 y(-mparallel-insns)c(-mparallel-mpy)h (-mpreserve-float)630 4520 y Fr(V850)33 b(Options)965 4653 y Fq(-mlong-calls)45 b(-mno-long-calls)f(-mep)i(-mno-ep)918 4757 y(-mprolog-function)d(-mno-prolog-function)f(-mspace)918 4861 y(-mtda=)p Fn(n)j Fq(-msda=)p Fn(n)h Fq(-mzda=)p Fn(n)918 4964 y Fq(-mv850)g(-mbig-switch)630 5103 y Fr(NS32K)33 b(Options)965 5236 y Fq(-m32032)46 b(-m32332)g(-m32532)g(-m32081)g (-m32381)918 5340 y(-mmult-add)f(-mnomult-add)f(-msoft-float)h(-mrtd)h (-mnortd)p eop %%Page: 15 25 15 24 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(15)918 299 y Fq(-mregparam)45 b(-mnoregparam)f(-msb)j (-mnosb)918 403 y(-mbitfield)e(-mnobitfield)f(-mhimem)i(-mnohimem)630 543 y Fr(A)-9 b(VR)32 b(Options)965 678 y Fq(-mmcu=)p Fn(mcu)46 b Fq(-msize)g(-minit-stack=)p Fn(n)e Fq(-mno-interrupts)918 782 y(-mcall-prologues)f(-mno-tablejump)h(-mtiny-stack)630 922 y Fr(MCor)-5 b(e)33 b(Options)965 1057 y Fq(-mhardlit)46 b(-mno-hardlit)e(-mdiv)j(-mno-div)e(-mrelax-immediates)918 1161 y(-mno-relax-immediates)d(-mwide-bitfields)h(-mno-wide-bitfields) 918 1265 y(-m4byte-functions)g(-mno-4byte-functions)f(-mcallgraph-data) 918 1368 y(-mno-callgraph-data)g(-mslow-bytes)j(-mno-slow-bytes)e (-mno-lsim)918 1472 y(-mlittle-endian)g(-mbig-endian)i(-m210)h(-m340)h (-mstack-increment)630 1613 y Fr(MMIX)31 b(Options)965 1747 y Fq(-mlibfuncs)45 b(-mno-libfuncs)g(-mepsilon)g(-mno-epsilon)f (-mabi=gnu)918 1851 y(-mabi=mmixware)g(-mzero-extend)g(-mknuthdiv)h (-mtoplevel-symbols)918 1955 y(-melf)h(-mbranch-predict)d (-mno-branch-predict)g(-mbase-addresses)918 2059 y(-mno-base-addresses) 630 2199 y Fr(IA-64)33 b(Options)965 2334 y Fq(-mbig-endian)45 b(-mlittle-endian)f(-mgnu-as)h(-mgnu-ld)h(-mno-pic)918 2438 y(-mvolatile-asm-stop)c(-mb-step)k(-mregister-names)d(-mno-sdata) 918 2542 y(-mconstant-gp)h(-mauto-pic)h(-minline-divide-min-late)o(ncy) 918 2645 y(-minline-divide-max-thr)o(ough)o(put)c(-mno-dwarf2-asm)918 2749 y(-mfixed-range=)p Fn(register-range)630 2890 y Fr(D30V)33 b(Options)965 3024 y Fq(-mextmem)46 b(-mextmemory)f (-monchip)g(-mno-asm-optimize)e(-masm-optimize)p 3972 3045 42 76 v 918 3128 a(-mbranch-cost=)p Fn(n)g Fq(-mcond-exec=)p Fn(n)630 3269 y Fr(S/390)34 b(and)g(zSeries)f(Options)965 3404 y Fq(-mhard-float)45 b(-msoft-float)f(-mbackchain)h (-mno-backchain)918 3507 y(-msmall-exec)f(-mno-small-exec)g(-mmvcle)i (-mno-mvcle)918 3611 y(-m64)g(-m31)h(-mdebug)f(-mno-debug)630 3752 y Fr(CRIS)33 b(Options)965 3886 y Fq(-mcpu=)p Fn(cpu)46 b Fq(-march=)p Fn(cpu)f Fq(-mtune=)p Fn(cpu)918 3990 y Fq(-mmax-stack-frame=)p Fn(n)d Fq(-melinux-stacksize=)p Fn(n)918 4094 y Fq(-metrax4)j(-metrax100)g(-mpdebug)h(-mcc-init)f (-mno-side-effects)918 4198 y(-mstack-align)f(-mdata-align)g (-mconst-align)918 4301 y(-m32-bit)h(-m16-bit)h(-m8-bit)g (-mno-prologue-epilogue)41 b(-mno-gotplt)918 4405 y(-melf)46 b(-maout)g(-melinux)g(-mlinux)g(-sim)g(-sim2)630 4546 y Fr(PDP-11)32 b(Options)965 4681 y Fq(-mfpu)47 b(-msoft-float)d(-mac0) j(-mno-ac0)e(-m40)i(-m45)f(-m10)918 4784 y(-mbcopy)g(-mbcopy-builtin)d (-mint32)j(-mno-int16)918 4888 y(-mint16)g(-mno-int32)f(-mfloat32)g (-mno-float64)918 4992 y(-mfloat64)g(-mno-float32)f(-mabshi)i (-mno-abshi)918 5096 y(-mbranch-expensive)d(-mbranch-cheap)918 5199 y(-msplit)j(-mno-split)f(-munix-asm)g(-mdec-asm)630 5340 y Fr(Xstormy16)35 b(Options)p eop %%Page: 16 26 16 25 bop 150 -116 a Fy(16)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))965 299 y Fq(-msim)630 429 y Fr(Xtensa)j(Options) 965 553 y Fq(-mbig-endian)45 b(-mlittle-endian)918 657 y(-mdensity)g(-mno-density)918 760 y(-mmac16)h(-mno-mac16)918 864 y(-mmul16)g(-mno-mul16)918 968 y(-mmul32)g(-mno-mul32)918 1072 y(-mnsa)g(-mno-nsa)918 1176 y(-mminmax)f(-mno-minmax)918 1279 y(-msext)h(-mno-sext)918 1383 y(-mbooleans)f(-mno-booleans)918 1487 y(-mhard-float)f(-msoft-float)918 1591 y(-mfused-madd)g (-mno-fused-madd)918 1694 y(-mserialize-volatile)e (-mno-serialize-volatile)918 1798 y(-mtext-section-literals)f (-mno-text-section-literal)o(s)918 1902 y(-mtarget-align)j (-mno-target-align)918 2006 y(-mlongcalls)g(-mno-longcalls)150 2156 y Fr(Co)-5 b(de)34 b(Gener)-5 b(ation)34 b(Options)630 2266 y Fy(See)d(Section)f(3.18)i([Options)d(for)h(Co)s(de)g(Generation) g(Con)m(v)m(en)m(tions],)i(page)f(140.)965 2390 y Fq(-fcall-saved-)p Fn(reg)53 b Fq(-fcall-used-)p Fn(reg)918 2494 y Fq(-ffixed-)p Fn(reg)h Fq(-fexceptions)918 2597 y(-fnon-call-exceptions)42 b(-funwind-tables)918 2701 y(-fasynchronous-unwind-t)o(able)o(s)918 2805 y(-finhibit-size-directiv)o(e)g(-finstrument-functions)918 2909 y(-fno-common)i(-fno-ident)h(-fno-gnu-linker)918 3012 y(-fpcc-struct-return)d(-fpic)47 b(-fPIC)918 3116 y(-freg-struct-return)42 b(-fshared-data)i(-fshort-enums)918 3220 y(-fshort-double)g(-fvolatile)918 3324 y(-fvolatile-global)f (-fvolatile-static)918 3428 y(-fverbose-asm)h(-fpack-struct)g (-fstack-check)918 3531 y(-fstack-limit-register=)o Fn(reg)50 b Fq(-fstack-limit-symbol=)p Fn(sym)918 3635 y Fq(-fargument-alias)43 b(-fargument-noalias)918 3739 y(-fargument-noalias-glob)o(al)f (-fleading-underscore)150 3983 y Fs(3.2)68 b(Options)45 b(Con)l(trolling)i(the)e(Kind)g(of)g(Output)275 4171 y Fy(Compilation)27 b(can)j(in)m(v)m(olv)m(e)f(up)f(to)j(four)d (stages:)42 b(prepro)s(cessing,)28 b(compilation)g(prop)s(er,)g(assem)m (bly)150 4280 y(and)42 b(linking,)g(alw)m(a)m(ys)h(in)e(that)i(order.) 75 b(The)42 b(\014rst)f(three)i(stages)g(apply)e(to)i(an)f(individual)c (source)150 4390 y(\014le,)31 b(and)g(end)g(b)m(y)g(pro)s(ducing)e(an)j (ob)5 b(ject)32 b(\014le;)f(linking)e(com)m(bines)i(all)f(the)i(ob)5 b(ject)32 b(\014les)f(\(those)h(newly)150 4499 y(compiled,)d(and)h (those)h(sp)s(eci\014ed)d(as)j(input\))e(in)m(to)h(an)g(executable)h (\014le.)275 4629 y(F)-8 b(or)25 b(an)m(y)f(giv)m(en)g(input)f(\014le,) h(the)h(\014le)e(name)h(su\016x)g(determines)f(what)h(kind)e(of)j (compilation)e(is)g(done:)150 4780 y Fn(\014le)p Fq(.c)267 b Fy(C)30 b(source)g(co)s(de)h(whic)m(h)e(m)m(ust)h(b)s(e)g(prepro)s (cessed.)150 4930 y Fn(\014le)p Fq(.i)267 b Fy(C)30 b(source)g(co)s(de) h(whic)m(h)e(should)g(not)h(b)s(e)g(prepro)s(cessed.)150 5080 y Fn(\014le)p Fq(.ii)219 b Fy(C)p Fq(++)29 b Fy(source)i(co)s(de)g (whic)m(h)e(should)f(not)j(b)s(e)e(prepro)s(cessed.)150 5230 y Fn(\014le)p Fq(.m)267 b Fy(Ob)5 b(jectiv)m(e-C)26 b(source)h(co)s(de.)39 b(Note)28 b(that)e(y)m(ou)h(m)m(ust)f(link)e (with)h(the)h(library)e(`)p Fq(libobjc.a)p Fy(')630 5340 y(to)31 b(mak)m(e)g(an)g(Ob)5 b(jectiv)m(e-C)30 b(program)g(w)m(ork.)p eop %%Page: 17 27 17 26 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(17)150 299 y Fn(\014le)p Fq(.mi)219 b Fy(Ob)5 b(jectiv)m(e-C)31 b(source)f(co)s(de)h(whic)m(h)e(should)f(not) j(b)s(e)f(prepro)s(cessed.)150 447 y Fn(\014le)p Fq(.h)267 b Fy(C)30 b(header)g(\014le)g(\(not)h(to)g(b)s(e)e(compiled)g(or)i (link)m(ed\).)150 595 y Fn(\014le)p Fq(.cc)150 704 y Fn(\014le)p Fq(.cp)150 814 y Fn(\014le)p Fq(.cxx)150 923 y Fn(\014le)p Fq(.cpp)150 1033 y Fn(\014le)p Fq(.c++)150 1143 y Fn(\014le)p Fq(.C)267 b Fy(C)p Fq(++)27 b Fy(source)h(co)s(de)h (whic)m(h)d(m)m(ust)i(b)s(e)g(prepro)s(cessed.)39 b(Note)29 b(that)g(in)d(`)p Fq(.cxx)p Fy(',)i(the)h(last)f(t)m(w)m(o)630 1252 y(letters)j(m)m(ust)f(b)s(oth)f(b)s(e)h(literally)e(`)p Fq(x)p Fy('.)41 b(Lik)m(ewise,)30 b(`)p Fq(.C)p Fy(')g(refers)g(to)h(a) g(literal)e(capital)h(C.)150 1400 y Fn(\014le)p Fq(.f)150 1510 y Fn(\014le)p Fq(.for)150 1619 y Fn(\014le)p Fq(.FOR)171 b Fy(F)-8 b(ortran)31 b(source)g(co)s(de)f(whic)m(h)f(should)g(not)h(b) s(e)g(prepro)s(cessed.)150 1767 y Fn(\014le)p Fq(.F)150 1877 y Fn(\014le)p Fq(.fpp)150 1986 y Fn(\014le)p Fq(.FPP)171 b Fy(F)-8 b(ortran)33 b(source)g(co)s(de)g(whic)m(h)e(m)m(ust)h(b)s(e)g (prepro)s(cessed)g(\(with)f(the)i(traditional)e(prepro-)630 2096 y(cessor\).)150 2244 y Fn(\014le)p Fq(.r)267 b Fy(F)-8 b(ortran)27 b(source)g(co)s(de)g(whic)m(h)f(m)m(ust)g(b)s(e)g(prepro)s (cessed)g(with)f(a)j(RA)-8 b(TF)m(OR)27 b(prepro)s(cessor)630 2354 y(\(not)k(included)d(with)h(GCC\).)630 2482 y(See)39 b(section)h(\\Options)e(Con)m(trolling)f(the)j(Kind)d(of)i(Output")f (in)g Fn(Using)g(and)h(P)m(orting)630 2592 y(GNU)31 b(F)-8 b(ortran)p Fy(,)31 b(for)f(more)h(details)e(of)i(the)f(handling)e(of)j (F)-8 b(ortran)31 b(input)d(\014les.)150 2740 y Fn(\014le)p Fq(.ads)171 b Fy(Ada)29 b(source)h(co)s(de)f(\014le)g(whic)m(h)e(con)m (tains)j(a)g(library)c(unit)i(declaration)h(\(a)h(declaration)f(of)630 2849 y(a)g(pac)m(k)-5 b(age,)30 b(subprogram,)e(or)g(generic,)h(or)f(a) h(generic)f(instan)m(tiation\),)g(or)g(a)h(library)c(unit)630 2959 y(renaming)20 b(declaration)h(\(a)h(pac)m(k)-5 b(age,)25 b(generic,)f(or)d(subprogram)f(renaming)g(declaration\).)630 3069 y(Suc)m(h)30 b(\014les)f(are)i(also)f(called)g Fn(sp)s(ecs)p Fy(.)150 3178 y Fn(\014le)p Fq(.adb)171 b Fy(Ada)32 b(source)h(co)s(de) g(\014le)e(con)m(taining)h(a)h(library)d(unit)h(b)s(o)s(dy)f(\(a)k (subprogram)d(or)h(pac)m(k)-5 b(age)630 3288 y(b)s(o)s(dy\).)40 b(Suc)m(h)29 b(\014les)h(are)g(also)h(called)e Fn(b)s(o)s(dies)p Fy(.)150 3436 y Fn(\014le)p Fq(.s)267 b Fy(Assem)m(bler)30 b(co)s(de.)150 3584 y Fn(\014le)p Fq(.S)267 b Fy(Assem)m(bler)30 b(co)s(de)g(whic)m(h)f(m)m(ust)i(b)s(e)e(prepro)s(cessed.)150 3731 y Fn(other)273 b Fy(An)28 b(ob)5 b(ject)30 b(\014le)e(to)h(b)s(e)f (fed)g(straigh)m(t)h(in)m(to)g(linking.)37 b(An)m(y)29 b(\014le)f(name)h(with)e(no)i(recognized)630 3841 y(su\016x)g(is)h (treated)h(this)e(w)m(a)m(y)-8 b(.)275 4008 y(Y)g(ou)30 b(can)h(sp)s(ecify)e(the)i(input)d(language)j(explicitly)d(with)h(the)h (`)p Fq(-x)p Fy(')h(option:)150 4156 y Fq(-x)f Fn(language)630 4266 y Fy(Sp)s(ecify)e(explicitly)e(the)k Fn(language)k Fy(for)29 b(the)h(follo)m(wing)e(input)f(\014les)h(\(rather)h(than)g (letting)630 4375 y(the)c(compiler)d(c)m(ho)s(ose)k(a)e(default)g (based)g(on)g(the)h(\014le)e(name)h(su\016x\).)38 b(This)23 b(option)h(applies)630 4485 y(to)f(all)e(follo)m(wing)f(input)g (\014les)h(un)m(til)g(the)h(next)g(`)p Fq(-x)p Fy(')g(option.)37 b(P)m(ossible)21 b(v)-5 b(alues)22 b(for)g Fn(language)630 4594 y Fy(are:)870 4717 y Fq(c)95 b(c-header)e(cpp-output)870 4821 y(c++)i(c++-cpp-output)870 4925 y(objective-c)d(objc-cpp-output) 870 5029 y(assembler)h(assembler-with-cpp)870 5132 y(ada)870 5236 y(f77)i(f77-cpp-input)d(ratfor)870 5340 y(java)p eop %%Page: 18 28 18 27 bop 150 -116 a Fy(18)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-x)g(none)162 b Fy(T)-8 b(urn)35 b(o\013)h(an)m(y)h(sp)s(eci\014cation)e(of)h(a)h(language,)h (so)f(that)g(subsequen)m(t)e(\014les)g(are)i(handled)630 408 y(according)f(to)h(their)e(\014le)h(name)g(su\016xes)f(\(as)i(they) f(are)h(if)e(`)p Fq(-x)p Fy(')h(has)g(not)g(b)s(een)g(used)f(at)630 518 y(all\).)150 684 y Fq(-pass-exit-codes)630 794 y Fy(Normally)42 b(the)g Fq(gcc)g Fy(program)h(will)d(exit)j(with)e(the)i (co)s(de)g(of)g(1)g(if)e(an)m(y)i(phase)g(of)g(the)630 903 y(compiler)23 b(returns)g(a)h(non-success)h(return)e(co)s(de.)39 b(If)23 b(y)m(ou)i(sp)s(ecify)e(`)p Fq(-pass-exit-codes)p Fy(',)630 1013 y(the)37 b Fq(gcc)e Fy(program)i(will)d(instead)i (return)f(with)g(n)m(umerically)g(highest)g(error)i(pro)s(duced)630 1123 y(b)m(y)30 b(an)m(y)h(phase)f(that)h(returned)e(an)h(error)g (indication.)275 1292 y(If)24 b(y)m(ou)h(only)f(w)m(an)m(t)i(some)f(of) g(the)g(stages)h(of)f(compilation,)g(y)m(ou)g(can)g(use)f(`)p Fq(-x)p Fy(')h(\(or)g(\014lename)f(su\016xes\))150 1402 y(to)34 b(tell)e Fq(gcc)g Fy(where)g(to)i(start,)g(and)e(one)h(of)g (the)h(options)e(`)p Fq(-c)p Fy(',)h(`)p Fq(-S)p Fy(',)h(or)f(`)p Fq(-E)p Fy(')g(to)g(sa)m(y)h(where)e Fq(gcc)g Fy(is)g(to)150 1511 y(stop.)52 b(Note)35 b(that)g(some)f(com)m(binations)g(\(for)g (example,)h(`)p Fq(-x)30 b(cpp-output)d(-E)p Fy('\))34 b(instruct)f Fq(gcc)g Fy(to)i(do)150 1621 y(nothing)29 b(at)i(all.)150 1790 y Fq(-c)384 b Fy(Compile)27 b(or)i(assem)m(ble)f (the)h(source)g(\014les,)f(but)g(do)h(not)g(link.)38 b(The)28 b(linking)e(stage)k(simply)630 1900 y(is)c(not)i(done.)39 b(The)27 b(ultimate)g(output)g(is)f(in)g(the)i(form)f(of)g(an)g(ob)5 b(ject)29 b(\014le)d(for)h(eac)m(h)i(source)630 2010 y(\014le.)630 2148 y(By)g(default,)f(the)g(ob)5 b(ject)30 b(\014le)d(name)h(for)h(a)f(source)h(\014le)e(is)h(made)g(b)m(y)g (replacing)f(the)i(su\016x)630 2257 y(`)p Fq(.c)p Fy(',)i(`)p Fq(.i)p Fy(',)f(`)p Fq(.s)p Fy(',)h(etc.,)h(with)d(`)p Fq(.o)p Fy('.)630 2395 y(Unrecognized)h(input)f(\014les,)g(not)i (requiring)d(compilation)h(or)h(assem)m(bly)-8 b(,)31 b(are)f(ignored.)150 2561 y Fq(-S)384 b Fy(Stop)32 b(after)i(the)f (stage)h(of)f(compilation)e(prop)s(er;)i(do)f(not)h(assem)m(ble.)48 b(The)32 b(output)g(is)g(in)630 2671 y(the)f(form)e(of)i(an)f(assem)m (bler)g(co)s(de)h(\014le)e(for)h(eac)m(h)i(non-assem)m(bler)e(input)e (\014le)h(sp)s(eci\014ed.)630 2809 y(By)36 b(default,)g(the)g(assem)m (bler)f(\014le)f(name)i(for)f(a)h(source)f(\014le)g(is)g(made)g(b)m(y)g (replacing)g(the)630 2918 y(su\016x)29 b(`)p Fq(.c)p Fy(',)i(`)p Fq(.i)p Fy(',)f(etc.,)i(with)d(`)p Fq(.s)p Fy('.)630 3056 y(Input)g(\014les)g(that)i(don't)g(require)e (compilation)g(are)h(ignored.)150 3222 y Fq(-E)384 b Fy(Stop)26 b(after)g(the)h(prepro)s(cessing)d(stage;)29 b(do)d(not)g(run)f(the)h(compiler)f(prop)s(er.)38 b(The)25 b(output)630 3332 y(is)e(in)h(the)g(form)g(of)h(prepro)s(cessed)e (source)i(co)s(de,)h(whic)m(h)d(is)h(sen)m(t)h(to)g(the)f(standard)g (output.)630 3470 y(Input)29 b(\014les)g(whic)m(h)g(don't)i(require)e (prepro)s(cessing)g(are)h(ignored.)150 3636 y Fq(-o)g Fn(\014le)237 b Fy(Place)35 b(output)g(in)e(\014le)h Fn(\014le)p Fy(.)53 b(This)33 b(applies)g(regardless)h(to)i(whatev)m (er)f(sort)g(of)g(output)g(is)630 3746 y(b)s(eing)f(pro)s(duced,)h (whether)g(it)f(b)s(e)h(an)g(executable)h(\014le,)g(an)f(ob)5 b(ject)36 b(\014le,)g(an)f(assem)m(bler)630 3855 y(\014le)29 b(or)i(prepro)s(cessed)e(C)h(co)s(de.)630 3993 y(Since)i(only)h(one)h (output)f(\014le)f(can)i(b)s(e)f(sp)s(eci\014ed,)g(it)g(do)s(es)g(not)h (mak)m(e)g(sense)g(to)g(use)f(`)p Fq(-o)p Fy(')630 4103 y(when)20 b(compiling)e(more)j(than)f(one)h(input)e(\014le,)j(unless)d (y)m(ou)i(are)g(pro)s(ducing)e(an)h(executable)630 4212 y(\014le)29 b(as)i(output.)630 4350 y(If)k(`)p Fq(-o)p Fy(')g(is)g(not)h(sp)s(eci\014ed,)f(the)h(default)f(is)f(to)i(put)f(an) h(executable)g(\014le)e(in)h(`)p Fq(a.out)p Fy(',)h(the)630 4460 y(ob)5 b(ject)33 b(\014le)f(for)g(`)p Fn(source)p Fq(.)p Fn(su\016x)6 b Fy(')32 b(in)f(`)p Fn(source)p Fq(.o)p Fy(',)i(its)e(assem)m(bler)h(\014le)f(in)g(`)p Fn(source)p Fq(.s)p Fy(',)j(and)630 4569 y(all)29 b(prepro)s(cessed)h (C)g(source)g(on)g(standard)g(output.)150 4735 y Fq(-v)384 b Fy(Prin)m(t)32 b(\(on)g(standard)g(error)g(output\))h(the)g(commands) f(executed)i(to)f(run)e(the)i(stages)h(of)630 4845 y(compilation.)k (Also)26 b(prin)m(t)f(the)i(v)m(ersion)f(n)m(um)m(b)s(er)f(of)i(the)g (compiler)e(driv)m(er)g(program)i(and)630 4955 y(of)k(the)f(prepro)s (cessor)g(and)f(the)i(compiler)e(prop)s(er.)150 5121 y Fq(-###)288 b Fy(Lik)m(e)33 b(`)p Fq(-v)p Fy(')h(except)g(the)g (commands)f(are)h(not)g(executed)g(and)f(all)f(command)i(argumen)m(ts) 630 5230 y(are)46 b(quoted.)85 b(This)44 b(is)g(useful)f(for)i(shell)f (scripts)g(to)i(capture)f(the)h(driv)m(er-generated)630 5340 y(command)30 b(lines.)p eop %%Page: 19 29 19 28 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(19)150 299 y Fq(-pipe)240 b Fy(Use)34 b(pip)s(es)e(rather)i(than)g(temp)s(orary)f(\014les)g(for)h(comm)m (unication)f(b)s(et)m(w)m(een)i(the)f(v)-5 b(arious)630 408 y(stages)31 b(of)f(compilation.)39 b(This)28 b(fails)g(to)j(w)m (ork)f(on)f(some)h(systems)g(where)f(the)h(assem)m(bler)630 518 y(is)f(unable)g(to)i(read)g(from)f(a)g(pip)s(e;)f(but)h(the)g(GNU)h (assem)m(bler)f(has)g(no)h(trouble.)150 680 y Fq(--help)192 b Fy(Prin)m(t)31 b(\(on)h(the)f(standard)g(output\))h(a)g(description)e (of)h(the)h(command)g(line)e(options)h(un-)630 789 y(dersto)s(o)s(d)h (b)m(y)h Fq(gcc)p Fy(.)48 b(If)32 b(the)h(`)p Fq(-v)p Fy(')g(option)g(is)f(also)h(sp)s(eci\014ed)e(then)i(`)p Fq(--help)p Fy(')e(will)g(also)i(b)s(e)630 899 y(passed)39 b(on)g(to)h(the)g(v)-5 b(arious)38 b(pro)s(cesses)h(in)m(v)m(ok)m(ed)h (b)m(y)f Fq(gcc)p Fy(,)i(so)f(that)g(they)f(can)h(displa)m(y)630 1008 y(the)31 b(command)g(line)f(options)g(they)i(accept.)44 b(If)31 b(the)h(`)p Fq(-W)p Fy(')f(option)f(is)h(also)g(sp)s(eci\014ed) e(then)630 1118 y(command)g(line)e(options)h(whic)m(h)g(ha)m(v)m(e)i (no)e(do)s(cumen)m(tation)h(asso)s(ciated)g(with)f(them)h(will)630 1228 y(also)h(b)s(e)g(displa)m(y)m(ed.)150 1389 y Fq(--target-help)630 1499 y Fy(Prin)m(t)36 b(\(on)g(the)h(standard)f(output\))g(a)h (description)e(of)i(target)h(sp)s(eci\014c)d(command)i(line)630 1608 y(options)30 b(for)g(eac)m(h)h(to)s(ol.)150 1871 y Fs(3.3)68 b(Compiling)46 b(C)p Ft(++)e Fs(Programs)275 2066 y Fy(C)p Fq(++)25 b Fy(source)i(\014les)e(con)m(v)m(en)m(tionally) i(use)f(one)h(of)f(the)h(su\016xes)f(`)p Fq(.C)p Fy(',)h(`)p Fq(.cc)p Fy(',)g(`)p Fq(.cpp)p Fy(',)g(`)p Fq(.c++)p Fy(',)g(`)p Fq(.cp)p Fy(',)g(or)150 2176 y(`)p Fq(.cxx)p Fy(';)35 b(prepro)s(cessed)d(C)p Fq(++)h Fy(\014les)f(use)h(the)h (su\016x)e(`)p Fq(.ii)p Fy('.)50 b(GCC)33 b(recognizes)h(\014les)f (with)f(these)i(names)150 2285 y(and)41 b(compiles)f(them)h(as)h(C)p Fq(++)e Fy(programs)h(ev)m(en)h(if)e(y)m(ou)i(call)f(the)g(compiler)f (the)i(same)f(w)m(a)m(y)i(as)e(for)150 2395 y(compiling)28 b(C)i(programs)g(\(usually)f(with)g(the)h(name)h Fq(gcc)p Fy(\).)275 2531 y(Ho)m(w)m(ev)m(er,)40 b(C)p Fq(++)c Fy(programs)h(often)g(require)f(class)h(libraries)d(as)j(w)m(ell)f(as)h (a)g(compiler)f(that)h(under-)150 2641 y(stands)30 b(the)g(C)p Fq(++)f Fy(language|and)i(under)d(some)j(circumstances,)f(y)m(ou)h (migh)m(t)f(w)m(an)m(t)h(to)g(compile)e(pro-)150 2751 y(grams)f(from)f(standard)g(input,)g(or)g(otherwise)h(without)e(a)i (su\016x)f(that)i(\015ags)f(them)f(as)h(C)p Fq(++)f Fy(programs.)150 2860 y Fq(g++)k Fy(is)g(a)i(program)e(that)i(calls)e(GCC)h(with)f(the)h (default)f(language)i(set)f(to)h(C)p Fq(++)p Fy(,)f(and)f (automatically)150 2970 y(sp)s(eci\014es)h(linking)f(against)j(the)g(C) p Fq(++)f Fy(library)-8 b(.)49 b(On)33 b(man)m(y)h(systems,)h Fq(g++)e Fy(is)g(also)h(installed)d(with)i(the)150 3079 y(name)d Fq(c++)p Fy(.)275 3216 y(When)40 b(y)m(ou)h(compile)f(C)p Fq(++)g Fy(programs,)j(y)m(ou)e(ma)m(y)h(sp)s(ecify)d(man)m(y)i(of)g (the)g(same)g(command-line)150 3326 y(options)f(that)i(y)m(ou)g(use)f (for)g(compiling)d(programs)j(in)f(an)m(y)i(language;)47 b(or)41 b(command-line)f(options)150 3435 y(meaningful)31 b(for)i(C)g(and)f(related)h(languages;)i(or)e(options)g(that)g(are)h (meaningful)d(only)h(for)h(C)p Fq(++)f Fy(pro-)150 3545 y(grams.)39 b(See)26 b(Section)g(3.4)h([Options)e(Con)m(trolling)f(C)i (Dialect],)h(page)g(19,)h(for)e(explanations)f(of)h(options)150 3654 y(for)31 b(languages)g(related)f(to)i(C.)41 b(See)31 b(Section)g(3.5)h([Options)d(Con)m(trolling)g(C)p Fq(++)h Fy(Dialect],)i(page)f(24,)h(for)150 3764 y(explanations)d(of)i(options) f(that)g(are)h(meaningful)d(only)i(for)g(C)p Fq(++)f Fy(programs.)150 4027 y Fs(3.4)68 b(Options)45 b(Con)l(trolling)i(C)e (Dialect)275 4222 y Fy(The)25 b(follo)m(wing)g(options)g(con)m(trol)i (the)f(dialect)g(of)h(C)e(\(or)i(languages)f(deriv)m(ed)g(from)f(C,)i (suc)m(h)e(as)i(C)p Fq(++)150 4331 y Fy(and)j(Ob)5 b(jectiv)m(e-C\))31 b(that)g(the)f(compiler)f(accepts:)150 4547 y Fq(-ansi)240 b Fy(In)30 b(C)g(mo)s(de,)g(supp)s(ort)f(all)g(ISO)h(C89)h(programs.)40 b(In)30 b(C)p Fq(++)g Fy(mo)s(de,)g(remo)m(v)m(e)i(GNU)f(exten-)630 4656 y(sions)e(that)i(con\015ict)f(with)f(ISO)h(C)p Fq(++)p Fy(.)630 4792 y(This)39 b(turns)h(o\013)h(certain)g(features)g(of)g (GCC)g(that)h(are)f(incompatible)e(with)h(ISO)f(C89)630 4902 y(\(when)26 b(compiling)f(C)h(co)s(de\),)i(or)f(of)g(standard)f(C) p Fq(++)g Fy(\(when)g(compiling)e(C)p Fq(++)i Fy(co)s(de\),)i(suc)m(h) 630 5011 y(as)h(the)g Fq(asm)f Fy(and)h Fq(typeof)e Fy(k)m(eyw)m(ords,) j(and)e(prede\014ned)f(macros)j(suc)m(h)e(as)i Fq(unix)d Fy(and)i Fq(vax)630 5121 y Fy(that)k(iden)m(tify)d(the)i(t)m(yp)s(e)g (of)g(system)g(y)m(ou)g(are)h(using.)44 b(It)32 b(also)f(enables)h(the) g(undesirable)630 5230 y(and)22 b(rarely)g(used)g(ISO)g(trigraph)f (feature.)39 b(F)-8 b(or)24 b(the)f(C)f(compiler,)h(it)g(disables)d (recognition)630 5340 y(of)31 b(C)p Fq(++)e Fy(st)m(yle)i(`)p Fq(//)p Fy(')f(commen)m(ts)h(as)g(w)m(ell)e(as)i(the)f Fq(inline)f Fy(k)m(eyw)m(ord.)p eop %%Page: 20 30 20 29 bop 150 -116 a Fy(20)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(The)c(alternate)h(k)m(eyw)m(ords)g Fq(__asm__)p Fy(,)f Fq(__extension__)p Fy(,)e Fq(__inline__)g Fy(and)h Fq(__typeof_)630 408 y(_)i Fy(con)m(tin)m(ue)h(to)g(w)m(ork)g (despite)e(`)p Fq(-ansi)p Fy('.)39 b(Y)-8 b(ou)28 b(w)m(ould)e(not)i(w) m(an)m(t)h(to)f(use)f(them)g(in)g(an)g(ISO)630 518 y(C)h(program,)i(of) f(course,)g(but)f(it)g(is)g(useful)f(to)j(put)e(them)h(in)e(header)i (\014les)f(that)h(migh)m(t)g(b)s(e)630 628 y(included)g(in)h (compilations)f(done)i(with)f(`)p Fq(-ansi)p Fy('.)43 b(Alternate)32 b(prede\014ned)d(macros)j(suc)m(h)630 737 y(as)f Fq(__unix__)d Fy(and)i Fq(__vax__)e Fy(are)j(also)f(a)m(v)-5 b(ailable,)30 b(with)f(or)h(without)g(`)p Fq(-ansi)p Fy('.)630 874 y(The)43 b(`)p Fq(-ansi)p Fy(')f(option)h(do)s(es)g(not)g (cause)h(non-ISO)e(programs)h(to)h(b)s(e)e(rejected)i(gratu-)630 984 y(itously)-8 b(.)37 b(F)-8 b(or)24 b(that,)i(`)p Fq(-pedantic)p Fy(')21 b(is)i(required)e(in)h(addition)g(to)i(`)p Fq(-ansi)p Fy('.)37 b(See)24 b(Section)f(3.8)630 1093 y([W)-8 b(arning)30 b(Options],)g(page)h(31.)630 1230 y(The)39 b(macro)h Fq(__STRICT_ANSI__)c Fy(is)j(prede\014ned)e(when)i (the)h(`)p Fq(-ansi)p Fy(')f(option)g(is)f(used.)630 1340 y(Some)43 b(header)h(\014les)e(ma)m(y)i(notice)f(this)g(macro)g (and)g(refrain)f(from)h(declaring)f(certain)630 1450 y(functions)25 b(or)h(de\014ning)e(certain)i(macros)g(that)h(the)f(ISO) f(standard)g(do)s(esn't)h(call)g(for;)h(this)630 1559 y(is)h(to)j(a)m(v)m(oid)e(in)m(terfering)f(with)g(an)m(y)i(programs)f (that)h(migh)m(t)f(use)g(these)h(names)g(for)f(other)630 1669 y(things.)630 1806 y(F)-8 b(unctions)29 b(whic)m(h)f(w)m(ould)h (normally)f(b)s(e)h(built)e(in)h(but)h(do)h(not)f(ha)m(v)m(e)i(seman)m (tics)f(de\014ned)630 1915 y(b)m(y)j(ISO)g(C)g(\(suc)m(h)g(as)h Fq(alloca)e Fy(and)h Fq(ffs)p Fy(\))f(are)i(not)g(built-in)c(functions) i(with)g(`)p Fq(-ansi)p Fy(')h(is)630 2025 y(used.)50 b(See)34 b(Section)g(5.45)h([Other)f(built-in)c(functions)j(pro)m (vided)f(b)m(y)i(GCC],)g(page)g(217,)630 2134 y(for)c(details)g(of)g (the)h(functions)e(a\013ected.)150 2299 y Fq(-std=)240 b Fy(Determine)22 b(the)g(language)g(standard.)37 b(This)21 b(option)g(is)g(curren)m(tly)g(only)g(supp)s(orted)f(when)630 2408 y(compiling)28 b(C.)40 b(A)31 b(v)-5 b(alue)30 b(for)g(this)f (option)h(m)m(ust)g(b)s(e)g(pro)m(vided;)f(p)s(ossible)f(v)-5 b(alues)30 b(are)630 2573 y(`)p Fq(c89)p Fy(')630 2682 y(`)p Fq(iso9899:1990)p Fy(')1110 2792 y(ISO)f(C89)i(\(same)g(as)g(`)p Fq(-ansi)p Fy('\).)630 2956 y(`)p Fq(iso9899:199409)p Fy(')1110 3066 y(ISO)e(C89)i(as)g(mo)s(di\014ed)d(in)h(amendmen)m(t)i (1.)630 3230 y(`)p Fq(c99)p Fy(')630 3340 y(`)p Fq(c9x)p Fy(')630 3450 y(`)p Fq(iso9899:1999)p Fy(')630 3559 y(`)p Fq(iso9899:199x)p Fy(')1110 3669 y(ISO)48 b(C99.)98 b(Note)50 b(that)g(this)e(standard)h(is)f(not)h(y)m(et)i(fully)c(supp)s(orted;) 1110 3778 y(see)39 b Fq(http://gcc.gnu.org/gcc-3.)o(1/c9)o(9sta)o(tus)o (.htm)o(l)33 b Fy(for)38 b(more)h(in-)1110 3888 y(formation.)h(The)30 b(names)g(`)p Fq(c9x)p Fy(')g(and)g(`)p Fq(iso9899:199x)p Fy(')e(are)i(deprecated.)630 4052 y(`)p Fq(gnu89)p Fy(')190 b(Default,)39 b(ISO)d(C89)i(plus)d(GNU)j(extensions)f(\(including)d (some)j(C99)h(fea-)1110 4162 y(tures\).)630 4326 y(`)p Fq(gnu99)p Fy(')630 4491 y(`)p Fq(gnu9x)p Fy(')190 b(ISO)21 b(C99)i(plus)d(GNU)j(extensions.)37 b(When)22 b(ISO)f(C99)h(is)g(fully) d(implemen)m(ted)1110 4600 y(in)30 b(GCC,)i(this)e(will)f(b)s(ecome)j (the)g(default.)43 b(The)31 b(name)h(`)p Fq(gnu9x)p Fy(')f(is)f(depre-) 1110 4710 y(cated.)630 4874 y(Ev)m(en)f(when)e(this)h(option)g(is)f (not)i(sp)s(eci\014ed,)f(y)m(ou)h(can)g(still)d(use)i(some)h(of)g(the)g (features)g(of)630 4984 y(new)m(er)24 b(standards)f(in)g(so)h(far)g(as) h(they)f(do)g(not)g(con\015ict)g(with)f(previous)g(C)g(standards.)38 b(F)-8 b(or)630 5093 y(example,)30 b(y)m(ou)h(ma)m(y)g(use)f Fq(__restrict__)d Fy(ev)m(en)k(when)f(`)p Fq(-std=c99)p Fy(')e(is)i(not)g(sp)s(eci\014ed.)630 5230 y(The)k(`)p Fq(-std)p Fy(')f(options)h(sp)s(ecifying)e(some)i(v)m(ersion)g(of)g (ISO)f(C)h(ha)m(v)m(e)h(the)g(same)f(e\013ects)i(as)630 5340 y(`)p Fq(-ansi)p Fy(',)29 b(except)i(that)f(features)f(that)i(w)m (ere)f(not)f(in)g(ISO)f(C89)i(but)f(are)h(in)e(the)i(sp)s(eci\014ed)p eop %%Page: 21 31 21 30 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(21)630 299 y(v)m(ersion)31 b(\(for)g(example,)g(`)p Fq(//)p Fy(')g(commen)m(ts)h(and)e(the)i Fq(inline)d Fy(k)m(eyw)m(ord)j(in)e(ISO)g(C99\))i(are)630 408 y(not)f(disabled.)630 545 y(See)f(Chapter)g(2)h([Language)g(Standards)e(Supp)s(orted)f(b)m(y) i(GCC],)g(page)h(5,)g(for)f(details)f(of)630 655 y(these)i(standard)e (v)m(ersions.)150 819 y Fq(-aux-info)f Fn(\014lename)630 929 y Fy(Output)f(to)h(the)g(giv)m(en)g(\014lename)f(protot)m(yp)s(ed)h (declarations)f(for)g(all)g(functions)f(declared)630 1039 y(and/or)e(de\014ned)g(in)f(a)i(translation)f(unit,)g(including)d (those)k(in)f(header)g(\014les.)38 b(This)22 b(option)630 1148 y(is)29 b(silen)m(tly)g(ignored)h(in)f(an)m(y)h(language)h(other)g (than)f(C.)630 1285 y(Besides)d(declarations,)g(the)g(\014le)f (indicates,)h(in)e(commen)m(ts,)k(the)e(origin)e(of)j(eac)m(h)g (declara-)630 1395 y(tion)i(\(source)i(\014le)e(and)g(line\),)g (whether)h(the)g(declaration)f(w)m(as)i(implicit,)c(protot)m(yp)s(ed)j (or)630 1504 y(unprotot)m(yp)s(ed)g(\(`)p Fq(I)p Fy(',)i(`)p Fq(N)p Fy(')f(for)g(new)f(or)h(`)p Fq(O)p Fy(')g(for)g(old,)g(resp)s (ectiv)m(ely)-8 b(,)32 b(in)f(the)h(\014rst)f(c)m(haracter)630 1614 y(after)j(the)f(line)e(n)m(um)m(b)s(er)h(and)g(the)i(colon\),)g (and)e(whether)h(it)f(came)i(from)f(a)g(declaration)630 1724 y(or)g(a)g(de\014nition)e(\(`)p Fq(C)p Fy(')i(or)g(`)p Fq(F)p Fy(',)h(resp)s(ectiv)m(ely)-8 b(,)34 b(in)e(the)h(follo)m(wing)e (c)m(haracter\).)51 b(In)32 b(the)h(case)630 1833 y(of)h(function)f (de\014nitions,)g(a)i(K&R-st)m(yle)f(list)f(of)h(argumen)m(ts)h(follo)m (w)m(ed)e(b)m(y)h(their)g(decla-)630 1943 y(rations)c(is)f(also)i(pro)m (vided,)e(inside)f(commen)m(ts,)j(after)g(the)g(declaration.)150 2107 y Fq(-fno-asm)96 b Fy(Do)38 b(not)f(recognize)g Fq(asm)p Fy(,)h Fq(inline)d Fy(or)i Fq(typeof)e Fy(as)i(a)g(k)m(eyw)m (ord,)i(so)e(that)g(co)s(de)g(can)g(use)630 2217 y(these)27 b(w)m(ords)e(as)h(iden)m(ti\014ers.)38 b(Y)-8 b(ou)26 b(can)h(use)e(the)i(k)m(eyw)m(ords)f Fq(__asm__)p Fy(,)f Fq(__inline__)f Fy(and)630 2326 y Fq(__typeof__)k Fy(instead.)40 b(`)p Fq(-ansi)p Fy(')29 b(implies)f(`)p Fq(-fno-asm)p Fy('.)630 2463 y(In)40 b(C)p Fq(++)p Fy(,)k(this)c(switc)m(h)g(only)g (a\013ects)j(the)e Fq(typeof)f Fy(k)m(eyw)m(ord,)k(since)d Fq(asm)f Fy(and)h Fq(inline)630 2573 y Fy(are)e(standard)e(k)m(eyw)m (ords.)65 b(Y)-8 b(ou)38 b(ma)m(y)h(w)m(an)m(t)g(to)g(use)f(the)h(`)p Fq(-fno-gnu-keywords)p Fy(')34 b(\015ag)630 2682 y(instead,)26 b(whic)m(h)f(has)h(the)g(same)h(e\013ect.)40 b(In)26 b(C99)g(mo)s(de)g(\(`)p Fq(-std=c99)p Fy(')f(or)h(`)p Fq(-std=gnu99)p Fy('\),)630 2792 y(this)20 b(switc)m(h)h(only)f (a\013ects)j(the)e Fq(asm)f Fy(and)h Fq(typeof)e Fy(k)m(eyw)m(ords,)24 b(since)c Fq(inline)g Fy(is)g(a)i(standard)630 2902 y(k)m(eyw)m(ord)31 b(in)e(ISO)g(C99.)150 3066 y Fq(-fno-builtin)150 3176 y(-fno-builtin-)p Fn(function)d Fy(\(C)k(and)g(Ob)5 b(jectiv)m(e-C)30 b(only\))630 3285 y(Don't)22 b(recognize)g(built-in)c(functions)h(that) j(do)f(not)g(b)s(egin)f(with)g(`)p Fq(__builtin_)p Fy(')e(as)k (pre\014x.)630 3395 y(See)44 b(Section)f(5.45)i([Other)f(built-in)c (functions)i(pro)m(vided)g(b)m(y)i(GCC],)f(page)i(217,)j(for)630 3504 y(details)23 b(of)h(the)g(functions)e(a\013ected,)27 b(including)20 b(those)k(whic)m(h)f(are)h(not)g(built-in)c(functions) 630 3614 y(when)30 b(`)p Fq(-ansi)p Fy(')h(or)g(`)p Fq(-std)p Fy(')f(options)h(for)g(strict)g(ISO)f(C)h(conformance)h(are)f(used)g(b) s(ecause)630 3724 y(they)g(do)f(not)g(ha)m(v)m(e)i(an)e(ISO)g(standard) f(meaning.)630 3861 y(GCC)f(normally)f(generates)i(sp)s(ecial)e(co)s (de)i(to)g(handle)e(certain)i(built-in)c(functions)i(more)630 3970 y(e\016cien)m(tly;)44 b(for)39 b(instance,)j(calls)d(to)h Fq(alloca)e Fy(ma)m(y)i(b)s(ecome)g(single)e(instructions)f(that)630 4080 y(adjust)g(the)g(stac)m(k)i(directly)-8 b(,)39 b(and)e(calls)f(to) i Fq(memcpy)e Fy(ma)m(y)i(b)s(ecome)g(inline)d(cop)m(y)j(lo)s(ops.)630 4189 y(The)28 b(resulting)e(co)s(de)i(is)g(often)g(b)s(oth)g(smaller)f (and)g(faster,)i(but)f(since)f(the)i(function)e(calls)630 4299 y(no)33 b(longer)g(app)s(ear)g(as)h(suc)m(h,)g(y)m(ou)f(cannot)h (set)g(a)g(breakp)s(oin)m(t)e(on)h(those)h(calls,)g(nor)f(can)630 4408 y(y)m(ou)e(c)m(hange)g(the)g(b)s(eha)m(vior)e(of)i(the)f (functions)f(b)m(y)i(linking)c(with)i(a)i(di\013eren)m(t)f(library)-8 b(.)630 4545 y(In)40 b(C)p Fq(++)p Fy(,)i(`)p Fq(-fno-builtin)p Fy(')c(is)h(alw)m(a)m(ys)i(in)f(e\013ect.)72 b(The)40 b(`)p Fq(-fbuiltin)p Fy(')f(option)h(has)g(no)630 4655 y(e\013ect.)h(Therefore,)26 b(in)e(C)p Fq(++)p Fy(,)h(the)g(only)g(w)m (a)m(y)h(to)g(get)g(the)f(optimization)f(b)s(ene\014ts)h(of)g(built-) 630 4765 y(in)36 b(functions)h(is)f(to)j(call)e(the)h(function)e(using) g(the)i(`)p Fq(__builtin_)p Fy(')e(pre\014x.)61 b(The)37 b(GNU)630 4874 y(C)p Fq(++)22 b Fy(Standard)h(Library)e(uses)i (built-in)d(functions)i(to)i(implemen)m(t)e(man)m(y)h(functions)f (\(lik)m(e)630 4984 y Fq(std::strchr)p Fy(\),)28 b(so)j(that)f(y)m(ou)h (automatically)f(get)i(e\016cien)m(t)f(co)s(de.)630 5121 y(With)h(the)h(`)p Fq(-fno-builtin-)p Fn(function)p Fy(')c(option,)k (not)g(a)m(v)-5 b(ailable)32 b(when)g(compiling)f(C)p Fq(++)p Fy(,)630 5230 y(only)36 b(the)h(built-in)c(function)j Fn(function)f Fy(is)h(disabled.)58 b Fn(function)35 b Fy(m)m(ust)i(not)g(b)s(egin)e(with)630 5340 y(`)p Fq(__builtin_)p Fy('.)i(If)26 b(a)g(function)f(is)g(named)g(this)g(is)g(not)i(built-in) c(in)h(this)h(v)m(ersion)h(of)g(GCC,)p eop %%Page: 22 32 22 31 bop 150 -116 a Fy(22)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(this)d(option)h(is)f(ignored.)40 b(There)27 b(is)h(no)g(corresp)s(onding)e(`)p Fq(-fbuiltin-)p Fn(function)p Fy(')f(option;)630 408 y(if)31 b(y)m(ou)i(wish)d(to)j (enable)e(built-in)e(functions)i(selectiv)m(ely)h(when)f(using)g(`)p Fq(-fno-builtin)p Fy(')630 518 y(or)f(`)p Fq(-ffreestanding)p Fy(',)e(y)m(ou)i(ma)m(y)h(de\014ne)f(macros)h(suc)m(h)f(as:)870 648 y Fq(#define)46 b(abs\(n\))475 b(__builtin_abs)45 b(\(\(n\)\))870 752 y(#define)h(strcpy\(d,)f(s\))190 b(__builtin_strcpy)44 b(\(\(d\),)i(\(s\)\))150 915 y(-fhosted)630 1051 y Fy(Assert)e(that)h(compilation)e(tak)m(es)j(place)e(in)f(a)i (hosted)f(en)m(vironmen)m(t.)82 b(This)43 b(implies)630 1161 y(`)p Fq(-fbuiltin)p Fy('.)38 b(A)29 b(hosted)g(en)m(vironmen)m(t) f(is)g(one)h(in)e(whic)m(h)h(the)h(en)m(tire)f(standard)g(library)630 1271 y(is)j(a)m(v)-5 b(ailable,)31 b(and)h(in)e(whic)m(h)g Fq(main)h Fy(has)g(a)i(return)d(t)m(yp)s(e)i(of)g Fq(int)p Fy(.)44 b(Examples)31 b(are)h(nearly)630 1380 y(ev)m(erything)e(except) i(a)e(k)m(ernel.)41 b(This)28 b(is)i(equiv)-5 b(alen)m(t)29 b(to)j(`)p Fq(-fno-freestanding)p Fy('.)150 1543 y Fq(-ffreestanding) 630 1653 y Fy(Assert)24 b(that)h(compilation)e(tak)m(es)i(place)g(in)d (a)j(freestanding)e(en)m(vironmen)m(t.)38 b(This)23 b(implies)630 1762 y(`)p Fq(-fno-builtin)p Fy('.)83 b(A)46 b(freestanding)e(en)m (vironmen)m(t)h(is)g(one)h(in)e(whic)m(h)g(the)i(standard)630 1872 y(library)20 b(ma)m(y)j(not)g(exist,)h(and)e(program)h(startup)f (ma)m(y)h(not)g(necessarily)e(b)s(e)h(at)h Fq(main)p Fy(.)37 b(The)630 1981 y(most)31 b(ob)m(vious)f(example)g(is)f(an)h(OS) g(k)m(ernel.)40 b(This)29 b(is)g(equiv)-5 b(alen)m(t)30 b(to)h(`)p Fq(-fno-hosted)p Fy('.)630 2118 y(See)f(Chapter)g(2)h ([Language)g(Standards)e(Supp)s(orted)f(b)m(y)i(GCC],)g(page)h(5,)g (for)f(details)f(of)630 2227 y(freestanding)g(and)h(hosted)h(en)m (vironmen)m(ts.)150 2390 y Fq(-trigraphs)630 2500 y Fy(Supp)s(ort)23 b(ISO)h(C)h(trigraphs.)37 b(The)25 b(`)p Fq(-ansi)p Fy(')f(option)h (\(and)f(`)p Fq(-std)p Fy(')h(options)f(for)h(strict)g(ISO)630 2609 y(C)30 b(conformance\))h(implies)d(`)p Fq(-trigraphs)p Fy('.)150 2772 y Fq(-no-integrated-cpp)630 2882 y Fy(In)m(v)m(ok)m(e)d (the)f(external)g(cpp)f(during)e(compilation.)37 b(The)23 b(default)g(is)g(to)h(use)f(the)h(in)m(tegrated)630 2991 y(cpp)40 b(\(in)m(ternal)f(cpp\).)71 b(This)38 b(option)i(also)g(allo)m (ws)g(a)h(user-supplied)c(cpp)i(via)h(the)h(`)p Fq(-B)p Fy(')630 3101 y(option.)f(This)29 b(\015ag)h(is)g(applicable)e(in)h(b)s (oth)h(C)g(and)g(C)p Fq(++)f Fy(mo)s(des.)630 3237 y(W)-8 b(e)40 b(do)e(not)h(guaran)m(tee)i(to)e(retain)f(this)g(option)g(in)f (future,)j(and)e(w)m(e)h(ma)m(y)h(c)m(hange)g(its)630 3347 y(seman)m(tics.)150 3510 y Fq(-traditional)630 3619 y Fy(A)m(ttempt)32 b(to)f(supp)s(ort)d(some)j(asp)s(ects)g(of)f (traditional)f(C)h(compilers.)39 b(Sp)s(eci\014cally:)705 3755 y Fx(\017)60 b Fy(All)29 b Fq(extern)f Fy(declarations)i(tak)m(e)i (e\013ect)f(globally)e(ev)m(en)i(if)e(they)h(are)h(written)e(inside)810 3865 y(of)i(a)f(function)f(de\014nition.)39 b(This)28 b(includes)g(implicit)g(declarations)h(of)i(functions.)705 4001 y Fx(\017)60 b Fy(The)23 b(new)m(er)g(k)m(eyw)m(ords)g Fq(typeof)p Fy(,)g Fq(inline)p Fy(,)g Fq(signed)p Fy(,)g Fq(const)f Fy(and)g Fq(volatile)f Fy(are)j(not)810 4111 y(recognized.)40 b(\(Y)-8 b(ou)30 b(can)f(still)e(use)h(the)h (alternativ)m(e)g(k)m(eyw)m(ords)g(suc)m(h)g(as)f Fq(__typeof_)810 4220 y(_)p Fy(,)i Fq(__inline__)p Fy(,)e(and)i(so)g(on.\))705 4357 y Fx(\017)60 b Fy(Comparisons)29 b(b)s(et)m(w)m(een)i(p)s(oin)m (ters)e(and)h(in)m(tegers)g(are)h(alw)m(a)m(ys)g(allo)m(w)m(ed.)705 4493 y Fx(\017)60 b Fy(In)m(teger)38 b(t)m(yp)s(es)g Fq(unsigned)28 b(short)36 b Fy(and)g Fq(unsigned)28 b(char)36 b Fy(promote)i(to)g Fq(unsigned)810 4603 y(int)p Fy(.)705 4739 y Fx(\017)60 b Fy(Out-of-range)31 b(\015oating)f(p)s(oin)m(t)g (literals)f(are)h(not)h(an)f(error.)705 4875 y Fx(\017)60 b Fy(Certain)21 b(constructs)g(whic)m(h)f(ISO)g(regards)i(as)f(a)h (single)e(in)m(v)-5 b(alid)19 b(prepro)s(cessing)g(n)m(um-)810 4985 y(b)s(er,)30 b(suc)m(h)g(as)g(`)p Fq(0xe-0xd)p Fy(',)f(are)i (treated)h(as)e(expressions)f(instead.)705 5121 y Fx(\017)60 b Fy(String)24 b(\\constan)m(ts")k(are)e(not)g(necessarily)f(constan)m (t;)k(they)d(are)g(stored)g(in)f(writable)810 5230 y(space,)i(and)d (iden)m(tical)g(lo)s(oking)f(constan)m(ts)j(are)f(allo)s(cated)g (separately)-8 b(.)40 b(\(This)23 b(is)h(the)810 5340 y(same)31 b(as)f(the)h(e\013ect)h(of)e(`)p Fq(-fwritable-strings)p Fy('.\))p eop %%Page: 23 33 23 32 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(23)705 299 y Fx(\017)60 b Fy(All)30 b(automatic)i(v)-5 b(ariables)31 b(not)g(declared)g Fq(register)e Fy(are)j(preserv)m(ed)f (b)m(y)h Fq(longjmp)p Fy(.)810 408 y(Ordinarily)-8 b(,)60 b(GNU)e(C)e(follo)m(ws)g(ISO)g(C:)h(automatic)h(v)-5 b(ariables)55 b(not)i(declared)810 518 y Fq(volatile)28 b Fy(ma)m(y)j(b)s(e)f(clobb)s(ered.)705 682 y Fx(\017)60 b Fy(The)34 b(c)m(haracter)h(escap)s(e)g(sequences)f(`)p Fq(\\x)p Fy(')g(and)g(`)p Fq(\\a)p Fy(')g(ev)-5 b(aluate)35 b(as)f(the)h(literal)d(c)m(har-)810 792 y(acters)c(`)p Fq(x)p Fy(')f(and)g(`)p Fq(a)p Fy(')g(resp)s(ectiv)m(ely)-8 b(.)40 b(Without)26 b(`)p Fq(-traditional)p Fy(')n(,)i(`)p Fq(\\x)p Fy(')f(is)f(a)h(pre\014x)f(for)810 902 y(the)31 b(hexadecimal)e(represen)m(tation)i(of)f(a)h(c)m(haracter,)h(and)e(`)p Fq(\\a)p Fy(')g(pro)s(duces)f(a)i(b)s(ell.)630 1121 y(This)e(option)g (is)h(deprecated)h(and)e(ma)m(y)i(b)s(e)f(remo)m(v)m(ed.)630 1285 y(Y)-8 b(ou)24 b(ma)m(y)h(wish)d(to)i(use)g(`)p Fq(-fno-builtin)p Fy(')d(as)j(w)m(ell)f(as)h(`)p Fq(-traditional)p Fy(')d(if)h(y)m(our)i(program)630 1395 y(uses)33 b(names)h(that)h(are)f (normally)e(GNU)i(C)g(built-in)d(functions)h(for)i(other)g(purp)s(oses) e(of)630 1504 y(its)e(o)m(wn.)630 1669 y(Y)-8 b(ou)42 b(cannot)h(use)e(`)p Fq(-traditional)p Fy(')e(if)i(y)m(ou)h(include)d (an)m(y)j(header)g(\014les)f(that)h(rely)f(on)630 1778 y(ISO)30 b(C)g(features.)42 b(Some)30 b(v)m(endors)h(are)g(starting)f (to)i(ship)c(systems)j(with)e(ISO)h(C)g(header)630 1888 y(\014les)h(and)g(y)m(ou)h(cannot)h(use)f(`)p Fq(-traditional)p Fy(')d(on)i(suc)m(h)h(systems)g(to)h(compile)d(\014les)h(that)630 1998 y(include)d(an)m(y)j(system)f(headers.)630 2162 y(The)g(`)p Fq(-traditional)p Fy(')d(option)j(also)h(enables)e(`)p Fq(-traditional-cpp)p Fy('.)150 2381 y Fq(-traditional-cpp)630 2491 y Fy(A)m(ttempt)i(to)f(supp)s(ort)d(some)j(asp)s(ects)f(of)h (traditional)d(C)i(prepro)s(cessors.)39 b(See)30 b(the)f(GNU)630 2600 y(CPP)h(man)m(ual)f(for)i(details.)150 2819 y Fq(-fcond-mismatch) 630 2929 y Fy(Allo)m(w)i(conditional)g(expressions)g(with)g(mismatc)m (hed)g(t)m(yp)s(es)i(in)e(the)h(second)g(and)g(third)630 3039 y(argumen)m(ts.)k(The)20 b(v)-5 b(alue)19 b(of)i(suc)m(h)f(an)g (expression)f(is)h(v)m(oid.)36 b(This)19 b(option)h(is)f(not)i(supp)s (orted)630 3148 y(for)30 b(C)p Fq(++)p Fy(.)150 3367 y Fq(-funsigned-char)630 3477 y Fy(Let)h(the)f(t)m(yp)s(e)h Fq(char)e Fy(b)s(e)h(unsigned,)e(lik)m(e)i Fq(unsigned)e(char)p Fy(.)630 3641 y(Eac)m(h)35 b(kind)d(of)j(mac)m(hine)f(has)g(a)h (default)e(for)h(what)h Fq(char)e Fy(should)f(b)s(e.)52 b(It)34 b(is)g(either)g(lik)m(e)630 3751 y Fq(unsigned)28 b(char)h Fy(b)m(y)i(default)e(or)i(lik)m(e)e Fq(signed)g(char)g Fy(b)m(y)h(default.)630 3915 y(Ideally)-8 b(,)32 b(a)g(p)s(ortable)f (program)h(should)e(alw)m(a)m(ys)i(use)g Fq(signed)c(char)j Fy(or)h Fq(unsigned)c(char)630 4025 y Fy(when)e(it)g(dep)s(ends)f(on)h (the)h(signedness)e(of)i(an)g(ob)5 b(ject.)40 b(But)27 b(man)m(y)g(programs)f(ha)m(v)m(e)i(b)s(een)630 4134 y(written)23 b(to)h(use)f(plain)e Fq(char)i Fy(and)g(exp)s(ect)h(it)f (to)h(b)s(e)f(signed,)h(or)g(exp)s(ect)g(it)f(to)h(b)s(e)f(unsigned,) 630 4244 y(dep)s(ending)k(on)i(the)g(mac)m(hines)f(they)i(w)m(ere)f (written)f(for.)40 b(This)28 b(option,)h(and)f(its)h(in)m(v)m(erse,)630 4354 y(let)h(y)m(ou)h(mak)m(e)g(suc)m(h)f(a)h(program)f(w)m(ork)h(with) e(the)h(opp)s(osite)g(default.)630 4518 y(The)d(t)m(yp)s(e)h Fq(char)e Fy(is)g(alw)m(a)m(ys)i(a)g(distinct)e(t)m(yp)s(e)i(from)f (eac)m(h)h(of)g Fq(signed)g(char)f Fy(or)g Fq(unsigned)630 4628 y(char)p Fy(,)i(ev)m(en)j(though)e(its)f(b)s(eha)m(vior)h(is)f (alw)m(a)m(ys)i(just)f(lik)m(e)g(one)g(of)h(those)g(t)m(w)m(o.)150 4847 y Fq(-fsigned-char)630 4956 y Fy(Let)g(the)f(t)m(yp)s(e)h Fq(char)e Fy(b)s(e)h(signed,)f(lik)m(e)h Fq(signed)f(char)p Fy(.)630 5121 y(Note)40 b(that)g(this)e(is)h(equiv)-5 b(alen)m(t)38 b(to)i(`)p Fq(-fno-unsigned-char)p Fy(',)d(whic)m(h)h(is) g(the)i(negativ)m(e)630 5230 y(form)24 b(of)i(`)p Fq(-funsigned-char)p Fy('.)35 b(Lik)m(ewise,)25 b(the)g(option)g(`)p Fq(-fno-signed-char)p Fy(')c(is)j(equiv-)630 5340 y(alen)m(t)31 b(to)g(`)p Fq(-funsigned-char)p Fy('.)p eop %%Page: 24 34 24 33 bop 150 -116 a Fy(24)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-fsigned-bitfields)150 408 y(-funsigned-bitfields)150 518 y(-fno-signed-bitfields)150 628 y(-fno-unsigned-bitfields)630 737 y Fy(These)i(options)g(con)m (trol)i(whether)e(a)h(bit-\014eld)d(is)i(signed)g(or)g(unsigned,)g (when)g(the)g(dec-)630 847 y(laration)27 b(do)s(es)h(not)g(use)g (either)f Fq(signed)f Fy(or)i Fq(unsigned)p Fy(.)38 b(By)28 b(default,)g(suc)m(h)g(a)g(bit-\014eld)e(is)630 956 y(signed,)g(b)s (ecause)f(this)f(is)g(consisten)m(t:)39 b(the)25 b(basic)g(in)m(teger)h (t)m(yp)s(es)f(suc)m(h)g(as)h Fq(int)e Fy(are)i(signed)630 1066 y(t)m(yp)s(es.)630 1213 y(Ho)m(w)m(ev)m(er,)43 b(when)38 b(`)p Fq(-traditional)p Fy(')e(is)h(used,)k(bit-\014elds)36 b(are)j(all)f(unsigned)e(no)j(matter)630 1322 y(what.)150 1506 y Fq(-fwritable-strings)630 1615 y Fy(Store)c(string)e(constan)m (ts)i(in)f(the)g(writable)f(data)i(segmen)m(t)g(and)f(don't)h(uniquize) d(them.)630 1725 y(This)g(is)g(for)h(compatibilit)m(y)f(with)g(old)g (programs)h(whic)m(h)f(assume)h(they)h(can)f(write)g(in)m(to)630 1835 y(string)c(constan)m(ts.)42 b(The)30 b(option)g(`)p Fq(-traditional)p Fy(')d(also)k(has)f(this)f(e\013ect.)630 1981 y(W)-8 b(riting)22 b(in)m(to)h(string)f(constan)m(ts)i(is)e(a)h(v) m(ery)h(bad)e(idea;)j(\\constan)m(ts")g(should)c(b)s(e)h(constan)m(t.) 150 2165 y Fq(-fallow-single-precision)630 2274 y Fy(Do)i(not)f (promote)g(single)f(precision)f(math)h(op)s(erations)h(to)g(double)f (precision,)g(ev)m(en)i(when)630 2384 y(compiling)k(with)h(`)p Fq(-traditional)p Fy('.)630 2531 y(T)-8 b(raditional)29 b(K&R)h(C)h(promotes)g(all)f(\015oating)g(p)s(oin)m(t)g(op)s(erations)g (to)i(double)e(precision,)630 2640 y(regardless)j(of)g(the)h(sizes)f (of)g(the)h(op)s(erands.)48 b(On)33 b(the)h(arc)m(hitecture)g(for)f (whic)m(h)f(y)m(ou)i(are)630 2750 y(compiling,)24 b(single)g(precision) f(ma)m(y)j(b)s(e)f(faster)g(than)g(double)f(precision.)37 b(If)25 b(y)m(ou)g(m)m(ust)g(use)630 2859 y(`)p Fq(-traditional)p Fy(',)f(but)i(w)m(an)m(t)h(to)g(use)e(single)g(precision)f(op)s (erations)i(when)f(the)h(op)s(erands)630 2969 y(are)32 b(single)e(precision,)h(use)g(this)g(option.)44 b(This)29 b(option)i(has)h(no)f(e\013ect)j(when)c(compiling)630 3079 y(with)f(ISO)g(or)i(GNU)g(C)f(con)m(v)m(en)m(tions)h(\(the)g (default\).)150 3262 y Fq(-fshort-wchar)630 3372 y Fy(Ov)m(erride)24 b(the)i(underlying)c(t)m(yp)s(e)k(for)f(`)p Fq(wchar_t)p Fy(')f(to)i(b)s(e)f(`)p Fq(short)k(unsigned)f(int)p Fy(')d(instead)630 3481 y(of)j(the)h(default)e(for)i(the)f(target.)42 b(This)26 b(option)i(is)f(useful)g(for)h(building)c(programs)k(to)h(run)630 3591 y(under)g(WINE.)150 3909 y Fs(3.5)68 b(Options)45 b(Con)l(trolling)i(C)p Ft(++)d Fs(Dialect)275 4126 y Fy(This)29 b(section)i(describ)s(es)e(the)i(command-line)f(options)g (that)i(are)f(only)f(meaningful)f(for)i(C)p Fq(++)f Fy(pro-)150 4235 y(grams;)f(but)d(y)m(ou)i(can)f(also)g(use)g(most)h(of)f(the)g (GNU)h(compiler)e(options)h(regardless)f(of)h(what)h(language)150 4345 y(y)m(our)i(program)g(is)g(in.)39 b(F)-8 b(or)31 b(example,)g(y)m(ou)f(migh)m(t)h(compile)e(a)i(\014le)e Fq(firstClass.C)e Fy(lik)m(e)j(this:)390 4498 y Fq(g++)47 b(-g)g(-frepo)f(-O)h(-c)h(firstClass.C)150 4657 y Fy(In)30 b(this)g(example,)h(only)f(`)p Fq(-frepo)p Fy(')f(is)h(an)h(option)f (mean)m(t)i(only)e(for)h(C)p Fq(++)f Fy(programs;)h(y)m(ou)g(can)g(use) g(the)150 4766 y(other)g(options)e(with)g(an)m(y)i(language)g(supp)s (orted)d(b)m(y)j(GCC.)275 4925 y(Here)f(is)g(a)h(list)e(of)h(options)g (that)h(are)g Fr(only)39 b Fy(for)30 b(compiling)e(C)p Fq(++)i Fy(programs:)150 5121 y Fq(-fno-access-control)630 5230 y Fy(T)-8 b(urn)34 b(o\013)i(all)e(access)i(c)m(hec)m(king.)56 b(This)34 b(switc)m(h)g(is)h(mainly)e(useful)g(for)i(w)m(orking)g (around)630 5340 y(bugs)30 b(in)f(the)h(access)i(con)m(trol)f(co)s(de.) p eop %%Page: 25 35 25 34 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(25)150 299 y Fq(-fcheck-new)630 408 y Fy(Chec)m(k)25 b(that)g(the)f(p)s(oin)m(ter)f(returned)h(b)m(y)g Fq(operator)k(new)23 b Fy(is)h(non-n)m(ull)e(b)s(efore)i(attempting)630 518 y(to)45 b(mo)s(dify)e(the)h(storage)i(allo)s(cated.)83 b(The)44 b(curren)m(t)h(W)-8 b(orking)44 b(P)m(ap)s(er)g(requires)f (that)630 628 y Fq(operator)28 b(new)22 b Fy(nev)m(er)i(return)e(a)h(n) m(ull)e(p)s(oin)m(ter,)j(so)g(this)e(c)m(hec)m(k)i(is)f(normally)e (unnecessary)-8 b(.)630 759 y(An)33 b(alternativ)m(e)h(to)h(using)d (this)g(option)h(is)g(to)h(sp)s(ecify)f(that)h(y)m(our)f Fq(operator)c(new)j Fy(do)s(es)630 869 y(not)26 b(thro)m(w)g(an)m(y)h (exceptions;)g(if)e(y)m(ou)i(declare)f(it)f(`)p Fq(throw\(\))p Fy(',)h(G)p Fq(++)g Fy(will)d(c)m(hec)m(k)28 b(the)e(return)630 978 y(v)-5 b(alue.)40 b(See)31 b(also)f(`)p Fq(new)g(\(nothrow\))p Fy('.)150 1132 y Fq(-fconserve-space)630 1241 y Fy(Put)35 b(uninitialized)d(or)k(run)m(time-initialized)c(global)j(v)-5 b(ariables)34 b(in)m(to)i(the)g(common)g(seg-)630 1351 y(men)m(t,)25 b(as)d(C)g(do)s(es.)38 b(This)20 b(sa)m(v)m(es)k(space)f (in)e(the)h(executable)h(at)g(the)g(cost)g(of)g(not)f(diagnosing)630 1461 y(duplicate)31 b(de\014nitions.)44 b(If)32 b(y)m(ou)h(compile)e (with)h(this)f(\015ag)i(and)e(y)m(our)i(program)f(m)m(ysteri-)630 1570 y(ously)24 b(crashes)h(after)h Fq(main\(\))e Fy(has)h(completed,)h (y)m(ou)g(ma)m(y)g(ha)m(v)m(e)g(an)f(ob)5 b(ject)26 b(that)g(is)e(b)s (eing)630 1680 y(destro)m(y)m(ed)31 b(t)m(wice)g(b)s(ecause)g(t)m(w)m (o)g(de\014nitions)d(w)m(ere)j(merged.)630 1811 y(This)38 b(option)i(is)f(no)i(longer)e(useful)g(on)h(most)h(targets,)j(no)m(w)c (that)h(supp)s(ort)e(has)h(b)s(een)630 1921 y(added)30 b(for)g(putting)f(v)-5 b(ariables)29 b(in)m(to)h(BSS)g(without)g (making)f(them)i(common.)150 2074 y Fq(-fno-const-strings)630 2184 y Fy(Giv)m(e)37 b(string)e(constan)m(ts)j(t)m(yp)s(e)f Fq(char)29 b(*)36 b Fy(instead)g(of)h(t)m(yp)s(e)g Fq(const)29 b(char)g(*)p Fy(.)59 b(By)36 b(default,)630 2293 y(G)p Fq(++)43 b Fy(uses)g(t)m(yp)s(e)g Fq(const)29 b(char)h(*)42 b Fy(as)i(required)d(b)m(y)j(the)f(standard.)79 b(Ev)m(en)43 b(if)g(y)m(ou)g(use)630 2403 y(`)p Fq(-fno-const-strings)p Fy(',)31 b(y)m(ou)j(cannot)h(actually)f(mo)s(dify)e(the)i(v)-5 b(alue)34 b(of)g(a)g(string)f(con-)630 2513 y(stan)m(t,)f(unless)c(y)m (ou)j(also)f(use)g(`)p Fq(-fwritable-strings)p Fy('.)630 2644 y(This)c(option)i(migh)m(t)f(b)s(e)g(remo)m(v)m(ed)i(in)e(a)h (future)f(release)i(of)f(G)p Fq(++)p Fy(.)39 b(F)-8 b(or)29 b(maxim)m(um)e(p)s(orta-)630 2754 y(bilit)m(y)-8 b(,)40 b(y)m(ou)f(should)d(structure)j(y)m(our)f(co)s(de)h(so)g(that)h(it)e(w) m(orks)h(with)e(string)h(constan)m(ts)630 2863 y(that)31 b(ha)m(v)m(e)h(t)m(yp)s(e)e Fq(const)f(char)g(*)p Fy(.)150 3017 y Fq(-fdollars-in-identifiers)630 3126 y Fy(Accept)40 b(`)p Fq($)p Fy(')f(in)e(iden)m(ti\014ers.)64 b(Y)-8 b(ou)40 b(can)f(also)f(explicitly)f(prohibit)f(use)i(of)h(`)p Fq($)p Fy(')g(with)f(the)630 3236 y(option)43 b(`)p Fq (-fno-dollars-in-identifiers)o Fy('.)76 b(\(GNU)45 b(C)f(allo)m(ws)f(`) p Fq($)p Fy(')h(b)m(y)g(default)f(on)630 3345 y(most)26 b(target)h(systems,)f(but)f(there)h(are)g(a)f(few)g(exceptions.\))40 b(T)-8 b(raditional)23 b(C)i(allo)m(w)m(ed)h(the)630 3455 y(c)m(haracter)32 b(`)p Fq($)p Fy(')f(to)h(form)e(part)g(of)h (iden)m(ti\014ers.)40 b(Ho)m(w)m(ev)m(er,)33 b(ISO)d(C)g(and)g(C)p Fq(++)g Fy(forbid)e(`)p Fq($)p Fy(')j(in)630 3565 y(iden)m(ti\014ers.) 150 3718 y Fq(-fno-elide-constructors)630 3828 y Fy(The)20 b(C)p Fq(++)g Fy(standard)g(allo)m(ws)g(an)g(implemen)m(tation)g(to)h (omit)g(creating)g(a)g(temp)s(orary)f(whic)m(h)630 3937 y(is)k(only)h(used)g(to)h(initialize)c(another)k(ob)5 b(ject)26 b(of)g(the)f(same)h(t)m(yp)s(e.)39 b(Sp)s(ecifying)23 b(this)h(option)630 4047 y(disables)34 b(that)j(optimization,)f(and)g (forces)g(G)p Fq(++)g Fy(to)h(call)e(the)h(cop)m(y)h(constructor)f(in)f (all)630 4156 y(cases.)150 4310 y Fq(-fno-enforce-eh-specs)630 4419 y Fy(Don't)k(c)m(hec)m(k)h(for)d(violation)g(of)h(exception)h(sp)s (eci\014cations)d(at)j(run)m(time.)62 b(This)36 b(option)630 4529 y(violates)29 b(the)h(C)p Fq(++)e Fy(standard,)h(but)g(ma)m(y)g(b) s(e)g(useful)f(for)h(reducing)f(co)s(de)h(size)g(in)f(pro)s(duc-)630 4639 y(tion)h(builds,)d(m)m(uc)m(h)k(lik)m(e)e(de\014ning)f(`)p Fq(NDEBUG)p Fy('.)39 b(The)29 b(compiler)f(will)f(still)g(optimize)h (based)630 4748 y(on)i(the)h(exception)f(sp)s(eci\014cations.)150 4902 y Fq(-fexternal-templates)630 5011 y Fy(Cause)42 b(`)p Fq(#pragma)29 b(interface)p Fy(')39 b(and)j(`)p Fq(implementation)p Fy(')d(to)k(apply)d(to)j(template)g(in-)630 5121 y(stan)m(tiation;)33 b(template)f(instances)f(are)h(emitted)f(or)h (not)g(according)f(to)i(the)f(lo)s(cation)f(of)630 5230 y(the)e(template)h(de\014nition.)38 b(See)29 b(Section)g(6.6)h([T)-8 b(emplate)29 b(Instan)m(tiation],)h(page)f(254,)i(for)630 5340 y(more)g(information.)p eop %%Page: 26 36 26 35 bop 150 -116 a Fy(26)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(This)f(option)g(is)h(deprecated.)150 463 y Fq(-falt-external-templates)630 573 y Fy(Similar)24 b(to)k(`)p Fq(-fexternal-templates)p Fy(',)23 b(but)k(template)g (instances)g(are)g(emitted)h(or)f(not)630 682 y(according)k(to)h(the)f (place)g(where)g(they)g(are)g(\014rst)g(instan)m(tiated.)42 b(See)31 b(Section)g(6.6)h([T)-8 b(em-)630 792 y(plate)30 b(Instan)m(tiation],)h(page)g(254,)h(for)e(more)g(information.)630 929 y(This)f(option)g(is)h(deprecated.)150 1093 y Fq(-ffor-scope)150 1203 y(-fno-for-scope)630 1313 y Fy(If)48 b(`)p Fq(-ffor-scope)p Fy(')e(is)h(sp)s(eci\014ed,)k(the)e(scop)s(e)f(of)h(v)-5 b(ariables)47 b(declared)g(in)g(a)i Fr(for-init-)630 1422 y(statement)43 b Fy(is)32 b(limited)f(to)i(the)g(`)p Fq(for)p Fy(')g(lo)s(op)f(itself,)h(as)g(sp)s(eci\014ed)e(b)m(y)i(the)g (C)p Fq(++)g Fy(standard.)630 1532 y(If)i(`)p Fq(-fno-for-scope)p Fy(')d(is)j(sp)s(eci\014ed,)g(the)h(scop)s(e)g(of)g(v)-5 b(ariables)34 b(declared)h(in)f(a)i Fr(for-init-)630 1641 y(statement)50 b Fy(extends)41 b(to)g(the)g(end)f(of)g(the)h (enclosing)e(scop)s(e,)44 b(as)d(w)m(as)f(the)h(case)h(in)d(old)630 1751 y(v)m(ersions)30 b(of)g(G)p Fq(++)p Fy(,)h(and)e(other)i (\(traditional\))e(implemen)m(tations)g(of)i(C)p Fq(++)p Fy(.)630 1888 y(The)c(default)f(if)h(neither)f(\015ag)h(is)g(giv)m(en)g (to)h(follo)m(w)f(the)g(standard,)g(but)g(to)h(allo)m(w)f(and)f(giv)m (e)630 1998 y(a)33 b(w)m(arning)e(for)i(old-st)m(yle)f(co)s(de)h(that)g (w)m(ould)e(otherwise)h(b)s(e)g(in)m(v)-5 b(alid,)31 b(or)i(ha)m(v)m(e)g(di\013eren)m(t)630 2107 y(b)s(eha)m(vior.)150 2271 y Fq(-fno-gnu-keywords)630 2381 y Fy(Do)46 b(not)f(recognize)g Fq(typeof)e Fy(as)i(a)h(k)m(eyw)m(ord,)j(so)c(that)g(co)s(de)g(can)g (use)g(this)e(w)m(ord)i(as)630 2491 y(an)37 b(iden)m(ti\014er.)60 b(Y)-8 b(ou)38 b(can)f(use)g(the)h(k)m(eyw)m(ord)f Fq(__typeof__)e Fy(instead.)60 b(`)p Fq(-ansi)p Fy(')37 b(implies)630 2600 y(`)p Fq(-fno-gnu-keywords)p Fy('.)150 2765 y Fq (-fno-implicit-templates)630 2874 y Fy(Nev)m(er)31 b(emit)e(co)s(de)h (for)f(non-inline)d(templates)k(whic)m(h)f(are)g(instan)m(tiated)h (implicitly)25 b(\(i.e.)630 2984 y(b)m(y)36 b(use\);)i(only)d(emit)h (co)s(de)g(for)f(explicit)f(instan)m(tiations.)56 b(See)36 b(Section)g(6.6)h([T)-8 b(emplate)630 3093 y(Instan)m(tiation],)30 b(page)i(254,)f(for)g(more)f(information.)150 3258 y Fq(-fno-implicit-inline-tem)o(plat)o(es)630 3367 y Fy(Don't)45 b(emit)e(co)s(de)h(for)g(implicit)d(instan)m(tiations)h(of)i(inline)d (templates,)48 b(either.)80 b(The)630 3477 y(default)31 b(is)g(to)h(handle)f(inlines)d(di\013eren)m(tly)j(so)h(that)g(compiles) f(with)f(and)h(without)g(opti-)630 3587 y(mization)f(will)d(need)k(the) f(same)h(set)g(of)f(explicit)f(instan)m(tiations.)150 3751 y Fq(-fno-implement-inlines)630 3861 y Fy(T)-8 b(o)36 b(sa)m(v)m(e)h(space,)g(do)f(not)f(emit)h(out-of-line)f(copies)g(of)g (inline)e(functions)h(con)m(trolled)h(b)m(y)630 3970 y(`)p Fq(#pragma)29 b(implementation)p Fy('.)39 b(This)29 b(will)g(cause)i(link)m(er)f(errors)g(if)g(these)i(functions)e(are)630 4080 y(not)h(inlined)c(ev)m(erywhere)j(they)h(are)g(called.)150 4244 y Fq(-fms-extensions)630 4354 y Fy(Disable)g(p)s(edan)m(tic)g(w)m (arnings)g(ab)s(out)h(constructs)g(used)f(in)g(MF)m(C,)i(suc)m(h)e(as)h (implicit)d(in)m(t)630 4463 y(and)h(getting)h(a)g(p)s(oin)m(ter)e(to)i (mem)m(b)s(er)f(function)f(via)h(non-standard)f(syn)m(tax.)150 4628 y Fq(-fno-nonansi-builtins)630 4737 y Fy(Disable)g(built-in)d (declarations)j(of)h(functions)e(that)j(are)f(not)g(mandated)f(b)m(y)h (ANSI/ISO)630 4847 y(C.)42 b(These)31 b(include)d Fq(ffs)p Fy(,)j Fq(alloca)p Fy(,)e Fq(_exit)p Fy(,)h Fq(index)p Fy(,)g Fq(bzero)p Fy(,)g Fq(conjf)p Fy(,)g(and)g(other)h(related)630 4956 y(functions.)150 5121 y Fq(-fno-operator-names)630 5230 y Fy(Do)h(not)f(treat)h(the)f(op)s(erator)g(name)g(k)m(eyw)m(ords) g Fq(and)p Fy(,)g Fq(bitand)p Fy(,)e Fq(bitor)p Fy(,)h Fq(compl)p Fy(,)g Fq(not)p Fy(,)h Fq(or)630 5340 y Fy(and)f Fq(xor)f Fy(as)i(synon)m(yms)f(as)g(k)m(eyw)m(ords.)p eop %%Page: 27 37 27 36 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(27)150 299 y Fq(-fno-optional-diags)630 408 y Fy(Disable)34 b(diagnostics)h(that)h(the)f(standard)f(sa)m(ys)i (a)g(compiler)e(do)s(es)g(not)i(need)f(to)h(issue.)630 518 y(Curren)m(tly)-8 b(,)28 b(the)g(only)f(suc)m(h)h(diagnostic)g (issued)e(b)m(y)i(G)p Fq(++)g Fy(is)g(the)g(one)h(for)f(a)g(name)g(ha)m (ving)630 628 y(m)m(ultiple)g(meanings)i(within)d(a)k(class.)150 789 y Fq(-fpermissive)630 898 y Fy(Do)m(wngrade)36 b(messages)f(ab)s (out)g(nonconforman)m(t)g(co)s(de)f(from)h(errors)f(to)h(w)m(arnings.) 53 b(By)630 1008 y(default,)26 b(G)p Fq(++)g Fy(e\013ectiv)m(ely)h (sets)g(`)p Fq(-pedantic-errors)p Fy(')22 b(without)j(`)p Fq(-pedantic)p Fy(';)h(this)f(op-)630 1118 y(tion)20 b(rev)m(erses)h(that.)38 b(This)19 b(b)s(eha)m(vior)g(and)h(this)g (option)g(are)h(sup)s(erseded)d(b)m(y)j(`)p Fq(-pedantic)p Fy(',)630 1227 y(whic)m(h)29 b(w)m(orks)h(as)h(it)f(do)s(es)g(for)g (GNU)h(C.)150 1388 y Fq(-frepo)192 b Fy(Enable)41 b(automatic)h (template)h(instan)m(tiation)e(at)h(link)e(time.)75 b(This)40 b(option)h(also)h(im-)630 1498 y(plies)d(`)p Fq (-fno-implicit-templates)p Fy('.)67 b(See)41 b(Section)g(6.6)h([T)-8 b(emplate)41 b(Instan)m(tiation],)630 1608 y(page)31 b(254,)h(for)e(more)h(information.)150 1769 y Fq(-fno-rtti)630 1878 y Fy(Disable)49 b(generation)i(of)f(information)f(ab)s(out)h(ev)m (ery)h(class)f(with)f(virtual)f(functions)630 1988 y(for)59 b(use)f(b)m(y)h(the)g(C)p Fq(++)e Fy(run)m(time)h(t)m(yp)s(e)h(iden)m (ti\014cation)e(features)i(\(`)p Fq(dynamic_cast)p Fy(')630 2097 y(and)44 b(`)p Fq(typeid)p Fy('\).)81 b(If)43 b(y)m(ou)i(don't)f (use)g(those)h(parts)e(of)i(the)f(language,)k(y)m(ou)d(can)f(sa)m(v)m (e)630 2207 y(some)e(space)g(b)m(y)g(using)e(this)g(\015ag.)75 b(Note)43 b(that)f(exception)g(handling)d(uses)i(the)h(same)630 2317 y(information,)29 b(but)h(it)g(will)d(generate)32 b(it)e(as)h(needed.)150 2478 y Fq(-fstats)144 b Fy(Emit)30 b(statistics)i(ab)s(out)f(fron)m(t-end)g(pro)s(cessing)f(at)i(the)f (end)g(of)g(the)h(compilation.)42 b(This)630 2587 y(information)29 b(is)g(generally)h(only)f(useful)g(to)i(the)f(G)p Fq(++)h Fy(dev)m(elopmen)m(t)f(team.)150 2749 y Fq(-ftemplate-depth-)p Fn(n)630 2858 y Fy(Set)41 b(the)g(maxim)m(um)f(instan)m(tiation)f (depth)h(for)h(template)g(classes)g(to)g Fn(n)p Fy(.)72 b(A)40 b(limit)f(on)630 2968 y(the)33 b(template)g(instan)m(tiation)f (depth)f(is)h(needed)g(to)i(detect)g(endless)d(recursions)g(during)630 3077 y(template)40 b(class)f(instan)m(tiation.)66 b(ANSI/ISO)39 b(C)p Fq(++)f Fy(conforming)h(programs)f(m)m(ust)i(not)630 3187 y(rely)30 b(on)g(a)h(maxim)m(um)e(depth)g(greater)j(than)e(17.)150 3348 y Fq(-fuse-cxa-atexit)630 3458 y Fy(Register)36 b(destructors)g(for)f(ob)5 b(jects)37 b(with)e(static)h(storage)i (duration)c(with)h(the)h Fq(__cxa_)630 3567 y(atexit)d Fy(function)f(rather)j(than)e(the)i Fq(atexit)d Fy(function.)51 b(This)33 b(option)g(is)h(required)e(for)630 3677 y(fully)g (standards-complian)m(t)h(handling)f(of)i(static)h(destructors,)h(but)d (will)f(only)i(w)m(ork)g(if)630 3786 y(y)m(our)c(C)g(library)e(supp)s (orts)h Fq(__cxa_atexit)p Fy(.)150 3948 y Fq(-fvtable-gc)630 4057 y Fy(Emit)46 b(sp)s(ecial)f(relo)s(cations)h(for)h(vtables)f(and)g (virtual)f(function)g(references)i(so)g(that)630 4167 y(the)52 b(link)m(er)e(can)i(iden)m(tify)f(un)m(used)f(virtual)g (functions)h(and)g(zero)h(out)h(vtable)e(slots)630 4276 y(that)e(refer)e(to)i(them.)93 b(This)46 b(is)h(most)i(useful)d(with)g (`)p Fq(-ffunction-sections)p Fy(')e(and)630 4386 y(`)p Fq(-Wl,--gc-sections)p Fy(',)26 b(in)j(order)h(to)h(also)g(discard)e (the)h(functions)f(themselv)m(es.)630 4521 y(This)g(optimization)h (requires)f(GNU)j(as)f(and)g(GNU)g(ld.)41 b(Not)32 b(all)e(systems)h (supp)s(ort)e(this)630 4631 y(option.)40 b(`)p Fq(-Wl,--gc-sections)p Fy(')26 b(is)k(ignored)f(without)h(`)p Fq(-static)p Fy('.)150 4792 y Fq(-fno-weak)630 4902 y Fy(Do)45 b(not)g(use)f(w)m(eak)h(sym)m (b)s(ol)e(supp)s(ort,)j(ev)m(en)f(if)e(it)h(is)f(pro)m(vided)g(b)m(y)h (the)h(link)m(er.)81 b(By)630 5011 y(default,)41 b(G)p Fq(++)e Fy(will)e(use)i(w)m(eak)i(sym)m(b)s(ols)d(if)g(they)i(are)f(a)m (v)-5 b(ailable.)68 b(This)37 b(option)i(exists)630 5121 y(only)32 b(for)h(testing,)h(and)f(should)e(not)i(b)s(e)g(used)f(b)m(y) h(end-users;)g(it)g(will)d(result)i(in)g(inferior)630 5230 y(co)s(de)k(and)f(has)g(no)g(b)s(ene\014ts.)55 b(This)34 b(option)h(ma)m(y)h(b)s(e)f(remo)m(v)m(ed)h(in)f(a)g(future)g(release)h (of)630 5340 y(G)p Fq(++)p Fy(.)p eop %%Page: 28 38 28 37 bop 150 -116 a Fy(28)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-nostdinc++)630 408 y Fy(Do)c(not)g(searc)m(h)g(for)g(header)f(\014les)g(in)f(the)h (standard)g(directories)g(sp)s(eci\014c)f(to)i(C)p Fq(++)p Fy(,)g(but)f(do)630 518 y(still)31 b(searc)m(h)i(the)g(other)g (standard)f(directories.)47 b(\(This)32 b(option)g(is)g(used)g(when)g (building)630 628 y(the)f(C)p Fq(++)e Fy(library)-8 b(.\))275 783 y(In)38 b(addition,)h(these)g(optimization,)h(w)m(arning,)g(and)e (co)s(de)h(generation)g(options)f(ha)m(v)m(e)i(meanings)150 893 y(only)29 b(for)i(C)p Fq(++)e Fy(programs:)150 1049 y Fq(-fno-default-inline)630 1158 y Fy(Do)41 b(not)f(assume)g(`)p Fq(inline)p Fy(')f(for)h(functions)f(de\014ned)g(inside)e(a)k(class)f (scop)s(e.)70 b(See)40 b(Sec-)630 1268 y(tion)29 b(3.10)i([Options)d (That)h(Con)m(trol)g(Optimization],)g(page)h(50.)41 b(Note)31 b(that)f(these)g(func-)630 1378 y(tions)22 b(will)d(ha)m(v)m(e)k(link) -5 b(age)22 b(lik)m(e)f(inline)f(functions;)j(they)g(just)e(w)m(on't)i (b)s(e)f(inlined)c(b)m(y)k(default.)150 1533 y Fq(-Wctor-dtor-privacy)j Fy(\(C)p Fq(++)30 b Fy(only\))630 1643 y(W)-8 b(arn)30 b(when)g(a)g(class)g(seems)g(un)m(usable,)f(b)s(ecause)h(all)f(the)i (constructors)f(or)g(destructors)630 1752 y(in)42 b(a)i(class)g(are)g (priv)-5 b(ate)43 b(and)g(the)h(class)f(has)h(no)f(friends)f(or)h (public)e(static)k(mem)m(b)s(er)630 1862 y(functions.)150 2018 y Fq(-Wnon-virtual-dtor)25 b Fy(\(C)p Fq(++)30 b Fy(only\))630 2127 y(W)-8 b(arn)36 b(when)f(a)h(class)f(declares)g(a)i (non-virtual)c(destructor)j(that)g(should)e(probably)g(b)s(e)630 2237 y(virtual,)29 b(b)s(ecause)h(it)g(lo)s(oks)g(lik)m(e)g(the)g (class)g(will)e(b)s(e)i(used)f(p)s(olymorphically)-8 b(.)150 2393 y Fq(-Wreorder)28 b Fy(\(C)p Fq(++)i Fy(only\))630 2502 y(W)-8 b(arn)33 b(when)e(the)i(order)f(of)g(mem)m(b)s(er)g (initializers)d(giv)m(en)k(in)e(the)i(co)s(de)f(do)s(es)g(not)h(matc)m (h)630 2612 y(the)e(order)e(in)h(whic)m(h)f(they)h(m)m(ust)g(b)s(e)g (executed.)42 b(F)-8 b(or)31 b(instance:)870 2739 y Fq(struct)46 b(A)i({)965 2843 y(int)f(i;)965 2946 y(int)g(j;)965 3050 y(A\(\):)g(j)h(\(0\),)e(i)i(\(1\))f({)g(})870 3154 y(};)630 3287 y Fy(Here)31 b(the)g(compiler)e(will)f(w)m(arn)i(that)h(the)g(mem) m(b)s(er)f(initializers)d(for)j(`)p Fq(i)p Fy(')h(and)f(`)p Fq(j)p Fy(')h(will)d(b)s(e)630 3396 y(rearranged)i(to)h(matc)m(h)h(the) e(declaration)g(order)g(of)h(the)f(mem)m(b)s(ers.)275 3552 y(The)f(follo)m(wing)g(`)p Fq(-W...)o Fy(')i(options)e(are)i(not)g (a\013ected)h(b)m(y)e(`)p Fq(-Wall)p Fy('.)150 3708 y Fq(-Weffc++)e Fy(\(C)p Fq(++)i Fy(only\))630 3817 y(W)-8 b(arn)32 b(ab)s(out)g(violations)e(of)i(the)g(follo)m(wing)e(st)m(yle)i (guidelines)d(from)i(Scott)i(Mey)m(ers')g Fn(Ef-)630 3927 y(fectiv)m(e)e(C)p Fq(++)f Fy(b)s(o)s(ok:)705 4059 y Fx(\017)60 b Fy(Item)29 b(11:)41 b(De\014ne)29 b(a)g(cop)m(y)g (constructor)g(and)f(an)h(assignmen)m(t)f(op)s(erator)h(for)g(classes) 810 4169 y(with)g(dynamically)f(allo)s(cated)j(memory)-8 b(.)705 4302 y Fx(\017)60 b Fy(Item)31 b(12:)41 b(Prefer)30 b(initialization)d(to)32 b(assignmen)m(t)e(in)f(constructors.)705 4434 y Fx(\017)60 b Fy(Item)31 b(14:)41 b(Mak)m(e)32 b(destructors)e(virtual)f(in)g(base)i(classes.)705 4567 y Fx(\017)60 b Fy(Item)31 b(15:)41 b(Ha)m(v)m(e)32 b Fq(operator=)c Fy(return)i(a)g(reference)h(to)g Fq(*this)p Fy(.)705 4700 y Fx(\017)60 b Fy(Item)31 b(23:)41 b(Don't)32 b(try)e(to)h(return)e(a)i(reference)g(when)e(y)m(ou)i(m)m(ust)f(return) f(an)i(ob)5 b(ject.)630 4855 y(and)30 b(ab)s(out)g(violations)f(of)i (the)g(follo)m(wing)e(st)m(yle)h(guidelines)e(from)i(Scott)h(Mey)m (ers')h Fn(More)630 4965 y(E\013ectiv)m(e)f(C)p Fq(++)f Fy(b)s(o)s(ok:)705 5098 y Fx(\017)60 b Fy(Item)43 b(6:)64 b(Distinguish)40 b(b)s(et)m(w)m(een)j(pre\014x)e(and)g(p)s(ost\014x)h (forms)f(of)i(incremen)m(t)f(and)810 5207 y(decremen)m(t)31 b(op)s(erators.)705 5340 y Fx(\017)60 b Fy(Item)31 b(7:)41 b(Nev)m(er)31 b(o)m(v)m(erload)g Fq(&&)p Fy(,)f Fq(||)p Fy(,)g(or)h Fq(,)p Fy(.)p eop %%Page: 29 39 29 38 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(29)630 299 y(If)33 b(y)m(ou)h(use)g(this)f(option,)h(y) m(ou)g(should)e(b)s(e)h(a)m(w)m(are)i(that)g(the)f(standard)f(library)e (headers)630 408 y(do)38 b(not)h(ob)s(ey)f(all)g(of)g(these)h (guidelines;)h(y)m(ou)f(can)f(use)h(`)p Fq(grep)29 b(-v)p Fy(')38 b(to)h(\014lter)f(out)g(those)630 518 y(w)m(arnings.)150 689 y Fq(-Wno-deprecated)26 b Fy(\(C)p Fq(++)k Fy(only\))630 799 y(Do)h(not)f(w)m(arn)f(ab)s(out)h(usage)g(of)g(deprecated)g (features.)41 b(See)30 b(Section)g(6.10)h([Deprecated)630 908 y(F)-8 b(eatures],)32 b(page)f(258.)150 1079 y Fq (-Wno-non-template-friend)24 b Fy(\(C)p Fq(++)30 b Fy(only\))630 1189 y(Disable)h(w)m(arnings)g(when)g(non-templatized)g(friend)f (functions)h(are)i(declared)e(within)f(a)630 1298 y(template.)57 b(With)35 b(the)h(adv)m(en)m(t)h(of)e(explicit)f(template)i(sp)s (eci\014cation)f(supp)s(ort)f(in)g(G)p Fq(++)p Fy(,)630 1408 y(if)43 b(the)h(name)f(of)h(the)g(friend)e(is)g(an)i (unquali\014ed-id)39 b(\(i.e.,)48 b(`)p Fq(friend)29 b(foo\(int\))p Fy('\),)46 b(the)630 1517 y(C)p Fq(++)33 b Fy(language)i(sp)s(eci\014cation)e(demands)g(that)i(the)g(friend)d (declare)i(or)g(de\014ne)g(an)g(ordi-)630 1627 y(nary)-8 b(,)28 b(non)m(template)g(function.)39 b(\(Section)27 b(14.5.3\).)43 b(Before)28 b(G)p Fq(++)g Fy(implemen)m(ted)e(explicit) 630 1737 y(sp)s(eci\014cation,)j(unquali\014ed-ids)c(could)k(b)s(e)f (in)m(terpreted)h(as)h(a)g(particular)e(sp)s(ecialization)630 1846 y(of)35 b(a)f(templatized)g(function.)52 b(Because)36 b(this)d(non-conforming)g(b)s(eha)m(vior)h(is)f(no)h(longer)630 1956 y(the)27 b(default)e(b)s(eha)m(vior)h(for)g(G)p Fq(++)p Fy(,)h(`)p Fq(-Wnon-template-friend)p Fy(')21 b(allo)m(ws)26 b(the)g(compiler)f(to)630 2065 y(c)m(hec)m(k)32 b(existing)e(co)s(de)h(for)g(p)s(oten)m(tial)f(trouble)g(sp)s(ots,)g (and)g(is)g(on)h(b)m(y)f(default.)41 b(This)29 b(new)630 2175 y(compiler)g(b)s(eha)m(vior)h(can)i(b)s(e)e(turned)g(o\013)h(with) e(`)p Fq(-Wno-non-template-friend)p Fy(')c(whic)m(h)630 2285 y(k)m(eeps)31 b(the)f(conforman)m(t)i(compiler)c(co)s(de)j(but)f (disables)e(the)j(helpful)c(w)m(arning.)150 2455 y Fq(-Wold-style-cast) f Fy(\(C)p Fq(++)k Fy(only\))630 2565 y(W)-8 b(arn)41 b(if)f(an)h(old-st)m(yle)g(\(C-st)m(yle\))h(cast)g(to)f(a)h(non-v)m (oid)e(t)m(yp)s(e)h(is)f(used)g(within)f(a)i(C)p Fq(++)630 2675 y Fy(program.)121 b(The)57 b(new-st)m(yle)g(casts)h(\(`)p Fq(static_cast)p Fy(',)k(`)p Fq(reinterpret_cast)p Fy(',)f(and)630 2784 y(`)p Fq(const_cast)p Fy('\))41 b(are)i(less)f(vulnerable)f(to)i (unin)m(tended)e(e\013ects,)47 b(and)c(m)m(uc)m(h)f(easier)h(to)630 2894 y(grep)30 b(for.)150 3065 y Fq(-Woverloaded-virtual)25 b Fy(\(C)p Fq(++)30 b Fy(only\))630 3174 y(W)-8 b(arn)25 b(when)f(a)h(function)f(declaration)h(hides)e(virtual)g(functions)h (from)g(a)h(base)h(class.)38 b(F)-8 b(or)630 3284 y(example,)30 b(in:)870 3418 y Fq(struct)46 b(A)i({)965 3522 y(virtual)e(void)h (f\(\);)870 3626 y(};)870 3833 y(struct)f(B:)h(public)f(A)i({)965 3937 y(void)f(f\(int\);)870 4041 y(};)630 4181 y Fy(the)31 b Fq(A)f Fy(class)g(v)m(ersion)g(of)g Fq(f)g Fy(is)g(hidden)e(in)h Fq(B)p Fy(,)h(and)g(co)s(de)g(lik)m(e)g(this:)870 4316 y Fq(B*)47 b(b;)870 4420 y(b->f\(\);)630 4560 y Fy(will)28 b(fail)h(to)i(compile.)150 4731 y Fq(-Wno-pmf-conversions)25 b Fy(\(C)p Fq(++)30 b Fy(only\))630 4840 y(Disable)e(the)i(diagnostic)f (for)g(con)m(v)m(erting)h(a)g(b)s(ound)d(p)s(oin)m(ter)i(to)h(mem)m(b)s (er)e(function)g(to)j(a)630 4950 y(plain)d(p)s(oin)m(ter.)150 5121 y Fq(-Wsign-promo)f Fy(\(C)p Fq(++)j Fy(only\))630 5230 y(W)-8 b(arn)25 b(when)g(o)m(v)m(erload)h(resolution)d(c)m(ho)s (oses)j(a)g(promotion)e(from)h(unsigned)e(or)i(en)m(umeral)630 5340 y(t)m(yp)s(e)34 b(to)h(a)g(signed)e(t)m(yp)s(e)h(o)m(v)m(er)h(a)g (con)m(v)m(ersion)f(to)h(an)f(unsigned)e(t)m(yp)s(e)j(of)f(the)g(same)h (size.)p eop %%Page: 30 40 30 39 bop 150 -116 a Fy(30)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(Previous)e(v)m(ersions)g(of)g(G)p Fq(++)h Fy(w)m(ould)e(try)i(to)g(preserv)m(e)g(unsignedness,)e(but)h (the)h(standard)630 408 y(mandates)i(the)f(curren)m(t)g(b)s(eha)m (vior.)150 558 y Fq(-Wsynth)e Fy(\(C)p Fq(++)i Fy(only\))630 668 y(W)-8 b(arn)39 b(when)e(G)p Fq(++)p Fy('s)h(syn)m(thesis)f(b)s (eha)m(vior)g(do)s(es)h(not)h(matc)m(h)g(that)g(of)f(cfron)m(t.)65 b(F)-8 b(or)39 b(in-)630 777 y(stance:)870 901 y Fq(struct)46 b(A)i({)965 1005 y(operator)e(int)h(\(\);)965 1109 y(A&)h(operator)d(=) j(\(int\);)870 1213 y(};)870 1420 y(main)f(\(\))870 1524 y({)965 1628 y(A)h(a,b;)965 1732 y(a)g(=)f(b;)870 1835 y(})630 1965 y Fy(In)38 b(this)f(example,)k(G)p Fq(++)d Fy(will)e(syn)m(thesize)j(a)g(default)f(`)p Fq(A&)30 b(operator)e(=)i(\(const)f(A&\);)p Fy(',)630 2075 y(while)f(cfron)m(t)j (will)d(use)i(the)h(user-de\014ned)d(`)p Fq(operator)h(=)p Fy('.)150 2318 y Fs(3.6)68 b(Options)45 b(Con)l(trolling)i(Ob)7 b(jectiv)l(e-C)47 b(Dialect)275 2506 y Fy(This)24 b(section)h(describ)s (es)f(the)i(command-line)f(options)g(that)h(are)g(only)f(meaningful)f (for)h(Ob)5 b(jectiv)m(e-)150 2615 y(C)37 b(programs;)j(but)d(y)m(ou)g (can)g(also)g(use)g(most)h(of)f(the)g(GNU)h(compiler)e(options)g (regardless)h(of)g(what)150 2725 y(language)26 b(y)m(our)g(program)g (is)f(in.)38 b(F)-8 b(or)27 b(example,)g(y)m(ou)f(migh)m(t)g(compile)f (a)i(\014le)e Fq(some_class.m)d Fy(lik)m(e)k(this:)390 2849 y Fq(gcc)47 b(-g)g(-fgnu-runtime)d(-O)j(-c)h(some_class.m)150 2978 y Fy(In)30 b(this)h(example,)g(only)f(`)p Fq(-fgnu-runtime)p Fy(')e(is)j(an)g(option)f(mean)m(t)i(only)f(for)g(Ob)5 b(jectiv)m(e-C)31 b(programs;)150 3088 y(y)m(ou)g(can)f(use)g(the)h (other)g(options)e(with)g(an)m(y)i(language)g(supp)s(orted)d(b)m(y)j (GCC.)275 3218 y(Here)f(is)g(a)h(list)e(of)h(options)g(that)h(are)g Fr(only)39 b Fy(for)30 b(compiling)e(Ob)5 b(jectiv)m(e-C)31 b(programs:)150 3368 y Fq(-fconstant-string-class=)o Fn(class-name)630 3477 y Fy(Use)39 b Fn(class-name)k Fy(as)c(the)f(name)g(of)h(the)f(class)g(to)h(instan)m(tiate)g(for)f (eac)m(h)h(literal)e(string)630 3587 y(sp)s(eci\014ed)20 b(with)g(the)i(syn)m(tax)g Fq(@"...)o(")p Fy(.)37 b(The)22 b(default)e(class)i(name)f(is)g Fq(NXConstantString)p Fy(.)150 3737 y Fq(-fgnu-runtime)630 3846 y Fy(Generate)27 b(ob)5 b(ject)26 b(co)s(de)g(compatible)f(with)f(the)h(standard)g(GNU)h (Ob)5 b(jectiv)m(e-C)26 b(run)m(time.)630 3956 y(This)j(is)g(the)i (default)e(for)h(most)h(t)m(yp)s(es)f(of)h(systems.)150 4106 y Fq(-fnext-runtime)630 4215 y Fy(Generate)38 b(output)f (compatible)f(with)g(the)h(NeXT)g(run)m(time.)59 b(This)35 b(is)h(the)h(default)f(for)630 4325 y(NeXT-based)31 b(systems,)f (including)d(Darwin)j(and)f(Mac)j(OS)d(X.)150 4475 y Fq(-gen-decls)630 4584 y Fy(Dump)c(in)m(terface)h(declarations)f(for)g (all)g(classes)g(seen)h(in)e(the)i(source)g(\014le)e(to)j(a)f(\014le)e (named)630 4694 y(`)p Fn(sourcename)p Fq(.decl)p Fy('.)150 4844 y Fq(-Wno-protocol)630 4953 y Fy(Do)i(not)f(w)m(arn)g(if)f(metho)s (ds)h(required)e(b)m(y)i(a)g(proto)s(col)h(are)f(not)g(implemen)m(ted)f (in)g(the)h(class)630 5063 y(adopting)30 b(it.)150 5213 y Fq(-Wselector)630 5322 y Fy(W)-8 b(arn)31 b(if)e(a)i(selector)g(has)f (m)m(ultiple)e(metho)s(ds)i(of)g(di\013eren)m(t)g(t)m(yp)s(es)g (de\014ned.)p eop %%Page: 31 41 31 40 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(31)150 299 y Fs(3.7)68 b(Options)45 b(to)h(Con)l(trol)g (Diagnostic)g(Messages)g(F)-11 b(ormatting)275 491 y Fy(T)j(raditionally)g(,)39 b(diagnostic)f(messages)i(ha)m(v)m(e)g(b)s (een)e(formatted)i(irresp)s(ectiv)m(e)e(of)h(the)g(output)g(de-)150 601 y(vice's)32 b(asp)s(ect)f(\(e.g.)i(its)e(width,)36 b(.)22 b(.)h(.)11 b(\).)44 b(The)31 b(options)g(describ)s(ed)e(b)s(elo) m(w)i(can)g(b)s(e)g(used)g(to)h(con)m(trol)g(the)150 710 y(diagnostic)39 b(messages)j(formatting)d(algorithm,)j(e.g.)g(ho)m (w)e(man)m(y)g(c)m(haracters)h(p)s(er)e(line,)i(ho)m(w)g(often)150 820 y(source)e(lo)s(cation)f(information)f(should)f(b)s(e)i(rep)s (orted.)65 b(Righ)m(t)38 b(no)m(w,)j(only)d(the)g(C)p Fq(++)g Fy(fron)m(t)h(end)f(can)150 930 y(honor)c(these)h(options.)53 b(Ho)m(w)m(ev)m(er)37 b(it)d(is)g(exp)s(ected,)j(in)c(the)i(near)g (future,)g(that)g(the)g(remaining)e(fron)m(t)150 1039 y(ends)d(w)m(ould)f(b)s(e)g(able)h(to)h(digest)g(them)f(correctly)-8 b(.)150 1198 y Fq(-fmessage-length=)p Fn(n)630 1308 y Fy(T)g(ry)23 b(to)h(format)g(error)f(messages)h(so)g(that)g(they)g (\014t)f(on)g(lines)f(of)i(ab)s(out)f Fn(n)g Fy(c)m(haracters.)39 b(The)630 1417 y(default)32 b(is)h(72)h(c)m(haracters)h(for)e Fq(g++)f Fy(and)h(0)g(for)g(the)h(rest)f(of)h(the)f(fron)m(t)g(ends)g (supp)s(orted)630 1527 y(b)m(y)h(GCC.)50 b(If)33 b Fn(n)g Fy(is)g(zero,)j(then)d(no)h(line-wrapping)c(will)h(b)s(e)i(done;)j(eac) m(h)e(error)g(message)630 1636 y(will)28 b(app)s(ear)h(on)i(a)f(single) g(line.)150 1795 y Fq(-fdiagnostics-show-locat)o(ion=)o(once)630 1905 y Fy(Only)g(meaningful)f(in)h(line-wrapping)e(mo)s(de.)43 b(Instructs)30 b(the)i(diagnostic)e(messages)j(re-)630 2014 y(p)s(orter)j(to)i(emit)e Fr(onc)-5 b(e)44 b Fy(source)37 b(lo)s(cation)g(information;)h(that)g(is,)f(in)f(case)i(the)f(message) 630 2124 y(is)e(to)s(o)i(long)f(to)h(\014t)f(on)g(a)g(single)f(ph)m (ysical)g(line)g(and)g(has)h(to)h(b)s(e)e(wrapp)s(ed,)h(the)h(source) 630 2234 y(lo)s(cation)c(w)m(on't)g(b)s(e)f(emitted)h(\(as)h (pre\014x\))e(again,)i(o)m(v)m(er)g(and)e(o)m(v)m(er,)k(in)31 b(subsequen)m(t)h(con-)630 2343 y(tin)m(uation)d(lines.)39 b(This)29 b(is)g(the)i(default)e(b)s(eha)m(vior.)150 2502 y Fq(-fdiagnostics-show-locat)o(ion=)o(ever)o(y-l)o(ine)630 2612 y Fy(Only)43 b(meaningful)g(in)h(line-wrapping)e(mo)s(de.)84 b(Instructs)44 b(the)h(diagnostic)g(messages)630 2721 y(rep)s(orter)35 b(to)h(emit)e(the)i(same)f(source)h(lo)s(cation)f (information)e(\(as)j(pre\014x\))e(for)h(ph)m(ysical)630 2831 y(lines)27 b(that)h(result)g(from)f(the)i(pro)s(cess)f(of)g (breaking)g(a)g(message)i(whic)m(h)d(is)g(to)s(o)i(long)f(to)h(\014t) 630 2940 y(on)h(a)h(single)e(line.)150 3197 y Fs(3.8)68 b(Options)45 b(to)h(Request)g(or)f(Suppress)f(W)-11 b(arnings)275 3389 y Fy(W)j(arnings)39 b(are)i(diagnostic)f(messages)i(that)f(rep)s (ort)f(constructions)g(whic)m(h)f(are)i(not)g(inheren)m(tly)150 3499 y(erroneous)30 b(but)g(whic)m(h)f(are)i(risky)e(or)h(suggest)h (there)g(ma)m(y)g(ha)m(v)m(e)g(b)s(een)f(an)g(error.)275 3633 y(Y)-8 b(ou)53 b(can)g(request)f(man)m(y)h(sp)s(eci\014c)f(w)m (arnings)f(with)g(options)h(b)s(eginning)e(`)p Fq(-W)p Fy(',)59 b(for)52 b(example)150 3743 y(`)p Fq(-Wimplicit)p Fy(')31 b(to)j(request)f(w)m(arnings)f(on)h(implicit)d(declarations.)49 b(Eac)m(h)34 b(of)f(these)h(sp)s(eci\014c)e(w)m(arning)150 3852 y(options)45 b(also)h(has)g(a)h(negativ)m(e)g(form)f(b)s(eginning) d(`)p Fq(-Wno-)p Fy(')i(to)i(turn)e(o\013)h(w)m(arnings;)53 b(for)46 b(example,)150 3962 y(`)p Fq(-Wno-implicit)p Fy('.)91 b(This)47 b(man)m(ual)g(lists)g(only)g(one)i(of)f(the)g(t)m(w) m(o)i(forms,)i(whic)m(hev)m(er)c(is)f(not)i(the)150 4072 y(default.)275 4206 y(The)29 b(follo)m(wing)g(options)h(con)m(trol)h (the)f(amoun)m(t)h(and)f(kinds)e(of)j(w)m(arnings)e(pro)s(duced)g(b)m (y)h(GCC;)g(for)150 4315 y(further,)35 b(language-sp)s(eci\014c)g (options)g(also)g(refer)g(to)h(Section)f(3.5)h([C)p Fq(++)f Fy(Dialect)h(Options],)f(page)h(24)150 4425 y(and)30 b(Section)g(3.6)h([Ob)5 b(jectiv)m(e-C)31 b(Dialect)g(Options],)f(page) h(30.)150 4633 y Fq(-fsyntax-only)630 4743 y Fy(Chec)m(k)g(the)f(co)s (de)h(for)f(syn)m(tax)h(errors,)f(but)g(don't)g(do)g(an)m(ything)g(b)s (ey)m(ond)g(that.)150 4902 y Fq(-pedantic)630 5011 y Fy(Issue)i(all)g(the)h(w)m(arnings)e(demanded)h(b)m(y)g(strict)h(ISO)f (C)g(and)g(ISO)g(C)p Fq(++)p Fy(;)h(reject)h(all)d(pro-)630 5121 y(grams)42 b(that)h(use)e(forbidden)f(extensions,)k(and)e(some)g (other)h(programs)e(that)i(do)f(not)630 5230 y(follo)m(w)31 b(ISO)f(C)h(and)g(ISO)f(C)p Fq(++)p Fy(.)43 b(F)-8 b(or)32 b(ISO)f(C,)g(follo)m(ws)f(the)i(v)m(ersion)f(of)h(the)f(ISO)g(C)g (stan-)630 5340 y(dard)e(sp)s(eci\014ed)g(b)m(y)h(an)m(y)h(`)p Fq(-std)p Fy(')f(option)g(used.)p eop %%Page: 32 42 32 41 bop 150 -116 a Fy(32)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(V)-8 b(alid)32 b(ISO)h(C)g(and)g(ISO)f (C)p Fq(++)h Fy(programs)g(should)f(compile)g(prop)s(erly)f(with)h(or)i (without)630 408 y(this)26 b(option)h(\(though)g(a)g(rare)h(few)f(will) d(require)i(`)p Fq(-ansi)p Fy(')g(or)h(a)h(`)p Fq(-std)p Fy(')e(option)h(sp)s(ecifying)630 518 y(the)39 b(required)e(v)m(ersion) i(of)g(ISO)f(C\).)67 b(Ho)m(w)m(ev)m(er,)43 b(without)38 b(this)g(option,)j(certain)e(GNU)630 628 y(extensions)26 b(and)g(traditional)f(C)h(and)g(C)p Fq(++)g Fy(features)h(are)g(supp)s (orted)e(as)h(w)m(ell.)39 b(With)26 b(this)630 737 y(option,)k(they)h (are)f(rejected.)630 874 y(`)p Fq(-pedantic)p Fy(')25 b(do)s(es)i(not)g(cause)h(w)m(arning)e(messages)i(for)f(use)f(of)i(the) f(alternate)h(k)m(eyw)m(ords)630 984 y(whose)33 b(names)g(b)s(egin)f (and)h(end)f(with)g(`)p Fq(__)p Fy('.)50 b(P)m(edan)m(tic)33 b(w)m(arnings)f(are)i(also)f(disabled)e(in)630 1093 y(the)g(expression) f(that)h(follo)m(ws)f Fq(__extension__)p Fy(.)39 b(Ho)m(w)m(ev)m(er,)33 b(only)d(system)h(header)g(\014les)630 1203 y(should)i(use)i(these)h (escap)s(e)f(routes;)j(application)c(programs)h(should)e(a)m(v)m(oid)j (them.)55 b(See)630 1313 y(Section)30 b(5.40)i([Alternate)f(Keyw)m (ords],)g(page)g(213.)630 1450 y(Some)41 b(users)g(try)g(to)h(use)f(`)p Fq(-pedantic)p Fy(')e(to)j(c)m(hec)m(k)h(programs)d(for)h(strict)g(ISO) g(C)f(con-)630 1559 y(formance.)57 b(They)35 b(so)s(on)g(\014nd)f(that) i(it)f(do)s(es)g(not)h(do)f(quite)g(what)h(they)g(w)m(an)m(t:)52 b(it)35 b(\014nds)630 1669 y(some)40 b(non-ISO)e(practices,)k(but)c (not)i(all|only)d(those)j(for)f(whic)m(h)f(ISO)g(C)h Fr(r)-5 b(e)g(quir)g(es)48 b Fy(a)630 1778 y(diagnostic,)30 b(and)g(some)h(others)f(for)g(whic)m(h)f(diagnostics)h(ha)m(v)m(e)i(b)s (een)d(added.)630 1915 y(A)35 b(feature)h(to)g(rep)s(ort)f(an)m(y)h (failure)d(to)j(conform)g(to)g(ISO)e(C)h(migh)m(t)g(b)s(e)g(useful)e (in)i(some)630 2025 y(instances,)f(but)f(w)m(ould)g(require)f (considerable)g(additional)g(w)m(ork)i(and)f(w)m(ould)f(b)s(e)i(quite) 630 2134 y(di\013eren)m(t)f(from)h(`)p Fq(-pedantic)p Fy('.)49 b(W)-8 b(e)35 b(don't)f(ha)m(v)m(e)h(plans)d(to)j(supp)s(ort)d (suc)m(h)i(a)g(feature)g(in)630 2244 y(the)d(near)f(future.)630 2381 y(Where)36 b(the)h(standard)e(sp)s(eci\014ed)f(with)h(`)p Fq(-std)p Fy(')g(represen)m(ts)h(a)h(GNU)f(extended)g(dialect)630 2491 y(of)h(C,)f(suc)m(h)h(as)g(`)p Fq(gnu89)p Fy(')e(or)i(`)p Fq(gnu99)p Fy(',)h(there)f(is)e(a)j(corresp)s(onding)c Fn(base)j(standard)p Fy(,)h(the)630 2600 y(v)m(ersion)30 b(of)g(ISO)f(C)h(on)g(whic)m(h)f(the)h(GNU)h(extended)f(dialect)g(is)f (based.)41 b(W)-8 b(arnings)29 b(from)630 2710 y(`)p Fq(-pedantic)p Fy(')d(are)j(giv)m(en)f(where)g(they)g(are)h(required)d (b)m(y)i(the)h(base)f(standard.)39 b(\(It)29 b(w)m(ould)630 2819 y(not)h(mak)m(e)g(sense)f(for)g(suc)m(h)g(w)m(arnings)f(to)j(b)s (e)d(giv)m(en)i(only)e(for)h(features)h(not)f(in)f(the)i(sp)s(ec-)630 2929 y(i\014ed)g(GNU)i(C)e(dialect,)i(since)e(b)m(y)h(de\014nition)e (the)i(GNU)h(dialects)f(of)g(C)g(include)e(all)h(fea-)630 3039 y(tures)f(the)g(compiler)e(supp)s(orts)g(with)h(the)h(giv)m(en)g (option,)g(and)g(there)g(w)m(ould)f(b)s(e)g(nothing)630 3148 y(to)j(w)m(arn)f(ab)s(out.\))150 3313 y Fq(-pedantic-errors)630 3422 y Fy(Lik)m(e)g(`)p Fq(-pedantic)p Fy(',)f(except)i(that)g(errors)f (are)h(pro)s(duced)d(rather)j(than)f(w)m(arnings.)150 3587 y Fq(-w)384 b Fy(Inhibit)28 b(all)h(w)m(arning)g(messages.)150 3751 y Fq(-Wno-import)630 3861 y Fy(Inhibit)f(w)m(arning)h(messages)i (ab)s(out)f(the)h(use)f(of)g(`)p Fq(#import)p Fy('.)150 4025 y Fq(-Wchar-subscripts)630 4134 y Fy(W)-8 b(arn)31 b(if)e(an)h(arra)m(y)g(subscript)e(has)i(t)m(yp)s(e)h Fq(char)p Fy(.)39 b(This)28 b(is)i(a)g(common)h(cause)f(of)h(error,)f (as)630 4244 y(programmers)g(often)h(forget)g(that)g(this)e(t)m(yp)s(e) i(is)e(signed)g(on)i(some)f(mac)m(hines.)150 4408 y Fq(-Wcomment)630 4518 y Fy(W)-8 b(arn)35 b(whenev)m(er)f(a)g(commen)m(t-start)i (sequence)f(`)p Fq(/*)p Fy(')f(app)s(ears)f(in)g(a)i(`)p Fq(/*)p Fy(')f(commen)m(t,)i(or)630 4628 y(whenev)m(er)30 b(a)h(Bac)m(kslash-Newline)f(app)s(ears)g(in)f(a)h(`)p Fq(//)p Fy(')h(commen)m(t.)150 4792 y Fq(-Wformat)96 b Fy(Chec)m(k)21 b(calls)g(to)g Fq(printf)f Fy(and)g Fq(scanf)p Fy(,)i(etc.,)j(to)c(mak)m(e)i(sure)d(that)i(the)f(argumen)m (ts)g(supplied)630 4902 y(ha)m(v)m(e)30 b(t)m(yp)s(es)g(appropriate)e (to)i(the)f(format)h(string)e(sp)s(eci\014ed,)g(and)h(that)g(the)h(con) m(v)m(ersions)630 5011 y(sp)s(eci\014ed)38 b(in)g(the)h(format)h (string)e(mak)m(e)j(sense.)67 b(This)38 b(includes)f(standard)h (functions,)630 5121 y(and)20 b(others)h(sp)s(eci\014ed)e(b)m(y)h (format)h(attributes)g(\(see)g(Section)g(5.26)h([F)-8 b(unction)21 b(A)m(ttributes],)630 5230 y(page)i(172\),)i(in)c(the)h Fq(printf)p Fy(,)g Fq(scanf)p Fy(,)g Fq(strftime)e Fy(and)h Fq(strfmon)f Fy(\(an)i(X/Op)s(en)f(extension,)630 5340 y(not)31 b(in)e(the)h(C)g(standard\))g(families.)p eop %%Page: 33 43 33 42 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(33)630 299 y(The)37 b(formats)g(are)g(c)m(hec)m(k)m(ed) i(against)e(the)h(format)f(features)g(supp)s(orted)e(b)m(y)i(GNU)h(lib) s(c)630 408 y(v)m(ersion)f(2.2.)62 b(These)38 b(include)d(all)h(ISO)g (C89)i(and)f(C99)h(features,)h(as)f(w)m(ell)e(as)i(features)630 518 y(from)29 b(the)g(Single)e(Unix)h(Sp)s(eci\014cation)f(and)i(some)g (BSD)h(and)e(GNU)i(extensions.)39 b(Other)630 628 y(library)23 b(implemen)m(tations)i(ma)m(y)h(not)g(supp)s(ort)e(all)h(these)h (features;)i(GCC)d(do)s(es)h(not)g(sup-)630 737 y(p)s(ort)33 b(w)m(arning)g(ab)s(out)h(features)g(that)h(go)f(b)s(ey)m(ond)g(a)g (particular)e(library's)g(limitations.)630 847 y(Ho)m(w)m(ev)m(er,)g (if)d(`)p Fq(-pedantic)p Fy(')f(is)h(used)h(with)e(`)p Fq(-Wformat)p Fy(',)h(w)m(arnings)g(will)e(b)s(e)i(giv)m(en)h(ab)s(out) 630 956 y(format)j(features)g(not)f(in)f(the)i(selected)g(standard)f(v) m(ersion)f(\(but)i(not)f(for)g Fq(strfmon)f Fy(for-)630 1066 y(mats,)39 b(since)e(those)g(are)h(not)f(in)f(an)m(y)h(v)m(ersion) g(of)g(the)h(C)e(standard\).)61 b(See)37 b(Section)g(3.4)630 1176 y([Options)29 b(Con)m(trolling)g(C)h(Dialect],)h(page)g(19.)630 1309 y(`)p Fq(-Wformat)p Fy(')47 b(is)g(included)e(in)i(`)p Fq(-Wall)p Fy('.)94 b(F)-8 b(or)49 b(more)f(con)m(trol)h(o)m(v)m(er)h (some)e(asp)s(ects)h(of)630 1418 y(format)33 b(c)m(hec)m(king,)g(the)g (options)e(`)p Fq(-Wno-format-y2k)p Fy(',)e(`)p Fq (-Wno-format-extra-args)p Fy(',)630 1528 y(`)p Fq(-Wformat-nonliteral)p Fy(',)19 b(`)p Fq(-Wformat-security)p Fy(')f(and)j(`)p Fq(-Wformat=2)p Fy(')f(are)i(a)m(v)-5 b(ailable,)630 1637 y(but)30 b(are)g(not)h(included)d(in)h(`)p Fq(-Wall)p Fy('.)150 1794 y Fq(-Wno-format-y2k)630 1904 y Fy(If)23 b(`)p Fq(-Wformat)p Fy(')f(is)h(sp)s(eci\014ed,)g(do)h(not)f(w)m(arn)h (ab)s(out)f Fq(strftime)e Fy(formats)j(whic)m(h)e(ma)m(y)j(yield)630 2013 y(only)k(a)i(t)m(w)m(o-digit)g(y)m(ear.)150 2170 y Fq(-Wno-format-extra-args)630 2279 y Fy(If)40 b(`)p Fq(-Wformat)p Fy(')f(is)g(sp)s(eci\014ed,)j(do)e(not)h(w)m(arn)f(ab)s (out)g(excess)h(argumen)m(ts)g(to)g(a)g Fq(printf)630 2389 y Fy(or)36 b Fq(scanf)e Fy(format)j(function.)56 b(The)35 b(C)h(standard)f(sp)s(eci\014es)f(that)j(suc)m(h)e(argumen)m (ts)i(are)630 2498 y(ignored.)630 2632 y(Where)42 b(the)h(un)m(used)d (argumen)m(ts)j(lie)d(b)s(et)m(w)m(een)j(used)e(argumen)m(ts)i(that)f (are)h(sp)s(eci\014ed)630 2741 y(with)26 b(`)p Fq($)p Fy(')i(op)s(erand)f(n)m(um)m(b)s(er)g(sp)s(eci\014cations,)g(normally)f (w)m(arnings)g(are)i(still)e(giv)m(en,)j(since)630 2851 y(the)36 b(implemen)m(tation)f(could)h(not)g(kno)m(w)h(what)f(t)m(yp)s (e)g(to)h(pass)f(to)h Fq(va_arg)e Fy(to)i(skip)e(the)630 2960 y(un)m(used)41 b(argumen)m(ts.)76 b(Ho)m(w)m(ev)m(er,)47 b(in)41 b(the)h(case)i(of)e Fq(scanf)f Fy(formats,)k(this)c(option)h (will)630 3070 y(suppress)28 b(the)i(w)m(arning)f(if)f(the)j(un)m(used) d(argumen)m(ts)i(are)h(all)d(p)s(oin)m(ters,)h(since)h(the)g(Single)630 3180 y(Unix)f(Sp)s(eci\014cation)g(sa)m(ys)i(that)g(suc)m(h)f(un)m (used)f(argumen)m(ts)i(are)g(allo)m(w)m(ed.)150 3336 y Fq(-Wformat-nonliteral)630 3446 y Fy(If)22 b(`)p Fq(-Wformat)p Fy(')f(is)h(sp)s(eci\014ed,)g(also)h(w)m(arn)f(if)g(the)h(format)g (string)e(is)h(not)h(a)g(string)e(literal)h(and)630 3555 y(so)28 b(cannot)h(b)s(e)e(c)m(hec)m(k)m(ed,)k(unless)26 b(the)i(format)h(function)d(tak)m(es)k(its)d(format)h(argumen)m(ts)h (as)630 3665 y(a)i Fq(va_list)p Fy(.)150 3821 y Fq(-Wformat-security) 630 3931 y Fy(If)f(`)p Fq(-Wformat)p Fy(')f(is)g(sp)s(eci\014ed,)g (also)i(w)m(arn)f(ab)s(out)g(uses)g(of)h(format)g(functions)e(that)i (repre-)630 4041 y(sen)m(t)k(p)s(ossible)d(securit)m(y)i(problems.)51 b(A)m(t)35 b(presen)m(t,)h(this)d(w)m(arns)h(ab)s(out)g(calls)g(to)h Fq(printf)630 4150 y Fy(and)h Fq(scanf)f Fy(functions)g(where)h(the)h (format)g(string)e(is)h(not)g(a)h(string)f(literal)f(and)h(there)630 4260 y(are)h(no)f(format)h(argumen)m(ts,)i(as)d(in)g Fq(printf)28 b(\(foo\);)p Fy(.)58 b(This)34 b(ma)m(y)j(b)s(e)f(a)h (securit)m(y)f(hole)630 4369 y(if)42 b(the)h(format)g(string)f(came)i (from)e(un)m(trusted)g(input)f(and)h(con)m(tains)h(`)p Fq(\045n)p Fy('.)78 b(\(This)42 b(is)630 4479 y(curren)m(tly)g(a)i (subset)e(of)h(what)g(`)p Fq(-Wformat-nonliteral)p Fy(')c(w)m(arns)j (ab)s(out,)k(but)d(in)e(fu-)630 4589 y(ture)31 b(w)m(arnings)e(ma)m(y)i (b)s(e)g(added)f(to)h(`)p Fq(-Wformat-security)p Fy(')c(that)k(are)g (not)g(included)d(in)630 4698 y(`)p Fq(-Wformat-nonliteral)p Fy('.\))150 4855 y Fq(-Wformat=2)630 4964 y Fy(Enable)36 b(`)p Fq(-Wformat)p Fy(')f(plus)g(format)i(c)m(hec)m(ks)h(not)f (included)d(in)h(`)p Fq(-Wformat)p Fy('.)59 b(Curren)m(tly)630 5074 y(equiv)-5 b(alen)m(t)30 b(to)h(`)p Fq(-Wformat)d (-Wformat-nonliteral)d(-Wformat-security)p Fy('.)150 5230 y Fq(-Wimplicit-int)630 5340 y Fy(W)-8 b(arn)31 b(when)e(a)i(declaration)f(do)s(es)g(not)g(sp)s(ecify)f(a)i(t)m(yp)s (e.)p eop %%Page: 34 44 34 43 bop 150 -116 a Fy(34)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-Wimplicit-function-decl)o(arat)o (ion)150 408 y(-Werror-implicit-functio)o(n-de)o(clar)o(ati)o(on)630 518 y Fy(Giv)m(e)h(a)g(w)m(arning)e(\(or)h(error\))h(whenev)m(er)f(a)h (function)e(is)g(used)h(b)s(efore)g(b)s(eing)f(declared.)150 713 y Fq(-Wimplicit)630 822 y Fy(Same)h(as)h(`)p Fq(-Wimplicit-int)p Fy(')c(and)j(`)p Fq(-Wimplicit-function-decl)o(arat)o(ion)p Fy('.)150 1017 y Fq(-Wmain)192 b Fy(W)-8 b(arn)45 b(if)e(the)h(t)m(yp)s (e)h(of)f(`)p Fq(main)p Fy(')f(is)h(suspicious.)79 b(`)p Fq(main)p Fy(')44 b(should)e(b)s(e)i(a)g(function)f(with)630 1127 y(external)i(link)-5 b(age,)49 b(returning)43 b(in)m(t,)49 b(taking)d(either)f(zero)h(argumen)m(ts,)k(t)m(w)m(o,)g(or)c(three)630 1236 y(argumen)m(ts)31 b(of)f(appropriate)g(t)m(yp)s(es.)150 1431 y Fq(-Wmissing-braces)630 1540 y Fy(W)-8 b(arn)27 b(if)f(an)g(aggregate)k(or)c(union)f(initializer)f(is)h(not)i(fully)e (brac)m(k)m(eted.)41 b(In)26 b(the)g(follo)m(wing)630 1650 y(example,)40 b(the)e(initializer)e(for)i(`)p Fq(a)p Fy(')g(is)f(not)i(fully)c(brac)m(k)m(eted,)42 b(but)c(that)h(for)f(`)p Fq(b)p Fy(')g(is)f(fully)630 1760 y(brac)m(k)m(eted.)870 1906 y Fq(int)47 b(a[2][2])f(=)h({)h(0,)f(1,)g(2,)g(3)h(};)870 2010 y(int)f(b[2][2])f(=)h({)h({)f(0,)g(1)h(},)f({)g(2,)h(3)f(})g(};) 150 2204 y(-Wparentheses)630 2314 y Fy(W)-8 b(arn)34 b(if)e(paren)m(theses)i(are)g(omitted)g(in)e(certain)i(con)m(texts,)i (suc)m(h)d(as)h(when)f(there)g(is)g(an)630 2424 y(assignmen)m(t)28 b(in)e(a)i(con)m(text)i(where)d(a)i(truth)e(v)-5 b(alue)27 b(is)g(exp)s(ected,)i(or)f(when)f(op)s(erators)h(are)630 2533 y(nested)i(whose)h(precedence)f(p)s(eople)g(often)h(get)g (confused)f(ab)s(out.)630 2685 y(Also)25 b(w)m(arn)f(ab)s(out)h (constructions)f(where)h(there)g(ma)m(y)h(b)s(e)e(confusion)g(to)h (whic)m(h)f Fq(if)g Fy(state-)630 2795 y(men)m(t)31 b(an)f Fq(else)f Fy(branc)m(h)h(b)s(elongs.)40 b(Here)31 b(is)e(an)h(example)g (of)h(suc)m(h)f(a)h(case:)870 2941 y Fq({)965 3045 y(if)48 b(\(a\))1061 3149 y(if)f(\(b\))1156 3252 y(foo)g(\(\);)965 3356 y(else)1061 3460 y(bar)g(\(\);)870 3564 y(})630 3709 y Fy(In)26 b(C,)h(ev)m(ery)h Fq(else)d Fy(branc)m(h)i(b)s(elongs)e (to)j(the)f(innermost)f(p)s(ossible)e Fq(if)i Fy(statemen)m(t,)k(whic)m (h)630 3818 y(in)d(this)h(example)g(is)g Fq(if)i(\(b\))p Fy(.)39 b(This)27 b(is)g(often)j(not)e(what)h(the)g(programmer)f(exp)s (ected,)i(as)630 3928 y(illustrated)g(in)g(the)i(ab)s(o)m(v)m(e)h (example)e(b)m(y)h(inden)m(tation)f(the)h(programmer)f(c)m(hose.)46 b(When)630 4038 y(there)24 b(is)f(the)h(p)s(oten)m(tial)g(for)f(this)g (confusion,)h(GCC)g(will)d(issue)i(a)h(w)m(arning)f(when)g(this)g (\015ag)630 4147 y(is)g(sp)s(eci\014ed.)37 b(T)-8 b(o)24 b(eliminate)f(the)h(w)m(arning,)g(add)g(explicit)e(braces)i(around)f (the)h(innermost)630 4257 y Fq(if)i Fy(statemen)m(t)i(so)e(there)h(is)e (no)h(w)m(a)m(y)h(the)g Fq(else)e Fy(could)g(b)s(elong)g(to)i(the)f (enclosing)g Fq(if)p Fy(.)38 b(The)630 4366 y(resulting)28 b(co)s(de)j(w)m(ould)e(lo)s(ok)h(lik)m(e)g(this:)870 4513 y Fq({)965 4616 y(if)48 b(\(a\))1061 4720 y({)1156 4824 y(if)g(\(b\))1252 4928 y(foo)f(\(\);)1156 5032 y(else)1252 5135 y(bar)g(\(\);)1061 5239 y(})870 5343 y(})p eop %%Page: 35 45 35 44 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(35)150 299 y Fq(-Wsequence-point)630 408 y Fy(W)-8 b(arn)35 b(ab)s(out)f(co)s(de)h(that)g(ma)m(y)h(ha)m(v)m (e)g(unde\014ned)c(seman)m(tics)j(b)s(ecause)g(of)f(violations)g(of)630 518 y(sequence)d(p)s(oin)m(t)e(rules)g(in)g(the)i(C)f(standard.)630 650 y(The)c(C)g(standard)g(de\014nes)g(the)g(order)g(in)g(whic)m(h)f (expressions)g(in)g(a)i(C)f(program)h(are)g(ev)-5 b(al-)630 759 y(uated)33 b(in)f(terms)g(of)h Fn(sequence)h(p)s(oin)m(ts)p Fy(,)e(whic)m(h)g(represen)m(t)h(a)g(partial)f(ordering)f(b)s(et)m(w)m (een)630 869 y(the)23 b(execution)f(of)h(parts)f(of)g(the)h(program:)36 b(those)23 b(executed)g(b)s(efore)f(the)h(sequence)g(p)s(oin)m(t,)630 978 y(and)h(those)g(executed)i(after)f(it.)38 b(These)24 b(o)s(ccur)g(after)h(the)f(ev)-5 b(aluation)24 b(of)g(a)h(full)d (expression)630 1088 y(\(one)34 b(whic)m(h)f(is)f(not)i(part)f(of)h(a)g (larger)f(expression\),)h(after)g(the)g(ev)-5 b(aluation)33 b(of)h(the)g(\014rst)630 1198 y(op)s(erand)25 b(of)i(a)f Fq(&&)p Fy(,)h Fq(||)p Fy(,)g Fq(?)j(:)c Fy(or)g Fq(,)g Fy(\(comma\))h(op)s(erator,)h(b)s(efore)e(a)h(function)e(is)g(called)g (\(but)630 1307 y(after)41 b(the)f(ev)-5 b(aluation)40 b(of)h(its)e(argumen)m(ts)i(and)f(the)g(expression)f(denoting)h(the)h (called)630 1417 y(function\),)26 b(and)g(in)f(certain)h(other)g (places.)39 b(Other)26 b(than)f(as)i(expressed)e(b)m(y)h(the)h (sequence)630 1526 y(p)s(oin)m(t)37 b(rules,)i(the)g(order)f(of)g(ev)-5 b(aluation)38 b(of)g(sub)s(expressions)e(of)i(an)g(expression)f(is)h (not)630 1636 y(sp)s(eci\014ed.)g(All)25 b(these)h(rules)f(describ)s(e) g(only)g(a)i(partial)e(order)g(rather)i(than)f(a)g(total)h(order,)630 1745 y(since,)40 b(for)f(example,)i(if)c(t)m(w)m(o)k(functions)c(are)i (called)f(within)e(one)j(expression)f(with)f(no)630 1855 y(sequence)27 b(p)s(oin)m(t)f(b)s(et)m(w)m(een)i(them,)g(the)f(order)f (in)g(whic)m(h)g(the)h(functions)e(are)j(called)e(is)g(not)630 1965 y(sp)s(eci\014ed.)43 b(Ho)m(w)m(ev)m(er,)34 b(the)e(standards)f (committee)i(ha)m(v)m(e)g(ruled)d(that)i(function)e(calls)h(do)630 2074 y(not)g(o)m(v)m(erlap.)630 2206 y(It)f(is)f(not)h(sp)s(eci\014ed)e (when)h(b)s(et)m(w)m(een)h(sequence)g(p)s(oin)m(ts)f(mo)s (di\014cations)f(to)j(the)f(v)-5 b(alues)29 b(of)630 2315 y(ob)5 b(jects)34 b(tak)m(e)h(e\013ect.)52 b(Programs)33 b(whose)h(b)s(eha)m(vior)e(dep)s(ends)g(on)h(this)f(ha)m(v)m(e)j (unde\014ned)630 2425 y(b)s(eha)m(vior;)46 b(the)c(C)f(standard)g(sp)s (eci\014es)f(that)i(\\Bet)m(w)m(een)i(the)e(previous)e(and)h(next)g (se-)630 2534 y(quence)28 b(p)s(oin)m(t)e(an)h(ob)5 b(ject)29 b(shall)c(ha)m(v)m(e)k(its)e(stored)g(v)-5 b(alue)27 b(mo)s(di\014ed)e(at)k(most)e(once)h(b)m(y)g(the)630 2644 y(ev)-5 b(aluation)29 b(of)h(an)g(expression.)39 b(F)-8 b(urthermore,)31 b(the)f(prior)e(v)-5 b(alue)29 b(shall)f(b)s(e)h(read)h(only)f(to)630 2754 y(determine)f(the)h(v)-5 b(alue)28 b(to)i(b)s(e)e(stored.".)41 b(If)28 b(a)i(program)e(breaks)h (these)g(rules,)f(the)h(results)630 2863 y(on)h(an)m(y)h(particular)e (implemen)m(tation)g(are)h(en)m(tirely)g(unpredictable.)630 2995 y(Examples)38 b(of)i(co)s(de)g(with)e(unde\014ned)f(b)s(eha)m (vior)i(are)h Fq(a)30 b(=)g(a++;)p Fy(,)41 b Fq(a[n])29 b(=)h(b[n++])38 b Fy(and)630 3104 y Fq(a[i++])29 b(=)h(i;)p Fy(.)51 b(Some)35 b(more)f(complicated)g(cases)h(are)g(not)f(diagnosed) g(b)m(y)g(this)f(option,)630 3214 y(and)h(it)h(ma)m(y)h(giv)m(e)f(an)g (o)s(ccasional)g(false)g(p)s(ositiv)m(e)f(result,)h(but)g(in)e(general) i(it)g(has)g(b)s(een)630 3324 y(found)29 b(fairly)g(e\013ectiv)m(e)j (at)f(detecting)g(this)e(sort)i(of)f(problem)f(in)g(programs.)630 3455 y(The)24 b(presen)m(t)h(implemen)m(tation)f(of)h(this)e(option)i (only)f(w)m(orks)g(for)h(C)f(programs.)39 b(A)25 b(future)630 3565 y(implemen)m(tation)k(ma)m(y)i(also)f(w)m(ork)h(for)f(C)p Fq(++)f Fy(programs.)630 3696 y(The)i(C)f(standard)h(is)f(w)m(orded)h (confusingly)-8 b(,)30 b(therefore)h(there)h(is)e(some)h(debate)h(o)m (v)m(er)h(the)630 3806 y(precise)24 b(meaning)h(of)g(the)g(sequence)g (p)s(oin)m(t)f(rules)g(in)f(subtle)h(cases.)40 b(Links)23 b(to)j(discussions)630 3915 y(of)41 b(the)f(problem,)i(including)37 b(prop)s(osed)i(formal)h(de\014nitions,)g(ma)m(y)h(b)s(e)f(found)f(on)h (our)630 4025 y(readings)29 b(page,)j(at)f Fq(http://gcc.gnu.org/readi) o(ngs)o(.htm)o(l)-6 b Fy(.)150 4178 y Fq(-Wreturn-type)630 4288 y Fy(W)e(arn)35 b(whenev)m(er)g(a)g(function)e(is)h(de\014ned)g (with)f(a)j(return-t)m(yp)s(e)e(that)h(defaults)f(to)i Fq(int)p Fy(.)630 4398 y(Also)21 b(w)m(arn)h(ab)s(out)f(an)m(y)i Fq(return)d Fy(statemen)m(t)j(with)e(no)g(return-v)-5 b(alue)21 b(in)f(a)j(function)d(whose)630 4507 y(return-t)m(yp)s(e)30 b(is)f(not)i Fq(void)p Fy(.)630 4639 y(F)-8 b(or)28 b(C)p Fq(++)p Fy(,)f(a)g(function)f(without)g(return)g(t)m(yp)s(e)h(alw)m(a)m (ys)h(pro)s(duces)e(a)h(diagnostic)g(message,)630 4748 y(ev)m(en)e(when)d(`)p Fq(-Wno-return-type)p Fy(')e(is)j(sp)s (eci\014ed.)37 b(The)23 b(only)g(exceptions)h(are)g(`)p Fq(main)p Fy(')g(and)630 4858 y(functions)29 b(de\014ned)g(in)g(system) i(headers.)150 5011 y Fq(-Wswitch)96 b Fy(W)-8 b(arn)29 b(whenev)m(er)g(a)g Fq(switch)e Fy(statemen)m(t)k(has)e(an)f(index)g (of)h(en)m(umeral)f(t)m(yp)s(e)h(and)f(lac)m(ks)i(a)630 5121 y Fq(case)i Fy(for)h(one)g(or)g(more)g(of)h(the)f(named)g(co)s (des)g(of)g(that)h(en)m(umeration.)48 b(\(The)33 b(presence)630 5230 y(of)27 b(a)g Fq(default)d Fy(lab)s(el)h(prev)m(en)m(ts)i(this)f (w)m(arning.\))38 b Fq(case)26 b Fy(lab)s(els)f(outside)h(the)g(en)m (umeration)630 5340 y(range)31 b(also)f(pro)m(v)m(ok)m(e)i(w)m(arnings) d(when)h(this)f(option)h(is)f(used.)p eop %%Page: 36 46 36 45 bop 150 -116 a Fy(36)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-Wtrigraphs)630 408 y Fy(W)-8 b(arn)36 b(if)e(an)m(y)i(trigraphs)e(are)i(encoun)m(tered)f (that)h(migh)m(t)f(c)m(hange)i(the)f(meaning)e(of)i(the)630 518 y(program)30 b(\(trigraphs)f(within)f(commen)m(ts)j(are)g(not)g(w)m (arned)f(ab)s(out\).)150 685 y Fq(-Wunused-function)630 794 y Fy(W)-8 b(arn)37 b(whenev)m(er)f(a)h(static)g(function)e(is)h (declared)f(but)h(not)h(de\014ned)e(or)i(a)f(non)p Fq(\\)p Fy(-inline)630 904 y(static)31 b(function)e(is)g(un)m(used.)150 1071 y Fq(-Wunused-label)630 1180 y Fy(W)-8 b(arn)31 b(whenev)m(er)f(a)h(lab)s(el)d(is)i(declared)g(but)f(not)i(used.)630 1319 y(T)-8 b(o)30 b(suppress)d(this)h(w)m(arning)g(use)h(the)g(`)p Fq(unused)p Fy(')f(attribute)h(\(see)h(Section)f(5.33)h([V)-8 b(ariable)630 1428 y(A)m(ttributes],)31 b(page)g(184\).)150 1595 y Fq(-Wunused-parameter)630 1704 y Fy(W)-8 b(arn)31 b(whenev)m(er)f(a)h(function)e(parameter)i(is)e(un)m(used)g(aside)h (from)g(its)g(declaration.)630 1843 y(T)-8 b(o)30 b(suppress)d(this)h (w)m(arning)g(use)h(the)g(`)p Fq(unused)p Fy(')f(attribute)h(\(see)h (Section)f(5.33)h([V)-8 b(ariable)630 1952 y(A)m(ttributes],)31 b(page)g(184\).)150 2119 y Fq(-Wunused-variable)630 2229 y Fy(W)-8 b(arn)31 b(whenev)m(er)f(a)h(lo)s(cal)f(v)-5 b(ariable)30 b(or)g(non-constan)m(t)i(static)f(v)-5 b(ariable)30 b(is)f(un)m(used)h(aside)630 2338 y(from)g(its)g(declaration)630 2476 y(T)-8 b(o)30 b(suppress)d(this)h(w)m(arning)g(use)h(the)g(`)p Fq(unused)p Fy(')f(attribute)h(\(see)h(Section)f(5.33)h([V)-8 b(ariable)630 2586 y(A)m(ttributes],)31 b(page)g(184\).)150 2753 y Fq(-Wunused-value)630 2862 y Fy(W)-8 b(arn)31 b(whenev)m(er)f(a)h(statemen)m(t)h(computes)e(a)h(result)f(that)h(is)e (explicitly)f(not)i(used.)630 3000 y(T)-8 b(o)31 b(suppress)d(this)i(w) m(arning)f(cast)i(the)g(expression)e(to)i(`)p Fq(void)p Fy('.)150 3167 y Fq(-Wunused)96 b Fy(All)29 b(all)g(the)i(ab)s(o)m(v)m (e)g(`)p Fq(-Wunused)p Fy(')e(options)h(com)m(bined.)630 3305 y(In)c(order)g(to)h(get)h(a)f(w)m(arning)e(ab)s(out)h(an)h(un)m (used)e(function)g(parameter,)j(y)m(ou)f(m)m(ust)f(either)630 3415 y(sp)s(ecify)j(`)p Fq(-W)h(-Wunused)p Fy(')e(or)j(separately)f(sp) s(ecify)f(`)p Fq(-Wunused-parameter)p Fy('.)150 3582 y Fq(-Wuninitialized)630 3691 y Fy(W)-8 b(arn)43 b(if)f(an)h(automatic) h(v)-5 b(ariable)41 b(is)h(used)g(without)g(\014rst)h(b)s(eing)e (initialized)f(or)j(if)f(a)630 3801 y(v)-5 b(ariable)29 b(ma)m(y)i(b)s(e)f(clobb)s(ered)f(b)m(y)h(a)h Fq(setjmp)d Fy(call.)630 3939 y(These)36 b(w)m(arnings)f(are)h(p)s(ossible)e(only)h (in)g(optimizing)f(compilation,)i(b)s(ecause)g(they)h(re-)630 4049 y(quire)j(data)i(\015o)m(w)f(information)e(that)j(is)e(computed)h (only)f(when)g(optimizing.)71 b(If)41 b(y)m(ou)630 4158 y(don't)30 b(sp)s(ecify)f(`)p Fq(-O)p Fy(',)i(y)m(ou)g(simply)d(w)m (on't)j(get)g(these)g(w)m(arnings.)630 4296 y(These)e(w)m(arnings)g(o)s (ccur)g(only)g(for)g(v)-5 b(ariables)29 b(that)h(are)g(candidates)f (for)g(register)h(allo)s(ca-)630 4406 y(tion.)40 b(Therefore,)31 b(they)g(do)f(not)h(o)s(ccur)f(for)g(a)h(v)-5 b(ariable)29 b(that)i(is)f(declared)f Fq(volatile)p Fy(,)g(or)630 4516 y(whose)d(address)e(is)h(tak)m(en,)j(or)e(whose)f(size)h(is)f (other)h(than)f(1,)i(2,)h(4)e(or)f(8)i(b)m(ytes.)39 b(Also,)27 b(they)630 4625 y(do)j(not)h(o)s(ccur)f(for)g(structures,)g(unions)f (or)h(arra)m(ys,)h(ev)m(en)g(when)e(they)i(are)g(in)e(registers.)630 4763 y(Note)22 b(that)f(there)g(ma)m(y)h(b)s(e)e(no)g(w)m(arning)g(ab)s (out)h(a)g(v)-5 b(ariable)19 b(that)j(is)d(used)h(only)g(to)i(compute) 630 4873 y(a)30 b(v)-5 b(alue)29 b(that)h(itself)e(is)g(nev)m(er)i (used,)f(b)s(ecause)h(suc)m(h)f(computations)g(ma)m(y)h(b)s(e)f (deleted)g(b)m(y)630 4983 y(data)i(\015o)m(w)f(analysis)f(b)s(efore)h (the)h(w)m(arnings)e(are)i(prin)m(ted.)630 5121 y(These)e(w)m(arnings)e (are)i(made)g(optional)f(b)s(ecause)h(GCC)f(is)g(not)h(smart)g(enough)f (to)i(see)f(all)630 5230 y(the)i(reasons)f(wh)m(y)h(the)f(co)s(de)h (migh)m(t)g(b)s(e)f(correct)h(despite)f(app)s(earing)f(to)j(ha)m(v)m(e) g(an)e(error.)630 5340 y(Here)h(is)e(one)i(example)f(of)h(ho)m(w)f (this)f(can)i(happ)s(en:)p eop %%Page: 37 47 37 46 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(37)870 299 y Fq({)965 403 y(int)47 b(x;)965 506 y(switch)g(\(y\))1061 610 y({)1061 714 y(case)g(1:)g(x)g(=)h(1;) 1156 818 y(break;)1061 922 y(case)f(2:)g(x)g(=)h(4;)1156 1025 y(break;)1061 1129 y(case)f(3:)g(x)g(=)h(5;)1061 1233 y(})965 1337 y(foo)f(\(x\);)870 1440 y(})630 1566 y Fy(If)23 b(the)i(v)-5 b(alue)23 b(of)h Fq(y)g Fy(is)e(alw)m(a)m(ys)j (1,)h(2)e(or)g(3,)i(then)d Fq(x)h Fy(is)f(alw)m(a)m(ys)h(initialized,)e (but)i(GCC)f(do)s(esn't)630 1676 y(kno)m(w)30 b(this.)40 b(Here)31 b(is)e(another)i(common)g(case:)870 1803 y Fq({)965 1907 y(int)47 b(save_y;)965 2010 y(if)h(\(change_y\))d(save_y) h(=)h(y,)g(y)h(=)f(new_y;)965 2114 y(...)965 2218 y(if)h(\(change_y\))d (y)i(=)h(save_y;)870 2322 y(})630 2454 y Fy(This)29 b(has)h(no)g(bug)g (b)s(ecause)g Fq(save_y)f Fy(is)g(used)h(only)f(if)h(it)f(is)h(set.)630 2587 y(This)20 b(option)h(also)g(w)m(arns)g(when)g(a)h(non-v)m(olatile) f(automatic)i(v)-5 b(ariable)20 b(migh)m(t)h(b)s(e)g(c)m(hanged)630 2697 y(b)m(y)36 b(a)g(call)f(to)h Fq(longjmp)p Fy(.)55 b(These)36 b(w)m(arnings)e(as)i(w)m(ell)f(are)h(p)s(ossible)d(only)i (in)g(optimizing)630 2806 y(compilation.)630 2939 y(The)26 b(compiler)g(sees)h(only)f(the)h(calls)f(to)i Fq(setjmp)p Fy(.)38 b(It)27 b(cannot)g(kno)m(w)g(where)g Fq(longjmp)e Fy(will)630 3049 y(b)s(e)31 b(called;)i(in)d(fact,)k(a)f(signal)d (handler)g(could)i(call)f(it)g(at)i(an)m(y)g(p)s(oin)m(t)e(in)f(the)j (co)s(de.)46 b(As)32 b(a)630 3158 y(result,)j(y)m(ou)g(ma)m(y)g(get)g (a)g(w)m(arning)f(ev)m(en)h(when)f(there)g(is)g(in)f(fact)j(no)e (problem)f(b)s(ecause)630 3268 y Fq(longjmp)28 b Fy(cannot)j(in)e(fact) j(b)s(e)d(called)h(at)h(the)g(place)f(whic)m(h)f(w)m(ould)g(cause)i(a)g (problem.)630 3401 y(Some)42 b(spurious)d(w)m(arnings)h(can)i(b)s(e)f (a)m(v)m(oided)h(if)f(y)m(ou)h(declare)f(all)g(the)g(functions)g(y)m (ou)630 3510 y(use)h(that)i(nev)m(er)f(return)f(as)h Fq(noreturn)p Fy(.)75 b(See)43 b(Section)g(5.26)h([F)-8 b(unction)43 b(A)m(ttributes],)630 3620 y(page)31 b(172.)150 3776 y Fq(-Wreorder)d Fy(\(C)p Fq(++)i Fy(only\))630 3886 y(W)-8 b(arn)33 b(when)e(the)i(order)f(of)g(mem)m(b)s(er)g (initializers)d(giv)m(en)k(in)e(the)i(co)s(de)f(do)s(es)g(not)h(matc)m (h)630 3995 y(the)e(order)e(in)h(whic)m(h)f(they)h(m)m(ust)g(b)s(e)g (executed.)42 b(F)-8 b(or)31 b(instance:)150 4151 y Fq (-Wunknown-pragmas)630 4261 y Fy(W)-8 b(arn)40 b(when)f(a)h(#pragma)f (directiv)m(e)g(is)g(encoun)m(tered)h(whic)m(h)f(is)f(not)i(understo)s (o)s(d)e(b)m(y)630 4370 y(GCC.)66 b(If)38 b(this)g(command)g(line)f (option)i(is)e(used,)k(w)m(arnings)c(will)f(ev)m(en)k(b)s(e)e(issued)f (for)630 4480 y(unkno)m(wn)32 b(pragmas)i(in)e(system)h(header)h (\014les.)49 b(This)32 b(is)g(not)i(the)g(case)g(if)f(the)g(w)m (arnings)630 4590 y(w)m(ere)e(only)e(enabled)h(b)m(y)g(the)h(`)p Fq(-Wall)p Fy(')e(command)h(line)f(option.)150 4746 y Fq(-Wall)240 b Fy(All)36 b(of)h(the)h(ab)s(o)m(v)m(e)g(`)p Fq(-W)p Fy(')f(options)g(com)m(bined.)60 b(This)35 b(enables)i(all)f (the)h(w)m(arnings)f(ab)s(out)630 4855 y(constructions)26 b(that)i(some)f(users)f(consider)f(questionable,)i(and)f(that)h(are)h (easy)f(to)g(a)m(v)m(oid)630 4965 y(\(or)k(mo)s(dify)d(to)j(prev)m(en)m (t)g(the)g(w)m(arning\),)f(ev)m(en)h(in)e(conjunction)g(with)g(macros.) 150 5121 y Fq(-Wdiv-by-zero)630 5230 y Fy(W)-8 b(arn)34 b(ab)s(out)f(compile-time)f(in)m(teger)i(division)c(b)m(y)j(zero.)51 b(This)31 b(is)i(default.)49 b(T)-8 b(o)33 b(inhibit)630 5340 y(the)24 b(w)m(arning)e(messages,)27 b(use)c(`)p Fq(-Wno-div-by-zero)p Fy('.)35 b(Floating)23 b(p)s(oin)m(t)g(division)e (b)m(y)i(zero)p eop %%Page: 38 48 38 47 bop 150 -116 a Fy(38)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(is)k(not)h(w)m(arned)g(ab)s(out,)h(as)f (it)f(can)i(b)s(e)e(a)h(legitimate)g(w)m(a)m(y)h(of)f(obtaining)f (in\014nities)e(and)630 408 y(NaNs.)150 576 y Fq(-Wmultichar)630 686 y Fy(W)-8 b(arn)24 b(if)f(a)i(m)m(ultic)m(haracter)f(constan)m(t)h (\(`)p Fq('FOOF')p Fy('\))e(is)g(used.)38 b(This)22 b(is)h(default.)38 b(T)-8 b(o)24 b(inhibit)630 795 y(the)33 b(w)m(arning)e(messages,)k (use)d(`)p Fq(-Wno-multichar)p Fy('.)44 b(Usually)31 b(they)i(indicate)e(a)i(t)m(yp)s(o)g(in)630 905 y(the)28 b(user's)f(co)s(de,)h(as)g(they)g(ha)m(v)m(e)h(implemen)m (tation-de\014ned)c(v)-5 b(alues,)28 b(and)f(should)f(not)i(b)s(e)630 1015 y(used)i(in)f(p)s(ortable)g(co)s(de.)150 1183 y Fq(-Wsystem-headers)630 1292 y Fy(Prin)m(t)j(w)m(arning)f(messages)j (for)f(constructs)g(found)e(in)h(system)h(header)f(\014les.)48 b(W)-8 b(arnings)630 1402 y(from)42 b(system)h(headers)f(are)h (normally)e(suppressed,)i(on)g(the)g(assumption)e(that)i(they)630 1511 y(usually)23 b(do)i(not)h(indicate)e(real)h(problems)f(and)g(w)m (ould)g(only)h(mak)m(e)h(the)f(compiler)f(output)630 1621 y(harder)36 b(to)h(read.)59 b(Using)36 b(this)f(command)h(line)f (option)h(tells)g(GCC)g(to)h(emit)f(w)m(arnings)630 1730 y(from)27 b(system)g(headers)g(as)g(if)g(they)g(o)s(ccurred)f(in)g (user)h(co)s(de.)40 b(Ho)m(w)m(ev)m(er,)30 b(note)e(that)f(using)630 1840 y(`)p Fq(-Wall)p Fy(')h(in)g(conjunction)h(with)f(this)g(option)h (will)d Fr(not)39 b Fy(w)m(arn)29 b(ab)s(out)g(unkno)m(wn)f(pragmas)630 1950 y(in)h(system)i(headers|for)e(that,)j(`)p Fq(-Wunknown-pragmas)p Fy(')26 b(m)m(ust)k(also)g(b)s(e)g(used.)275 2122 y(The)37 b(follo)m(wing)g(`)p Fq(-W...)o Fy(')h(options)f(are)i(not)f(implied)d (b)m(y)j(`)p Fq(-Wall)p Fy('.)63 b(Some)38 b(of)g(them)g(w)m(arn)g(ab)s (out)150 2231 y(constructions)27 b(that)h(users)e(generally)h(do)g(not) g(consider)g(questionable,)g(but)f(whic)m(h)g(o)s(ccasionally)h(y)m(ou) 150 2341 y(migh)m(t)40 b(wish)e(to)j(c)m(hec)m(k)g(for;)k(others)c(w)m (arn)e(ab)s(out)h(constructions)g(that)g(are)h(necessary)f(or)g(hard)f (to)150 2450 y(a)m(v)m(oid)26 b(in)f(some)h(cases,)h(and)e(there)h(is)f (no)h(simple)d(w)m(a)m(y)k(to)f(mo)s(dify)e(the)i(co)s(de)g(to)g (suppress)e(the)i(w)m(arning.)150 2623 y Fq(-W)384 b Fy(Prin)m(t)29 b(extra)i(w)m(arning)f(messages)h(for)f(these)h(ev)m(en) m(ts:)705 2761 y Fx(\017)60 b Fy(A)24 b(function)f(can)h(return)f (either)g(with)g(or)h(without)f(a)i(v)-5 b(alue.)38 b(\(F)-8 b(alling)23 b(o\013)h(the)g(end)g(of)810 2871 y(the)33 b(function)e(b)s(o)s(dy)g(is)h(considered)g(returning)e(without)i(a)h (v)-5 b(alue.\))48 b(F)-8 b(or)33 b(example,)810 2980 y(this)c(function)g(w)m(ould)g(ev)m(ok)m(e)k(suc)m(h)d(a)h(w)m(arning:) 1050 3113 y Fq(foo)47 b(\(a\))1050 3217 y({)1145 3321 y(if)h(\(a)f(>)g(0\))1241 3425 y(return)f(a;)1050 3528 y(})705 3660 y Fx(\017)60 b Fy(An)30 b(expression-statemen)m(t)h(or)f (the)g(left-hand)f(side)g(of)h(a)h(comma)g(expression)d(con-)810 3770 y(tains)j(no)g(side)f(e\013ects.)45 b(T)-8 b(o)32 b(suppress)d(the)j(w)m(arning,)e(cast)j(the)e(un)m(used)f(expression) 810 3879 y(to)f(v)m(oid.)39 b(F)-8 b(or)29 b(example,)f(an)g (expression)f(suc)m(h)g(as)h(`)p Fq(x[i,j])p Fy(')f(will)e(cause)k(a)f (w)m(arning,)810 3989 y(but)i(`)p Fq(x[\(void\)i,j])p Fy(')d(will)h(not.)705 4128 y Fx(\017)60 b Fy(An)30 b(unsigned)e(v)-5 b(alue)30 b(is)g(compared)g(against)h(zero)g(with)e(`)p Fq(<)p Fy(')h(or)h(`)p Fq(<=)p Fy('.)705 4266 y Fx(\017)60 b Fy(A)28 b(comparison)g(lik)m(e)g(`)p Fq(x<=y<=z)p Fy(')e(app)s(ears;) j(this)e(is)g(equiv)-5 b(alen)m(t)28 b(to)h(`)p Fq(\(x<=y)g(?)h(1)h(:)f (0\))810 4376 y(<=)g(z)p Fy(',)h(whic)m(h)e(is)h(a)h(di\013eren)m(t)g (in)m(terpretation)f(from)g(that)i(of)f(ordinary)e(mathemat-)810 4485 y(ical)h(notation.)705 4624 y Fx(\017)60 b Fy(Storage-class)27 b(sp)s(eci\014ers)d(lik)m(e)h Fq(static)f Fy(are)j(not)f(the)g(\014rst) f(things)f(in)h(a)h(declaration.)810 4734 y(According)k(to)h(the)g(C)f (Standard,)f(this)g(usage)i(is)f(obsolescen)m(t.)705 4872 y Fx(\017)60 b Fy(The)33 b(return)g(t)m(yp)s(e)h(of)g(a)g (function)f(has)g(a)i(t)m(yp)s(e)f(quali\014er)d(suc)m(h)j(as)g Fq(const)p Fy(.)49 b(Suc)m(h)34 b(a)810 4982 y(t)m(yp)s(e)26 b(quali\014er)e(has)i(no)g(e\013ect,)j(since)c(the)h(v)-5 b(alue)26 b(returned)f(b)m(y)h(a)g(function)f(is)g(not)h(an)810 5092 y(lv)-5 b(alue.)37 b(\(But)23 b(don't)f(w)m(arn)g(ab)s(out)g(the)g (GNU)h(extension)f(of)h Fq(volatile)28 b(void)21 b Fy(return)810 5201 y(t)m(yp)s(es.)41 b(That)30 b(extension)g(will)e(b)s(e)i(w)m (arned)f(ab)s(out)i(if)e(`)p Fq(-pedantic)p Fy(')f(is)i(sp)s (eci\014ed.\))705 5340 y Fx(\017)60 b Fy(If)30 b(`)p Fq(-Wall)p Fy(')f(or)i(`)p Fq(-Wunused)p Fy(')d(is)i(also)g(sp)s (eci\014ed,)f(w)m(arn)h(ab)s(out)g(un)m(used)f(argumen)m(ts.)p eop %%Page: 39 49 39 48 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(39)705 299 y Fx(\017)60 b Fy(A)39 b(comparison)f(b)s (et)m(w)m(een)h(signed)f(and)g(unsigned)f(v)-5 b(alues)38 b(could)g(pro)s(duce)f(an)i(in-)810 408 y(correct)33 b(result)f(when)f(the)h(signed)f(v)-5 b(alue)32 b(is)f(con)m(v)m(erted) j(to)f(unsigned.)44 b(\(But)33 b(don't)810 518 y(w)m(arn)d(if)f(`)p Fq(-Wno-sign-compare)p Fy(')d(is)k(also)g(sp)s(eci\014ed.\))705 653 y Fx(\017)60 b Fy(An)26 b(aggregate)k(has)d(a)g(partly)f(brac)m(k)m (eted)i(initializer.)36 b(F)-8 b(or)28 b(example,)f(the)g(follo)m(wing) 810 763 y(co)s(de)34 b(w)m(ould)f(ev)m(ok)m(e)j(suc)m(h)d(a)i(w)m (arning,)f(b)s(ecause)g(braces)g(are)g(missing)e(around)h(the)810 872 y(initializer)27 b(for)j Fq(x.h)p Fy(:)1050 1002 y Fq(struct)46 b(s)i({)f(int)g(f,)g(g;)g(};)1050 1105 y(struct)f(t)i({)f(struct)f(s)i(h;)f(int)g(i;)g(};)1050 1209 y(struct)f(t)i(x)f(=)g({)h(1,)f(2,)g(3)h(};)705 1344 y Fx(\017)60 b Fy(An)31 b(aggregate)k(has)c(an)g(initializer)e (whic)m(h)h(do)s(es)h(not)h(initialize)d(all)h(mem)m(b)s(ers.)43 b(F)-8 b(or)810 1454 y(example,)23 b(the)f(follo)m(wing)d(co)s(de)j(w)m (ould)e(cause)i(suc)m(h)f(a)g(w)m(arning,)h(b)s(ecause)g Fq(x.h)e Fy(w)m(ould)810 1564 y(b)s(e)30 b(implicitly)c(initialized)h (to)32 b(zero:)1050 1693 y Fq(struct)46 b(s)i({)f(int)g(f,)g(g,)g(h;)g (};)1050 1797 y(struct)f(s)i(x)f(=)g({)h(3,)f(4)h(};)150 1957 y(-Wfloat-equal)630 2067 y Fy(W)-8 b(arn)31 b(if)e(\015oating)h(p) s(oin)m(t)g(v)-5 b(alues)29 b(are)i(used)f(in)f(equalit)m(y)h (comparisons.)630 2202 y(The)k(idea)g(b)s(ehind)e(this)i(is)f(that)i (sometimes)g(it)f(is)g(con)m(v)m(enien)m(t)i(\(for)e(the)h (programmer\))630 2312 y(to)45 b(consider)f(\015oating-p)s(oin)m(t)f(v) -5 b(alues)44 b(as)h(appro)m(ximations)e(to)i(in\014nitely)c(precise)j (real)630 2421 y(n)m(um)m(b)s(ers.)58 b(If)36 b(y)m(ou)g(are)h(doing)f (this,)h(then)f(y)m(ou)h(need)f(to)h(compute)g(\(b)m(y)g(analysing)e (the)630 2531 y(co)s(de,)j(or)f(in)e(some)i(other)f(w)m(a)m(y\))i(the)f (maxim)m(um)e(or)h(lik)m(ely)f(maxim)m(um)h(error)g(that)h(the)630 2641 y(computation)i(in)m(tro)s(duces,)i(and)d(allo)m(w)h(for)g(it)g (when)f(p)s(erforming)f(comparisons)h(\(and)630 2750 y(when)30 b(pro)s(ducing)e(output,)j(but)g(that's)g(a)g(di\013eren)m(t) g(problem\).)41 b(In)30 b(particular,)g(instead)630 2860 y(of)42 b(testing)f(for)h(equalit)m(y)-8 b(,)44 b(y)m(ou)e(w)m(ould)f (c)m(hec)m(k)i(to)f(see)g(whether)f(the)h(t)m(w)m(o)h(v)-5 b(alues)41 b(ha)m(v)m(e)630 2969 y(ranges)32 b(that)g(o)m(v)m(erlap;)g (and)f(this)f(is)h(done)g(with)f(the)h(relational)g(op)s(erators,)h(so) f(equalit)m(y)630 3079 y(comparisons)e(are)i(probably)e(mistak)m(en.) 150 3240 y Fq(-Wtraditional)e Fy(\(C)j(only\))630 3349 y(W)-8 b(arn)36 b(ab)s(out)g(certain)f(constructs)i(that)f(b)s(eha)m(v) m(e)g(di\013eren)m(tly)f(in)g(traditional)f(and)h(ISO)630 3459 y(C.)57 b(Also)35 b(w)m(arn)h(ab)s(out)g(ISO)e(C)i(constructs)g (that)h(ha)m(v)m(e)g(no)e(traditional)g(C)g(equiv)-5 b(alen)m(t,)630 3568 y(and/or)30 b(problematic)g(constructs)g(whic)m(h) f(should)g(b)s(e)g(a)m(v)m(oided.)705 3703 y Fx(\017)60 b Fy(Macro)29 b(parameters)f(that)h(app)s(ear)e(within)f(string)g (literals)h(in)f(the)i(macro)h(b)s(o)s(dy)-8 b(.)39 b(In)810 3813 y(traditional)23 b(C)h(macro)h(replacemen)m(t)g(tak)m(es)h(place)e (within)e(string)h(literals,)i(but)e(do)s(es)810 3923 y(not)31 b(in)e(ISO)g(C.)705 4058 y Fx(\017)60 b Fy(In)38 b(traditional)e(C,)i(some)h(prepro)s(cessor)f(directiv)m(es)f(did)g (not)h(exist.)65 b(T)-8 b(raditional)810 4167 y(prepro)s(cessors)22 b(w)m(ould)g(only)g(consider)g(a)h(line)e(to)j(b)s(e)e(a)i(directiv)m (e)e(if)g(the)h(`)p Fq(#)p Fy(')h(app)s(eared)810 4277 y(in)f(column)g(1)h(on)g(the)g(line.)37 b(Therefore)24 b(`)p Fq(-Wtraditional)p Fy(')d(w)m(arns)j(ab)s(out)g(directiv)m(es)810 4387 y(that)33 b(traditional)e(C)h(understands)f(but)g(w)m(ould)h (ignore)g(b)s(ecause)g(the)h(`)p Fq(#)p Fy(')g(do)s(es)f(not)810 4496 y(app)s(ear)23 b(as)h(the)g(\014rst)f(c)m(haracter)i(on)f(the)g (line.)36 b(It)24 b(also)g(suggests)g(y)m(ou)g(hide)f(directiv)m(es)810 4606 y(lik)m(e)33 b(`)p Fq(#pragma)p Fy(')g(not)h(understo)s(o)s(d)e(b) m(y)h(traditional)g(C)g(b)m(y)h(inden)m(ting)e(them.)51 b(Some)810 4715 y(traditional)42 b(implemen)m(tations)h(w)m(ould)g(not) h(recognize)h(`)p Fq(#elif)p Fy(',)h(so)f(it)e(suggests)810 4825 y(a)m(v)m(oiding)30 b(it)g(altogether.)705 4960 y Fx(\017)60 b Fy(A)30 b(function-lik)m(e)f(macro)i(that)g(app)s(ears)f (without)f(argumen)m(ts.)705 5095 y Fx(\017)60 b Fy(The)30 b(unary)f(plus)g(op)s(erator.)705 5230 y Fx(\017)60 b Fy(The)42 b(`)p Fq(U)p Fy(')h(in)m(teger)h(constan)m(t)g(su\016x,)h(or) e(the)g(`)p Fq(F)p Fy(')g(or)g(`)p Fq(L)p Fy(')g(\015oating)g(p)s(oin)m (t)f(constan)m(t)810 5340 y(su\016xes.)54 b(\(T)-8 b(raditional)34 b(C)h(do)s(es)f(supp)s(ort)g(the)h(`)p Fq(L)p Fy(')g(su\016x)g(on)g(in) m(teger)g(constan)m(ts.\))p eop %%Page: 40 50 40 49 bop 150 -116 a Fy(40)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))810 299 y(Note,)d(these)e(su\016xes)e(app)s(ear)h (in)f(macros)i(de\014ned)e(in)f(the)j(system)f(headers)g(of)h(most)810 408 y(mo)s(dern)c(systems,)j(e.g.)g(the)e(`)p Fq(_MIN)p Fy('/`)p Fq(_MAX)p Fy(')g(macros)g(in)f Fq()p Fy(.)35 b(Use)23 b(of)f(these)810 518 y(macros)40 b(in)e(user)h(co)s (de)g(migh)m(t)g(normally)f(lead)h(to)h(spurious)d(w)m(arnings,)k(ho)m (w)m(ev)m(er)810 628 y(gcc's)28 b(in)m(tegrated)f(prepro)s(cessor)f (has)g(enough)g(con)m(text)j(to)e(a)m(v)m(oid)g(w)m(arning)e(in)g (these)810 737 y(cases.)705 878 y Fx(\017)60 b Fy(A)35 b(function)e(declared)h(external)h(in)e(one)i(blo)s(c)m(k)f(and)g(then) g(used)g(after)h(the)g(end)f(of)810 988 y(the)d(blo)s(c)m(k.)705 1129 y Fx(\017)60 b Fy(A)30 b Fq(switch)f Fy(statemen)m(t)j(has)e(an)h (op)s(erand)e(of)i(t)m(yp)s(e)f Fq(long)p Fy(.)705 1270 y Fx(\017)60 b Fy(A)35 b(non-)p Fq(static)e Fy(function)h(declaration)h (follo)m(ws)f(a)i Fq(static)d Fy(one.)55 b(This)34 b(construct)810 1379 y(is)29 b(not)i(accepted)h(b)m(y)e(some)h(traditional)e(C)h (compilers.)705 1520 y Fx(\017)60 b Fy(The)37 b(ISO)g(t)m(yp)s(e)h(of)h (an)e(in)m(teger)i(constan)m(t)g(has)f(a)g(di\013eren)m(t)f(width)f(or) i(signedness)810 1630 y(from)g(its)g(traditional)f(t)m(yp)s(e.)66 b(This)36 b(w)m(arning)i(is)f(only)h(issued)f(if)g(the)i(base)g(of)g (the)810 1739 y(constan)m(t)31 b(is)e(ten.)40 b(I.e.)30 b(hexadecimal)f(or)h(o)s(ctal)g(v)-5 b(alues,)29 b(whic)m(h)f(t)m (ypically)h(represen)m(t)810 1849 y(bit)g(patterns,)i(are)g(not)f(w)m (arned)g(ab)s(out.)705 1990 y Fx(\017)60 b Fy(Usage)32 b(of)e(ISO)g(string)f(concatenation)j(is)d(detected.)705 2131 y Fx(\017)60 b Fy(Initialization)28 b(of)i(automatic)i (aggregates.)705 2271 y Fx(\017)60 b Fy(Iden)m(ti\014er)33 b(con\015icts)i(with)e(lab)s(els.)52 b(T)-8 b(raditional)33 b(C)h(lac)m(ks)h(a)h(separate)f(namespace)810 2381 y(for)30 b(lab)s(els.)705 2522 y Fx(\017)60 b Fy(Initialization)34 b(of)k(unions.)58 b(If)36 b(the)h(initializer)d(is)i(zero,)k(the)d(w)m (arning)f(is)g(omitted.)810 2632 y(This)h(is)h(done)g(under)g(the)g (assumption)g(that)h(the)g(zero)h(initializer)35 b(in)j(user)g(co)s(de) 810 2741 y(app)s(ears)27 b(conditioned)f(on)i(e.g.)h Fq(__STDC__)d Fy(to)i(a)m(v)m(oid)h(missing)c(initializer)g(w)m (arnings)810 2851 y(and)30 b(relies)f(on)h(default)g(initialization)d (to)k(zero)g(in)e(the)i(traditional)e(C)h(case.)705 2992 y Fx(\017)60 b Fy(Con)m(v)m(ersions)43 b(b)m(y)g(protot)m(yp)s(es)h(b)s (et)m(w)m(een)g(\014xed/\015oating)f(p)s(oin)m(t)f(v)-5 b(alues)43 b(and)g(vice)810 3101 y(v)m(ersa.)e(The)29 b(absence)g(of)g(these)h(protot)m(yp)s(es)f(when)f(compiling)f(with)h (traditional)f(C)810 3211 y(w)m(ould)32 b(cause)i(serious)e(problems.) 49 b(This)31 b(is)i(a)h(subset)e(of)i(the)g(p)s(ossible)d(con)m(v)m (ersion)810 3320 y(w)m(arnings,)e(for)h(the)h(full)d(set)j(use)f(`)p Fq(-Wconversion)p Fy('.)150 3493 y Fq(-Wundef)144 b Fy(W)-8 b(arn)31 b(if)e(an)h(unde\014ned)e(iden)m(ti\014er)h(is)g(ev)-5 b(aluated)31 b(in)e(an)h(`)p Fq(#if)p Fy(')g(directiv)m(e.)150 3665 y Fq(-Wshadow)96 b Fy(W)-8 b(arn)36 b(whenev)m(er)f(a)h(lo)s(cal)f (v)-5 b(ariable)35 b(shado)m(ws)g(another)h(lo)s(cal)f(v)-5 b(ariable,)36 b(parameter)g(or)630 3774 y(global)30 b(v)-5 b(ariable)29 b(or)h(whenev)m(er)g(a)h(built-in)c(function)i(is)h(shado) m(w)m(ed.)150 3947 y Fq(-Wlarger-than-)p Fn(len)630 4056 y Fy(W)-8 b(arn)31 b(whenev)m(er)f(an)g(ob)5 b(ject)31 b(of)g(larger)f(than)g Fn(len)g Fy(b)m(ytes)h(is)e(de\014ned.)150 4228 y Fq(-Wpointer-arith)630 4338 y Fy(W)-8 b(arn)28 b(ab)s(out)f(an)m(ything)g(that)h(dep)s(ends)e(on)i(the)f(\\size)h(of)7 b(")29 b(a)f(function)e(t)m(yp)s(e)i(or)f(of)h Fq(void)p Fy(.)630 4448 y(GNU)d(C)f(assigns)g(these)h(t)m(yp)s(es)g(a)g(size)f (of)h(1,)h(for)e(con)m(v)m(enience)i(in)d(calculations)h(with)f Fq(void)630 4557 y(*)30 b Fy(p)s(oin)m(ters)f(and)h(p)s(oin)m(ters)f (to)i(functions.)150 4729 y Fq(-Wbad-function-cast)25 b Fy(\(C)30 b(only\))630 4839 y(W)-8 b(arn)37 b(whenev)m(er)f(a)g (function)f(call)h(is)f(cast)i(to)g(a)g(non-matc)m(hing)f(t)m(yp)s(e.) 58 b(F)-8 b(or)37 b(example,)630 4949 y(w)m(arn)30 b(if)f Fq(int)h(malloc\(\))e Fy(is)h(cast)j(to)f Fq(anything)d(*)p Fy(.)150 5121 y Fq(-Wcast-qual)630 5230 y Fy(W)-8 b(arn)25 b(whenev)m(er)g(a)h(p)s(oin)m(ter)e(is)g(cast)i(so)f(as)g(to)h(remo)m (v)m(e)g(a)g(t)m(yp)s(e)f(quali\014er)e(from)h(the)h(target)630 5340 y(t)m(yp)s(e.)41 b(F)-8 b(or)31 b(example,)f(w)m(arn)g(if)g(a)g Fq(const)f(char)h(*)g Fy(is)f(cast)i(to)h(an)e(ordinary)e Fq(char)i(*)p Fy(.)p eop %%Page: 41 51 41 50 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(41)150 299 y Fq(-Wcast-align)630 408 y Fy(W)-8 b(arn)28 b(whenev)m(er)g(a)h(p)s(oin)m(ter)e(is)g(cast)i(suc) m(h)f(that)h(the)f(required)e(alignmen)m(t)i(of)g(the)g(target)630 518 y(is)37 b(increased.)61 b(F)-8 b(or)38 b(example,)h(w)m(arn)e(if)g (a)h Fq(char)29 b(*)37 b Fy(is)f(cast)j(to)f(an)f Fq(int)30 b(*)37 b Fy(on)g(mac)m(hines)630 628 y(where)30 b(in)m(tegers)g(can)h (only)f(b)s(e)f(accessed)j(at)f(t)m(w)m(o-)h(or)e(four-b)m(yte)h(b)s (oundaries.)150 776 y Fq(-Wwrite-strings)630 886 y Fy(When)f(compiling) e(C,)i(giv)m(e)h(string)e(constan)m(ts)j(the)e(t)m(yp)s(e)h Fq(const)e(char[)p Fn(length)p Fq(])f Fy(so)i(that)630 995 y(cop)m(ying)f(the)f(address)g(of)h(one)g(in)m(to)f(a)h(non-)p Fq(const)e(char)i(*)g Fy(p)s(oin)m(ter)e(will)f(get)k(a)f(w)m(arning;) 630 1105 y(when)36 b(compiling)f(C)p Fq(++)p Fy(,)j(w)m(arn)e(ab)s(out) h(the)g(deprecated)h(con)m(v)m(ersion)f(from)f(string)g(con-)630 1214 y(stan)m(ts)c(to)g Fq(char)d(*)p Fy(.)43 b(These)31 b(w)m(arnings)f(will)f(help)h(y)m(ou)h(\014nd)f(at)i(compile)e(time)h (co)s(de)g(that)630 1324 y(can)i(try)g(to)h(write)e(in)m(to)h(a)g (string)f(constan)m(t,)j(but)e(only)f(if)g(y)m(ou)h(ha)m(v)m(e)h(b)s (een)e(v)m(ery)i(careful)630 1433 y(ab)s(out)d(using)e Fq(const)h Fy(in)g(declarations)g(and)h(protot)m(yp)s(es.)43 b(Otherwise,)30 b(it)g(will)f(just)h(b)s(e)h(a)630 1543 y(n)m(uisance;)f(this)f(is)h(wh)m(y)g(w)m(e)g(did)f(not)i(mak)m(e)g(`)p Fq(-Wall)p Fy(')e(request)i(these)g(w)m(arnings.)150 1691 y Fq(-Wconversion)630 1801 y Fy(W)-8 b(arn)28 b(if)f(a)i(protot)m (yp)s(e)g(causes)f(a)h(t)m(yp)s(e)f(con)m(v)m(ersion)g(that)h(is)e (di\013eren)m(t)h(from)f(what)h(w)m(ould)630 1910 y(happ)s(en)39 b(to)i(the)g(same)g(argumen)m(t)g(in)e(the)i(absence)g(of)g(a)g(protot) m(yp)s(e.)72 b(This)38 b(includes)630 2020 y(con)m(v)m(ersions)32 b(of)g(\014xed)f(p)s(oin)m(t)g(to)h(\015oating)g(and)f(vice)h(v)m (ersa,)h(and)e(con)m(v)m(ersions)h(c)m(hanging)630 2130 y(the)c(width)e(or)i(signedness)f(of)h(a)g(\014xed)f(p)s(oin)m(t)g (argumen)m(t)h(except)h(when)e(the)h(same)h(as)f(the)630 2239 y(default)i(promotion.)630 2368 y(Also,)25 b(w)m(arn)f(if)f(a)h (negativ)m(e)h(in)m(teger)g(constan)m(t)g(expression)e(is)g(implicitly) d(con)m(v)m(erted)25 b(to)g(an)630 2478 y(unsigned)e(t)m(yp)s(e.)39 b(F)-8 b(or)25 b(example,)h(w)m(arn)f(ab)s(out)f(the)h(assignmen)m(t)g Fq(x)30 b(=)g(-1)24 b Fy(if)g Fq(x)g Fy(is)g(unsigned.)630 2587 y(But)31 b(do)f(not)g(w)m(arn)g(ab)s(out)h(explicit)d(casts)j(lik) m(e)f Fq(\(unsigned\))e(-1)p Fy(.)150 2736 y Fq(-Wsign-compare)630 2845 y Fy(W)-8 b(arn)25 b(when)f(a)h(comparison)f(b)s(et)m(w)m(een)h (signed)f(and)g(unsigned)f(v)-5 b(alues)24 b(could)f(pro)s(duce)h(an) 630 2955 y(incorrect)32 b(result)g(when)f(the)i(signed)f(v)-5 b(alue)31 b(is)h(con)m(v)m(erted)i(to)f(unsigned.)45 b(This)31 b(w)m(arning)630 3064 y(is)f(also)h(enabled)f(b)m(y)h(`)p Fq(-W)p Fy(';)h(to)f(get)h(the)g(other)f(w)m(arnings)f(of)h(`)p Fq(-W)p Fy(')g(without)f(this)g(w)m(arning,)630 3174 y(use)g(`)p Fq(-W)g(-Wno-sign-compare)p Fy('.)150 3322 y Fq(-Waggregate-return)630 3432 y Fy(W)-8 b(arn)26 b(if)e(an)m(y)h (functions)f(that)i(return)e(structures)h(or)g(unions)e(are)j (de\014ned)e(or)h(called.)38 b(\(In)630 3541 y(languages)31 b(where)f(y)m(ou)g(can)h(return)e(an)h(arra)m(y)-8 b(,)32 b(this)d(also)i(elicits)e(a)h(w)m(arning.\))150 3690 y Fq(-Wstrict-prototypes)25 b Fy(\(C)30 b(only\))630 3799 y(W)-8 b(arn)24 b(if)f(a)i(function)d(is)h(declared)h(or)g (de\014ned)e(without)h(sp)s(ecifying)f(the)i(argumen)m(t)h(t)m(yp)s (es.)630 3909 y(\(An)j(old-st)m(yle)h(function)e(de\014nition)f(is)i(p) s(ermitted)f(without)g(a)i(w)m(arning)e(if)h(preceded)g(b)m(y)630 4018 y(a)j(declaration)f(whic)m(h)f(sp)s(eci\014es)g(the)h(argumen)m(t) h(t)m(yp)s(es.\))150 4167 y Fq(-Wmissing-prototypes)25 b Fy(\(C)30 b(only\))630 4276 y(W)-8 b(arn)33 b(if)f(a)h(global)f (function)g(is)g(de\014ned)f(without)h(a)h(previous)f(protot)m(yp)s(e)h (declaration.)630 4386 y(This)i(w)m(arning)h(is)g(issued)f(ev)m(en)i (if)f(the)h(de\014nition)e(itself)h(pro)m(vides)f(a)j(protot)m(yp)s(e.) 60 b(The)630 4495 y(aim)30 b(is)f(to)i(detect)h(global)e(functions)f (that)i(fail)e(to)i(b)s(e)e(declared)h(in)f(header)i(\014les.)150 4644 y Fq(-Wmissing-declarations)630 4753 y Fy(W)-8 b(arn)28 b(if)f(a)i(global)e(function)f(is)h(de\014ned)g(without)g(a)h(previous) f(declaration.)39 b(Do)29 b(so)f(ev)m(en)630 4863 y(if)37 b(the)i(de\014nition)d(itself)h(pro)m(vides)h(a)g(protot)m(yp)s(e.)66 b(Use)39 b(this)e(option)h(to)h(detect)h(global)630 4973 y(functions)29 b(that)i(are)g(not)f(declared)g(in)f(header)h(\014les.) 150 5121 y Fq(-Wmissing-noreturn)630 5230 y Fy(W)-8 b(arn)27 b(ab)s(out)g(functions)e(whic)m(h)g(migh)m(t)i(b)s(e)f(candidates)g (for)h(attribute)f Fq(noreturn)p Fy(.)38 b(Note)630 5340 y(these)h(are)h(only)e(p)s(ossible)e(candidates,)41 b(not)e(absolute)g (ones.)67 b(Care)39 b(should)e(b)s(e)h(tak)m(en)p eop %%Page: 42 52 42 51 bop 150 -116 a Fy(42)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(to)46 b(man)m(ually)f(v)m(erify)g (functions)f(actually)h(do)h(not)g(ev)m(er)g(return)f(b)s(efore)g (adding)g(the)630 408 y Fq(noreturn)22 b Fy(attribute,)j(otherwise)e (subtle)g(co)s(de)h(generation)g(bugs)f(could)g(b)s(e)g(in)m(tro)s (duced.)630 518 y(Y)-8 b(ou)31 b(will)d(not)i(get)i(a)e(w)m(arning)g (for)g Fq(main)f Fy(in)g(hosted)h(C)g(en)m(vironmen)m(ts.)150 689 y Fq(-Wmissing-format-attribu)o(te)630 799 y Fy(If)f(`)p Fq(-Wformat)p Fy(')f(is)h(enabled,)g(also)h(w)m(arn)f(ab)s(out)h (functions)e(whic)m(h)h(migh)m(t)g(b)s(e)g(candidates)630 908 y(for)38 b Fq(format)f Fy(attributes.)64 b(Note)40 b(these)e(are)h(only)f(p)s(ossible)d(candidates,)41 b(not)d(absolute) 630 1018 y(ones.)76 b(GCC)41 b(will)e(guess)j(that)h Fq(format)d Fy(attributes)i(migh)m(t)g(b)s(e)f(appropriate)g(for)h(an)m (y)630 1127 y(function)23 b(that)i(calls)e(a)i(function)e(lik)m(e)g Fq(vprintf)g Fy(or)h Fq(vscanf)p Fy(,)g(but)g(this)f(migh)m(t)h(not)g (alw)m(a)m(ys)630 1237 y(b)s(e)37 b(the)g(case,)j(and)d(some)h (functions)e(for)h(whic)m(h)f Fq(format)f Fy(attributes)i(are)h (appropriate)630 1347 y(ma)m(y)g(not)f(b)s(e)g(detected.)62 b(This)35 b(option)i(has)f(no)h(e\013ect)i(unless)c(`)p Fq(-Wformat)p Fy(')h(is)g(enabled)630 1456 y(\(p)s(ossibly)28 b(b)m(y)i(`)p Fq(-Wall)p Fy('\).)150 1627 y Fq (-Wno-deprecated-declarat)o(ions)630 1737 y Fy(Do)25 b(not)g(w)m(arn)f(ab)s(out)g(uses)g(of)g(functions,)h(v)-5 b(ariables,)24 b(and)g(t)m(yp)s(es)g(mark)m(ed)h(as)f(deprecated)630 1847 y(b)m(y)41 b(using)e(the)i Fq(deprecated)d Fy(attribute.)71 b(\(see)42 b(Section)f(5.26)h([F)-8 b(unction)41 b(A)m(ttributes],)630 1956 y(page)j(172,)k(see)c(Section)g(5.33)h([V)-8 b(ariable)43 b(A)m(ttributes],)k(page)d(184,)k(see)c(Section)f(5.34)630 2066 y([T)m(yp)s(e)30 b(A)m(ttributes],)h(page)g(188.\))150 2237 y Fq(-Wpacked)96 b Fy(W)-8 b(arn)30 b(if)e(a)i(structure)f(is)g (giv)m(en)g(the)h(pac)m(k)m(ed)g(attribute,)g(but)f(the)g(pac)m(k)m(ed) i(attribute)e(has)630 2346 y(no)36 b(e\013ect)i(on)e(the)g(la)m(y)m (out)h(or)g(size)f(of)g(the)h(structure.)57 b(Suc)m(h)36 b(structures)f(ma)m(y)i(b)s(e)f(mis-)630 2456 y(aligned)28 b(for)i(little)e(b)s(ene\014t.)40 b(F)-8 b(or)30 b(instance,)g(in)e (this)g(co)s(de,)j(the)e(v)-5 b(ariable)29 b Fq(f.x)f Fy(in)h Fq(struct)630 2566 y(bar)e Fy(will)f(b)s(e)h(misaligned)f(ev)m (en)j(though)e Fq(struct)i(bar)e Fy(do)s(es)h(not)g(itself)f(ha)m(v)m (e)j(the)e(pac)m(k)m(ed)630 2675 y(attribute:)870 2810 y Fq(struct)46 b(foo)h({)965 2913 y(int)g(x;)965 3017 y(char)g(a,)g(b,)g(c,)h(d;)870 3121 y(})f(__attribute__\(\(packed\)\);) 870 3225 y(struct)f(bar)h({)965 3329 y(char)g(z;)965 3432 y(struct)g(foo)f(f;)870 3536 y(};)150 3700 y(-Wpadded)96 b Fy(W)-8 b(arn)38 b(if)f(padding)f(is)h(included)e(in)h(a)i (structure,)i(either)d(to)h(align)f(an)h(elemen)m(t)g(of)g(the)630 3810 y(structure)d(or)g(to)h(align)e(the)h(whole)g(structure.)55 b(Sometimes)34 b(when)h(this)f(happ)s(ens)f(it)i(is)630 3919 y(p)s(ossible)e(to)i(rearrange)h(the)f(\014elds)e(of)j(the)f (structure)f(to)i(reduce)f(the)g(padding)e(and)i(so)630 4029 y(mak)m(e)c(the)g(structure)f(smaller.)150 4200 y Fq(-Wredundant-decls)630 4310 y Fy(W)-8 b(arn)34 b(if)e(an)m(ything)g (is)h(declared)f(more)i(than)f(once)h(in)e(the)h(same)h(scop)s(e,)g(ev) m(en)g(in)e(cases)630 4419 y(where)e(m)m(ultiple)e(declaration)i(is)f (v)-5 b(alid)29 b(and)h(c)m(hanges)h(nothing.)150 4590 y Fq(-Wnested-externs)26 b Fy(\(C)k(only\))630 4700 y(W)-8 b(arn)31 b(if)e(an)h Fq(extern)f Fy(declaration)h(is)f(encoun)m(tered)i (within)d(a)j(function.)150 4871 y Fq(-Wunreachable-code)630 4980 y Fy(W)-8 b(arn)31 b(if)e(the)i(compiler)e(detects)i(that)g(co)s (de)g(will)c(nev)m(er)k(b)s(e)f(executed.)630 5121 y(This)24 b(option)h(is)g(in)m(tended)g(to)h(w)m(arn)g(when)e(the)i(compiler)f (detects)i(that)f(at)h(least)f(a)g(whole)630 5230 y(line)41 b(of)i(source)g(co)s(de)f(will)e(nev)m(er)j(b)s(e)f(executed,)47 b(b)s(ecause)c(some)g(condition)e(is)h(nev)m(er)630 5340 y(satis\014ed)29 b(or)i(b)s(ecause)f(it)g(is)g(after)g(a)h(pro)s (cedure)e(that)i(nev)m(er)g(returns.)p eop %%Page: 43 53 43 52 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(43)630 299 y(It)24 b(is)f(p)s(ossible)f(for)i(this)f (option)g(to)i(pro)s(duce)e(a)i(w)m(arning)d(ev)m(en)j(though)f(there)g (are)h(circum-)630 408 y(stances)36 b(under)e(whic)m(h)h(part)g(of)h (the)g(a\013ected)h(line)d(can)i(b)s(e)f(executed,)j(so)e(care)g (should)630 518 y(b)s(e)30 b(tak)m(en)h(when)f(remo)m(ving)g(apparen)m (tly-unreac)m(hable)f(co)s(de.)630 650 y(F)-8 b(or)34 b(instance,)h(when)d(a)i(function)e(is)h(inlined,)e(a)j(w)m(arning)e (ma)m(y)j(mean)e(that)h(the)g(line)e(is)630 759 y(unreac)m(hable)e(in)f (only)g(one)i(inlined)c(cop)m(y)k(of)g(the)f(function.)630 891 y(This)36 b(option)h(is)g(not)h(made)g(part)f(of)h(`)p Fq(-Wall)p Fy(')f(b)s(ecause)h(in)e(a)j(debugging)d(v)m(ersion)i(of)g (a)630 1000 y(program)28 b(there)h(is)e(often)i(substan)m(tial)e(co)s (de)i(whic)m(h)e(c)m(hec)m(ks)i(correct)h(functioning)c(of)j(the)630 1110 y(program)36 b(and)g(is,)h(hop)s(efully)-8 b(,)36 b(unreac)m(hable)g(b)s(ecause)h(the)f(program)h(do)s(es)f(w)m(ork.)59 b(An-)630 1219 y(other)24 b(common)g(use)f(of)g(unreac)m(hable)g(co)s (de)h(is)f(to)h(pro)m(vide)e(b)s(eha)m(vior)h(whic)m(h)f(is)h (selectable)630 1329 y(at)31 b(compile-time.)150 1483 y Fq(-Winline)96 b Fy(W)-8 b(arn)31 b(if)e(a)i(function)e(can)i(not)f (b)s(e)g(inlined)d(and)j(it)g(w)m(as)g(declared)g(as)h(inline.)150 1636 y Fq(-Wlong-long)630 1746 y Fy(W)-8 b(arn)44 b(if)f(`)p Fq(long)30 b(long)p Fy(')43 b(t)m(yp)s(e)h(is)f(used.)81 b(This)42 b(is)h(default.)81 b(T)-8 b(o)44 b(inhibit)d(the)j(w)m (arning)630 1855 y(messages,)35 b(use)f(`)p Fq(-Wno-long-long)p Fy('.)46 b(Flags)34 b(`)p Fq(-Wlong-long)p Fy(')d(and)h(`)p Fq(-Wno-long-long)p Fy(')630 1965 y(are)f(tak)m(en)g(in)m(to)g(accoun)m (t)g(only)f(when)f(`)p Fq(-pedantic)p Fy(')g(\015ag)h(is)g(used.)150 2118 y Fq(-Wdisabled-optimization)630 2228 y Fy(W)-8 b(arn)31 b(if)f(a)i(requested)f(optimization)f(pass)h(is)f(disabled.)40 b(This)29 b(w)m(arning)h(do)s(es)h(not)g(gen-)630 2337 y(erally)c(indicate)f(that)j(there)f(is)e(an)m(ything)h(wrong)h(with)e (y)m(our)i(co)s(de;)h(it)e(merely)g(indicates)630 2447 y(that)35 b(GCC's)g(optimizers)e(w)m(ere)i(unable)f(to)h(handle)e(the)i (co)s(de)g(e\013ectiv)m(ely)-8 b(.)55 b(Often,)36 b(the)630 2557 y(problem)21 b(is)h(that)i(y)m(our)f(co)s(de)g(is)f(to)s(o)i(big)e (or)h(to)s(o)h(complex;)h(GCC)e(will)d(refuse)j(to)h(optimize)630 2666 y(programs)36 b(when)f(the)h(optimization)f(itself)f(is)h(lik)m (ely)g(to)i(tak)m(e)g(inordinate)d(amoun)m(ts)j(of)630 2776 y(time.)150 2929 y Fq(-Werror)144 b Fy(Mak)m(e)32 b(all)d(w)m(arnings)g(in)m(to)i(errors.)150 3178 y Fs(3.9)68 b(Options)45 b(for)g(Debugging)h(Y)-11 b(our)44 b(Program)i(or)f(GCC) 275 3367 y Fy(GCC)38 b(has)h(v)-5 b(arious)38 b(sp)s(ecial)g(options)h (that)g(are)h(used)e(for)h(debugging)f(either)h(y)m(our)g(program)g(or) 150 3477 y(GCC:)150 3630 y Fq(-g)384 b Fy(Pro)s(duce)26 b(debugging)h(information)e(in)h(the)h(op)s(erating)g(system's)g(nativ) m(e)h(format)f(\(stabs,)630 3740 y(COFF,)e(X)m(COFF,)g(or)g(D)m(W)-10 b(ARF\).)40 b(GDB)26 b(can)f(w)m(ork)f(with)g(this)f(debugging)g (information.)630 3871 y(On)k(most)h(systems)g(that)h(use)f(stabs)f (format,)i(`)p Fq(-g)p Fy(')f(enables)g(use)f(of)h(extra)h(debugging)e (in-)630 3981 y(formation)22 b(that)h(only)f(GDB)i(can)f(use;)i(this)c (extra)j(information)d(mak)m(es)i(debugging)f(w)m(ork)630 4091 y(b)s(etter)30 b(in)f(GDB)i(but)e(will)e(probably)h(mak)m(e)j (other)g(debuggers)e(crash)h(or)g(refuse)f(to)i(read)630 4200 y(the)i(program.)47 b(If)33 b(y)m(ou)g(w)m(an)m(t)g(to)g(con)m (trol)h(for)e(certain)h(whether)f(to)h(generate)h(the)f(extra)630 4310 y(information,)i(use)g(`)p Fq(-gstabs+)p Fy(',)g(`)p Fq(-gstabs)p Fy(',)h(`)p Fq(-gxcoff+)p Fy(',)f(`)p Fq(-gxcoff)p Fy(',)g(`)p Fq(-gdwarf-1+)p Fy(',)630 4419 y(`)p Fq(-gdwarf-1)p Fy(',)29 b(or)h(`)p Fq(-gvms)p Fy(')f(\(see)j(b)s(elo)m(w\).)630 4551 y(Unlik)m(e)39 b(most)i(other)g(C)f(compilers,)h(GCC)f(allo)m(ws)g (y)m(ou)h(to)g(use)f(`)p Fq(-g)p Fy(')h(with)e(`)p Fq(-O)p Fy('.)70 b(The)630 4661 y(shortcuts)27 b(tak)m(en)h(b)m(y)f(optimized)e (co)s(de)i(ma)m(y)h(o)s(ccasionally)e(pro)s(duce)g(surprising)d (results:)630 4770 y(some)e(v)-5 b(ariables)19 b(y)m(ou)i(declared)g (ma)m(y)g(not)g(exist)f(at)i(all;)h(\015o)m(w)d(of)h(con)m(trol)g(ma)m (y)h(brie\015y)c(mo)m(v)m(e)630 4880 y(where)23 b(y)m(ou)g(did)e(not)j (exp)s(ect)f(it;)j(some)d(statemen)m(ts)i(ma)m(y)f(not)f(b)s(e)g (executed)h(b)s(ecause)f(they)630 4989 y(compute)j(constan)m(t)g (results)e(or)i(their)e(v)-5 b(alues)25 b(w)m(ere)g(already)g(at)h (hand;)h(some)e(statemen)m(ts)630 5099 y(ma)m(y)31 b(execute)h(in)d (di\013eren)m(t)h(places)g(b)s(ecause)g(they)h(w)m(ere)g(mo)m(v)m(ed)g (out)g(of)f(lo)s(ops.)630 5230 y(Nev)m(ertheless)j(it)f(pro)m(v)m(es)h (p)s(ossible)d(to)j(debug)f(optimized)g(output.)46 b(This)31 b(mak)m(es)i(it)f(rea-)630 5340 y(sonable)e(to)h(use)f(the)g(optimizer) g(for)g(programs)g(that)h(migh)m(t)f(ha)m(v)m(e)i(bugs.)p eop %%Page: 44 54 44 53 bop 150 -116 a Fy(44)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(The)c(follo)m(wing)e(options)i(are)h (useful)d(when)h(GCC)h(is)f(generated)j(with)d(the)h(capabilit)m(y)f (for)630 408 y(more)31 b(than)f(one)g(debugging)g(format.)150 568 y Fq(-ggdb)240 b Fy(Pro)s(duce)32 b(debugging)h(information)e(for)i (use)g(b)m(y)g(GDB.)50 b(This)31 b(means)i(to)h(use)f(the)h(most)630 677 y(expressiv)m(e)h(format)g(a)m(v)-5 b(ailable)35 b(\(D)m(W)-10 b(ARF)37 b(2,)g(stabs,)f(or)g(the)f(nativ)m(e)g(format)h (if)e(neither)630 787 y(of)d(those)f(are)h(supp)s(orted\),)e(including) e(GDB)32 b(extensions)e(if)f(at)i(all)e(p)s(ossible.)150 946 y Fq(-gstabs)144 b Fy(Pro)s(duce)29 b(debugging)g(information)g(in) f(stabs)i(format)h(\(if)e(that)i(is)e(supp)s(orted\),)g(without)630 1056 y(GDB)46 b(extensions.)82 b(This)43 b(is)h(the)g(format)h(used)f (b)m(y)g(DBX)i(on)e(most)h(BSD)g(systems.)630 1166 y(On)33 b(MIPS,)g(Alpha)g(and)g(System)g(V)h(Release)g(4)g(systems)g(this)e (option)i(pro)s(duces)e(stabs)630 1275 y(debugging)40 b(output)g(whic)m(h)f(is)h(not)h(understo)s(o)s(d)d(b)m(y)j(DBX)g(or)g (SDB.)72 b(On)39 b(System)i(V)630 1385 y(Release)31 b(4)g(systems)f (this)f(option)h(requires)f(the)i(GNU)g(assem)m(bler.)150 1544 y Fq(-gstabs+)96 b Fy(Pro)s(duce)39 b(debugging)g(information)f (in)h(stabs)h(format)g(\(if)f(that)h(is)f(supp)s(orted\),)i(using)630 1654 y(GNU)e(extensions)e(understo)s(o)s(d)g(only)g(b)m(y)h(the)g(GNU)h (debugger)f(\(GDB\).)65 b(The)38 b(use)g(of)630 1763 y(these)d(extensions)f(is)g(lik)m(ely)g(to)h(mak)m(e)h(other)f (debuggers)f(crash)h(or)f(refuse)h(to)g(read)g(the)630 1873 y(program.)150 2032 y Fq(-gcoff)192 b Fy(Pro)s(duce)27 b(debugging)g(information)f(in)h(COFF)h(format)g(\(if)f(that)h(is)f (supp)s(orted\).)39 b(This)26 b(is)630 2142 y(the)j(format)g(used)f(b)m (y)g(SDB)h(on)f(most)h(System)g(V)f(systems)h(prior)e(to)i(System)g(V)f (Release)630 2252 y(4.)150 2411 y Fq(-gxcoff)144 b Fy(Pro)s(duce)30 b(debugging)f(information)g(in)g(X)m(COFF)i(format)f(\(if)g(that)h(is)e (supp)s(orted\).)40 b(This)630 2521 y(is)29 b(the)i(format)g(used)e(b)m (y)i(the)f(DBX)h(debugger)g(on)f(IBM)h(RS/6000)h(systems.)150 2680 y Fq(-gxcoff+)96 b Fy(Pro)s(duce)28 b(debugging)f(information)f (in)h(X)m(COFF)i(format)g(\(if)f(that)h(is)e(supp)s(orted\),)g(using) 630 2790 y(GNU)39 b(extensions)e(understo)s(o)s(d)g(only)g(b)m(y)h(the) g(GNU)h(debugger)f(\(GDB\).)65 b(The)38 b(use)g(of)630 2899 y(these)d(extensions)f(is)g(lik)m(ely)g(to)h(mak)m(e)h(other)f (debuggers)f(crash)h(or)f(refuse)h(to)g(read)g(the)630 3009 y(program,)f(and)f(ma)m(y)i(cause)f(assem)m(blers)f(other)h(than)f (the)h(GNU)g(assem)m(bler)f(\(GAS\))h(to)630 3118 y(fail)29 b(with)g(an)h(error.)150 3278 y Fq(-gdwarf)144 b Fy(Pro)s(duce)39 b(debugging)f(information)g(in)g(D)m(W)-10 b(ARF)41 b(v)m(ersion)e(1)h (format)g(\(if)e(that)i(is)f(sup-)630 3387 y(p)s(orted\).)g(This)26 b(is)h(the)g(format)h(used)f(b)m(y)g(SDB)h(on)g(most)g(System)f(V)h (Release)g(4)g(systems.)150 3547 y Fq(-gdwarf+)96 b Fy(Pro)s(duce)39 b(debugging)f(information)g(in)g(D)m(W)-10 b(ARF)41 b(v)m(ersion)e(1)h (format)g(\(if)e(that)i(is)f(sup-)630 3656 y(p)s(orted\),)28 b(using)d(GNU)j(extensions)f(understo)s(o)s(d)e(only)i(b)m(y)g(the)g (GNU)h(debugger)f(\(GDB\).)630 3766 y(The)h(use)f(of)i(these)f (extensions)g(is)f(lik)m(ely)g(to)h(mak)m(e)i(other)e(debuggers)g (crash)g(or)g(refuse)f(to)630 3875 y(read)j(the)h(program.)150 4035 y Fq(-gdwarf-2)630 4144 y Fy(Pro)s(duce)39 b(debugging)f (information)g(in)g(D)m(W)-10 b(ARF)41 b(v)m(ersion)e(2)h(format)g (\(if)e(that)i(is)f(sup-)630 4254 y(p)s(orted\).)h(This)29 b(is)g(the)i(format)g(used)e(b)m(y)h(DBX)i(on)e(IRIX)g(6.)150 4413 y Fq(-gvms)240 b Fy(Pro)s(duce)36 b(debugging)h(information)e(in)h (VMS)h(debug)g(format)g(\(if)g(that)h(is)e(supp)s(orted\).)630 4523 y(This)29 b(is)g(the)i(format)f(used)g(b)m(y)g(DEBUG)i(on)e(VMS)g (systems.)150 4682 y Fq(-g)p Fn(lev)m(el)150 4792 y Fq(-ggdb)p Fn(lev)m(el)150 4902 y Fq(-gstabs)p Fn(lev)m(el)150 5011 y Fq(-gcoff)p Fn(lev)m(el)150 5121 y Fq(-gxcoff)p Fn(lev)m(el)150 5230 y Fq(-gvms)p Fn(lev)m(el)63 b Fy(Request)36 b(debugging)f (information)f(and)h(also)h(use)f Fn(lev)m(el)k Fy(to)e(sp)s(ecify)d (ho)m(w)i(m)m(uc)m(h)g(infor-)630 5340 y(mation.)k(The)30 b(default)g(lev)m(el)g(is)f(2.)p eop %%Page: 45 55 45 54 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(45)630 299 y(Lev)m(el)33 b(1)g(pro)s(duces)f(minimal)e (information,)i(enough)g(for)h(making)f(bac)m(ktraces)j(in)c(parts)630 408 y(of)41 b(the)f(program)h(that)g(y)m(ou)g(don't)f(plan)g(to)h (debug.)70 b(This)39 b(includes)f(descriptions)h(of)630 518 y(functions)30 b(and)h(external)h(v)-5 b(ariables,)31 b(but)g(no)h(information)e(ab)s(out)h(lo)s(cal)g(v)-5 b(ariables)31 b(and)630 628 y(no)f(line)f(n)m(um)m(b)s(ers.)630 762 y(Lev)m(el)i(3)f(includes)e(extra)j(information,)e(suc)m(h)h(as)h (all)e(the)h(macro)h(de\014nitions)d(presen)m(t)i(in)630 871 y(the)h(program.)40 b(Some)30 b(debuggers)g(supp)s(ort)f(macro)i (expansion)e(when)h(y)m(ou)g(use)g(`)p Fq(-g3)p Fy('.)630 1005 y(Note)41 b(that)f(in)e(order)h(to)i(a)m(v)m(oid)f(confusion)e(b)s (et)m(w)m(een)i(D)m(W)-10 b(ARF1)42 b(debug)d(lev)m(el)g(2,)k(and)630 1115 y(D)m(W)-10 b(ARF2,)53 b(neither)45 b(`)p Fq(-gdwarf)p Fy(')g(nor)h(`)p Fq(-gdwarf-2)p Fy(')e(accept)k(a)f(concatenated)i (debug)630 1224 y(lev)m(el.)j(Instead)34 b(use)f(an)h(additional)f(`)p Fq(-g)p Fn(lev)m(el)t Fy(')g(option)g(to)i(c)m(hange)h(the)e(debug)f (lev)m(el)h(for)630 1334 y(D)m(W)-10 b(ARF1)32 b(or)f(D)m(W)-10 b(ARF2.)150 1492 y Fq(-p)384 b Fy(Generate)35 b(extra)f(co)s(de)f(to)h (write)f(pro\014le)f(information)g(suitable)g(for)h(the)g(analysis)f (pro-)630 1602 y(gram)c Fq(prof)p Fy(.)39 b(Y)-8 b(ou)28 b(m)m(ust)g(use)f(this)g(option)h(when)e(compiling)g(the)i(source)g (\014les)f(y)m(ou)h(w)m(an)m(t)630 1711 y(data)j(ab)s(out,)f(and)g(y)m (ou)h(m)m(ust)f(also)g(use)h(it)e(when)h(linking.)150 1870 y Fq(-pg)336 b Fy(Generate)35 b(extra)f(co)s(de)f(to)h(write)f (pro\014le)f(information)g(suitable)g(for)h(the)g(analysis)f(pro-)630 1979 y(gram)24 b Fq(gprof)p Fy(.)37 b(Y)-8 b(ou)25 b(m)m(ust)f(use)f (this)g(option)h(when)f(compiling)e(the)k(source)f(\014les)f(y)m(ou)h (w)m(an)m(t)630 2089 y(data)31 b(ab)s(out,)f(and)g(y)m(ou)h(m)m(ust)f (also)g(use)h(it)e(when)h(linking.)150 2247 y Fq(-a)384 b Fy(Generate)41 b(extra)f(co)s(de)g(to)g(write)e(pro\014le)g (information)g(for)h(basic)g(blo)s(c)m(ks,)i(whic)m(h)e(will)630 2357 y(record)33 b(the)f(n)m(um)m(b)s(er)g(of)h(times)f(eac)m(h)i (basic)e(blo)s(c)m(k)g(is)g(executed,)i(the)f(basic)f(blo)s(c)m(k)g (start)630 2466 y(address,)f(and)g(the)h(function)e(name)i(con)m (taining)f(the)h(basic)f(blo)s(c)m(k.)44 b(If)31 b(`)p Fq(-g)p Fy(')h(is)e(used,)i(the)630 2576 y(line)f(n)m(um)m(b)s(er)h (and)g(\014lename)g(of)h(the)g(start)g(of)g(the)g(basic)f(blo)s(c)m(k)h (will)d(also)j(b)s(e)f(recorded.)630 2685 y(If)j(not)h(o)m(v)m (erridden)e(b)m(y)i(the)f(mac)m(hine)h(description,)f(the)g(default)g (action)h(is)e(to)j(app)s(end)630 2795 y(to)31 b(the)g(text)g(\014le)f (`)p Fq(bb.out)p Fy('.)630 2929 y(This)h(data)i(could)e(b)s(e)h (analyzed)g(b)m(y)g(a)h(program)f(lik)m(e)g Fq(tcov)p Fy(.)46 b(Note,)34 b(ho)m(w)m(ev)m(er,)h(that)e(the)630 3039 y(format)j(of)g(the)g(data)h(is)d(not)i(what)g Fq(tcov)f Fy(exp)s(ects.)57 b(Ev)m(en)m(tually)35 b(GNU)i Fq(gprof)d Fy(should)630 3148 y(b)s(e)c(extended)g(to)h(pro)s(cess)f(this)f(data.) 150 3306 y Fq(-Q)384 b Fy(Mak)m(es)36 b(the)e(compiler)f(prin)m(t)f (out)j(eac)m(h)g(function)e(name)h(as)g(it)g(is)f(compiled,)h(and)f (prin)m(t)630 3416 y(some)e(statistics)f(ab)s(out)g(eac)m(h)i(pass)e (when)f(it)h(\014nishes.)150 3574 y Fq(-ftime-report)630 3684 y Fy(Mak)m(es)d(the)e(compiler)f(prin)m(t)g(some)i(statistics)f (ab)s(out)g(the)g(time)g(consumed)g(b)m(y)g(eac)m(h)h(pass)630 3794 y(when)j(it)h(\014nishes.)150 3952 y Fq(-fmem-report)630 4061 y Fy(Mak)m(es)35 b(the)f(compiler)e(prin)m(t)g(some)i(statistics)f (ab)s(out)g(p)s(ermanen)m(t)g(memory)h(allo)s(cation)630 4171 y(when)29 b(it)h(\014nishes.)150 4329 y Fq(-fprofile-arcs)630 4439 y Fy(Instrumen)m(t)39 b Fn(arcs)44 b Fy(during)38 b(compilation)h(to)i(generate)h(co)m(v)m(erage)h(data)e(or)f(for)g (pro\014le-)630 4548 y(directed)23 b(blo)s(c)m(k)h(ordering.)37 b(During)22 b(execution)i(the)g(program)g(records)g(ho)m(w)f(man)m(y)h (times)630 4658 y(eac)m(h)35 b(branc)m(h)e(is)g(executed)h(and)f(ho)m (w)h(man)m(y)g(times)f(it)g(is)g(tak)m(en.)52 b(When)34 b(the)f(compiled)630 4768 y(program)28 b(exits)f(it)h(sa)m(v)m(es)h (this)e(data)h(to)h(a)f(\014le)f(called)g(`)p Fn(sourcename)p Fq(.da)p Fy(')h(for)g(eac)m(h)h(source)630 4877 y(\014le.)630 5011 y(F)-8 b(or)22 b(pro\014le-directed)d(blo)s(c)m(k)h(ordering,)i (compile)e(the)h(program)g(with)e(`)p Fq(-fprofile-arcs)p Fy(')630 5121 y(plus)34 b(optimization)h(and)g(co)s(de)h(generation)h (options,)g(generate)g(the)f(arc)g(pro\014le)f(infor-)630 5230 y(mation)d(b)m(y)h(running)d(the)j(program)f(on)g(a)h(selected)h (w)m(orkload,)f(and)f(then)g(compile)g(the)630 5340 y(program)38 b(again)h(with)e(the)h(same)h(optimization)e(and)h(co)s(de)h (generation)f(options)g(plus)p eop %%Page: 46 56 46 55 bop 150 -116 a Fy(46)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(`)p Fq(-fbranch-probabilities)p Fy(')25 b(\(see)31 b(Section)g(3.10)h([Options)d(that)i(Con)m(trol)f (Optimiza-)630 408 y(tion],)g(page)h(50\).)630 542 y(The)22 b(other)h(use)f(of)h(`)p Fq(-fprofile-arcs)p Fy(')c(is)j(for)g(use)g (with)f Fq(gcov)p Fy(,)j(when)d(it)h(is)g(used)f(with)h(the)630 652 y(`)p Fq(-ftest-coverage)p Fy(')34 b(option.)62 b(GCC)37 b(supp)s(orts)f(t)m(w)m(o)j(metho)s(ds)e(of)h(determining)e(co)s(de)630 762 y(co)m(v)m(erage:)65 b(the)42 b(options)e(that)i(supp)s(ort)e Fq(gcov)p Fy(,)j(and)d(options)h(`)p Fq(-a)p Fy(')g(and)f(`)p Fq(-ax)p Fy(',)k(whic)m(h)630 871 y(write)32 b(information)f(to)i(text) h(\014les.)47 b(The)32 b(options)g(that)i(supp)s(ort)d Fq(gcov)g Fy(do)i(not)g(need)f(to)630 981 y(instrumen)m(t)i(ev)m(ery)j (arc)f(in)e(the)i(program,)h(so)f(a)h(program)e(compiled)f(with)h(them) h(runs)630 1090 y(faster)41 b(than)g(a)g(program)g(compiled)e(with)h(`) p Fq(-a)p Fy(',)k(whic)m(h)39 b(adds)h(instrumen)m(tation)g(co)s(de)630 1200 y(to)d(ev)m(ery)g(basic)e(blo)s(c)m(k)h(in)e(the)j(program.)57 b(The)36 b(tradeo\013:)52 b(since)36 b Fq(gcov)f Fy(do)s(es)g(not)i(ha) m(v)m(e)630 1310 y(execution)f(coun)m(ts)f(for)g(all)g(branc)m(hes,)h (it)f(m)m(ust)g(start)h(with)e(the)i(execution)f(coun)m(ts)h(for)630 1419 y(the)29 b(instrumen)m(ted)f(branc)m(hes,)i(and)e(then)h(iterate)h (o)m(v)m(er)h(the)f(program)f(\015o)m(w)g(graph)g(un)m(til)630 1529 y(the)h(en)m(tire)g(graph)f(has)h(b)s(een)f(solv)m(ed.)41 b(Hence,)31 b Fq(gcov)e Fy(runs)f(a)i(little)f(more)h(slo)m(wly)f(than) h(a)630 1638 y(program)g(whic)m(h)f(uses)h(information)f(from)h(`)p Fq(-a)p Fy(')g(and)g(`)p Fq(-ax)p Fy('.)630 1772 y(With)45 b(`)p Fq(-fprofile-arcs)p Fy(',)h(for)f(eac)m(h)i(function)d(of)h(y)m (our)h(program)f(GCC)g(creates)i(a)630 1882 y(program)33 b(\015o)m(w)h(graph,)g(then)f(\014nds)f(a)i(spanning)e(tree)i(for)f (the)h(graph.)50 b(Only)32 b(arcs)h(that)630 1992 y(are)e(not)g(on)g (the)g(spanning)e(tree)i(ha)m(v)m(e)h(to)g(b)s(e)e(instrumen)m(ted:)40 b(the)31 b(compiler)f(adds)g(co)s(de)630 2101 y(to)40 b(coun)m(t)g(the)f(n)m(um)m(b)s(er)f(of)h(times)g(that)g(these)h(arcs)f (are)h(executed.)68 b(When)38 b(an)h(arc)h(is)630 2211 y(the)j(only)f(exit)h(or)f(only)g(en)m(trance)i(to)f(a)h(blo)s(c)m(k,)h (the)e(instrumen)m(tation)f(co)s(de)h(can)g(b)s(e)630 2320 y(added)33 b(to)i(the)f(blo)s(c)m(k;)h(otherwise,)g(a)f(new)g (basic)f(blo)s(c)m(k)g(m)m(ust)h(b)s(e)g(created)h(to)f(hold)f(the)630 2430 y(instrumen)m(tation)c(co)s(de.)630 2564 y(This)38 b(option)i(mak)m(es)h(it)e(p)s(ossible)f(to)j(estimate)f(branc)m(h)g (probabilities)c(and)k(to)h(calcu-)630 2673 y(late)35 b(basic)f(blo)s(c)m(k)g(execution)g(coun)m(ts.)54 b(In)34 b(general,)h(basic)f(blo)s(c)m(k)g(execution)h(coun)m(ts)g(as)630 2783 y(pro)m(vided)29 b(b)m(y)i(`)p Fq(-a)p Fy(')f(do)h(not)g(giv)m(e)g (enough)f(information)f(to)i(estimate)h(all)d(branc)m(h)h(proba-)630 2893 y(bilities.)150 3013 y Fq(-ftest-coverage)630 3123 y Fy(Create)41 b(data)h(\014les)d(for)i(the)f Fq(gcov)g Fy(co)s(de-co)m(v)m(erage)k(utilit)m(y)39 b(\(see)i(Chapter)f(8)h([)p Fq(gcov)p Fy(:)61 b(a)630 3233 y(GCC)32 b(T)-8 b(est)32 b(Co)m(v)m(erage)i(Program],)f(page)g(267\).)47 b(The)32 b(data)h(\014le)e(names)h(b)s(egin)e(with)h(the)630 3342 y(name)f(of)h(y)m(our)f(source)h(\014le:)630 3501 y Fn(sourcename)p Fq(.bb)1110 3610 y Fy(A)h(mapping)f(from)g(basic)h(blo)s(c)m(ks)f(to)i (line)d(n)m(um)m(b)s(ers,)i(whic)m(h)f Fq(gcov)g Fy(uses)g(to)1110 3720 y(asso)s(ciate)g(basic)f(blo)s(c)m(k)g(execution)h(coun)m(ts)f (with)f(line)g(n)m(um)m(b)s(ers.)630 3878 y Fn(sourcename)p Fq(.bbg)1110 3988 y Fy(A)36 b(list)e(of)j(all)d(arcs)i(in)f(the)h (program)g(\015o)m(w)g(graph.)56 b(This)34 b(allo)m(ws)h Fq(gcov)g Fy(to)1110 4098 y(reconstruct)44 b(the)h(program)f(\015o)m(w) g(graph,)j(so)d(that)h(it)e(can)i(compute)f(all)1110 4207 y(basic)35 b(blo)s(c)m(k)h(and)f(arc)h(execution)g(coun)m(ts)h (from)e(the)h(information)e(in)h(the)1110 4317 y Fn(sourcename)p Fq(.da)30 b Fy(\014le.)630 4475 y(Use)h(`)p Fq(-ftest-coverage)p Fy(')c(with)j(`)p Fq(-fprofile-arcs)p Fy(';)e(the)j(latter)g(option)g (adds)f(instru-)630 4585 y(men)m(tation)f(to)h(the)e(program,)h(whic)m (h)f(then)g(writes)g(execution)h(coun)m(ts)g(to)g(another)g(data)630 4694 y(\014le:)630 4853 y Fn(sourcename)p Fq(.da)1110 4962 y Fy(Run)m(time)41 b(arc)h(execution)g(coun)m(ts,)k(used)41 b(in)g(conjunction)g(with)f(the)j(arc)1110 5072 y(information)29 b(in)g(the)h(\014le)g Fn(sourcename)p Fq(.bbg)p Fy(.)630 5230 y(Co)m(v)m(erage)j(data)e(will)c(map)j(b)s(etter)h(to)g(the)f (source)h(\014les)e(if)h(`)p Fq(-ftest-coverage)p Fy(')c(is)k(used)630 5340 y(without)f(optimization.)p eop %%Page: 47 57 47 56 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(47)150 299 y Fq(-d)p Fn(letters)136 b Fy(Sa)m(ys)24 b(to)h(mak)m(e)h(debugging)d(dumps)f(during)g (compilation)h(at)i(times)f(sp)s(eci\014ed)e(b)m(y)j Fn(letters)p Fy(.)630 408 y(This)i(is)h(used)h(for)f(debugging)g(the)i (compiler.)39 b(The)28 b(\014le)g(names)h(for)g(most)g(of)h(the)f (dumps)630 518 y(are)g(made)f(b)m(y)g(app)s(ending)e(a)j(pass)f(n)m(um) m(b)s(er)e(and)i(a)h(w)m(ord)f(to)h(the)f(source)h(\014le)e(name)h (\(e.g.)630 628 y(`)p Fq(foo.c.00.rtl)p Fy(')i(or)j(`)p Fq(foo.c.01.sibling)p Fy('\).)46 b(Here)33 b(are)h(the)f(p)s(ossible)e (letters)i(for)g(use)630 737 y(in)c Fn(letters)p Fy(,)i(and)f(their)f (meanings:)630 891 y(`)p Fq(A)p Fy(')382 b(Annotate)40 b(the)e(assem)m(bler)g(output)g(with)g(miscellaneous)e(debugging)i(in-) 1110 1001 y(formation.)630 1155 y(`)p Fq(b)p Fy(')382 b(Dump)30 b(after)g(computing)g(branc)m(h)g(probabilities,)d(to)k(`)p Fn(\014le)p Fq(.14.bp)p Fy('.)630 1310 y(`)p Fq(B)p Fy(')382 b(Dump)30 b(after)g(blo)s(c)m(k)g(reordering,)g(to)h(`)p Fn(\014le)p Fq(.29.bbro)p Fy('.)630 1464 y(`)p Fq(c)p Fy(')382 b(Dump)30 b(after)g(instruction)f(com)m(bination,)h(to)h(the)f (\014le)g(`)p Fn(\014le)p Fq(.16.combine)p Fy('.)630 1618 y(`)p Fq(C)p Fy(')382 b(Dump)30 b(after)g(the)h(\014rst)f(if)f (con)m(v)m(ersion,)i(to)g(the)g(\014le)e(`)p Fn(\014le)p Fq(.17.ce)p Fy('.)630 1772 y(`)p Fq(d)p Fy(')382 b(Dump)30 b(after)g(dela)m(y)m(ed)h(branc)m(h)f(sc)m(heduling,)f(to)i(`)p Fn(\014le)p Fq(.31.dbr)p Fy('.)630 1926 y(`)p Fq(D)p Fy(')382 b(Dump)22 b(all)h(macro)g(de\014nitions,)g(at)h(the)f(end)g (of)h(prepro)s(cessing,)f(in)f(addition)1110 2036 y(to)31 b(normal)e(output.)630 2190 y(`)p Fq(e)p Fy(')382 b(Dump)24 b(after)i(SSA)e(optimizations,)i(to)g(`)p Fn(\014le)p Fq(.04.ssa)p Fy(')d(and)h(`)p Fn(\014le)p Fq(.07.ussa)p Fy('.)630 2345 y(`)p Fq(E)p Fy(')382 b(Dump)30 b(after)g(the)h(second)f (if)g(con)m(v)m(ersion,)h(to)g(`)p Fn(\014le)p Fq(.26.ce2)p Fy('.)630 2499 y(`)p Fq(f)p Fy(')382 b(Dump)30 b(after)g(life)f (analysis,)h(to)h(`)p Fn(\014le)p Fq(.15.life)p Fy('.)630 2653 y(`)p Fq(F)p Fy(')382 b(Dump)30 b(after)g(purging)f Fq(ADDRESSOF)f Fy(co)s(des,)j(to)g(`)p Fn(\014le)p Fq(.09.addressof)p Fy('.)630 2807 y(`)p Fq(g)p Fy(')382 b(Dump)30 b(after)g(global)g (register)g(allo)s(cation,)g(to)h(`)p Fn(\014le)p Fq(.21.greg)p Fy('.)630 2961 y(`)p Fq(h)p Fy(')382 b(Dump)30 b(after)g (\014nalization)f(of)i(EH)f(handling)e(co)s(de,)j(to)g(`)p Fn(\014le)p Fq(.02.eh)p Fy('.)630 3116 y(`)p Fq(k)p Fy(')382 b(Dump)30 b(after)g(reg-to-stac)m(k)k(con)m(v)m(ersion,)d(to)g(`)p Fn(\014le)p Fq(.28.stack)p Fy('.)630 3270 y(`)p Fq(o)p Fy(')382 b(Dump)30 b(after)g(p)s(ost-reload)g(optimizations,)g(to)h(`)p Fn(\014le)p Fq(.22.postreload)p Fy('.)630 3424 y(`)p Fq(G)p Fy(')382 b(Dump)30 b(after)g(GCSE,)g(to)h(`)p Fn(\014le)p Fq(.10.gcse)p Fy('.)630 3578 y(`)p Fq(i)p Fy(')382 b(Dump)30 b(after)g(sibling)e(call)h(optimizations,)h(to)h(`)p Fn(\014le)p Fq(.01.sibling)p Fy('.)630 3733 y(`)p Fq(j)p Fy(')382 b(Dump)30 b(after)g(the)h(\014rst)f(jump)e(optimization,)i(to) h(`)p Fn(\014le)p Fq(.03.jump)p Fy('.)630 3887 y(`)p Fq(k)p Fy(')382 b(Dump)30 b(after)g(con)m(v)m(ersion)h(from)f (registers)g(to)h(stac)m(k,)h(to)f(`)p Fn(\014le)p Fq(.32.stack)p Fy('.)630 4041 y(`)p Fq(l)p Fy(')382 b(Dump)30 b(after)g(lo)s(cal)g (register)g(allo)s(cation,)g(to)h(`)p Fn(\014le)p Fq(.20.lreg)p Fy('.)630 4195 y(`)p Fq(L)p Fy(')382 b(Dump)30 b(after)g(lo)s(op)g (optimization,)f(to)j(`)p Fn(\014le)p Fq(.11.loop)p Fy('.)630 4350 y(`)p Fq(M)p Fy(')382 b(Dump)22 b(after)h(p)s(erforming)e(the)i (mac)m(hine)f(dep)s(enden)m(t)g(reorganisation)g(pass,)1110 4459 y(to)31 b(`)p Fn(\014le)p Fq(.30.mach)p Fy('.)630 4613 y(`)p Fq(n)p Fy(')382 b(Dump)30 b(after)g(register)h(ren)m(um)m(b) s(ering,)d(to)j(`)p Fn(\014le)p Fq(.25.rnreg)p Fy('.)630 4768 y(`)p Fq(N)p Fy(')382 b(Dump)30 b(after)g(the)h(register)f(mo)m(v) m(e)i(pass,)e(to)h(`)p Fn(\014le)p Fq(.18.regmove)p Fy('.)630 4922 y(`)p Fq(r)p Fy(')382 b(Dump)30 b(after)g(R)-8 b(TL)31 b(generation,)f(to)i(`)p Fn(\014le)p Fq(.00.rtl)p Fy('.)630 5076 y(`)p Fq(R)p Fy(')382 b(Dump)30 b(after)g(the)h(second)f(sc)m (heduling)f(pass,)h(to)h(`)p Fn(\014le)p Fq(.27.sched2)p Fy('.)630 5230 y(`)p Fq(s)p Fy(')382 b(Dump)27 b(after)i(CSE)e (\(including)e(the)j(jump)f(optimization)g(that)i(sometimes)1110 5340 y(follo)m(ws)g(CSE\),)h(to)i(`)p Fn(\014le)p Fq(.08.cse)p Fy('.)p eop %%Page: 48 58 48 57 bop 150 -116 a Fy(48)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(`)p Fq(S)p Fy(')382 b(Dump)30 b(after)g(the)h(\014rst)f(sc)m(heduling)e(pass,)i(to)h(`)p Fn(\014le)p Fq(.19.sched)p Fy('.)630 452 y(`)p Fq(t)p Fy(')382 b(Dump)26 b(after)i(the)g(second)f(CSE)f(pass)h(\(including)d (the)j(jump)f(optimization)1110 562 y(that)31 b(sometimes)f(follo)m(ws) g(CSE\),)g(to)h(`)p Fn(\014le)p Fq(.12.cse2)p Fy('.)630 715 y(`)p Fq(w)p Fy(')382 b(Dump)30 b(after)g(the)h(second)f(\015o)m(w) h(pass,)f(to)h(`)p Fn(\014le)p Fq(.23.flow2)p Fy('.)630 869 y(`)p Fq(X)p Fy(')382 b(Dump)30 b(after)g(SSA)g(dead)g(co)s(de)h (elimination,)d(to)j(`)p Fn(\014le)p Fq(.06.ssadce)p Fy('.)630 1022 y(`)p Fq(z)p Fy(')382 b(Dump)30 b(after)g(the)h(p)s (eephole)e(pass,)h(to)i(`)p Fn(\014le)p Fq(.24.peephole2)p Fy('.)630 1176 y(`)p Fq(a)p Fy(')382 b(Pro)s(duce)30 b(all)f(the)h(dumps)f(listed)g(ab)s(o)m(v)m(e.)630 1329 y(`)p Fq(m)p Fy(')382 b(Prin)m(t)23 b(statistics)g(on)g(memory)h (usage,)i(at)e(the)g(end)e(of)i(the)g(run,)f(to)i(standard)1110 1439 y(error.)630 1592 y(`)p Fq(p)p Fy(')382 b(Annotate)37 b(the)f(assem)m(bler)f(output)g(with)g(a)h(commen)m(t)h(indicating)c (whic)m(h)1110 1702 y(pattern)28 b(and)e(alternativ)m(e)i(w)m(as)g (used.)39 b(The)27 b(length)g(of)h(eac)m(h)g(instruction)e(is)1110 1811 y(also)k(prin)m(ted.)630 1965 y(`)p Fq(P)p Fy(')382 b(Dump)29 b(the)h(R)-8 b(TL)30 b(in)f(the)h(assem)m(bler)f(output)h(as) g(a)g(commen)m(t)h(b)s(efore)f(eac)m(h)1110 2074 y(instruction.)39 b(Also)30 b(turns)f(on)h(`)p Fq(-dp)p Fy(')g(annotation.)630 2228 y(`)p Fq(v)p Fy(')382 b(F)-8 b(or)23 b(eac)m(h)h(of)e(the)h(other) f(indicated)f(dump)g(\014les)g(\(except)j(for)e(`)p Fn(\014le)p Fq(.00.rtl)p Fy('\),)1110 2337 y(dump)f(a)h(represen)m(tation)h(of)g (the)f(con)m(trol)h(\015o)m(w)f(graph)g(suitable)f(for)h(viewing)1110 2447 y(with)29 b(V)m(CG)i(to)g(`)p Fn(\014le)p Fq(.)p Fn(pass)p Fq(.vcg)p Fy('.)630 2600 y(`)p Fq(x)p Fy(')382 b(Just)33 b(generate)i(R)-8 b(TL)33 b(for)h(a)g(function)e(instead)h (of)g(compiling)f(it.)50 b(Usually)1110 2710 y(used)30 b(with)f(`)p Fq(r)p Fy('.)630 2863 y(`)p Fq(y)p Fy(')382 b(Dump)30 b(debugging)f(information)g(during)f(parsing,)h(to)i (standard)f(error.)150 3017 y Fq(-fdump-unnumbered)630 3126 y Fy(When)44 b(doing)f(debugging)f(dumps)g(\(see)j(`)p Fq(-d)p Fy(')f(option)f(ab)s(o)m(v)m(e\),)49 b(suppress)42 b(instruction)630 3236 y(n)m(um)m(b)s(ers)g(and)g(line)g(n)m(um)m(b)s (er)g(note)i(output.)79 b(This)41 b(mak)m(es)j(it)f(more)g(feasible)f (to)i(use)630 3345 y(di\013)f(on)g(debugging)g(dumps)f(for)i(compiler)e (in)m(v)m(o)s(cations)i(with)e(di\013eren)m(t)h(options,)k(in)630 3455 y(particular)29 b(with)g(and)h(without)f(`)p Fq(-g)p Fy('.)150 3608 y Fq(-fdump-translation-unit)24 b Fy(\(C)30 b(and)g(C)p Fq(++)g Fy(only\))150 3718 y Fq(-fdump-translation-unit-)o Fn(options)e Fy(\(C)i(and)g(C)p Fq(++)f Fy(only\))630 3828 y(Dump)f(a)h(represen)m(tation)g(of)h(the)f(tree)g(structure)g (for)f(the)i(en)m(tire)e(translation)g(unit)g(to)i(a)630 3937 y(\014le.)48 b(The)32 b(\014le)g(name)h(is)f(made)h(b)m(y)g(app)s (ending)d(`)p Fq(.tu)p Fy(')j(to)h(the)f(source)g(\014le)f(name.)48 b(If)33 b(the)630 4047 y(`)p Fq(-)p Fn(options)t Fy(')h(form)g(is)f (used,)i Fn(options)j Fy(con)m(trols)c(the)h(details)e(of)i(the)g(dump) d(as)j(describ)s(ed)630 4156 y(for)30 b(the)h(`)p Fq(-fdump-tree)p Fy(')d(options.)150 4310 y Fq(-fdump-class-hierarchy)c Fy(\(C)p Fq(++)30 b Fy(only\))150 4419 y Fq(-fdump-class-hierarchy-)p Fn(opti)o(ons)e Fy(\(C)p Fq(++)i Fy(only\))630 4529 y(Dump)20 b(a)h(represen)m(tation)g(of)f(eac)m(h)i(class's)f(hierarc)m(h)m(y)f (and)g(virtual)f(function)g(table)i(la)m(y)m(out)630 4639 y(to)i(a)f(\014le.)37 b(The)21 b(\014le)g(name)h(is)f(made)h(b)m (y)g(app)s(ending)d(`)p Fq(.class)p Fy(')i(to)h(the)g(source)g(\014le)f (name.)38 b(If)630 4748 y(the)22 b(`)p Fq(-)p Fn(options)t Fy(')g(form)f(is)g(used,)i Fn(options)i Fy(con)m(trols)e(the)f(details) f(of)h(the)h(dump)d(as)i(describ)s(ed)630 4858 y(for)30 b(the)h(`)p Fq(-fdump-tree)p Fy(')d(options.)150 5011 y Fq(-fdump-tree-)p Fn(switc)m(h)f Fy(\(C)p Fq(++)i Fy(only\))150 5121 y Fq(-fdump-tree-)p Fn(switc)m(h)p Fq(-)p Fn(options)g Fy(\(C)p Fq(++)h Fy(only\))630 5230 y(Con)m(trol)f(the)g(dumping)e(at)j (v)-5 b(arious)28 b(stages)i(of)f(pro)s(cessing)f(the)i(in)m (termediate)f(language)630 5340 y(tree)k(to)h(a)f(\014le.)47 b(The)32 b(\014le)f(name)i(is)f(generated)i(b)m(y)e(app)s(ending)e(a)j (switc)m(h)f(sp)s(eci\014c)g(su\016x)p eop %%Page: 49 59 49 58 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(49)630 299 y(to)37 b(the)f(source)f(\014le)g(name.)57 b(If)36 b(the)g(`)p Fq(-)p Fn(options)t Fy(')f(form)g(is)g(used,)i Fn(options)h Fy(is)d(a)h(list)f(of)h(`)p Fq(-)p Fy(')630 408 y(separated)41 b(options)f(that)i(con)m(trol)f(the)g(details)e(of)i (the)g(dump.)70 b(Not)42 b(all)d(options)i(are)630 518 y(applicable)31 b(to)k(all)d(dumps,)h(those)h(whic)m(h)e(are)i(not)g (meaningful)d(will)g(b)s(e)i(ignored.)49 b(The)630 628 y(follo)m(wing)29 b(options)h(are)g(a)m(v)-5 b(ailable)630 793 y(`)p Fq(address)p Fy(')94 b(Prin)m(t)26 b(the)h(address)f(of)h (eac)m(h)h(no)s(de.)39 b(Usually)26 b(this)f(is)h(not)h(meaningful)e (as)i(it)1110 903 y(c)m(hanges)33 b(according)f(to)g(the)g(en)m (vironmen)m(t)g(and)f(source)h(\014le.)44 b(Its)32 b(primary)1110 1012 y(use)e(is)f(for)i(t)m(ying)f(up)f(a)i(dump)e(\014le)g(with)g(a)i (debug)f(en)m(vironmen)m(t.)630 1178 y(`)p Fq(slim)p Fy(')238 b(Inhibit)20 b(dumping)g(of)i(mem)m(b)s(ers)g(of)h(a)g(scop)s (e)f(or)h(b)s(o)s(dy)e(of)h(a)h(function)f(merely)1110 1287 y(b)s(ecause)28 b(that)h(scop)s(e)g(has)f(b)s(een)f(reac)m(hed.)41 b(Only)27 b(dump)f(suc)m(h)i(items)g(when)1110 1397 y(they)j(are)f (directly)f(reac)m(hable)i(b)m(y)f(some)h(other)g(path.)630 1562 y(`)p Fq(all)p Fy(')286 b(T)-8 b(urn)29 b(on)h(all)g(options.)630 1727 y(The)g(follo)m(wing)f(tree)i(dumps)d(are)j(p)s(ossible:)630 1893 y(`)p Fq(original)p Fy(')1110 2002 y(Dump)f(b)s(efore)f(an)m(y)i (tree)g(based)f(optimization,)g(to)h(`)p Fn(\014le)p Fq(.original)p Fy('.)630 2168 y(`)p Fq(optimized)p Fy(')1110 2277 y(Dump)f(after)g(all)g(tree)h(based)f(optimization,)f(to)i(`)p Fn(\014le)p Fq(.optimized)p Fy('.)630 2443 y(`)p Fq(inlined)p Fy(')94 b(Dump)30 b(after)g(function)f(inlining,)e(to)k(`)p Fn(\014le)p Fq(.inlined)p Fy('.)150 2608 y Fq(-fpretend-float)630 2718 y Fy(When)c(running)d(a)k(cross-compiler,)f(pretend)f(that)i(the)f (target)i(mac)m(hine)e(uses)f(the)i(same)630 2827 y(\015oating)j(p)s (oin)m(t)f(format)h(as)g(the)g(host)h(mac)m(hine.)42 b(This)29 b(causes)i(incorrect)g(output)g(of)g(the)630 2937 y(actual)h(\015oating)f(constan)m(ts,)i(but)e(the)h(actual)g (instruction)d(sequence)j(will)d(probably)h(b)s(e)630 3046 y(the)h(same)f(as)h(GCC)f(w)m(ould)f(mak)m(e)i(when)f(running)d (on)k(the)f(target)i(mac)m(hine.)150 3212 y Fq(-save-temps)630 3321 y Fy(Store)e(the)f(usual)f(\\temp)s(orary")i(in)m(termediate)g (\014les)e(p)s(ermanen)m(tly;)h(place)g(them)h(in)e(the)630 3431 y(curren)m(t)40 b(directory)g(and)f(name)h(them)h(based)e(on)h (the)h(source)f(\014le.)69 b(Th)m(us,)42 b(compiling)630 3540 y(`)p Fq(foo.c)p Fy(')26 b(with)f(`)p Fq(-c)30 b(-save-temps)p Fy(')23 b(w)m(ould)j(pro)s(duce)f(\014les)g(`)p Fq(foo.i)p Fy(')h(and)g(`)p Fq(foo.s)p Fy(',)g(as)h(w)m(ell)630 3650 y(as)40 b(`)p Fq(foo.o)p Fy('.)69 b(This)39 b(creates)i(a)g (prepro)s(cessed)e(`)p Fq(foo.i)p Fy(')g(output)h(\014le)f(ev)m(en)i (though)f(the)630 3760 y(compiler)29 b(no)m(w)h(normally)f(uses)h(an)g (in)m(tegrated)h(prepro)s(cessor.)150 3925 y Fq(-time)240 b Fy(Rep)s(ort)36 b(the)g(CPU)g(time)f(tak)m(en)i(b)m(y)f(eac)m(h)h (subpro)s(cess)e(in)g(the)h(compilation)e(sequence.)630 4035 y(F)-8 b(or)32 b(C)e(source)i(\014les,)e(this)g(is)g(the)h (compiler)f(prop)s(er)g(and)g(assem)m(bler)h(\(plus)e(the)i(link)m(er)f (if)630 4144 y(linking)e(is)h(done\).)41 b(The)30 b(output)g(lo)s(oks)f (lik)m(e)h(this:)870 4276 y Fq(#)47 b(cc1)g(0.12)g(0.01)870 4380 y(#)g(as)h(0.00)e(0.01)630 4517 y Fy(The)32 b(\014rst)g(n)m(um)m (b)s(er)g(on)g(eac)m(h)i(line)d(is)h(the)h(\\user)f(time,")i(that)f(is) f(time)g(sp)s(en)m(t)h(executing)630 4627 y(the)d(program)f(itself.)39 b(The)29 b(second)g(n)m(um)m(b)s(er)f(is)h(\\system)h(time,")g(time)f (sp)s(en)m(t)g(executing)630 4736 y(op)s(erating)44 b(system)h (routines)e(on)h(b)s(ehalf)f(of)i(the)f(program.)83 b(Both)45 b(n)m(um)m(b)s(ers)e(are)i(in)630 4846 y(seconds.)150 5011 y Fq(-print-file-name=)p Fn(lib)o(rary)630 5121 y Fy(Prin)m(t)26 b(the)i(full)d(absolute)j(name)f(of)h(the)f(library)f (\014le)g Fn(library)33 b Fy(that)28 b(w)m(ould)e(b)s(e)h(used)g(when) 630 5230 y(linking|and)h(don't)j(do)g(an)m(ything)f(else.)43 b(With)30 b(this)g(option,)h(GCC)g(do)s(es)g(not)g(compile)630 5340 y(or)f(link)f(an)m(ything;)h(it)g(just)f(prin)m(ts)g(the)i(\014le) e(name.)p eop %%Page: 50 60 50 59 bop 150 -116 a Fy(50)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-print-multi-directory)630 408 y Fy(Prin)m(t)35 b(the)h(directory)f(name)h(corresp)s(onding)e(to)j (the)f(m)m(ultilib)c(selected)37 b(b)m(y)e(an)m(y)i(other)630 518 y(switc)m(hes)f(presen)m(t)g(in)f(the)i(command)f(line.)56 b(This)35 b(directory)h(is)f(supp)s(osed)f(to)j(exist)f(in)630 628 y Fq(GCC_EXEC_PREFIX)p Fy(.)150 790 y Fq(-print-multi-lib)630 900 y Fy(Prin)m(t)42 b(the)i(mapping)d(from)i(m)m(ultilib)d(directory)i (names)i(to)g(compiler)d(switc)m(hes)i(that)630 1009 y(enable)37 b(them.)61 b(The)36 b(directory)h(name)g(is)g(separated)g (from)g(the)g(switc)m(hes)g(b)m(y)g(`)p Fq(;)p Fy(',)j(and)630 1119 y(eac)m(h)24 b(switc)m(h)d(starts)i(with)e(an)h(`)p Fq(@)p Fy(')h(instead)f(of)g(the)h(`)p Fq(-)p Fy(',)h(without)d(spaces) i(b)s(et)m(w)m(een)g(m)m(ultiple)630 1229 y(switc)m(hes.)40 b(This)29 b(is)g(supp)s(osed)g(to)i(ease)g(shell-pro)s(cessing.)150 1391 y Fq(-print-prog-name=)p Fn(program)630 1501 y Fy(Lik)m(e)f(`)p Fq(-print-file-name)p Fy(',)d(but)j(searc)m(hes)h(for)f(a)h(program)f (suc)m(h)g(as)h(`)p Fq(cpp)p Fy('.)150 1663 y Fq (-print-libgcc-file-name)630 1773 y Fy(Same)f(as)h(`)p Fq(-print-file-name=libgcc.a)o Fy('.)630 1909 y(This)26 b(is)g(useful)g(when)h(y)m(ou)h(use)f(`)p Fq(-nostdlib)p Fy(')f(or)h(`)p Fq(-nodefaultlibs)p Fy(')e(but)i(y)m(ou)h(do)f(w)m(an)m (t)630 2018 y(to)k(link)d(with)h(`)p Fq(libgcc.a)p Fy('.)39 b(Y)-8 b(ou)31 b(can)g(do)870 2149 y Fq(gcc)47 b(-nostdlib)e Fn(\014les)t Fq(...)h(`gcc)g(-print-libgcc-file-name`)150 2311 y(-print-search-dirs)630 2421 y Fy(Prin)m(t)36 b(the)h(name)h(of)f (the)g(con\014gured)g(installation)e(directory)h(and)h(a)g(list)f(of)h (program)630 2530 y(and)30 b(library)e(directories)h(gcc)j(will)27 b(searc)m(h|and)k(don't)f(do)g(an)m(ything)g(else.)630 2667 y(This)47 b(is)h(useful)f(when)h(gcc)i(prin)m(ts)d(the)i(error)g (message)h(`)p Fq(installation)27 b(problem,)630 2776 y(cannot)i(exec)g(cpp0:)g(No)h(such)f(file)g(or)h(directory)p Fy('.)77 b(T)-8 b(o)43 b(resolv)m(e)h(this)e(y)m(ou)h(either)630 2886 y(need)38 b(to)h(put)e(`)p Fq(cpp0)p Fy(')h(and)g(the)g(other)g (compiler)f(comp)s(onen)m(ts)i(where)e(gcc)j(exp)s(ects)e(to)630 2995 y(\014nd)24 b(them,)k(or)d(y)m(ou)i(can)f(set)h(the)f(en)m (vironmen)m(t)f(v)-5 b(ariable)25 b Fq(GCC_EXEC_PREFIX)d Fy(to)27 b(the)f(di-)630 3105 y(rectory)g(where)f(y)m(ou)h(installed)d (them.)39 b(Don't)27 b(forget)f(the)g(trailing)d('/'.)40 b(See)26 b(Section)f(3.19)630 3214 y([En)m(vironmen)m(t)30 b(V)-8 b(ariables],)30 b(page)h(145.)150 3377 y Fq(-dumpmachine)630 3487 y Fy(Prin)m(t)c(the)h(compiler's)e(target)k(mac)m(hine)d(\(for)h (example,)g(`)p Fq(i686-pc-linux-gnu)p Fy('\)|and)630 3596 y(don't)i(do)h(an)m(ything)e(else.)150 3759 y Fq(-dumpversion)630 3868 y Fy(Prin)m(t)g(the)i(compiler)e(v)m(ersion)h(\(for)g(example,)h (`)p Fq(3.0)p Fy('\)|and)e(don't)i(do)f(an)m(ything)g(else.)150 4031 y Fq(-dumpspecs)630 4140 y Fy(Prin)m(t)i(the)i(compiler's)e (built-in)e(sp)s(ecs|and)i(don't)i(do)f(an)m(ything)g(else.)49 b(\(This)32 b(is)h(used)630 4250 y(when)c(GCC)h(itself)g(is)f(b)s(eing) g(built.\))39 b(See)30 b(Section)h(3.15)g([Sp)s(ec)f(Files],)g(page)h (73.)150 4515 y Fs(3.10)68 b(Options)46 b(That)e(Con)l(trol)i (Optimization)275 4711 y Fy(These)30 b(options)f(con)m(trol)i(v)-5 b(arious)30 b(sorts)g(of)g(optimizations:)150 4875 y Fq(-O)150 4985 y(-O1)336 b Fy(Optimize.)44 b(Optimizing)29 b(compilation)h(tak)m(es)j(somewhat)g(more)f(time,)g(and)f(a)h(lot)g (more)630 5094 y(memory)e(for)g(a)h(large)g(function.)630 5230 y(Without)36 b(`)p Fq(-O)p Fy(',)j(the)e(compiler's)e(goal)i(is)f (to)h(reduce)g(the)f(cost)i(of)f(compilation)e(and)h(to)630 5340 y(mak)m(e)42 b(debugging)e(pro)s(duce)g(the)i(exp)s(ected)f (results.)72 b(Statemen)m(ts)42 b(are)g(indep)s(enden)m(t:)p eop %%Page: 51 61 51 60 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(51)630 299 y(if)34 b(y)m(ou)h(stop)h(the)f(program)g (with)e(a)j(breakp)s(oin)m(t)e(b)s(et)m(w)m(een)h(statemen)m(ts,)k(y)m (ou)c(can)g(then)630 408 y(assign)28 b(a)i(new)e(v)-5 b(alue)29 b(to)h(an)m(y)f(v)-5 b(ariable)28 b(or)h(c)m(hange)h(the)f (program)g(coun)m(ter)h(to)f(an)m(y)h(other)630 518 y(statemen)m(t)39 b(in)d(the)i(function)d(and)i(get)i(exactly)f(the)f(results)f(y)m(ou)i (w)m(ould)e(exp)s(ect)h(from)630 628 y(the)31 b(source)f(co)s(de.)630 760 y(With)k(`)p Fq(-O)p Fy(',)h(the)g(compiler)e(tries)h(to)h(reduce)f (co)s(de)h(size)f(and)g(execution)h(time,)g(without)630 870 y(p)s(erforming)28 b(an)m(y)j(optimizations)e(that)i(tak)m(e)h(a)f (great)g(deal)f(of)h(compilation)e(time.)150 1026 y Fq(-O2)336 b Fy(Optimize)36 b(ev)m(en)j(more.)63 b(GCC)37 b(p)s(erforms)f(nearly)h (all)g(supp)s(orted)f(optimizations)g(that)630 1135 y(do)42 b(not)g(in)m(v)m(olv)m(e)g(a)g(space-sp)s(eed)g(tradeo\013.)77 b(The)41 b(compiler)g(do)s(es)g(not)h(p)s(erform)f(lo)s(op)630 1245 y(unrolling)24 b(or)j(function)e(inlining)e(when)j(y)m(ou)i(sp)s (ecify)d(`)p Fq(-O2)p Fy('.)39 b(As)27 b(compared)g(to)h(`)p Fq(-O)p Fy(',)g(this)630 1354 y(option)34 b(increases)g(b)s(oth)g (compilation)f(time)i(and)f(the)g(p)s(erformance)g(of)h(the)g (generated)630 1464 y(co)s(de.)630 1597 y(`)p Fq(-O2)p Fy(')42 b(turns)g(on)g(all)g(optional)g(optimizations)f(except)j(for)f (lo)s(op)e(unrolling,)i(function)630 1706 y(inlining,)31 b(and)i(register)g(renaming.)50 b(It)34 b(also)g(turns)e(on)i(the)g(`)p Fq(-fforce-mem)p Fy(')d(option)i(on)630 1816 y(all)i(mac)m(hines)h(and) g(frame)h(p)s(oin)m(ter)e(elimination)f(on)i(mac)m(hines)g(where)g (doing)g(so)g(do)s(es)630 1925 y(not)31 b(in)m(terfere)f(with)f (debugging.)630 2058 y(Please)f(note)g(the)g(w)m(arning)e(under)h(`)p Fq(-fgcse)p Fy(')f(ab)s(out)h(in)m(v)m(oking)g(`)p Fq(-O2)p Fy(')h(on)f(programs)g(that)630 2168 y(use)j(computed)g(gotos.)150 2323 y Fq(-O3)336 b Fy(Optimize)28 b(y)m(et)i(more.)40 b(`)p Fq(-O3)p Fy(')29 b(turns)f(on)h(all)f(optimizations)g(sp)s (eci\014ed)f(b)m(y)i(`)p Fq(-O2)p Fy(')g(and)f(also)630 2433 y(turns)h(on)h(the)h(`)p Fq(-finline-functions)p Fy(')26 b(and)k(`)p Fq(-frename-registers)p Fy(')c(options.)150 2589 y Fq(-O0)336 b Fy(Do)31 b(not)g(optimize.)150 2744 y Fq(-Os)336 b Fy(Optimize)36 b(for)i(size.)62 b(`)p Fq(-Os)p Fy(')37 b(enables)g(all)g(`)p Fq(-O2)p Fy(')g(optimizations)f (that)j(do)e(not)h(t)m(ypically)630 2854 y(increase)f(co)s(de)h(size.) 63 b(It)38 b(also)f(p)s(erforms)f(further)h(optimizations)f(designed)h (to)h(reduce)630 2964 y(co)s(de)31 b(size.)630 3096 y(If)k(y)m(ou)g (use)g(m)m(ultiple)e(`)p Fq(-O)p Fy(')i(options,)h(with)e(or)h(without) f(lev)m(el)h(n)m(um)m(b)s(ers,)g(the)g(last)g(suc)m(h)630 3206 y(option)30 b(is)f(the)i(one)f(that)h(is)f(e\013ectiv)m(e.)275 3362 y(Options)35 b(of)i(the)g(form)f(`)p Fq(-f)p Fn(\015ag)8 b Fy(')37 b(sp)s(ecify)f(mac)m(hine-indep)s(enden)m(t)e(\015ags.)61 b(Most)38 b(\015ags)f(ha)m(v)m(e)h(b)s(oth)150 3471 y(p)s(ositiv)m(e)25 b(and)h(negativ)m(e)h(forms;)g(the)g(negativ)m(e)g(form)f(of)g(`)p Fq(-ffoo)p Fy(')f(w)m(ould)g(b)s(e)h(`)p Fq(-fno-foo)p Fy('.)37 b(In)26 b(the)g(table)150 3581 y(b)s(elo)m(w,)j(only)e(one)i (of)g(the)g(forms)f(is)g(listed|the)g(one)h(whic)m(h)e(is)h(not)h(the)g (default.)39 b(Y)-8 b(ou)29 b(can)h(\014gure)e(out)150 3690 y(the)j(other)f(form)g(b)m(y)g(either)g(remo)m(ving)g(`)p Fq(no-)p Fy(')g(or)h(adding)e(it.)150 3846 y Fq(-ffloat-store)630 3956 y Fy(Do)f(not)g(store)g(\015oating)f(p)s(oin)m(t)f(v)-5 b(ariables)26 b(in)g(registers,)i(and)e(inhibit)e(other)k(options)e (that)630 4065 y(migh)m(t)f(c)m(hange)h(whether)e(a)i(\015oating)f(p)s (oin)m(t)f(v)-5 b(alue)24 b(is)g(tak)m(en)i(from)f(a)g(register)g(or)g (memory)-8 b(.)630 4198 y(This)21 b(option)h(prev)m(en)m(ts)i (undesirable)c(excess)k(precision)d(on)h(mac)m(hines)h(suc)m(h)g(as)g (the)g(68000)630 4308 y(where)33 b(the)g(\015oating)h(registers)f(\(of) g(the)h(68881\))i(k)m(eep)e(more)f(precision)f(than)h(a)h Fq(double)630 4417 y Fy(is)j(supp)s(osed)e(to)k(ha)m(v)m(e.)64 b(Similarly)34 b(for)j(the)h(x86)g(arc)m(hitecture.)64 b(F)-8 b(or)38 b(most)g(programs,)630 4527 y(the)i(excess)g(precision)e (do)s(es)i(only)e(go)s(o)s(d,)k(but)d(a)i(few)e(programs)g(rely)g(on)h (the)g(precise)630 4636 y(de\014nition)21 b(of)i(IEEE)f(\015oating)h(p) s(oin)m(t.)37 b(Use)24 b(`)p Fq(-ffloat-store)p Fy(')c(for)i(suc)m(h)h (programs,)h(after)630 4746 y(mo)s(difying)f(them)i(to)h(store)h(all)d (p)s(ertinen)m(t)g(in)m(termediate)h(computations)h(in)m(to)f(v)-5 b(ariables.)150 4902 y Fq(-fno-default-inline)630 5011 y Fy(Do)22 b(not)f(mak)m(e)g(mem)m(b)s(er)f(functions)g(inline)e(b)m(y) i(default)g(merely)g(b)s(ecause)h(they)g(are)g(de\014ned)630 5121 y(inside)33 b(the)i(class)g(scop)s(e)g(\(C)p Fq(++)g Fy(only\).)54 b(Otherwise,)36 b(when)e(y)m(ou)h(sp)s(ecify)f(`)p Fq(-O)p Fy(',)j(mem)m(b)s(er)630 5230 y(functions)21 b(de\014ned)g(inside)f(class)i(scop)s(e)g(are)h(compiled)e(inline)e(b)m (y)k(default;)h(i.e.,)g(y)m(ou)f(don't)630 5340 y(need)30 b(to)h(add)f(`)p Fq(inline)p Fy(')f(in)g(fron)m(t)i(of)f(the)h(mem)m(b) s(er)f(function)f(name.)p eop %%Page: 52 62 52 61 bop 150 -116 a Fy(52)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-fno-defer-pop)630 408 y Fy(Alw)m(a)m(ys)22 b(p)s(op)g(the)g(argumen)m(ts)h(to)g(eac)m(h)g (function)e(call)g(as)i(so)s(on)f(as)g(that)h(function)e(returns.)630 518 y(F)-8 b(or)42 b(mac)m(hines)f(whic)m(h)f(m)m(ust)h(p)s(op)g (argumen)m(ts)g(after)h(a)g(function)e(call,)k(the)d(compiler)630 628 y(normally)28 b(lets)h(argumen)m(ts)h(accum)m(ulate)h(on)f(the)g (stac)m(k)h(for)e(sev)m(eral)h(function)f(calls)g(and)630 737 y(p)s(ops)g(them)h(all)g(at)h(once.)150 896 y Fq(-fforce-mem)630 1005 y Fy(F)-8 b(orce)34 b(memory)e(op)s(erands)f(to)i(b)s(e)e(copied)h (in)m(to)g(registers)g(b)s(efore)f(doing)h(arithmetic)f(on)630 1115 y(them.)62 b(This)36 b(pro)s(duces)h(b)s(etter)g(co)s(de)h(b)m(y)g (making)f(all)f(memory)i(references)f(p)s(oten)m(tial)630 1224 y(common)32 b(sub)s(expressions.)44 b(When)32 b(they)g(are)g(not)h (common)f(sub)s(expressions,)e(instruc-)630 1334 y(tion)g(com)m (bination)f(should)f(eliminate)h(the)h(separate)h(register-load.)40 b(The)30 b(`)p Fq(-O2)p Fy(')f(option)630 1443 y(turns)g(on)h(this)g (option.)150 1602 y Fq(-fforce-addr)630 1711 y Fy(F)-8 b(orce)31 b(memory)f(address)f(constan)m(ts)i(to)f(b)s(e)f(copied)g(in) m(to)h(registers)f(b)s(efore)h(doing)f(arith-)630 1821 y(metic)h(on)h(them.)40 b(This)29 b(ma)m(y)i(pro)s(duce)e(b)s(etter)i (co)s(de)f(just)g(as)h(`)p Fq(-fforce-mem)p Fy(')c(ma)m(y)-8 b(.)150 1979 y Fq(-fomit-frame-pointer)630 2089 y Fy(Don't)38 b(k)m(eep)g(the)f(frame)g(p)s(oin)m(ter)f(in)f(a)j(register)f(for)f (functions)g(that)i(don't)f(need)f(one.)630 2198 y(This)31 b(a)m(v)m(oids)i(the)g(instructions)d(to)j(sa)m(v)m(e,)i(set)f(up)d (and)h(restore)h(frame)g(p)s(oin)m(ters;)g(it)f(also)630 2308 y(mak)m(es)j(an)e(extra)i(register)e(a)m(v)-5 b(ailable)33 b(in)g(man)m(y)h(functions.)49 b Fl(It)34 b(also)h(mak)m(es)f (debugging)630 2418 y(imp)s(ossible)c(on)g(some)h(mac)m(hines.)630 2552 y Fy(On)f(some)h(mac)m(hines,)g(suc)m(h)g(as)g(the)g(V)-10 b(AX,)31 b(this)f(\015ag)h(has)g(no)g(e\013ect,)i(b)s(ecause)d(the)i (stan-)630 2661 y(dard)i(calling)f(sequence)i(automatically)g(handles)e (the)i(frame)g(p)s(oin)m(ter)f(and)g(nothing)g(is)630 2771 y(sa)m(v)m(ed)k(b)m(y)e(pretending)f(it)h(do)s(esn't)h(exist.)59 b(The)36 b(mac)m(hine-description)e(macro)k Fq(FRAME_)630 2880 y(POINTER_REQUIRED)30 b Fy(con)m(trols)35 b(whether)f(a)h(target)i (mac)m(hine)d(supp)s(orts)f(this)h(\015ag.)54 b(See)630 2990 y(section)31 b(\\Register)g(Usage")h(in)d Fn(GNU)i(Compiler)d (Collection)h(\(GCC\))i(In)m(ternals)t Fy(.)150 3148 y Fq(-foptimize-sibling-calls)630 3258 y Fy(Optimize)e(sibling)e(and)j (tail)g(recursiv)m(e)g(calls.)150 3416 y Fq(-ftrapv)144 b Fy(This)31 b(option)i(generates)i(traps)e(for)g(signed)f(o)m(v)m (er\015o)m(w)j(on)e(addition,)f(subtraction,)i(m)m(ul-)630 3526 y(tiplication)28 b(op)s(erations.)150 3684 y Fq(-fno-inline)630 3794 y Fy(Don't)37 b(pa)m(y)g(atten)m(tion)g(to)g(the)g Fq(inline)d Fy(k)m(eyw)m(ord.)59 b(Normally)35 b(this)h(option)f(is)h (used)f(to)630 3903 y(k)m(eep)j(the)f(compiler)f(from)h(expanding)f(an) m(y)h(functions)f(inline.)58 b(Note)39 b(that)f(if)e(y)m(ou)i(are)630 4013 y(not)31 b(optimizing,)d(no)j(functions)e(can)h(b)s(e)g(expanded)g (inline.)150 4171 y Fq(-finline-functions)630 4281 y Fy(In)m(tegrate)k(all)d(simple)g(functions)f(in)m(to)j(their)e (callers.)46 b(The)32 b(compiler)e(heuristically)g(de-)630 4390 y(cides)g(whic)m(h)f(functions)g(are)i(simple)d(enough)i(to)h(b)s (e)f(w)m(orth)g(in)m(tegrating)h(in)e(this)g(w)m(a)m(y)-8 b(.)630 4524 y(If)45 b(all)g(calls)f(to)j(a)f(giv)m(en)f(function)f (are)i(in)m(tegrated,)51 b(and)45 b(the)h(function)e(is)g(declared)630 4634 y Fq(static)p Fy(,)29 b(then)h(the)h(function)e(is)g(normally)g (not)h(output)g(as)h(assem)m(bler)f(co)s(de)g(in)f(its)h(o)m(wn)630 4743 y(righ)m(t.)150 4902 y Fq(-finline-limit=)p Fn(n)630 5011 y Fy(By)f(default,)f(gcc)h(limits)d(the)j(size)f(of)g(functions)f (that)i(can)f(b)s(e)g(inlined.)37 b(This)26 b(\015ag)j(allo)m(ws)630 5121 y(the)38 b(con)m(trol)h(of)g(this)e(limit)f(for)i(functions)f (that)h(are)h(explicitly)d(mark)m(ed)i(as)h(inline)c(\(ie)630 5230 y(mark)m(ed)f(with)f(the)h(inline)d(k)m(eyw)m(ord)j(or)g (de\014ned)f(within)e(the)k(class)e(de\014nition)f(in)h(c)p Fq(++)p Fy(\).)630 5340 y Fn(n)f Fy(is)f(the)i(size)f(of)h(functions)e (that)h(can)h(b)s(e)f(inlined)d(in)i(n)m(um)m(b)s(er)g(of)i(pseudo)e (instructions)p eop %%Page: 53 63 53 62 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(53)630 299 y(\(not)35 b(coun)m(ting)g(parameter)g (handling\).)52 b(The)34 b(default)g(v)-5 b(alue)34 b(of)h Fn(n)f Fy(is)g(600.)55 b(Increasing)630 408 y(this)32 b(v)-5 b(alue)33 b(can)g(result)f(in)g(more)i(inlined)29 b(co)s(de)34 b(at)g(the)f(cost)h(of)g(compilation)e(time)h(and)630 518 y(memory)23 b(consumption.)37 b(Decreasing)23 b(usually)e(mak)m(es) j(the)f(compilation)e(faster)i(and)g(less)630 628 y(co)s(de)35 b(will)d(b)s(e)i(inlined)d(\(whic)m(h)j(presumably)e(means)j(slo)m(w)m (er)f(programs\).)54 b(This)32 b(option)630 737 y(is)27 b(particularly)e(useful)g(for)j(programs)f(that)h(use)f(inlining)d(hea) m(vily)i(suc)m(h)h(as)h(those)g(based)630 847 y(on)i(recursiv)m(e)g (templates)h(with)e(C)p Fq(++)p Fy(.)630 987 y Fr(Note:)73 b Fy(pseudo)43 b(instruction)e(represen)m(ts,)48 b(in)42 b(this)h(particular)f(con)m(text,)49 b(an)44 b(abstract)630 1096 y(measuremen)m(t)37 b(of)g(function's)f(size.)60 b(In)36 b(no)h(w)m(a)m(y)-8 b(,)40 b(it)d(represen)m(ts)g(a)g(coun)m(t) g(of)g(assem)m(bly)630 1206 y(instructions)25 b(and)h(as)i(suc)m(h)e (its)h(exact)i(meaning)d(migh)m(t)h(c)m(hange)h(from)e(one)i(release)f (to)h(an)630 1316 y(another.)150 1486 y Fq(-fkeep-inline-functions)630 1596 y Fy(Ev)m(en)h(if)f(all)g(calls)g(to)i(a)f(giv)m(en)g(function)f (are)h(in)m(tegrated,)h(and)f(the)g(function)e(is)h(declared)630 1705 y Fq(static)p Fy(,)22 b(nev)m(ertheless)g(output)f(a)i(separate)f (run-time)f(callable)g(v)m(ersion)g(of)h(the)g(function.)630 1815 y(This)29 b(switc)m(h)g(do)s(es)h(not)h(a\013ect)h Fq(extern)d(inline)f Fy(functions.)150 1985 y Fq(-fkeep-static-consts) 630 2095 y Fy(Emit)f(v)-5 b(ariables)27 b(declared)g Fq(static)i(const)d Fy(when)h(optimization)g(isn't)g(turned)g(on,)h(ev) m(en)630 2205 y(if)h(the)i(v)-5 b(ariables)29 b(aren't)i(referenced.) 630 2345 y(GCC)22 b(enables)g(this)g(option)g(b)m(y)h(default.)37 b(If)22 b(y)m(ou)i(w)m(an)m(t)f(to)h(force)f(the)g(compiler)e(to)j(c)m (hec)m(k)g(if)630 2454 y(the)j(v)-5 b(ariable)25 b(w)m(as)i (referenced,)h(regardless)e(of)g(whether)g(or)h(not)g(optimization)e (is)h(turned)630 2564 y(on,)31 b(use)f(the)g(`)p Fq (-fno-keep-static-consts)p Fy(')25 b(option.)150 2734 y Fq(-fmerge-constants)630 2844 y Fy(A)m(ttempt)32 b(to)e(merge)h(iden) m(tical)e(constan)m(ts)j(\(string)d(constan)m(ts)i(and)f(\015oating)g (p)s(oin)m(t)f(con-)630 2953 y(stan)m(ts\))j(accross)f(compilation)e (units.)630 3093 y(This)24 b(option)h(is)f(default)h(for)h(optimized)e (compilation)g(if)h(assem)m(bler)g(and)g(link)m(er)f(supp)s(ort)630 3203 y(it.)40 b(Use)31 b(`)p Fq(-fno-merge-constants)p Fy(')25 b(to)31 b(inhibit)c(this)j(b)s(eha)m(vior.)150 3373 y Fq(-fmerge-all-constants)630 3483 y Fy(A)m(ttempt)i(to)f(merge)g (iden)m(tical)e(constan)m(ts)i(and)f(iden)m(tical)f(v)-5 b(ariables.)630 3623 y(This)20 b(option)i(implies)e(`)p Fq(-fmerge-constants)p Fy('.)33 b(In)22 b(addition)e(to)j(`)p Fq(-fmerge-constants)p Fy(')630 3733 y(this)32 b(considers)g(e.g.)50 b(ev)m(en)33 b(constan)m(t)i(initialized)30 b(arra)m(ys)j(or)g (initialized)d(constan)m(t)k(v)-5 b(ari-)630 3842 y(ables)38 b(with)f(in)m(tegral)h(or)h(\015oating)f(p)s(oin)m(t)g(t)m(yp)s(es.)65 b(Languages)39 b(lik)m(e)f(C)g(or)h(C)p Fq(++)e Fy(require)630 3952 y(eac)m(h)31 b(non-automatic)g(v)-5 b(ariable)29 b(to)i(ha)m(v)m(e)g(distinct)d(lo)s(cation,)i(so)h(using)d(this)h (option)h(will)630 4061 y(result)f(in)g(non-conforming)h(b)s(eha)m (vior.)150 4232 y Fq(-fno-function-cse)630 4341 y Fy(Do)35 b(not)g(put)f(function)f(addresses)h(in)f(registers;)j(mak)m(e)g(eac)m (h)f(instruction)e(that)i(calls)f(a)630 4451 y(constan)m(t)e(function)d (con)m(tain)h(the)h(function's)e(address)h(explicitly)-8 b(.)630 4591 y(This)29 b(option)g(results)g(in)g(less)h(e\016cien)m(t)h (co)s(de,)f(but)g(some)h(strange)g(hac)m(ks)g(that)f(alter)h(the)630 4701 y(assem)m(bler)k(output)g(ma)m(y)g(b)s(e)g(confused)g(b)m(y)g(the) g(optimizations)f(p)s(erformed)g(when)g(this)630 4810 y(option)c(is)f(not)i(used.)150 4981 y Fq(-ffast-math)630 5090 y Fy(Sets)f(`)p Fq(-fno-math-errno)p Fy(',)d(`)p Fq(-funsafe-math-optimizations)o Fy(',)e(and)630 5200 y(`)p Fq(-fno-trapping-math)p Fy('.)630 5340 y(This)k(option)g(causes)i (the)g(prepro)s(cessor)e(macro)i Fq(__FAST_MATH__)c Fy(to)k(b)s(e)f (de\014ned.)p eop %%Page: 54 64 54 63 bop 150 -116 a Fy(54)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(This)35 b(option)i(should)e(nev)m(er)j (b)s(e)e(turned)g(on)h(b)m(y)g(an)m(y)h(`)p Fq(-O)p Fy(')f(option)f (since)h(it)g(can)g(result)630 408 y(in)30 b(incorrect)h(output)f(for)h (programs)g(whic)m(h)e(dep)s(end)h(on)h(an)g(exact)h(implemen)m(tation) e(of)630 518 y(IEEE)g(or)g(ISO)f(rules/sp)s(eci\014cations)g(for)h (math)g(functions.)150 682 y Fq(-fno-math-errno)630 791 y Fy(Do)d(not)f(set)h(ERRNO)e(after)i(calling)d(math)i(functions)f (that)i(are)f(executed)h(with)e(a)h(single)630 901 y(instruction,)e (e.g.,)k(sqrt.)39 b(A)25 b(program)g(that)h(relies)e(on)h(IEEE)f (exceptions)h(for)g(math)g(error)630 1010 y(handling)c(ma)m(y)k(w)m(an) m(t)g(to)f(use)g(this)f(\015ag)h(for)f(sp)s(eed)g(while)f(main)m (taining)g(IEEE)i(arithmetic)630 1120 y(compatibilit)m(y)-8 b(.)630 1257 y(This)35 b(option)i(should)e(nev)m(er)j(b)s(e)e(turned)g (on)h(b)m(y)g(an)m(y)h(`)p Fq(-O)p Fy(')f(option)f(since)h(it)g(can)g (result)630 1366 y(in)30 b(incorrect)h(output)f(for)h(programs)g(whic)m (h)e(dep)s(end)h(on)h(an)g(exact)h(implemen)m(tation)e(of)630 1476 y(IEEE)g(or)g(ISO)f(rules/sp)s(eci\014cations)g(for)h(math)g (functions.)630 1612 y(The)g(default)f(is)h(`)p Fq(-fmath-errno)p Fy('.)150 1776 y Fq(-funsafe-math-optimizati)o(ons)630 1885 y Fy(Allo)m(w)40 b(optimizations)f(for)h(\015oating-p)s(oin)m(t)g (arithmetic)f(that)i(\(a\))h(assume)e(that)h(argu-)630 1995 y(men)m(ts)k(and)g(results)f(are)h(v)-5 b(alid)43 b(and)i(\(b\))g(ma)m(y)h(violate)f(IEEE)f(or)h(ANSI)g(standards.)630 2105 y(When)25 b(used)g(at)h(link-time,)f(it)g(ma)m(y)h(include)d (libraries)g(or)i(startup)h(\014les)e(that)i(c)m(hange)h(the)630 2214 y(default)j(FPU)g(con)m(trol)h(w)m(ord)f(or)g(other)h(similar)d (optimizations.)630 2351 y(This)35 b(option)i(should)e(nev)m(er)j(b)s (e)e(turned)g(on)h(b)m(y)g(an)m(y)h(`)p Fq(-O)p Fy(')f(option)f(since)h (it)g(can)g(result)630 2460 y(in)30 b(incorrect)h(output)f(for)h (programs)g(whic)m(h)e(dep)s(end)h(on)h(an)g(exact)h(implemen)m(tation) e(of)630 2570 y(IEEE)g(or)g(ISO)f(rules/sp)s(eci\014cations)g(for)h (math)g(functions.)630 2707 y(The)g(default)f(is)h(`)p Fq(-fno-unsafe-math-optimiza)o(tio)o(ns)p Fy('.)150 2870 y Fq(-fno-trapping-math)630 2980 y Fy(Compile)41 b(co)s(de)h(assuming)g (that)h(\015oating-p)s(oin)m(t)e(op)s(erations)h(cannot)h(generate)h (user-)630 3089 y(visible)33 b(traps.)55 b(Setting)35 b(this)f(option)h(ma)m(y)h(allo)m(w)f(faster)g(co)s(de)h(if)e(one)i (relies)e(on)h(\\non-)630 3199 y(stop")c(IEEE)f(arithmetic,)g(for)g (example.)630 3335 y(This)35 b(option)i(should)e(nev)m(er)j(b)s(e)e (turned)g(on)h(b)m(y)g(an)m(y)h(`)p Fq(-O)p Fy(')f(option)f(since)h(it) g(can)g(result)630 3445 y(in)30 b(incorrect)h(output)f(for)h(programs)g (whic)m(h)e(dep)s(end)h(on)h(an)g(exact)h(implemen)m(tation)e(of)630 3555 y(IEEE)g(or)g(ISO)f(rules/sp)s(eci\014cations)g(for)h(math)g (functions.)630 3691 y(The)g(default)f(is)h(`)p Fq(-ftrapping-math)p Fy('.)275 3857 y(The)37 b(follo)m(wing)f(options)h(con)m(trol)i(sp)s (eci\014c)d(optimizations.)62 b(The)38 b(`)p Fq(-O2)p Fy(')f(option)h(turns)e(on)i(all)f(of)150 3966 y(these)j(optimizations) e(except)i(`)p Fq(-funroll-loops)p Fy(')c(and)j(`)p Fq (-funroll-all-loops)p Fy('.)62 b(On)39 b(most)g(ma-)150 4076 y(c)m(hines,)h(the)f(`)p Fq(-O)p Fy(')f(option)g(turns)g(on)g(the) h(`)p Fq(-fthread-jumps)p Fy(')c(and)j(`)p Fq(-fdelayed-branch)p Fy(')c(options,)150 4186 y(but)c(sp)s(eci\014c)f(mac)m(hines)h(ma)m(y)h (handle)e(it)h(di\013eren)m(tly)-8 b(.)275 4324 y(Y)g(ou)30 b(can)h(use)f(the)h(follo)m(wing)e(\015ags)h(in)f(the)i(rare)f(cases)i (when)d(\\\014ne-tuning")g(of)i(optimizations)e(to)150 4434 y(b)s(e)h(p)s(erformed)f(is)g(desired.)275 4572 y(Not)i(all)e(of)i(the)f(optimizations)f(p)s(erformed)g(b)m(y)h(GCC)g (ha)m(v)m(e)i(`)p Fq(-f)p Fy(')e(options)g(to)h(con)m(trol)g(them.)150 4738 y Fq(-fstrength-reduce)630 4848 y Fy(P)m(erform)h(the)f (optimizations)g(of)h(lo)s(op)e(strength)i(reduction)f(and)g (elimination)e(of)j(itera-)630 4957 y(tion)e(v)-5 b(ariables.)150 5121 y Fq(-fthread-jumps)630 5230 y Fy(P)m(erform)33 b(optimizations)e(where)h(w)m(e)h(c)m(hec)m(k)i(to)e(see)h(if)d(a)i (jump)e(branc)m(hes)i(to)g(a)g(lo)s(cation)630 5340 y(where)24 b(another)h(comparison)e(subsumed)g(b)m(y)h(the)g(\014rst)g(is)g (found.)37 b(If)24 b(so,)i(the)f(\014rst)f(branc)m(h)p eop %%Page: 55 65 55 64 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(55)630 299 y(is)30 b(redirected)g(to)i(either)e(the)h (destination)f(of)h(the)g(second)g(branc)m(h)f(or)h(a)g(p)s(oin)m(t)f (immedi-)630 408 y(ately)k(follo)m(wing)e(it,)i(dep)s(ending)d(on)i (whether)g(the)g(condition)f(is)h(kno)m(wn)g(to)h(b)s(e)f(true)g(or)630 518 y(false.)150 671 y Fq(-fcse-follow-jumps)630 781 y Fy(In)39 b(common)i(sub)s(expression)c(elimination,)j(scan)h(through) e(jump)g(instructions)f(when)630 891 y(the)e(target)h(of)e(the)h(jump)e (is)g(not)i(reac)m(hed)g(b)m(y)f(an)m(y)h(other)g(path.)55 b(F)-8 b(or)36 b(example,)h(when)630 1000 y(CSE)24 b(encoun)m(ters)i (an)f Fq(if)f Fy(statemen)m(t)j(with)d(an)h Fq(else)f Fy(clause,)i(CSE)e(will)f(follo)m(w)h(the)h(jump)630 1110 y(when)k(the)i(condition)e(tested)i(is)f(false.)150 1263 y Fq(-fcse-skip-blocks)630 1373 y Fy(This)21 b(is)h(similar)e(to)j (`)p Fq(-fcse-follow-jumps)p Fy(',)e(but)h(causes)h(CSE)f(to)h(follo)m (w)f(jumps)f(whic)m(h)630 1482 y(conditionally)34 b(skip)i(o)m(v)m(er)i (blo)s(c)m(ks.)60 b(When)36 b(CSE)g(encoun)m(ters)i(a)f(simple)e Fq(if)h Fy(statemen)m(t)630 1592 y(with)20 b(no)h(else)f(clause,)j(`)p Fq(-fcse-skip-blocks)p Fy(')17 b(causes)k(CSE)f(to)i(follo)m(w)e(the)i (jump)d(around)630 1702 y(the)31 b(b)s(o)s(dy)d(of)j(the)f Fq(if)p Fy(.)150 1855 y Fq(-frerun-cse-after-loop)630 1965 y Fy(Re-run)39 b(common)g(sub)s(expression)e(elimination)g(after)j (lo)s(op)e(optimizations)g(has)i(b)s(een)630 2074 y(p)s(erformed.)150 2228 y Fq(-frerun-loop-opt)630 2337 y Fy(Run)29 b(the)i(lo)s(op)e (optimizer)h(t)m(wice.)150 2491 y Fq(-fgcse)192 b Fy(P)m(erform)33 b(a)g(global)f(common)h(sub)s(expression)d(elimination)h(pass.)47 b(This)31 b(pass)i(also)g(p)s(er-)630 2600 y(forms)d(global)f(constan)m (t)j(and)e(cop)m(y)h(propagation.)630 2732 y Fr(Note:)66 b Fy(When)41 b(compiling)d(a)j(program)f(using)f(computed)i(gotos,)k(a) c(GCC)f(extension,)630 2841 y(y)m(ou)k(ma)m(y)h(get)g(b)s(etter)g(run)m (time)e(p)s(erformance)g(if)g(y)m(ou)i(disable)d(the)i(global)g(common) 630 2951 y(sub)s(expression)28 b(elmination)g(pass)i(b)m(y)g(adding)f (`)p Fq(-fno-gcse)p Fy(')g(to)i(the)f(command)g(line.)150 3104 y Fq(-fgcse-lm)630 3214 y Fy(When)39 b(`)p Fq(-fgcse-lm)p Fy(')d(is)i(enabled,)i(global)e(common)h(sub)s(expression)d (elimination)h(will)630 3324 y(attempt)i(to)f(mo)m(v)m(e)h(loads)d (whic)m(h)h(are)g(only)g(killed)e(b)m(y)i(stores)h(in)m(to)g(themselv)m (es.)62 b(This)630 3433 y(allo)m(ws)29 b(a)h(lo)s(op)f(con)m(taining)g (a)h(load/store)h(sequence)f(to)g(b)s(e)f(c)m(hanged)i(to)f(a)g(load)g (outside)630 3543 y(the)h(lo)s(op,)e(and)h(a)h(cop)m(y/store)h(within)c (the)i(lo)s(op.)150 3696 y Fq(-fgcse-sm)630 3806 y Fy(When)g(`)p Fq(-fgcse-sm)p Fy(')d(is)i(enabled,)g(A)h(store)g(motion)g(pass)f(is)g (run)f(after)j(global)e(common)630 3915 y(sub)s(expression)f (elimination.)40 b(This)29 b(pass)h(will)e(attempt)k(to)g(mo)m(v)m(e)g (stores)g(out)f(of)g(lo)s(ops.)630 4025 y(When)g(used)g(in)f (conjunction)h(with)f(`)p Fq(-fgcse-lm)p Fy(',)g(lo)s(ops)g(con)m (taining)h(a)h(load/store)g(se-)630 4134 y(quence)f(can)f(b)s(e)g(c)m (hanged)h(to)g(a)g(load)f(b)s(efore)g(the)g(lo)s(op)g(and)g(a)g(store)h (after)g(the)g(lo)s(op.)150 4288 y Fq(-fdelete-null-pointer-ch)o(ecks) 630 4398 y Fy(Use)39 b(global)f(data\015o)m(w)i(analysis)e(to)h(iden)m (tify)e(and)i(eliminate)e(useless)h(c)m(hec)m(ks)i(for)f(n)m(ull)630 4507 y(p)s(oin)m(ters.)56 b(The)36 b(compiler)e(assumes)i(that)g (dereferencing)f(a)h(n)m(ull)e(p)s(oin)m(ter)h(w)m(ould)g(ha)m(v)m(e) 630 4617 y(halted)g(the)h(program.)55 b(If)35 b(a)h(p)s(oin)m(ter)f(is) f(c)m(hec)m(k)m(ed)k(after)e(it)f(has)g(already)g(b)s(een)g(derefer-) 630 4726 y(enced,)c(it)f(cannot)h(b)s(e)e(n)m(ull.)630 4858 y(In)38 b(some)i(en)m(vironmen)m(ts,)h(this)d(assumption)f(is)h (not)i(true,)h(and)d(programs)h(can)g(safely)630 4967 y(dereference)24 b(n)m(ull)e(p)s(oin)m(ters.)37 b(Use)24 b(`)p Fq(-fno-delete-null-pointer-)o(che)o(cks)p Fy(')17 b(to)25 b(disable)630 5077 y(this)k(optimization)h(for)g(programs)g (whic)m(h)f(dep)s(end)f(on)j(that)g(b)s(eha)m(vior.)150 5230 y Fq(-fexpensive-optimization)o(s)630 5340 y Fy(P)m(erform)f(a)h (n)m(um)m(b)s(er)e(of)i(minor)d(optimizations)i(that)h(are)f(relativ)m (ely)g(exp)s(ensiv)m(e.)p eop %%Page: 56 66 56 65 bop 150 -116 a Fy(56)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-foptimize-register-move)150 408 y(-fregmove)630 518 y Fy(A)m(ttempt)j(to)g(reassign)f(register)f(n) m(um)m(b)s(ers)g(in)g(mo)m(v)m(e)i(instructions)d(and)i(as)g(op)s (erands)f(of)630 628 y(other)40 b(simple)d(instructions)g(in)h(order)h (to)h(maximize)f(the)g(amoun)m(t)h(of)g(register)f(t)m(ying.)630 737 y(This)h(is)h(esp)s(ecially)g(helpful)e(on)j(mac)m(hines)f(with)g (t)m(w)m(o-op)s(erand)i(instructions.)73 b(GCC)630 847 y(enables)30 b(this)f(optimization)g(b)m(y)i(default)e(with)g(`)p Fq(-O2)p Fy(')h(or)h(higher.)630 980 y(Note)43 b(`)p Fq(-fregmove)p Fy(')c(and)i(`)p Fq(-foptimize-register-move)p Fy(')35 b(are)42 b(the)f(same)h(optimiza-)630 1089 y(tion.)150 1246 y Fq(-fdelayed-branch)630 1356 y Fy(If)30 b(supp)s(orted)f(for)i (the)g(target)i(mac)m(hine,)d(attempt)i(to)g(reorder)e(instructions)f (to)j(exploit)630 1465 y(instruction)c(slots)i(a)m(v)-5 b(ailable)30 b(after)h(dela)m(y)m(ed)g(branc)m(h)f(instructions.)150 1622 y Fq(-fschedule-insns)630 1731 y Fy(If)22 b(supp)s(orted)e(for)i (the)h(target)g(mac)m(hine,)h(attempt)g(to)f(reorder)e(instructions)f (to)j(eliminate)630 1841 y(execution)37 b(stalls)f(due)g(to)h(required) e(data)j(b)s(eing)d(una)m(v)-5 b(ailable.)58 b(This)35 b(helps)g(mac)m(hines)630 1951 y(that)40 b(ha)m(v)m(e)h(slo)m(w)e (\015oating)h(p)s(oin)m(t)f(or)g(memory)h(load)f(instructions)f(b)m(y)h (allo)m(wing)g(other)630 2060 y(instructions)23 b(to)j(b)s(e)e(issued)g (un)m(til)f(the)i(result)f(of)i(the)f(load)g(or)g(\015oating)g(p)s(oin) m(t)f(instruction)630 2170 y(is)29 b(required.)150 2326 y Fq(-fschedule-insns2)630 2436 y Fy(Similar)h(to)j(`)p Fq(-fschedule-insns)p Fy(',)c(but)j(requests)g(an)h(additional)d(pass)i (of)h(instruction)630 2545 y(sc)m(heduling)e(after)i(register)f(allo)s (cation)g(has)g(b)s(een)g(done.)46 b(This)31 b(is)h(esp)s(ecially)e (useful)h(on)630 2655 y(mac)m(hines)k(with)g(a)h(relativ)m(ely)f(small) f(n)m(um)m(b)s(er)g(of)i(registers)g(and)f(where)g(memory)g(load)630 2765 y(instructions)28 b(tak)m(e)k(more)f(than)f(one)g(cycle.)150 2921 y Fq(-ffunction-sections)150 3031 y(-fdata-sections)630 3140 y Fy(Place)35 b(eac)m(h)h(function)e(or)h(data)h(item)f(in)m(to)g (its)f(o)m(wn)h(section)g(in)f(the)h(output)g(\014le)f(if)g(the)630 3250 y(target)k(supp)s(orts)d(arbitrary)h(sections.)59 b(The)36 b(name)h(of)g(the)g(function)e(or)i(the)g(name)g(of)630 3360 y(the)31 b(data)g(item)f(determines)f(the)i(section's)f(name)h(in) e(the)h(output)g(\014le.)630 3493 y(Use)c(these)f(options)g(on)g (systems)g(where)g(the)h(link)m(er)d(can)j(p)s(erform)e(optimizations)g (to)i(im-)630 3602 y(pro)m(v)m(e)35 b(lo)s(calit)m(y)e(of)h(reference)g (in)f(the)h(instruction)e(space.)52 b(HPP)-8 b(A)34 b(pro)s(cessors)g (running)630 3712 y(HP-UX)25 b(and)f(Sparc)g(pro)s(cessors)h(running)d (Solaris)h(2)i(ha)m(v)m(e)h(link)m(ers)d(with)g(suc)m(h)h(optimiza-)630 3821 y(tions.)61 b(Other)37 b(systems)g(using)f(the)i(ELF)f(ob)5 b(ject)38 b(format)g(as)f(w)m(ell)g(as)g(AIX)h(ma)m(y)g(ha)m(v)m(e)630 3931 y(these)31 b(optimizations)e(in)g(the)i(future.)630 4064 y(Only)25 b(use)g(these)i(options)e(when)h(there)g(are)g (signi\014can)m(t)g(b)s(ene\014ts)f(from)g(doing)h(so.)39 b(When)630 4174 y(y)m(ou)27 b(sp)s(ecify)e(these)h(options,)h(the)g (assem)m(bler)e(and)h(link)m(er)f(will)e(create)28 b(larger)e(ob)5 b(ject)28 b(and)630 4283 y(executable)f(\014les)d(and)i(will)d(also)j (b)s(e)f(slo)m(w)m(er.)40 b(Y)-8 b(ou)26 b(will)d(not)k(b)s(e)e(able)g (to)i(use)f Fq(gprof)e Fy(on)i(all)630 4393 y(systems)31 b(if)f(y)m(ou)i(sp)s(ecify)e(this)g(option)h(and)g(y)m(ou)g(ma)m(y)h (ha)m(v)m(e)g(problems)e(with)g(debugging)630 4502 y(if)f(y)m(ou)i(sp)s (ecify)e(b)s(oth)h(this)f(option)h(and)g(`)p Fq(-g)p Fy('.)150 4659 y Fq(-fcaller-saves)630 4769 y Fy(Enable)38 b(v)-5 b(alues)38 b(to)h(b)s(e)g(allo)s(cated)f(in)g(registers)g(that)i (will)c(b)s(e)i(clobb)s(ered)g(b)m(y)g(function)630 4878 y(calls,)i(b)m(y)f(emitting)f(extra)h(instructions)e(to)j(sa)m(v)m(e)g (and)e(restore)i(the)e(registers)h(around)630 4988 y(suc)m(h)32 b(calls.)44 b(Suc)m(h)32 b(allo)s(cation)f(is)g(done)h(only)f(when)g (it)g(seems)h(to)h(result)e(in)g(b)s(etter)h(co)s(de)630 5097 y(than)e(w)m(ould)f(otherwise)h(b)s(e)g(pro)s(duced.)630 5230 y(This)39 b(option)h(is)g(alw)m(a)m(ys)h(enabled)f(b)m(y)h (default)f(on)g(certain)h(mac)m(hines,)i(usually)38 b(those)630 5340 y(whic)m(h)29 b(ha)m(v)m(e)j(no)e(call-preserv)m(ed)g(registers)g (to)h(use)f(instead.)p eop %%Page: 57 67 57 66 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(57)630 299 y(F)-8 b(or)31 b(all)e(mac)m(hines,)i (optimization)e(lev)m(el)h(2)h(and)e(higher)g(enables)h(this)f(\015ag)i (b)m(y)f(default.)150 455 y Fq(-funroll-loops)630 564 y Fy(Unroll)e(lo)s(ops)i(whose)g(n)m(um)m(b)s(er)f(of)h(iterations)g (can)g(b)s(e)g(determined)f(at)i(compile)e(time)h(or)630 674 y(up)s(on)g(en)m(try)j(to)f(the)g(lo)s(op.)45 b(`)p Fq(-funroll-loops)p Fy(')29 b(implies)g(b)s(oth)i(`)p Fq(-fstrength-reduce)p Fy(')630 783 y(and)36 b(`)p Fq (-frerun-cse-after-loop)p Fy('.)52 b(This)35 b(option)g(mak)m(es)i(co)s (de)g(larger,)h(and)d(ma)m(y)i(or)630 893 y(ma)m(y)31 b(not)g(mak)m(e)g(it)f(run)f(faster.)150 1049 y Fq(-funroll-all-loops) 630 1158 y Fy(Unroll)c(all)h(lo)s(ops,)h(ev)m(en)h(if)e(their)g(n)m(um) m(b)s(er)g(of)h(iterations)g(is)f(uncertain)g(when)g(the)i(lo)s(op)e (is)630 1268 y(en)m(tered.)40 b(This)23 b(usually)g(mak)m(es)k (programs)e(run)f(more)h(slo)m(wly)-8 b(.)38 b(`)p Fq (-funroll-all-loops)p Fy(')630 1377 y(implies)28 b(the)i(same)h (options)f(as)g(`)p Fq(-funroll-loops)p Fy(',)150 1533 y Fq(-fprefetch-loop-arrays)630 1643 y Fy(If)j(supp)s(orted)e(b)m(y)i (the)g(target)i(mac)m(hine,)f(generate)h(instructions)c(to)j(prefetc)m (h)f(memory)630 1752 y(to)e(impro)m(v)m(e)f(the)h(p)s(erformance)f(of)g (lo)s(ops)f(that)i(access)h(large)f(arra)m(ys.)150 1908 y Fq(-fmove-all-movables)630 2018 y Fy(F)-8 b(orces)32 b(all)d(in)m(v)-5 b(arian)m(t)30 b(computations)g(in)f(lo)s(ops)g(to)i (b)s(e)f(mo)m(v)m(ed)h(outside)f(the)h(lo)s(op.)150 2173 y Fq(-freduce-all-givs)630 2283 y Fy(F)-8 b(orces)32 b(all)d(general-induction)f(v)-5 b(ariables)30 b(in)f(lo)s(ops)g(to)i (b)s(e)f(strength-reduced.)630 2416 y Fr(Note:)56 b Fy(When)36 b(compiling)d(programs)j(written)e(in)h(F)-8 b(ortran,)38 b(`)p Fq(-fmove-all-movables)p Fy(')630 2525 y(and)30 b(`)p Fq(-freduce-all-givs)p Fy(')c(are)31 b(enabled)e(b)m(y)h(default) g(when)f(y)m(ou)i(use)f(the)h(optimizer.)630 2658 y(These)e(options)f (ma)m(y)h(generate)i(b)s(etter)e(or)g(w)m(orse)g(co)s(de;)h(results)e (are)h(highly)e(dep)s(enden)m(t)630 2768 y(on)j(the)h(structure)f(of)g (lo)s(ops)g(within)d(the)k(source)g(co)s(de.)630 2900 y(These)d(t)m(w)m(o)i(options)e(are)h(in)m(tended)f(to)h(b)s(e)f(remo)m (v)m(ed)i(someda)m(y)-8 b(,)30 b(once)f(they)g(ha)m(v)m(e)h(help)s(ed) 630 3010 y(determine)f(the)i(e\016cacy)h(of)e(v)-5 b(arious)30 b(approac)m(hes)h(to)g(impro)m(ving)d(lo)s(op)i(optimizations.)630 3142 y(Please)d(let)f(us)g(\()p Fq(gcc@gcc.gnu.org)d Fy(and)j Fq(fortran@gnu.org)l Fy(\))h(kno)m(w)g(ho)m(w)f(use)h(of)f (these)630 3252 y(options)i(a\013ects)h(the)g(p)s(erformance)e(of)i(y)m (our)f(pro)s(duction)e(co)s(de.)41 b(W)-8 b(e're)29 b(v)m(ery)g(in)m (terested)630 3362 y(in)g(co)s(de)i(that)g(runs)d Fr(slower)42 b Fy(when)29 b(these)i(options)f(are)h Fr(enable)-5 b(d)p Fy(.)150 3517 y Fq(-fno-peephole)150 3627 y(-fno-peephole2)630 3737 y Fy(Disable)36 b(an)m(y)i(mac)m(hine-sp)s(eci\014c)e(p)s(eephole) g(optimizations.)60 b(The)37 b(di\013erence)f(b)s(et)m(w)m(een)630 3846 y(`)p Fq(-fno-peephole)p Fy(')25 b(and)j(`)p Fq(-fno-peephole2)p Fy(')d(is)i(in)g(ho)m(w)i(they)f(are)h(implemen)m(ted)e(in)g(the)630 3956 y(compiler;)i(some)i(targets)h(use)e(one,)h(some)g(use)f(the)g (other,)h(a)g(few)f(use)g(b)s(oth.)150 4111 y Fq (-fbranch-probabilities)630 4221 y Fy(After)25 b(running)c(a)k(program) f(compiled)f(with)g(`)p Fq(-fprofile-arcs)p Fy(')e(\(see)26 b(Section)e(3.9)h([Op-)630 4331 y(tions)k(for)h(Debugging)f(Y)-8 b(our)30 b(Program)g(or)g Fq(gcc)p Fy(],)g(page)g(43\),)i(y)m(ou)e(can) g(compile)f(it)g(a)h(sec-)630 4440 y(ond)43 b(time)g(using)f(`)p Fq(-fbranch-probabilities)p Fy(',)g(to)i(impro)m(v)m(e)g(optimizations) e(based)630 4550 y(on)k(the)g(n)m(um)m(b)s(er)f(of)h(times)g(eac)m(h)h (branc)m(h)e(w)m(as)i(tak)m(en.)88 b(When)46 b(the)g(program)g(com-)630 4659 y(piled)28 b(with)h(`)p Fq(-fprofile-arcs)p Fy(')e(exits)j(it)g (sa)m(v)m(es)i(arc)f(execution)g(coun)m(ts)f(to)h(a)g(\014le)f(called) 630 4769 y(`)p Fn(sourcename)p Fq(.da)p Fy(')38 b(for)f(eac)m(h)i (source)f(\014le)f(The)h(information)e(in)g(this)h(data)i(\014le)e(is)g (v)m(ery)630 4879 y(dep)s(enden)m(t)e(on)i(the)f(structure)g(of)g(the)h (generated)g(co)s(de,)i(so)d(y)m(ou)h(m)m(ust)f(use)g(the)h(same)630 4988 y(source)31 b(co)s(de)f(and)g(the)g(same)h(optimization)f(options) f(for)h(b)s(oth)g(compilations.)630 5121 y(With)53 b(`)p Fq(-fbranch-probabilities)p Fy(',)i(GCC)e(puts)h(a)g(`)p Fq(REG_EXEC_COUNT)p Fy(')c(note)55 b(on)630 5230 y(the)43 b(\014rst)f(instruction)f(of)i(eac)m(h)h(basic)f(blo)s(c)m(k,)i(and)e (a)g(`)p Fq(REG_BR_PROB)p Fy(')d(note)k(on)f(eac)m(h)630 5340 y(`)p Fq(JUMP_INSN)p Fy(')e(and)i(`)p Fq(CALL_INSN)p Fy('.)78 b(These)43 b(can)h(b)s(e)f(used)f(to)i(impro)m(v)m(e)g (optimization.)p eop %%Page: 58 68 58 67 bop 150 -116 a Fy(58)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(Curren)m(tly)-8 b(,)38 b(they)f(are)h(only)e(used)g(in)g(one)h(place:)55 b(in)35 b(`)p Fq(reorg.c)p Fy(',)j(instead)e(of)i(guessing)630 408 y(whic)m(h)d(path)h(a)g(branc)m(h)g(is)f(mostly)h(to)h(tak)m(e,)j (the)c(`)p Fq(REG_BR_PROB)p Fy(')e(v)-5 b(alues)35 b(are)i(used)e(to) 630 518 y(exactly)c(determine)f(whic)m(h)f(path)h(is)f(tak)m(en)j(more) e(often.)150 685 y Fq(-fno-guess-branch-probab)o(ilit)o(y)630 795 y Fy(Do)h(not)g(guess)f(branc)m(h)g(probabilities)d(using)i(a)i (randomized)e(mo)s(del.)630 934 y(Sometimes)22 b(gcc)i(will)19 b(opt)k(to)g(use)f(a)h(randomized)e(mo)s(del)h(to)h(guess)f(branc)m(h)g (probabilities,)630 1043 y(when)33 b(none)i(are)f(a)m(v)-5 b(ailable)34 b(from)g(either)g(pro\014ling)e(feedbac)m(k)j(\(`)p Fq(-fprofile-arcs)p Fy('\))d(or)630 1153 y(`)p Fq(__builtin_expect)p Fy('.)65 b(This)38 b(means)i(that)h(di\013eren)m(t)e(runs)f(of)i(the)h (compiler)d(on)i(the)630 1262 y(same)31 b(program)f(ma)m(y)h(pro)s (duce)e(di\013eren)m(t)h(ob)5 b(ject)31 b(co)s(de.)630 1401 y(In)38 b(a)h(hard)f(real-time)g(system,)j(p)s(eople)d(don't)h(w)m (an)m(t)g(di\013eren)m(t)f(runs)g(of)g(the)h(compiler)630 1510 y(to)k(pro)s(duce)d(co)s(de)j(that)f(has)g(di\013eren)m(t)f(b)s (eha)m(vior;)47 b(minimizing)39 b(non-determinism)g(is)630 1620 y(of)k(paramoun)m(t)g(imp)s(ort.)77 b(This)41 b(switc)m(h)h(allo)m (ws)h(users)f(to)i(reduce)e(non-determinism,)630 1730 y(p)s(ossibly)27 b(at)32 b(the)e(exp)s(ense)g(of)h(inferior)d (optimization.)150 1897 y Fq(-fstrict-aliasing)630 2007 y Fy(Allo)m(ws)44 b(the)g(compiler)g(to)h(assume)f(the)h(strictest)g (aliasing)e(rules)g(applicable)f(to)k(the)630 2116 y(language)32 b(b)s(eing)e(compiled.)41 b(F)-8 b(or)32 b(C)f(\(and)g(C)p Fq(++)p Fy(\),)g(this)g(activ)-5 b(ates)32 b(optimizations)e(based)630 2226 y(on)24 b(the)g(t)m(yp)s(e)g(of)g(expressions.)38 b(In)23 b(particular,)h(an)g(ob)5 b(ject)25 b(of)f(one)g(t)m(yp)s(e)g (is)f(assumed)h(nev)m(er)630 2335 y(to)32 b(reside)e(at)i(the)g(same)g (address)e(as)i(an)f(ob)5 b(ject)32 b(of)f(a)h(di\013eren)m(t)f(t)m(yp) s(e,)h(unless)d(the)j(t)m(yp)s(es)630 2445 y(are)f(almost)f(the)h (same.)42 b(F)-8 b(or)31 b(example,)f(an)h Fq(unsigned)d(int)h Fy(can)i(alias)f(an)g Fq(int)p Fy(,)g(but)g(not)630 2555 y(a)h Fq(void*)e Fy(or)h(a)h Fq(double)p Fy(.)39 b(A)30 b(c)m(haracter)i(t)m(yp)s(e)f(ma)m(y)g(alias)e(an)m(y)i(other)g(t)m(yp) s(e.)630 2693 y(P)m(a)m(y)h(sp)s(ecial)d(atten)m(tion)i(to)g(co)s(de)g (lik)m(e)e(this:)870 2826 y Fq(union)46 b(a_union)g({)965 2929 y(int)h(i;)965 3033 y(double)g(d;)870 3137 y(};)870 3345 y(int)g(f\(\))g({)965 3448 y(a_union)f(t;)965 3552 y(t.d)h(=)h(3.0;)965 3656 y(return)f(t.i;)870 3760 y(})630 3898 y Fy(The)67 b(practice)g(of)h(reading)e(from)h(a)h(di\013eren)m(t) f(union)e(mem)m(b)s(er)i(than)g(the)h(one)630 4008 y(most)54 b(recen)m(tly)f(written)f(to)i(\(called)f(\\t)m(yp)s(e-punning"\))f(is) g(common.)110 b(Ev)m(en)53 b(with)630 4117 y(`)p Fq(-fstrict-aliasing)p Fy(',)70 b(t)m(yp)s(e-punning)63 b(is)h(allo)m(w)m(ed,)74 b(pro)m(vided)64 b(the)i(memory)f(is)630 4227 y(accessed)40 b(through)d(the)i(union)d(t)m(yp)s(e.)65 b(So,)40 b(the)f(co)s(de)f(ab) s(o)m(v)m(e)i(will)35 b(w)m(ork)k(as)f(exp)s(ected.)630 4337 y(Ho)m(w)m(ev)m(er,)33 b(this)c(co)s(de)i(migh)m(t)f(not:)870 4469 y Fq(int)47 b(f\(\))g({)965 4573 y(a_union)f(t;)965 4677 y(int*)h(ip;)965 4781 y(t.d)g(=)h(3.0;)965 4884 y(ip)g(=)f(&t.i;)965 4988 y(return)g(*ip;)870 5092 y(})630 5230 y Fy(Ev)m(ery)35 b(language)h(that)f(wishes)f(to)h(p)s(erform)f (language-sp)s(eci\014c)g(alias)g(analysis)g(should)630 5340 y(de\014ne)28 b(a)i(function)e(that)h(computes,)h(giv)m(en)f(an)g Fq(tree)f Fy(no)s(de,)h(an)g(alias)g(set)g(for)g(the)g(no)s(de.)p eop %%Page: 59 69 59 68 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(59)630 299 y(No)s(des)28 b(in)e(di\013eren)m(t)i(alias) f(sets)h(are)h(not)f(allo)m(w)m(ed)g(to)h(alias.)39 b(F)-8 b(or)28 b(an)g(example,)h(see)f(the)g(C)630 408 y(fron)m(t-end)i (function)f Fq(c_get_alias_set)p Fy(.)150 576 y Fq(-falign-functions) 150 685 y(-falign-functions=)p Fn(n)630 795 y Fy(Align)j(the)h(start)h (of)f(functions)f(to)i(the)f(next)g(p)s(o)m(w)m(er-of-t)m(w)m(o)j (greater)e(than)f Fn(n)p Fy(,)h(skipping)630 905 y(up)g(to)i Fn(n)f Fy(b)m(ytes.)55 b(F)-8 b(or)36 b(instance,)g(`)p Fq(-falign-functions=32)p Fy(')30 b(aligns)k(functions)g(to)i(the)630 1014 y(next)e(32-b)m(yte)i(b)s(oundary)-8 b(,)34 b(but)f(`)p Fq(-falign-functions=24)p Fy(')c(w)m(ould)k(align)g(to)i(the)f(next)630 1124 y(32-b)m(yte)e(b)s(oundary)d(only)g(if)g(this)h(can)g(b)s(e)g (done)g(b)m(y)h(skipping)c(23)k(b)m(ytes)g(or)g(less.)630 1262 y(`)p Fq(-fno-align-functions)p Fy(')17 b(and)k(`)p Fq(-falign-functions=1)p Fy(')c(are)22 b(equiv)-5 b(alen)m(t)21 b(and)g(mean)630 1372 y(that)31 b(functions)e(will)f(not)i(b)s(e)g (aligned.)630 1510 y(Some)h(assem)m(blers)e(only)h(supp)s(ort)f(this)g (\015ag)i(when)f Fn(n)g Fy(is)f(a)i(p)s(o)m(w)m(er)f(of)h(t)m(w)m(o;)h (in)e(that)h(case,)630 1620 y(it)f(is)f(rounded)g(up.)630 1758 y(If)h Fn(n)g Fy(is)f(not)i(sp)s(eci\014ed,)e(use)h(a)g(mac)m (hine-dep)s(enden)m(t)g(default.)150 1925 y Fq(-falign-labels)150 2035 y(-falign-labels=)p Fn(n)630 2145 y Fy(Align)37 b(all)g(branc)m(h)h(targets)i(to)f(a)f(p)s(o)m(w)m(er-of-t)m(w)m(o)j(b) s(oundary)-8 b(,)39 b(skipping)c(up)j(to)h Fn(n)e Fy(b)m(ytes)630 2254 y(lik)m(e)f(`)p Fq(-falign-functions)p Fy('.)54 b(This)34 b(option)i(can)h(easily)e(mak)m(e)i(co)s(de)g(slo)m(w)m(er,)h (b)s(ecause)630 2364 y(it)32 b(m)m(ust)g(insert)f(dumm)m(y)g(op)s (erations)g(for)h(when)f(the)i(branc)m(h)e(target)j(is)d(reac)m(hed)i (in)e(the)630 2473 y(usual)e(\015o)m(w)h(of)h(the)f(co)s(de.)630 2612 y(If)24 b(`)p Fq(-falign-loops)p Fy(')d(or)j(`)p Fq(-falign-jumps)p Fy(')d(are)k(applicable)d(and)h(are)i(greater)g (than)f(this)630 2721 y(v)-5 b(alue,)30 b(then)g(their)g(v)-5 b(alues)29 b(are)i(used)f(instead.)630 2860 y(If)e Fn(n)g Fy(is)f(not)i(sp)s(eci\014ed,)f(use)g(a)h(mac)m(hine-dep)s(enden)m(t)e (default)h(whic)m(h)f(is)h(v)m(ery)g(lik)m(ely)f(to)j(b)s(e)630 2969 y(`)p Fq(1)p Fy(',)h(meaning)e(no)i(alignmen)m(t.)150 3137 y Fq(-falign-loops)150 3246 y(-falign-loops=)p Fn(n)630 3356 y Fy(Align)67 b(lo)s(ops)g(to)i(a)g(p)s(o)m(w)m(er-of-t)m(w)m(o)h (b)s(oundary)-8 b(,)77 b(skipping)65 b(up)i(to)i Fn(n)f Fy(b)m(ytes)h(lik)m(e)630 3465 y(`)p Fq(-falign-functions)p Fy('.)36 b(The)28 b(hop)s(e)h(is)e(that)j(the)f(lo)s(op)f(will)e(b)s(e) i(executed)i(man)m(y)f(times,)630 3575 y(whic)m(h)g(will)f(mak)m(e)j (up)f(for)g(an)m(y)g(execution)h(of)f(the)h(dumm)m(y)e(op)s(erations.) 630 3713 y(If)h Fn(n)g Fy(is)f(not)i(sp)s(eci\014ed,)e(use)h(a)g(mac)m (hine-dep)s(enden)m(t)g(default.)150 3881 y Fq(-falign-jumps)150 3990 y(-falign-jumps=)p Fn(n)630 4100 y Fy(Align)43 b(branc)m(h)g (targets)i(to)g(a)g(p)s(o)m(w)m(er-of-t)m(w)m(o)h(b)s(oundary)-8 b(,)46 b(for)e(branc)m(h)f(targets)i(where)630 4209 y(the)51 b(targets)h(can)g(only)e(b)s(e)g(reac)m(hed)h(b)m(y)g(jumping,)j (skipping)48 b(up)i(to)i Fn(n)e Fy(b)m(ytes)i(lik)m(e)630 4319 y(`)p Fq(-falign-functions)p Fy('.)37 b(In)29 b(this)g(case,)j(no) e(dumm)m(y)g(op)s(erations)f(need)h(b)s(e)g(executed.)630 4457 y(If)g Fn(n)g Fy(is)f(not)i(sp)s(eci\014ed,)e(use)h(a)g(mac)m (hine-dep)s(enden)m(t)g(default.)150 4625 y Fq(-fssa)240 b Fy(P)m(erform)37 b(optimizations)f(in)g(static)i(single)e(assignmen)m (t)h(form.)61 b(Eac)m(h)38 b(function's)e(\015o)m(w)630 4734 y(graph)e(is)f(translated)h(in)m(to)h(SSA)e(form,)i(optimizations) f(are)g(p)s(erformed,)h(and)e(the)i(\015o)m(w)630 4844 y(graph)c(is)f(translated)h(bac)m(k)h(from)e(SSA)h(form.)43 b(Users)31 b(should)e(not)i(sp)s(ecify)f(this)g(option,)630 4954 y(since)g(it)g(is)f(not)i(y)m(et)g(ready)f(for)h(pro)s(duction)d (use.)150 5121 y Fq(-fssa-ccp)630 5230 y Fy(P)m(erform)48 b(Sparse)g(Conditional)d(Constan)m(t)k(Propagation)g(in)e(SSA)g(form.) 94 b(Requires)630 5340 y(`)p Fq(-fssa)p Fy('.)40 b(Lik)m(e)30 b(`)p Fq(-fssa)p Fy(',)g(this)f(is)g(an)i(exp)s(erimen)m(tal)e (feature.)p eop %%Page: 60 70 60 69 bop 150 -116 a Fy(60)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-fssa-dce)630 408 y Fy(P)m(erform)f(aggressiv)m(e)h(dead-co)s(de)g(elimination)d(in)g (SSA)i(form.)40 b(Requires)28 b(`)p Fq(-fssa)p Fy('.)39 b(Lik)m(e)630 518 y(`)p Fq(-fssa)p Fy(',)30 b(this)f(is)g(an)i(exp)s (erimen)m(tal)e(feature.)150 679 y Fq(-fsingle-precision-const)o(ant) 630 789 y Fy(T)-8 b(reat)35 b(\015oating)f(p)s(oin)m(t)f(constan)m(t)j (as)e(single)f(precision)f(constan)m(t)k(instead)d(of)i(implicitly)630 898 y(con)m(v)m(erting)c(it)f(to)h(double)e(precision)g(constan)m(t.) 150 1060 y Fq(-frename-registers)630 1169 y Fy(A)m(ttempt)37 b(to)f(a)m(v)m(oid)g(false)f(dep)s(endencies)e(in)h(sc)m(heduled)g(co)s (de)i(b)m(y)f(making)g(use)g(of)g(reg-)630 1279 y(isters)41 b(left)g(o)m(v)m(er)i(after)f(register)f(allo)s(cation.)74 b(This)40 b(optimization)g(will)f(most)j(b)s(ene\014t)630 1388 y(pro)s(cessors)33 b(with)e(lots)i(of)h(registers.)48 b(It)33 b(can,)i(ho)m(w)m(ev)m(er,)g(mak)m(e)f(debugging)e(imp)s (ossible,)630 1498 y(since)e(v)-5 b(ariables)29 b(will)e(no)k(longer)f (sta)m(y)h(in)e(a)i(\\home)g(register".)150 1659 y Fq (-fno-cprop-registers)630 1769 y Fy(After)40 b(register)f(allo)s (cation)g(and)g(p)s(ost-register)g(allo)s(cation)g(instruction)f (splitting,)h(w)m(e)630 1878 y(p)s(erform)28 b(a)h(cop)m(y-propagation) i(pass)d(to)i(try)f(to)h(reduce)f(sc)m(heduling)e(dep)s(endencies)h (and)630 1988 y(o)s(ccasionally)i(eliminate)e(the)j(cop)m(y)-8 b(.)150 2149 y Fq(--param)28 b Fn(name)5 b Fq(=)p Fn(v)-5 b(alue)630 2259 y Fy(In)27 b(some)g(places,)h(GCC)f(uses)g(v)-5 b(arious)26 b(constan)m(ts)j(to)f(con)m(trol)g(the)f(amoun)m(t)h(of)f (optimiza-)630 2368 y(tion)d(that)h(is)e(done.)39 b(F)-8 b(or)25 b(example,)g(GCC)f(will)e(not)j(inline)c(functions)i(that)i (con)m(tain)g(more)630 2478 y(that)k(a)h(certain)e(n)m(um)m(b)s(er)g (of)h(instructions.)38 b(Y)-8 b(ou)29 b(can)g(con)m(trol)g(some)h(of)f (these)g(constan)m(ts)630 2587 y(on)h(the)h(command-line)e(using)g(the) h(`)p Fq(--param)p Fy(')f(option.)630 2723 y(In)h(eac)m(h)h(case,)h (the)f Fn(v)-5 b(alue)35 b Fy(is)29 b(an)i(in)m(teger.)41 b(The)30 b(allo)m(w)m(able)g(c)m(hoices)h(for)f Fn(name)36 b Fy(are)31 b(giv)m(en)630 2832 y(in)e(the)i(follo)m(wing)d(table:)630 2993 y Fq(max-delay-slot-insn-sear)o(ch)1110 3103 y Fy(The)e(maxim)m (um)g(n)m(um)m(b)s(er)g(of)h(instructions)d(to)k(consider)e(when)g(lo)s (oking)f(for)1110 3213 y(an)c(instruction)e(to)j(\014ll)d(a)i(dela)m(y) g(slot.)38 b(If)20 b(more)i(than)e(this)g(arbitrary)g(n)m(um)m(b)s(er) 1110 3322 y(of)35 b(instructions)e(is)h(searc)m(hed,)j(the)e(time)g(sa) m(vings)g(from)g(\014lling)d(the)j(dela)m(y)1110 3432 y(slot)45 b(will)d(b)s(e)j(minimal)d(so)j(stop)h(searc)m(hing.)84 b(Increasing)44 b(v)-5 b(alues)45 b(mean)1110 3541 y(more)f(aggressiv)m (e)i(optimization,)g(making)e(the)g(compile)f(time)h(increase)1110 3651 y(with)29 b(probably)g(small)g(impro)m(v)m(emen)m(t)h(in)f (executable)i(run)e(time.)630 3812 y Fq(max-delay-slot-live-sear)o(ch) 1110 3922 y Fy(When)37 b(trying)g(to)h(\014ll)d(dela)m(y)j(slots,)h (the)e(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(instruc-)1110 4031 y(tions)27 b(to)i(consider)e(when)g(searc)m(hing)h(for)g(a)h(blo)s (c)m(k)e(with)g(v)-5 b(alid)27 b(liv)m(e)g(register)1110 4141 y(information.)60 b(Increasing)37 b(this)f(arbitrarily)f(c)m (hosen)j(v)-5 b(alue)36 b(means)i(more)1110 4251 y(aggressiv)m(e)33 b(optimization,)e(increasing)f(the)i(compile)e(time.)44 b(This)30 b(param-)1110 4360 y(eter)41 b(should)c(b)s(e)j(remo)m(v)m (ed)h(when)d(the)j(dela)m(y)e(slot)h(co)s(de)g(is)f(rewritten)g(to)1110 4470 y(main)m(tain)29 b(the)i(con)m(trol-\015o)m(w)g(graph.)630 4631 y Fq(max-gcse-memory)1110 4740 y Fy(The)36 b(appro)m(ximate)g (maxim)m(um)f(amoun)m(t)i(of)g(memory)f(that)h(will)d(b)s(e)h(allo-) 1110 4850 y(cated)g(in)f(order)f(to)j(p)s(erform)d(the)h(global)g (common)g(sub)s(expression)e(elim-)1110 4960 y(ination)37 b(optimization.)62 b(If)37 b(more)h(memory)g(than)f(sp)s(eci\014ed)g (is)f(required,)1110 5069 y(the)31 b(optimization)e(will)f(not)i(b)s(e) g(done.)630 5230 y Fq(max-gcse-passes)1110 5340 y Fy(The)g(maxim)m(um)f (n)m(um)m(b)s(er)g(of)i(passes)f(of)g(GCSE)g(to)h(run.)p eop %%Page: 61 71 61 70 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(61)630 299 y Fq(max-pending-list-length)1110 408 y Fy(The)28 b(maxim)m(um)f(n)m(um)m(b)s(er)g(of)i(p)s(ending)d(dep) s(endencies)h(sc)m(heduling)f(will)g(al-)1110 518 y(lo)m(w)h(b)s(efore) f(\015ushing)f(the)i(curren)m(t)g(state)i(and)d(starting)h(o)m(v)m(er.) 41 b(Large)28 b(func-)1110 628 y(tions)38 b(with)g(few)g(branc)m(hes)h (or)g(calls)f(can)h(create)h(excessiv)m(ely)f(large)g(lists)1110 737 y(whic)m(h)29 b(needlessly)g(consume)h(memory)g(and)g(resources.) 630 907 y Fq(max-inline-insns)1110 1017 y Fy(If)23 b(an)h(function)f (con)m(tains)h(more)g(than)g(this)f(man)m(y)h(instructions,)f(it)g (will)f(not)1110 1126 y(b)s(e)g(inlined.)35 b(This)20 b(option)i(is)g(precisely)f(equiv)-5 b(alen)m(t)22 b(to)h(`)p Fq(-finline-limit)p Fy('.)150 1410 y Fs(3.11)68 b(Options)46 b(Con)l(trolling)g(the)g(Prepro)t(cessor)275 1614 y Fy(These)23 b(options)g(con)m(trol)h(the)g(C)f(prepro)s(cessor,)h(whic)m(h)f(is)f (run)g(on)i(eac)m(h)h(C)e(source)h(\014le)e(b)s(efore)i(actual)150 1723 y(compilation.)275 1868 y(If)41 b(y)m(ou)h(use)f(the)h(`)p Fq(-E)p Fy(')f(option,)j(nothing)d(is)g(done)g(except)i(prepro)s (cessing.)72 b(Some)42 b(of)g(these)g(op-)150 1978 y(tions)30 b(mak)m(e)h(sense)f(only)f(together)j(with)d(`)p Fq(-E)p Fy(')h(b)s(ecause)g(they)g(cause)h(the)g(prepro)s(cessor)e(output)h(to) h(b)s(e)150 2087 y(unsuitable)d(for)i(actual)h(compilation.)275 2232 y(Y)-8 b(ou)26 b(can)h(use)e(`)p Fq(-Wp,)p Fn(option)p Fy(')g(to)i(b)m(ypass)f(the)g(compiler)f(driv)m(er)g(and)g(pass)h Fn(option)g Fy(directly)f(through)150 2342 y(to)43 b(the)f(prepro)s (cessor.)74 b(If)41 b Fn(option)h Fy(con)m(tains)g(commas,)j(it)d(is)f (split)f(in)m(to)h(m)m(ultiple)f(options)h(at)i(the)150 2452 y(commas.)59 b(Ho)m(w)m(ev)m(er,)40 b(man)m(y)c(options)g(are)g (mo)s(di\014ed,)g(translated)g(or)g(in)m(terpreted)g(b)m(y)g(the)g (compiler)150 2561 y(driv)m(er)28 b(b)s(efore)i(b)s(eing)e(passed)h(to) h(the)g(prepro)s(cessor,)f(and)g(`)p Fq(-Wp)p Fy(')h(forcibly)d(b)m (ypasses)j(this)e(phase.)40 b(The)150 2671 y(prepro)s(cessor's)23 b(direct)h(in)m(terface)h(is)e(undo)s(cumen)m(ted)g(and)g(sub)5 b(ject)24 b(to)h(c)m(hange,)i(so)d(whenev)m(er)g(p)s(ossible)150 2780 y(y)m(ou)31 b(should)d(a)m(v)m(oid)j(using)e(`)p Fq(-Wp)p Fy(')h(and)g(let)g(the)h(driv)m(er)e(handle)g(the)h(options)g (instead.)150 2956 y Fq(-D)g Fn(name)142 b Fy(Prede\014ne)30 b Fn(name)35 b Fy(as)c(a)f(macro,)i(with)d(de\014nition)f Fq(1)p Fy(.)150 3126 y Fq(-D)i Fn(name)5 b Fq(=)p Fn(de\014nition)630 3235 y Fy(Prede\014ne)25 b Fn(name)31 b Fy(as)26 b(a)g(macro,)i(with)c (de\014nition)g Fn(de\014nition)p Fy(.)37 b(There)25 b(are)h(no)g(restrictions)630 3345 y(on)35 b(the)h(con)m(ten)m(ts)h(of) f Fn(de\014nition)p Fy(,)e(but)h(if)f(y)m(ou)i(are)g(in)m(v)m(oking)e (the)i(prepro)s(cessor)f(from)g(a)630 3454 y(shell)g(or)i(shell-lik)m (e)e(program)i(y)m(ou)g(ma)m(y)h(need)e(to)i(use)f(the)g(shell's)e (quoting)i(syn)m(tax)g(to)630 3564 y(protect)31 b(c)m(haracters)h(suc)m (h)e(as)h(spaces)g(that)g(ha)m(v)m(e)g(a)g(meaning)f(in)f(the)h(shell)f (syn)m(tax.)630 3704 y(If)44 b(y)m(ou)g(wish)e(to)j(de\014ne)e(a)i (function-lik)m(e)d(macro)j(on)f(the)g(command)g(line,)i(write)e(its) 630 3813 y(argumen)m(t)h(list)f(with)g(surrounding)d(paren)m(theses)46 b(b)s(efore)e(the)h(equals)g(sign)f(\(if)g(an)m(y\).)630 3923 y(P)m(aren)m(theses)27 b(are)f(meaningful)d(to)j(most)g(shells,)f (so)h(y)m(ou)g(will)d(need)i(to)h(quote)g(the)g(option.)630 4033 y(With)k Fq(sh)g Fy(and)f Fq(csh)p Fy(,)h(`)p Fq(-D')p Fn(name)5 b Fq(\()p Fn(args)h(.)22 b(.)g(.)11 b Fq(\)=)p Fn(de\014nition)p Fq(')p Fy(')28 b(w)m(orks.)630 4172 y(`)p Fq(-D)p Fy(')f(and)f(`)p Fq(-U)p Fy(')h(options)f(are)h(pro)s (cessed)g(in)e(the)j(order)e(they)h(are)g(giv)m(en)g(on)g(the)g (command)630 4282 y(line.)39 b(All)28 b(`)p Fq(-imacros)g Fn(\014le)5 b Fy(')30 b(and)f(`)p Fq(-include)f Fn(\014le)5 b Fy(')29 b(options)g(are)h(pro)s(cessed)f(after)h(all)f(`)p Fq(-D)p Fy(')630 4392 y(and)h(`)p Fq(-U)p Fy(')g(options.)150 4562 y Fq(-U)g Fn(name)142 b Fy(Cancel)31 b(an)m(y)h(previous)f (de\014nition)e(of)j Fn(name)p Fy(,)g(either)f(built)f(in)g(or)i(pro)m (vided)e(with)h(a)h(`)p Fq(-D)p Fy(')630 4671 y(option.)150 4841 y Fq(-undef)192 b Fy(Do)33 b(not)g(prede\014ne)e(an)m(y)i (system-sp)s(eci\014c)e(macros.)47 b(The)32 b(common)h(prede\014ned)d (macros)630 4951 y(remain)f(de\014ned.)150 5121 y Fq(-I)h Fn(dir)241 b Fy(Add)33 b(the)i(directory)e Fn(dir)40 b Fy(to)34 b(the)h(list)e(of)h(directories)f(to)i(b)s(e)f(searc)m(hed)h (for)f(header)g(\014les.)630 5230 y(Directories)e(named)f(b)m(y)h(`)p Fq(-I)p Fy(')g(are)g(searc)m(hed)h(b)s(efore)e(the)h(standard)f(system) h(include)e(di-)630 5340 y(rectories.)p eop %%Page: 62 72 62 71 bop 150 -116 a Fy(62)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(It)c(is)f(dangerous)h(to)h(sp)s(ecify)e (a)h(standard)g(system)g(include)e(directory)h(in)g(an)h(`)p Fq(-I)p Fy(')g(option.)630 408 y(This)34 b(defeats)j(the)g(sp)s(ecial)e (treatmen)m(t)j(of)e(system)g(headers)g(.)59 b(It)36 b(can)g(also)h(defeat)g(the)630 518 y(repairs)29 b(to)i(buggy)f(system) h(headers)f(whic)m(h)f(GCC)h(mak)m(es)h(when)f(it)f(is)h(installed.)150 670 y Fq(-o)g Fn(\014le)237 b Fy(W)-8 b(rite)25 b(output)e(to)i Fn(\014le)p Fy(.)38 b(This)22 b(is)h(the)i(same)f(as)h(sp)s(ecifying)d Fn(\014le)28 b Fy(as)c(the)h(second)f(non-option)630 779 y(argumen)m(t)42 b(to)g Fq(cpp)p Fy(.)72 b Fq(gcc)41 b Fy(has)g(a)h(di\013eren)m(t)e(in)m(terpretation)h(of)h(a)f(second)h (non-option)630 889 y(argumen)m(t,)31 b(so)g(y)m(ou)f(m)m(ust)h(use)f (`)p Fq(-o)p Fy(')g(to)h(sp)s(ecify)e(the)i(output)f(\014le.)150 1041 y Fq(-Wall)240 b Fy(T)-8 b(urns)26 b(on)i(all)e(optional)h(w)m (arnings)g(whic)m(h)f(are)i(desirable)e(for)i(normal)e(co)s(de.)40 b(A)m(t)29 b(presen)m(t)630 1150 y(this)k(is)g(`)p Fq(-Wcomment)p Fy(')f(and)h(`)p Fq(-Wtrigraphs)p Fy('.)49 b(Note)36 b(that)e(man)m(y)g(of)h(the)f(prepro)s(cessor's)630 1260 y(w)m(arnings)29 b(are)i(on)f(b)m(y)g(default)g(and)g(ha)m(v)m(e)h(no)g (options)e(to)i(con)m(trol)g(them.)150 1412 y Fq(-Wcomment)150 1521 y(-Wcomments)630 1631 y Fy(W)-8 b(arn)35 b(whenev)m(er)f(a)g (commen)m(t-start)i(sequence)f(`)p Fq(/*)p Fy(')f(app)s(ears)f(in)g(a)i (`)p Fq(/*)p Fy(')f(commen)m(t,)i(or)630 1740 y(whenev)m(er)i(a)h(bac)m (kslash-newline)e(app)s(ears)h(in)f(a)i(`)p Fq(//)p Fy(')g(commen)m(t.) 66 b(\(Both)40 b(forms)e(ha)m(v)m(e)630 1850 y(the)31 b(same)f(e\013ect.\))150 2002 y Fq(-Wtrigraphs)630 2111 y Fy(W)-8 b(arn)33 b(if)f(an)m(y)h(trigraphs)e(are)i(encoun)m(tered.)48 b(This)31 b(option)h(used)f(to)j(tak)m(e)g(e\013ect)g(only)e(if)630 2221 y(`)p Fq(-trigraphs)p Fy(')h(w)m(as)j(also)f(sp)s(eci\014ed,)g (but)g(no)m(w)g(w)m(orks)h(indep)s(enden)m(tly)-8 b(.)53 b(W)-8 b(arnings)35 b(are)630 2330 y(not)d(giv)m(en)f(for)g(trigraphs)f (within)f(commen)m(ts,)k(as)f(they)f(do)h(not)f(a\013ect)i(the)f (meaning)f(of)630 2440 y(the)g(program.)150 2592 y Fq(-Wtraditional)630 2701 y Fy(W)-8 b(arn)36 b(ab)s(out)g(certain)f(constructs)i(that)f(b)s (eha)m(v)m(e)g(di\013eren)m(tly)f(in)g(traditional)f(and)h(ISO)630 2811 y(C.)57 b(Also)35 b(w)m(arn)h(ab)s(out)g(ISO)e(C)i(constructs)g (that)h(ha)m(v)m(e)g(no)e(traditional)g(C)g(equiv)-5 b(alen)m(t,)630 2921 y(and)30 b(problematic)f(constructs)i(whic)m(h)e (should)f(b)s(e)i(a)m(v)m(oided.)150 3072 y Fq(-Wimport)96 b Fy(W)-8 b(arn)31 b(the)f(\014rst)g(time)g(`)p Fq(#import)p Fy(')f(is)g(used.)150 3224 y Fq(-Wundef)144 b Fy(W)-8 b(arn)37 b(whenev)m(er)f(an)g(iden)m(ti\014er)f(whic)m(h)g(is)g(not)i (a)g(macro)g(is)e(encoun)m(tered)i(in)e(an)h(`)p Fq(#if)p Fy(')630 3334 y(directiv)m(e,)30 b(outside)g(of)g(`)p Fq(defined)p Fy('.)40 b(Suc)m(h)29 b(iden)m(ti\014ers)g(are)i(replaced) e(with)g(zero.)150 3485 y Fq(-Werror)144 b Fy(Mak)m(e)37 b(all)c(w)m(arnings)h(in)m(to)h(hard)f(errors.)54 b(Source)35 b(co)s(de)g(whic)m(h)f(triggers)h(w)m(arnings)f(will)630 3595 y(b)s(e)c(rejected.)150 3747 y Fq(-Wsystem-headers)630 3856 y Fy(Issue)39 b(w)m(arnings)f(for)h(co)s(de)h(in)e(system)h (headers.)68 b(These)39 b(are)h(normally)e(unhelpful)d(in)630 3966 y(\014nding)28 b(bugs)i(in)f(y)m(our)h(o)m(wn)h(co)s(de,)g (therefore)g(suppressed.)39 b(If)30 b(y)m(ou)h(are)g(resp)s(onsible)c (for)630 4075 y(the)k(system)f(library)-8 b(,)29 b(y)m(ou)h(ma)m(y)h(w) m(an)m(t)h(to)f(see)g(them.)150 4227 y Fq(-w)384 b Fy(Suppress)28 b(all)h(w)m(arnings,)h(including)d(those)j(whic)m(h)g(GNU)h(CPP)e (issues)g(b)m(y)i(default.)150 4379 y Fq(-pedantic)630 4489 y Fy(Issue)c(all)g(the)h(mandatory)f(diagnostics)g(listed)g(in)f (the)i(C)f(standard.)39 b(Some)28 b(of)g(them)g(are)630 4598 y(left)i(out)h(b)m(y)f(default,)g(since)g(they)g(trigger)g (frequen)m(tly)g(on)g(harmless)f(co)s(de.)150 4750 y Fq(-pedantic-errors)630 4859 y Fy(Issue)54 b(all)f(the)h(mandatory)g (diagnostics,)60 b(and)53 b(mak)m(e)i(all)e(mandatory)i(diagnostics)630 4969 y(in)m(to)45 b(errors.)85 b(This)44 b(includes)f(mandatory)i (diagnostics)g(that)h(GCC)f(issues)f(without)630 5079 y(`)p Fq(-pedantic)p Fy(')28 b(but)i(treats)h(as)g(w)m(arnings.)150 5230 y Fq(-M)384 b Fy(Instead)23 b(of)g(outputting)f(the)h(result)f(of) h(prepro)s(cessing,)g(output)g(a)g(rule)f(suitable)f(for)i Fq(make)630 5340 y Fy(describing)30 b(the)i(dep)s(endencies)f(of)h(the) g(main)g(source)g(\014le.)45 b(The)32 b(prepro)s(cessor)f(outputs)p eop %%Page: 63 73 63 72 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(63)630 299 y(one)32 b Fq(make)e Fy(rule)g(con)m (taining)h(the)h(ob)5 b(ject)32 b(\014le)f(name)h(for)f(that)h(source)g (\014le,)f(a)h(colon,)g(and)630 408 y(the)h(names)f(of)g(all)f(the)i (included)d(\014les,)i(including)d(those)j(coming)g(from)g(`)p Fq(-include)p Fy(')f(or)630 518 y(`)p Fq(-imacros)p Fy(')e(command)h (line)e(options.)630 652 y(Unless)g(sp)s(eci\014ed)f(explicitly)f (\(with)i(`)p Fq(-MT)p Fy(')h(or)g(`)p Fq(-MQ)p Fy('\),)g(the)g(ob)5 b(ject)30 b(\014le)e(name)g(consists)h(of)630 761 y(the)j(basename)h (of)f(the)g(source)g(\014le)f(with)g(an)m(y)h(su\016x)f(replaced)h (with)f(ob)5 b(ject)33 b(\014le)e(su\016x.)630 871 y(If)38 b(there)h(are)g(man)m(y)f(included)e(\014les)h(then)h(the)h(rule)e(is)h (split)e(in)m(to)j(sev)m(eral)g(lines)d(using)630 980 y(`)p Fq(\\)p Fy('-newline.)j(The)30 b(rule)f(has)h(no)g(commands.)630 1114 y(This)h(option)i(do)s(es)f(not)h(suppress)e(the)i(prepro)s (cessor's)g(debug)f(output,)h(suc)m(h)g(as)g(`)p Fq(-dM)p Fy('.)630 1224 y(T)-8 b(o)46 b(a)m(v)m(oid)g(mixing)e(suc)m(h)i(debug)f (output)g(with)f(the)i(dep)s(endency)f(rules)f(y)m(ou)i(should)630 1333 y(explicitly)c(sp)s(ecify)g(the)j(dep)s(endency)d(output)i(\014le) f(with)g(`)p Fq(-MF)p Fy(',)48 b(or)c(use)g(an)g(en)m(viron-)630 1443 y(men)m(t)35 b(v)-5 b(ariable)33 b(lik)m(e)h Fq (DEPENDENCIES_OUTPUT)29 b Fy(\(see)36 b([DEPENDENCIES)p 3272 1443 28 4 v 32 w(OUTPUT],)630 1552 y(page)42 b(147\).)77 b(Debug)41 b(output)h(will)d(still)g(b)s(e)i(sen)m(t)h(to)h(the)f (regular)e(output)i(stream)g(as)630 1662 y(normal.)630 1796 y(P)m(assing)30 b(`)p Fq(-M)p Fy(')g(to)h(the)g(driv)m(er)e (implies)f(`)p Fq(-E)p Fy('.)150 1953 y Fq(-MM)336 b Fy(Lik)m(e)45 b(`)p Fq(-M)p Fy(')g(but)f(do)h(not)g(men)m(tion)g (header)g(\014les)f(that)h(are)h(found)d(in)h(system)h(header)630 2063 y(directories,)32 b(nor)g(header)g(\014les)f(that)i(are)g (included,)d(directly)h(or)h(indirectly)-8 b(,)31 b(from)h(suc)m(h)630 2172 y(a)f(header.)630 2306 y(This)23 b(implies)f(that)j(the)g(c)m (hoice)h(of)f(angle)g(brac)m(k)m(ets)h(or)f(double)e(quotes)i(in)f(an)h (`)p Fq(#include)p Fy(')630 2415 y(directiv)m(e)32 b(do)s(es)g(not)g (in)f(itself)g(determine)h(whether)f(that)i(header)f(will)e(app)s(ear)h (in)g(`)p Fq(-MM)p Fy(')630 2525 y(dep)s(endency)36 b(output.)61 b(This)36 b(is)g(a)i(sligh)m(t)e(c)m(hange)i(in)e(seman)m(tics)i(from)f (GCC)g(v)m(ersions)630 2635 y(3.0)31 b(and)f(earlier.)150 2792 y Fq(-MF)f Fn(\014le)190 b Fy(When)35 b(used)f(with)f(`)p Fq(-M)p Fy(')i(or)g(`)p Fq(-MM)p Fy(',)h(sp)s(eci\014es)d(a)j(\014le)e (to)h(write)f(the)h(dep)s(endencies)e(to.)55 b(If)630 2902 y(no)35 b(`)p Fq(-MF)p Fy(')h(switc)m(h)f(is)f(giv)m(en)i(the)g (prepro)s(cessor)e(sends)h(the)h(rules)e(to)i(the)g(same)g(place)f(it) 630 3011 y(w)m(ould)29 b(ha)m(v)m(e)j(sen)m(t)f(prepro)s(cessed)e (output.)630 3145 y(When)k(used)f(with)f(the)j(driv)m(er)d(options)i(`) p Fq(-MD)p Fy(')f(or)h(`)p Fq(-MMD)p Fy(',)g(`)p Fq(-MF)p Fy(')g(o)m(v)m(errides)g(the)g(default)630 3255 y(dep)s(endency)c (output)h(\014le.)150 3412 y Fq(-MG)336 b Fy(When)35 b(used)g(with)g(`)p Fq(-M)p Fy(')g(or)h(`)p Fq(-MM)p Fy(',)g(`)p Fq(-MG)p Fy(')g(sa)m(ys)g(to)g(treat)h(missing)c(header)j (\014les)e(as)i(gen-)630 3522 y(erated)j(\014les)e(and)g(assume)h(they) g(liv)m(e)g(in)f(the)h(same)g(directory)g(as)g(the)h(source)f(\014le.) 63 b(It)630 3631 y(suppresses)29 b(prepro)s(cessed)g(output,)h(as)h(a)g (missing)d(header)i(\014le)g(is)f(ordinarily)e(an)j(error.)630 3765 y(This)f(feature)h(is)g(used)f(in)g(automatic)j(up)s(dating)c(of)j (mak)m(e\014les.)150 3922 y Fq(-MP)336 b Fy(This)36 b(option)h (instructs)f(CPP)g(to)i(add)f(a)h(phon)m(y)f(target)i(for)e(eac)m(h)i (dep)s(endency)d(other)630 4032 y(than)j(the)g(main)f(\014le,)i (causing)f(eac)m(h)h(to)g(dep)s(end)d(on)i(nothing.)66 b(These)38 b(dumm)m(y)g(rules)630 4142 y(w)m(ork)30 b(around)f(errors)g Fq(make)g Fy(giv)m(es)h(if)f(y)m(ou)h(remo)m(v)m(e)h(header)f(\014les)f (without)g(up)s(dating)f(the)630 4251 y(`)p Fq(Makefile)p Fy(')h(to)i(matc)m(h.)630 4385 y(This)e(is)g(t)m(ypical)h(output:)870 4513 y Fq(test.o:)46 b(test.c)g(test.h)870 4720 y(test.h:)150 4878 y(-MT)29 b Fn(target)630 5011 y Fy(Change)36 b(the)g(target)i(of)e (the)g(rule)e(emitted)i(b)m(y)g(dep)s(endency)f(generation.)57 b(By)37 b(default)630 5121 y(CPP)28 b(tak)m(es)i(the)f(name)g(of)g(the) g(main)e(input)g(\014le,)i(including)c(an)m(y)k(path,)g(deletes)g(an)m (y)g(\014le)630 5230 y(su\016x)j(suc)m(h)h(as)h(`)p Fq(.c)p Fy(',)g(and)e(app)s(ends)g(the)h(platform's)f(usual)g(ob)5 b(ject)34 b(su\016x.)48 b(The)33 b(result)630 5340 y(is)c(the)i (target.)p eop %%Page: 64 74 64 73 bop 150 -116 a Fy(64)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(An)i(`)p Fq(-MT)p Fy(')g(option)f(will) f(set)i(the)h(target)g(to)g(b)s(e)f(exactly)h(the)f(string)f(y)m(ou)i (sp)s(ecify)-8 b(.)45 b(If)32 b(y)m(ou)630 408 y(w)m(an)m(t)j(m)m (ultiple)d(targets,)37 b(y)m(ou)e(can)f(sp)s(ecify)f(them)h(as)h(a)f (single)f(argumen)m(t)i(to)g(`)p Fq(-MT)p Fy(',)g(or)630 518 y(use)30 b(m)m(ultiple)e(`)p Fq(-MT)p Fy(')i(options.)630 648 y(F)-8 b(or)31 b(example,)f(`)p Fq(-MT)g('$\(objpfx\)foo.o')l Fy(')g(migh)m(t)g(giv)m(e)870 772 y Fq($\(objpfx\)foo.o:)44 b(foo.c)150 923 y(-MQ)29 b Fn(target)630 1053 y Fy(Same)56 b(as)g(`)p Fq(-MT)p Fy(',)62 b(but)54 b(it)i(quotes)g(an)m(y)g(c)m (haracters)h(whic)m(h)d(are)i(sp)s(ecial)f(to)h(Mak)m(e.)630 1162 y(`)p Fq(-MQ)30 b('$\(objpfx\)foo.o')-5 b Fy(')31 b(giv)m(es)870 1287 y Fq($$\(objpfx\)foo.o:)43 b(foo.c)630 1417 y Fy(The)30 b(default)f(target)j(is)e(automatically)g(quoted,)h (as)f(if)g(it)g(w)m(ere)g(giv)m(en)h(with)e(`)p Fq(-MQ)p Fy('.)150 1567 y Fq(-MD)336 b Fy(`)p Fq(-MD)p Fy(')33 b(is)g(equiv)-5 b(alen)m(t)33 b(to)h(`)p Fq(-M)c(-MF)g Fn(\014le)5 b Fy(',)34 b(except)g(that)g(`)p Fq(-E)p Fy(')g(is)e(not)i(implied.)47 b(The)33 b(driv)m(er)630 1677 y(determines)26 b Fn(\014le)31 b Fy(based)26 b(on)h(whether)f(an)h (`)p Fq(-o)p Fy(')g(option)f(is)g(giv)m(en.)39 b(If)27 b(it)f(is,)h(the)g(driv)m(er)e(uses)630 1786 y(its)37 b(argumen)m(t)g(but)g(with)f(a)h(su\016x)g(of)g(`)p Fq(.d)p Fy(',)i(otherwise)e(it)g(tak)m(e)h(the)g(basename)f(of)h(the)630 1896 y(input)28 b(\014le)i(and)g(applies)e(a)j(`)p Fq(.d)p Fy(')f(su\016x.)630 2026 y(If)24 b(`)p Fq(-MD)p Fy(')h(is)e(used)h(in)g (conjunction)f(with)h(`)p Fq(-E)p Fy(',)i(an)m(y)f(`)p Fq(-o)p Fy(')f(switc)m(h)g(is)g(understo)s(o)s(d)f(to)i(sp)s(ecify)630 2136 y(the)33 b(dep)s(endency)f(output)g(\014le)g(\(but)h(see)h([-MF],) g(page)g(63\),)h(but)e(if)f(used)g(without)g(`)p Fq(-E)p Fy(',)630 2245 y(eac)m(h)g(`)p Fq(-o)p Fy(')e(is)f(understo)s(o)s(d)g (to)i(sp)s(ecify)e(a)i(target)h(ob)5 b(ject)31 b(\014le.)630 2375 y(Since)k(`)p Fq(-E)p Fy(')g(is)g(not)h(implied,)e(`)p Fq(-MD)p Fy(')h(can)h(b)s(e)f(used)g(to)h(generate)h(a)f(dep)s(endency) e(output)630 2485 y(\014le)29 b(as)i(a)g(side-e\013ect)g(of)g(the)f (compilation)f(pro)s(cess.)150 2635 y Fq(-MMD)288 b Fy(Lik)m(e)30 b(`)p Fq(-MD)p Fy(')g(except)i(men)m(tion)e(only)f(user)h(header)g (\014les,)g(not)g(system)h(-header)f(\014les.)150 2786 y Fq(-x)g(c)150 2895 y(-x)g(c++)150 3005 y(-x)g(objective-c)150 3115 y(-x)g(assembler-with-cpp)630 3224 y Fy(Sp)s(ecify)c(the)j(source) f(language:)40 b(C,)28 b(C)p Fq(++)p Fy(,)g(Ob)5 b(jectiv)m(e-C,)29 b(or)f(assem)m(bly)-8 b(.)40 b(This)26 b(has)i(noth-)630 3334 y(ing)39 b(to)h(do)g(with)e(standards)g(conformance)j(or)e (extensions;)44 b(it)39 b(merely)g(selects)h(whic)m(h)630 3443 y(base)35 b(syn)m(tax)g(to)h(exp)s(ect.)55 b(If)34 b(y)m(ou)h(giv)m(e)g(none)g(of)g(these)g(options,)h(cpp)e(will)e (deduce)j(the)630 3553 y(language)f(from)g(the)g(extension)g(of)g(the)g (source)g(\014le:)47 b(`)p Fq(.c)p Fy(',)35 b(`)p Fq(.cc)p Fy(',)g(`)p Fq(.m)p Fy(',)g(or)f(`)p Fq(.S)p Fy('.)51 b(Some)630 3663 y(other)25 b(common)g(extensions)g(for)f(C)p Fq(++)g Fy(and)g(assem)m(bly)h(are)g(also)g(recognized.)39 b(If)24 b(cpp)g(do)s(es)630 3772 y(not)33 b(recognize)g(the)g (extension,)g(it)f(will)e(treat)k(the)e(\014le)g(as)h(C;)f(this)g(is)f (the)i(most)g(generic)630 3882 y(mo)s(de.)630 4012 y Fl(Note:)47 b Fy(Previous)32 b(v)m(ersions)h(of)g(cpp)f(accepted)j(a)e (`)p Fq(-lang)p Fy(')f(option)g(whic)m(h)g(selected)i(b)s(oth)630 4121 y(the)k(language)g(and)e(the)i(standards)e(conformance)j(lev)m (el.)61 b(This)36 b(option)h(has)g(b)s(een)g(re-)630 4231 y(mo)m(v)m(ed,)32 b(b)s(ecause)e(it)g(con\015icts)g(with)f(the)i (`)p Fq(-l)p Fy(')f(option.)150 4381 y Fq(-std=)p Fn(standard)150 4491 y Fq(-ansi)240 b Fy(Sp)s(ecify)36 b(the)j(standard)e(to)i(whic)m (h)e(the)h(co)s(de)g(should)e(conform.)64 b(Curren)m(tly)36 b(cpp)i(only)630 4601 y(kno)m(ws)f(ab)s(out)g(the)h(standards)e(for)h (C;)g(other)h(language)g(standards)e(will)f(b)s(e)i(added)f(in)630 4710 y(the)31 b(future.)630 4840 y Fn(standard)i Fy(ma)m(y)e(b)s(e)f (one)g(of:)630 4991 y Fq(iso9899:1990)630 5100 y(c89)336 b Fy(The)31 b(ISO)g(C)g(standard)g(from)g(1990.)47 b(`)p Fq(c89)p Fy(')31 b(is)g(the)h(customary)g(shorthand)1110 5210 y(for)e(this)f(v)m(ersion)h(of)h(the)f(standard.)1110 5340 y(The)g(`)p Fq(-ansi)p Fy(')f(option)h(is)g(equiv)-5 b(alen)m(t)29 b(to)i(`)p Fq(-std=c89)p Fy('.)p eop %%Page: 65 75 65 74 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(65)630 299 y Fq(iso9899:199409)1110 408 y Fy(The)30 b(1990)i(C)e(standard,)g(as)g(amended)g(in)f(1994.)630 560 y Fq(iso9899:1999)630 669 y(c99)630 779 y(iso9899:199x)630 889 y(c9x)336 b Fy(The)32 b(revised)f(ISO)g(C)h(standard,)g(published)d (in)i(Decem)m(b)s(er)i(1999.)48 b(Before)1110 998 y(publication,)28 b(this)h(w)m(as)i(kno)m(wn)f(as)h(C9X.)630 1149 y Fq(gnu89)240 b Fy(The)30 b(1990)i(C)e(standard)f(plus)g(GNU)i(extensions.)40 b(This)29 b(is)g(the)i(default.)630 1301 y Fq(gnu99)630 1410 y(gnu9x)240 b Fy(The)30 b(1999)i(C)e(standard)f(plus)g(GNU)i (extensions.)150 1562 y Fq(-I-)336 b Fy(Split)29 b(the)j(include)d (path.)44 b(An)m(y)32 b(directories)f(sp)s(eci\014ed)f(with)g(`)p Fq(-I)p Fy(')h(options)g(b)s(efore)g(`)p Fq(-I-)p Fy(')630 1671 y(are)45 b(searc)m(hed)g(only)e(for)h(headers)g(requested)h(with)e Fq(#include)28 b(")p Fn(\014le)5 b Fq(")o Fy(;)51 b(they)45 b(are)g(not)630 1781 y(searc)m(hed)39 b(for)f Fq(#include)28 b(<)p Fn(\014le)5 b Fq(>)o Fy(.)64 b(If)38 b(additional)e(directories)i (are)g(sp)s(eci\014ed)f(with)g(`)p Fq(-I)p Fy(')630 1891 y(options)c(after)g(the)h(`)p Fq(-I-)p Fy(',)g(those)g(directories)e (are)i(searc)m(hed)g(for)f(all)f(`)p Fq(#include)p Fy(')g(direc-)630 2000 y(tiv)m(es.)630 2131 y(In)g(addition,)g(`)p Fq(-I-)p Fy(')g(inhibits)d(the)k(use)f(of)h(the)g(directory)f(of)g(the)h(curren) m(t)g(\014le)e(directory)630 2240 y(as)g(the)f(\014rst)g(searc)m(h)h (directory)f(for)g Fq(#include)e(")p Fn(\014le)5 b Fq(")o Fy(.)150 2392 y Fq(-nostdinc)630 2501 y Fy(Do)32 b(not)f(searc)m(h)g (the)g(standard)f(system)h(directories)f(for)g(header)h(\014les.)40 b(Only)30 b(the)h(direc-)630 2611 y(tories)26 b(y)m(ou)h(ha)m(v)m(e)h (sp)s(eci\014ed)c(with)h(`)p Fq(-I)p Fy(')i(options)f(\(and)g(the)g (directory)g(of)h(the)f(curren)m(t)h(\014le,)630 2720 y(if)i(appropriate\))h(are)h(searc)m(hed.)150 2872 y Fq(-nostdinc++)630 2981 y Fy(Do)k(not)f(searc)m(h)h(for)e(header)h (\014les)f(in)g(the)h(C)p Fq(++)p Fy(-sp)s(eci\014c)e(standard)i (directories,)g(but)f(do)630 3091 y(still)e(searc)m(h)i(the)g(other)g (standard)f(directories.)47 b(\(This)32 b(option)g(is)g(used)g(when)g (building)630 3200 y(the)f(C)p Fq(++)e Fy(library)-8 b(.\))150 3352 y Fq(-include)28 b Fn(\014le)630 3461 y Fy(Pro)s(cess)40 b Fn(\014le)45 b Fy(as)c(if)e Fq(#include)28 b("file")39 b Fy(app)s(eared)h(as)g(the)h(\014rst)f(line)f(of)h(the)h (primary)630 3571 y(source)36 b(\014le.)57 b(Ho)m(w)m(ev)m(er,)40 b(the)c(\014rst)g(directory)f(searc)m(hed)i(for)f Fn(\014le)k Fy(is)35 b(the)i(prepro)s(cessor's)630 3680 y(w)m(orking)e(directory)g Fr(inste)-5 b(ad)39 b(of)55 b Fy(the)35 b(directory)g(con)m(taining)g (the)h(main)e(source)i(\014le.)55 b(If)630 3790 y(not)43 b(found)f(there,)k(it)d(is)f(searc)m(hed)h(for)g(in)f(the)h(remainder)e (of)i(the)g Fq(#include)28 b("...)o(")630 3900 y Fy(searc)m(h)j(c)m (hain)f(as)h(normal.)630 4030 y(If)26 b(m)m(ultiple)e(`)p Fq(-include)p Fy(')g(options)i(are)h(giv)m(en,)g(the)g(\014les)e(are)i (included)c(in)i(the)i(order)f(they)630 4140 y(app)s(ear)k(on)g(the)h (command)f(line.)150 4291 y Fq(-imacros)e Fn(\014le)630 4401 y Fy(Exactly)37 b(lik)m(e)f(`)p Fq(-include)p Fy(',)g(except)i (that)f(an)m(y)f(output)h(pro)s(duced)d(b)m(y)j(scanning)e Fn(\014le)41 b Fy(is)630 4510 y(thro)m(wn)31 b(a)m(w)m(a)m(y)-8 b(.)48 b(Macros)33 b(it)e(de\014nes)g(remain)g(de\014ned.)44 b(This)30 b(allo)m(ws)h(y)m(ou)h(to)h(acquire)e(all)630 4620 y(the)g(macros)f(from)g(a)h(header)f(without)g(also)g(pro)s (cessing)f(its)h(declarations.)630 4750 y(All)50 b(\014les)g(sp)s (eci\014ed)g(b)m(y)h(`)p Fq(-imacros)p Fy(')e(are)j(pro)s(cessed)e(b)s (efore)h(all)f(\014les)h(sp)s(eci\014ed)e(b)m(y)630 4860 y(`)p Fq(-include)p Fy('.)150 5011 y Fq(-idirafter)28 b Fn(dir)630 5121 y Fy(Searc)m(h)g Fn(dir)33 b Fy(for)28 b(header)g(\014les,)g(but)g(do)g(it)f Fr(after)39 b Fy(all)27 b(directories)g(sp)s(eci\014ed)g(with)f(`)p Fq(-I)p Fy(')j(and)630 5230 y(the)d(standard)e(system)i(directories)e(ha)m(v)m(e)j(b)s(een)d (exhausted.)39 b Fn(dir)31 b Fy(is)24 b(treated)i(as)g(a)g(system)630 5340 y(include)i(directory)-8 b(.)p eop %%Page: 66 76 66 75 bop 150 -116 a Fy(66)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-iprefix)e Fn(pre\014x)630 408 y Fy(Sp)s(ecify)22 b Fn(pre\014x)30 b Fy(as)24 b(the)g(pre\014x)f (for)h(subsequen)m(t)f(`)p Fq(-iwithprefix)p Fy(')e(options.)38 b(If)24 b(the)g(pre\014x)630 518 y(represen)m(ts)30 b(a)h(directory)-8 b(,)31 b(y)m(ou)f(should)f(include)f(the)i(\014nal)f(`)p Fq(/)p Fy('.)150 682 y Fq(-iwithprefix)e Fn(dir)150 792 y Fq(-iwithprefixbefore)e Fn(dir)630 902 y Fy(App)s(end)40 b Fn(dir)47 b Fy(to)42 b(the)g(pre\014x)f(sp)s(eci\014ed)f(previously)g (with)g(`)p Fq(-iprefix)p Fy(',)j(and)f(add)f(the)630 1011 y(resulting)33 b(directory)i(to)g(the)h(include)d(searc)m(h)i (path.)55 b(`)p Fq(-iwithprefixbefore)p Fy(')30 b(puts)k(it)630 1121 y(in)20 b(the)h(same)h(place)f(`)p Fq(-I)p Fy(')g(w)m(ould;)j(`)p Fq(-iwithprefix)p Fy(')18 b(puts)i(it)h(where)g(`)p Fq(-idirafter)p Fy(')e(w)m(ould.)630 1258 y(Use)31 b(of)f(these)h(options)f(is)f (discouraged.)150 1422 y Fq(-isystem)f Fn(dir)630 1532 y Fy(Searc)m(h)33 b Fn(dir)k Fy(for)32 b(header)g(\014les,)f(after)i (all)e(directories)h(sp)s(eci\014ed)e(b)m(y)i(`)p Fq(-I)p Fy(')g(but)g(b)s(efore)g(the)630 1641 y(standard)f(system)h (directories.)44 b(Mark)33 b(it)e(as)h(a)g(system)g(directory)-8 b(,)33 b(so)f(that)g(it)g(gets)h(the)630 1751 y(same)e(sp)s(ecial)e (treatmen)m(t)j(as)e(is)g(applied)e(to)j(the)g(standard)e(system)i (directories.)150 1915 y Fq(-fpreprocessed)630 2025 y Fy(Indicate)g(to)g(the)h(prepro)s(cessor)e(that)i(the)f(input)e(\014le) h(has)h(already)f(b)s(een)h(prepro)s(cessed.)630 2134 y(This)25 b(suppresses)f(things)h(lik)m(e)h(macro)h(expansion,)f (trigraph)f(con)m(v)m(ersion,)j(escap)s(ed)e(new-)630 2244 y(line)20 b(splicing,)i(and)f(pro)s(cessing)g(of)i(most)f (directiv)m(es.)37 b(The)22 b(prepro)s(cessor)f(still)f(recognizes)630 2354 y(and)k(remo)m(v)m(es)i(commen)m(ts,)h(so)e(that)g(y)m(ou)g(can)g (pass)g(a)g(\014le)f(prepro)s(cessed)f(with)h(`)p Fq(-C)p Fy(')g(to)i(the)630 2463 y(compiler)34 b(without)g(problems.)54 b(In)35 b(this)f(mo)s(de)h(the)h(in)m(tegrated)g(prepro)s(cessor)f(is)f (little)630 2573 y(more)d(than)f(a)g(tok)m(enizer)i(for)e(the)g(fron)m (t)h(ends.)630 2710 y(`)p Fq(-fpreprocessed)p Fy(')37 b(is)i(implicit)f(if)h(the)h(input)f(\014le)g(has)h(one)h(of)f(the)h (extensions)f(`)p Fq(.i)p Fy(',)630 2819 y(`)p Fq(.ii)p Fy(')35 b(or)g(`)p Fq(.mi)p Fy('.)55 b(These)35 b(are)g(the)h (extensions)f(that)g(GCC)g(uses)g(for)g(prepro)s(cessed)f(\014les)630 2929 y(created)d(b)m(y)g(`)p Fq(-save-temps)p Fy('.)150 3093 y Fq(-ftabstop=)p Fn(width)630 3203 y Fy(Set)g(the)f(distance)g(b) s(et)m(w)m(een)i(tab)e(stops.)41 b(This)29 b(helps)g(the)h(prepro)s (cessor)g(rep)s(ort)g(correct)630 3313 y(column)j(n)m(um)m(b)s(ers)f (in)g(w)m(arnings)h(or)h(errors,)g(ev)m(en)h(if)d(tabs)i(app)s(ear)f (on)h(the)g(line.)49 b(If)34 b(the)630 3422 y(v)-5 b(alue)28 b(is)f(less)h(than)g(1)h(or)f(greater)i(than)e(100,)i(the)f(option)f (is)f(ignored.)39 b(The)28 b(default)g(is)f(8.)150 3587 y Fq(-fno-show-column)630 3696 y Fy(Do)37 b(not)g(prin)m(t)e(column)g (n)m(um)m(b)s(ers)g(in)g(diagnostics.)58 b(This)35 b(ma)m(y)i(b)s(e)f (necessary)h(if)e(diag-)630 3806 y(nostics)e(are)g(b)s(eing)e(scanned)i (b)m(y)g(a)g(program)g(that)g(do)s(es)g(not)g(understand)e(the)i (column)630 3915 y(n)m(um)m(b)s(ers,)c(suc)m(h)h(as)h Fq(dejagnu)p Fy(.)150 4080 y Fq(-A)f Fn(predicate)5 b Fq(=)p Fn(answ)m(er)630 4189 y Fy(Mak)m(e)32 b(an)f(assertion)f(with)g (the)h(predicate)f Fn(predicate)36 b Fy(and)30 b(answ)m(er)h Fn(answ)m(er)p Fy(.)41 b(This)29 b(form)630 4299 y(is)h(preferred)g(to) i(the)f(older)f(form)g(`)p Fq(-A)g Fn(predicate)5 b Fq(\()p Fn(answ)m(er)i Fq(\))p Fy(',)31 b(whic)m(h)f(is)g(still)f(supp)s (orted,)630 4408 y(b)s(ecause)h(it)g(do)s(es)g(not)h(use)f(shell)f(sp)s (ecial)g(c)m(haracters.)150 4573 y Fq(-A)h(-)p Fn(predicate)5 b Fq(=)p Fn(answ)m(er)630 4682 y Fy(Cancel)30 b(an)g(assertion)g(with)f (the)i(predicate)f Fn(predicate)35 b Fy(and)30 b(answ)m(er)g Fn(answ)m(er)p Fy(.)150 4847 y Fq(-A-)336 b Fy(Cancel)26 b(all)f(prede\014ned)f(assertions)i(and)g(all)f(assertions)h(preceding) f(it)h(on)g(the)g(command)630 4956 y(line.)56 b(Also,)37 b(unde\014ne)d(all)h(prede\014ned)f(macros)j(and)e(all)g(macros)h (preceding)f(it)h(on)g(the)630 5066 y(command)30 b(line.)39 b(\(This)29 b(is)h(a)g(historical)f(w)m(art)i(and)f(ma)m(y)h(c)m(hange) g(in)e(the)i(future.\))150 5230 y Fq(-dCHARS)144 b Fn(CHARS)45 b Fy(is)40 b(a)i(sequence)f(of)g(one)g(or)g(more)g(of)f(the)h(follo)m (wing)f(c)m(haracters,)45 b(and)40 b(m)m(ust)630 5340 y(not)33 b(b)s(e)g(preceded)g(b)m(y)g(a)g(space.)50 b(Other)32 b(c)m(haracters)j(are)f(in)m(terpreted)e(b)m(y)h(the)g(compiler)p eop %%Page: 67 77 67 76 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(67)630 299 y(prop)s(er,)33 b(or)h(reserv)m(ed)f(for)h (future)e(v)m(ersions)h(of)h(GCC,)f(and)g(so)h(are)g(silen)m(tly)e (ignored.)49 b(If)630 408 y(y)m(ou)31 b(sp)s(ecify)e(c)m(haracters)j (whose)e(b)s(eha)m(vior)f(con\015icts,)h(the)h(result)e(is)h (unde\014ned.)630 577 y(`)p Fq(M)p Fy(')382 b(Instead)24 b(of)h(the)g(normal)e(output,)j(generate)g(a)f(list)e(of)h(`)p Fq(#define)p Fy(')g(directiv)m(es)1110 686 y(for)j(all)e(the)j(macros)f (de\014ned)f(during)e(the)j(execution)g(of)g(the)h(prepro)s(cessor,) 1110 796 y(including)k(prede\014ned)i(macros.)57 b(This)33 b(giv)m(es)j(y)m(ou)g(a)g(w)m(a)m(y)h(of)e(\014nding)f(out)1110 906 y(what)h(is)f(prede\014ned)g(in)f(y)m(our)i(v)m(ersion)g(of)g(the)h (prepro)s(cessor.)54 b(Assuming)1110 1015 y(y)m(ou)31 b(ha)m(v)m(e)g(no)g(\014le)e(`)p Fq(foo.h)p Fy(',)h(the)g(command)1350 1148 y Fq(touch)46 b(foo.h;)g(cpp)h(-dM)g(foo.h)1110 1287 y Fy(will)28 b(sho)m(w)i(all)f(the)i(prede\014ned)d(macros.)630 1455 y(`)p Fq(D)p Fy(')382 b(Lik)m(e)32 b(`)p Fq(M)p Fy(')h(except)h(in)d(t)m(w)m(o)j(resp)s(ects:)45 b(it)32 b(do)s(es)g Fr(not)42 b Fy(include)30 b(the)j(prede\014ned)1110 1565 y(macros,)c(and)e(it)g(outputs)h Fr(b)-5 b(oth)36 b Fy(the)28 b(`)p Fq(#define)p Fy(')e(directiv)m(es)h(and)g(the)h (result)1110 1675 y(of)33 b(prepro)s(cessing.)47 b(Both)34 b(kinds)d(of)i(output)g(go)h(to)g(the)f(standard)f(output)1110 1784 y(\014le.)630 1952 y(`)p Fq(N)p Fy(')382 b(Lik)m(e)30 b(`)p Fq(D)p Fy(',)h(but)f(emit)g(only)f(the)i(macro)g(names,)f(not)h (their)e(expansions.)630 2121 y(`)p Fq(I)p Fy(')382 b(Output)37 b(`)p Fq(#include)p Fy(')g(directiv)m(es)h(in)f(addition)f(to)j(the)g (result)e(of)i(prepro-)1110 2230 y(cessing.)150 2399 y Fq(-P)384 b Fy(Inhibit)37 b(generation)k(of)f(linemark)m(ers)e(in)h (the)h(output)g(from)g(the)g(prepro)s(cessor.)69 b(This)630 2508 y(migh)m(t)23 b(b)s(e)g(useful)e(when)h(running)f(the)i(prepro)s (cessor)f(on)h(something)g(that)h(is)e(not)i(C)e(co)s(de,)630 2618 y(and)30 b(will)d(b)s(e)j(sen)m(t)h(to)g(a)g(program)f(whic)m(h)f (migh)m(t)h(b)s(e)g(confused)g(b)m(y)g(the)h(linemark)m(ers.)150 2786 y Fq(-C)384 b Fy(Do)28 b(not)g(discard)e(commen)m(ts.)41 b(All)26 b(commen)m(ts)j(are)f(passed)f(through)g(to)i(the)e(output)h (\014le,)630 2896 y(except)33 b(for)g(commen)m(ts)g(in)e(pro)s(cessed)h (directiv)m(es,)h(whic)m(h)e(are)i(deleted)f(along)h(with)e(the)630 3005 y(directiv)m(e.)630 3144 y(Y)-8 b(ou)35 b(should)d(b)s(e)i (prepared)f(for)h(side)f(e\013ects)j(when)d(using)g(`)p Fq(-C)p Fy(';)k(it)c(causes)i(the)g(prepro-)630 3254 y(cessor)30 b(to)g(treat)h(commen)m(ts)f(as)g(tok)m(ens)h(in)d(their)h (o)m(wn)g(righ)m(t.)40 b(F)-8 b(or)30 b(example,)g(commen)m(ts)630 3363 y(app)s(earing)d(at)h(the)h(start)f(of)g(what)g(w)m(ould)f(b)s(e)g (a)i(directiv)m(e)e(line)g(ha)m(v)m(e)i(the)f(e\013ect)i(of)e(turn-)630 3473 y(ing)h(that)h(line)e(in)m(to)i(an)g(ordinary)e(source)i(line,)e (since)i(the)g(\014rst)f(tok)m(en)h(on)g(the)g(line)e(is)h(no)630 3583 y(longer)h(a)h(`)p Fq(#)p Fy('.)150 3751 y Fq(-gcc)288 b Fy(De\014ne)52 b(the)h(macros)p 1448 3751 31 4 v 1485 3751 V 125 w Fk(gnuc)p 1745 3751 V 1781 3751 V 72 w Fy(,)p 1899 3751 V 1936 3751 V 130 w Fk(gnuc)p 2196 3751 V 36 w(minor)p 2496 3751 V 2531 3751 V 124 w Fy(and)p 2818 3751 V 2854 3751 V 124 w Fk(gnuc)p 3115 3751 V 35 w(p)-6 b(a)g(tchlevel)p 3661 3751 V 3695 3751 V 70 w Fy(.)630 3860 y(These)35 b(are)g(de\014ned)f(automatically)g(when)g(y)m(ou)i (use)e Fq(gcc)c(-E)p Fy(;)36 b(y)m(ou)g(can)f(turn)f(them)h(o\013)630 3970 y(in)29 b(that)i(case)g(with)f(`)p Fq(-no-gcc)p Fy('.)150 4138 y Fq(-traditional)630 4248 y Fy(T)-8 b(ry)30 b(to)h(imitate)f(the)h(b)s(eha)m(vior)e(of)i(old-fashioned)d(C,)j(as)f (opp)s(osed)g(to)h(ISO)e(C.)150 4416 y Fq(-trigraphs)630 4526 y Fy(Pro)s(cess)37 b(trigraph)f(sequences.)63 b(These)37 b(are)h(three-c)m(haracter)h(sequences,)h(all)c(starting)630 4635 y(with)22 b(`)p Fq(??)p Fy(',)j(that)f(are)g(de\014ned)e(b)m(y)i (ISO)e(C)h(to)h(stand)f(for)h(single)e(c)m(haracters.)40 b(F)-8 b(or)24 b(example,)630 4745 y(`)p Fq(??/)p Fy(')d(stands)h(for)f (`)p Fq(\\)p Fy(',)j(so)e(`)p Fq('??/n')p Fy(')f(is)g(a)h(c)m(haracter) i(constan)m(t)f(for)e(a)i(newline.)35 b(By)22 b(default,)630 4855 y(GCC)e(ignores)g(trigraphs,)i(but)d(in)h(standard-conforming)f (mo)s(des)h(it)g(con)m(v)m(erts)i(them.)38 b(See)630 4964 y(the)31 b(`)p Fq(-std)p Fy(')e(and)h(`)p Fq(-ansi)p Fy(')f(options.)630 5103 y(The)h(nine)f(trigraphs)g(and)h(their)f (replacemen)m(ts)i(are)870 5236 y Fq(Trigraph:)332 b(??\()94 b(??\))h(??<)g(??>)f(??=)h(??/)f(??')h(??!)g(??-)870 5340 y(Replacement:)283 b([)191 b(])f({)h(})g(#)f(\\)h(^)g(|)f(~)p eop %%Page: 68 78 68 77 bop 150 -116 a Fy(68)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(-remap)192 b Fy(Enable)32 b(sp)s(ecial)f(co)s(de)h(to)i(w)m(ork)f(around)e(\014le)h(systems)g (whic)m(h)g(only)f(p)s(ermit)g(v)m(ery)i(short)630 408 y(\014le)c(names,)i(suc)m(h)f(as)h(MS-DOS.)150 562 y Fq(-$)384 b Fy(F)-8 b(orbid)31 b(the)i(use)f(of)g(`)p Fq($)p Fy(')h(in)e(iden)m(ti\014ers.)45 b(The)31 b(C)h(standard)g(allo) m(ws)f(implemen)m(tations)g(to)630 672 y(de\014ne)37 b(extra)h(c)m(haracters)g(that)g(can)g(app)s(ear)f(in)f(iden)m (ti\014ers.)59 b(By)38 b(default)f(GNU)h(CPP)630 781 y(p)s(ermits)29 b(`)p Fq($)p Fy(',)h(a)h(common)g(extension.)150 935 y Fq(-h)150 1044 y(--help)150 1154 y(--target-help)630 1263 y Fy(Prin)m(t)42 b(text)i(describing)c(all)i(the)h(command)g(line) e(options)h(instead)h(of)g(prepro)s(cessing)630 1373 y(an)m(ything.)150 1526 y Fq(-v)384 b Fy(V)-8 b(erb)s(ose)45 b(mo)s(de.)83 b(Prin)m(t)43 b(out)i(GNU)g(CPP's)f(v)m(ersion)g(n)m(um)m (b)s(er)f(at)i(the)g(b)s(eginning)d(of)630 1636 y(execution,)31 b(and)f(rep)s(ort)f(the)i(\014nal)e(form)h(of)g(the)h(include)d(path.) 150 1789 y Fq(-H)384 b Fy(Prin)m(t)29 b(the)i(name)f(of)h(eac)m(h)h (header)e(\014le)f(used,)h(in)f(addition)g(to)i(other)g(normal)e (activities.)630 1899 y(Eac)m(h)i(name)f(is)g(inden)m(ted)f(to)i(sho)m (w)f(ho)m(w)h(deep)f(in)f(the)i(`)p Fq(#include)p Fy(')d(stac)m(k)k(it) e(is.)150 2053 y Fq(-version)150 2162 y(--version)630 2272 y Fy(Prin)m(t)h(out)i(GNU)g(CPP's)f(v)m(ersion)g(n)m(um)m(b)s(er.) 46 b(With)32 b(one)h(dash,)f(pro)s(ceed)h(to)g(prepro)s(cess)630 2381 y(as)e(normal.)39 b(With)30 b(t)m(w)m(o)i(dashes,)e(exit)g (immediately)-8 b(.)150 2630 y Fs(3.12)68 b(P)l(assing)46 b(Options)f(to)h(the)f(Assem)l(bler)275 2819 y Fy(Y)-8 b(ou)30 b(can)h(pass)f(options)g(to)h(the)f(assem)m(bler.)150 2973 y Fq(-Wa,)p Fn(option)630 3082 y Fy(P)m(ass)c Fn(option)f Fy(as)g(an)h(option)e(to)j(the)e(assem)m(bler.)39 b(If)25 b Fn(option)g Fy(con)m(tains)g(commas,)i(it)e(is)g(split)630 3192 y(in)m(to)30 b(m)m(ultiple)e(options)i(at)h(the)g(commas.)150 3441 y Fs(3.13)68 b(Options)46 b(for)f(Linking)275 3630 y Fy(These)39 b(options)f(come)j(in)m(to)e(pla)m(y)g(when)f(the)i (compiler)e(links)f(ob)5 b(ject)40 b(\014les)f(in)m(to)g(an)g (executable)150 3740 y(output)30 b(\014le.)40 b(They)30 b(are)g(meaningless)f(if)h(the)g(compiler)f(is)h(not)g(doing)g(a)h (link)d(step.)150 3937 y Fn(ob)5 b(ject-\014le-name)630 4047 y Fy(A)39 b(\014le)f(name)g(that)i(do)s(es)e(not)h(end)f(in)g(a)h (sp)s(ecial)e(recognized)i(su\016x)f(is)g(considered)f(to)630 4156 y(name)31 b(an)g(ob)5 b(ject)33 b(\014le)d(or)h(library)-8 b(.)42 b(\(Ob)5 b(ject)32 b(\014les)e(are)h(distinguished)d(from)j (libraries)d(b)m(y)630 4266 y(the)35 b(link)m(er)f(according)h(to)h (the)f(\014le)f(con)m(ten)m(ts.\))57 b(If)35 b(linking)d(is)i(done,)i (these)g(ob)5 b(ject)36 b(\014les)630 4375 y(are)31 b(used)e(as)i (input)d(to)j(the)g(link)m(er.)150 4529 y Fq(-c)150 4639 y(-S)150 4748 y(-E)384 b Fy(If)28 b(an)m(y)h(of)f(these)h(options)f(is) g(used,)g(then)g(the)h(link)m(er)d(is)i(not)h(run,)e(and)h(ob)5 b(ject)29 b(\014le)f(names)630 4858 y(should)g(not)j(b)s(e)f(used)f(as) i(argumen)m(ts.)41 b(See)31 b(Section)f(3.2)h([Ov)m(erall)f(Options],)f (page)i(16.)150 5011 y Fq(-l)p Fn(library)150 5121 y Fq(-l)f Fn(library)86 b Fy(Searc)m(h)36 b(the)f(library)e(named)i Fn(library)41 b Fy(when)34 b(linking.)53 b(\(The)35 b(second)g (alternativ)m(e)h(with)630 5230 y(the)i(library)e(as)i(a)h(separate)g (argumen)m(t)f(is)f(only)h(for)g(POSIX)f(compliance)g(and)h(is)f(not) 630 5340 y(recommended.\))p eop %%Page: 69 79 69 78 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(69)630 299 y(It)35 b(mak)m(es)g(a)g(di\013erence)f (where)g(in)g(the)h(command)f(y)m(ou)h(write)f(this)f(option;)k(the)e (link)m(er)630 408 y(searc)m(hes)42 b(and)f(pro)s(cesses)g(libraries)e (and)h(ob)5 b(ject)43 b(\014les)d(in)g(the)i(order)e(they)i(are)g(sp)s (eci-)630 518 y(\014ed.)47 b(Th)m(us,)33 b(`)p Fq(foo.o)c(-lz)g(bar.o)p Fy(')j(searc)m(hes)h(library)e(`)p Fq(z)p Fy(')i(after)g(\014le)f(`)p Fq(foo.o)p Fy(')f(but)h(b)s(efore)630 628 y(`)p Fq(bar.o)p Fy('.)38 b(If)26 b(`)p Fq(bar.o)p Fy(')g(refers)g(to)h(functions)e(in)g (`)p Fq(z)p Fy(',)i(those)g(functions)e(ma)m(y)i(not)f(b)s(e)g(loaded.) 630 765 y(The)c(link)m(er)f(searc)m(hes)j(a)f(standard)e(list)h(of)g (directories)g(for)g(the)h(library)-8 b(,)22 b(whic)m(h)g(is)f (actually)630 874 y(a)42 b(\014le)e(named)h(`)p Fq(lib)p Fn(library)p Fq(.a)p Fy('.)70 b(The)41 b(link)m(er)e(then)i(uses)g (this)f(\014le)h(as)g(if)f(it)h(had)g(b)s(een)630 984 y(sp)s(eci\014ed)29 b(precisely)g(b)m(y)h(name.)630 1121 y(The)36 b(directories)g(searc)m(hed)i(include)c(sev)m(eral)k(standard) e(system)h(directories)f(plus)f(an)m(y)630 1230 y(that)c(y)m(ou)g(sp)s (ecify)e(with)g(`)p Fq(-L)p Fy('.)630 1367 y(Normally)d(the)g(\014les)g (found)f(this)h(w)m(a)m(y)h(are)g(library)e(\014les|arc)m(hiv)m(e)h (\014les)f(whose)i(mem)m(b)s(ers)630 1477 y(are)36 b(ob)5 b(ject)37 b(\014les.)55 b(The)35 b(link)m(er)f(handles)g(an)i(arc)m (hiv)m(e)g(\014le)f(b)m(y)g(scanning)g(through)g(it)g(for)630 1587 y(mem)m(b)s(ers)23 b(whic)m(h)g(de\014ne)h(sym)m(b)s(ols)e(that)j (ha)m(v)m(e)g(so)g(far)f(b)s(een)f(referenced)h(but)g(not)g(de\014ned.) 630 1696 y(But)34 b(if)f(the)h(\014le)e(that)j(is)e(found)f(is)h(an)g (ordinary)f(ob)5 b(ject)35 b(\014le,)f(it)f(is)g(link)m(ed)f(in)g(the)i (usual)630 1806 y(fashion.)43 b(The)31 b(only)f(di\013erence)h(b)s(et)m (w)m(een)h(using)e(an)i(`)p Fq(-l)p Fy(')f(option)g(and)g(sp)s (ecifying)e(a)j(\014le)630 1915 y(name)39 b(is)g(that)h(`)p Fq(-l)p Fy(')f(surrounds)d Fn(library)45 b Fy(with)38 b(`)p Fq(lib)p Fy(')h(and)g(`)p Fq(.a)p Fy(')g(and)f(searc)m(hes)j(sev) m(eral)630 2025 y(directories.)150 2189 y Fq(-lobjc)192 b Fy(Y)-8 b(ou)38 b(need)f(this)f(sp)s(ecial)g(case)j(of)e(the)h(`)p Fq(-l)p Fy(')f(option)g(in)f(order)h(to)h(link)d(an)j(Ob)5 b(jectiv)m(e-C)630 2299 y(program.)150 2463 y Fq(-nostartfiles)630 2573 y Fy(Do)23 b(not)f(use)g(the)g(standard)g(system)g(startup)g (\014les)f(when)g(linking.)35 b(The)22 b(standard)f(system)630 2682 y(libraries)27 b(are)k(used)f(normally)-8 b(,)29 b(unless)g(`)p Fq(-nostdlib)p Fy(')f(or)i(`)p Fq(-nodefaultlibs)p Fy(')d(is)j(used.)150 2847 y Fq(-nodefaultlibs)630 2956 y Fy(Do)j(not)f(use)g(the)g(standard)f(system)i(libraries)c(when)i (linking.)43 b(Only)30 b(the)i(libraries)e(y)m(ou)630 3066 y(sp)s(ecify)20 b(will)e(b)s(e)i(passed)g(to)i(the)f(link)m(er.)36 b(The)20 b(standard)g(startup)h(\014les)f(are)h(used)f(normally)-8 b(,)630 3176 y(unless)29 b(`)p Fq(-nostartfiles)p Fy(')e(is)j(used.)40 b(The)30 b(compiler)f(ma)m(y)i(generate)h(calls)e(to)h(memcmp,)630 3285 y(memset,)d(and)e(memcp)m(y)h(for)f(System)g(V)h(\(and)f(ISO)g (C\))g(en)m(vironmen)m(ts)g(or)h(to)g(b)s(cop)m(y)g(and)630 3395 y(bzero)36 b(for)g(BSD)g(en)m(vironmen)m(ts.)56 b(These)35 b(en)m(tries)h(are)g(usually)d(resolv)m(ed)j(b)m(y)g(en)m (tries)f(in)630 3504 y(lib)s(c.)68 b(These)40 b(en)m(try)h(p)s(oin)m (ts)e(should)f(b)s(e)i(supplied)d(through)i(some)i(other)g(mec)m (hanism)630 3614 y(when)29 b(this)h(option)f(is)h(sp)s(eci\014ed.)150 3778 y Fq(-nostdlib)630 3888 y Fy(Do)43 b(not)g(use)f(the)h(standard)f (system)g(startup)g(\014les)g(or)g(libraries)e(when)h(linking.)74 b(No)630 3998 y(startup)27 b(\014les)g(and)h(only)f(the)h(libraries)d (y)m(ou)j(sp)s(ecify)e(will)g(b)s(e)h(passed)g(to)i(the)f(link)m(er.)38 b(The)630 4107 y(compiler)33 b(ma)m(y)i(generate)g(calls)f(to)h (memcmp,)g(memset,)h(and)d(memcp)m(y)i(for)f(System)g(V)630 4217 y(\(and)25 b(ISO)g(C\))g(en)m(vironmen)m(ts)g(or)h(to)g(b)s(cop)m (y)g(and)f(bzero)g(for)h(BSD)g(en)m(vironmen)m(ts.)38 b(These)630 4326 y(en)m(tries)h(are)h(usually)d(resolv)m(ed)j(b)m(y)f (en)m(tries)g(in)g(lib)s(c.)66 b(These)39 b(en)m(try)h(p)s(oin)m(ts)e (should)g(b)s(e)630 4436 y(supplied)27 b(through)j(some)h(other)f(mec)m (hanism)g(when)f(this)h(option)f(is)h(sp)s(eci\014ed.)630 4573 y(One)i(of)h(the)g(standard)f(libraries)e(b)m(ypassed)j(b)m(y)f(`) p Fq(-nostdlib)p Fy(')f(and)h(`)p Fq(-nodefaultlibs)p Fy(')630 4682 y(is)42 b(`)p Fq(libgcc.a)p Fy(',)j(a)e(library)e(of)i (in)m(ternal)f(subroutines)f(that)j(GCC)e(uses)h(to)h(o)m(v)m(ercome) 630 4792 y(shortcomings)29 b(of)g(particular)e(mac)m(hines,)j(or)f(sp)s (ecial)e(needs)i(for)g(some)h(languages.)40 b(\(See)630 4902 y(section)32 b(\\In)m(terfacing)h(to)f(GCC)g(Output")f(in)g Fn(GNU)h(Compiler)e(Collection)h(\(GCC\))h(In-)630 5011 y(ternals)t Fy(,)26 b(for)g(more)g(discussion)e(of)i(`)p Fq(libgcc.a)p Fy('.\))38 b(In)25 b(most)h(cases,)j(y)m(ou)d(need)g(`)p Fq(libgcc.a)p Fy(')630 5121 y(ev)m(en)e(when)e(y)m(ou)i(w)m(an)m(t)g (to)f(a)m(v)m(oid)h(other)f(standard)g(libraries.)35 b(In)23 b(other)g(w)m(ords,)h(when)f(y)m(ou)630 5230 y(sp)s(ecify)j(`)p Fq(-nostdlib)p Fy(')g(or)h(`)p Fq(-nodefaultlibs)p Fy(')e(y)m(ou)j(should)d(usually)h(sp)s(ecify)g(`)p Fq(-lgcc)p Fy(')h(as)630 5340 y(w)m(ell.)75 b(This)40 b(ensures)h(that)h(y)m(ou)h (ha)m(v)m(e)g(no)f(unresolv)m(ed)f(references)h(to)h(in)m(ternal)d(GCC) p eop %%Page: 70 80 70 79 bop 150 -116 a Fy(70)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(library)i(subroutines.)52 b(\(F)-8 b(or)36 b(example,)g(`)p Fq(__main)p Fy(',)e(used)g(to)i (ensure)e(C)p Fq(++)g Fy(constructors)630 408 y(will)28 b(b)s(e)i(called;)g(see)i(section)e(\\)p Fq(collect2)p Fy(")g(in)f Fn(GNU)i(Compiler)e(Collection)g(\(GCC\))i(In-)630 518 y(ternals)t Fy(.\))150 673 y Fq(-s)384 b Fy(Remo)m(v)m(e)32 b(all)d(sym)m(b)s(ol)h(table)g(and)g(relo)s(cation)g(information)e (from)i(the)h(executable.)150 827 y Fq(-static)144 b Fy(On)24 b(systems)i(that)f(supp)s(ort)f(dynamic)g(linking,)f(this)h (prev)m(en)m(ts)i(linking)c(with)i(the)i(shared)630 937 y(libraries.)38 b(On)29 b(other)i(systems,)g(this)e(option)h(has)g(no)g (e\013ect.)150 1091 y Fq(-shared)144 b Fy(Pro)s(duce)33 b(a)h(shared)g(ob)5 b(ject)34 b(whic)m(h)f(can)h(then)g(b)s(e)f(link)m (ed)f(with)h(other)h(ob)5 b(jects)35 b(to)f(form)630 1201 y(an)39 b(executable.)67 b(Not)39 b(all)f(systems)h(supp)s(ort)e (this)h(option.)66 b(F)-8 b(or)39 b(predictable)f(results,)630 1311 y(y)m(ou)32 b(m)m(ust)g(also)g(sp)s(ecify)f(the)h(same)g(set)h(of) f(options)f(that)i(w)m(ere)f(used)f(to)i(generate)h(co)s(de)630 1420 y(\(`)p Fq(-fpic)p Fy(',)c(`)p Fq(-fPIC)p Fy(',)g(or)g(mo)s(del)f (sub)s(options\))g(when)g(y)m(ou)i(sp)s(ecify)e(this)g(option.)3395 1387 y Fj(1)150 1575 y Fq(-shared-libgcc)150 1684 y(-static-libgcc)630 1794 y Fy(On)34 b(systems)h(that)h(pro)m(vide)e(`)p Fq(libgcc)p Fy(')f(as)j(a)f(shared)f(library)-8 b(,)35 b(these)g(options)f(force)i (the)630 1904 y(use)f(of)h(either)f(the)g(shared)g(or)h(static)g(v)m (ersion)f(resp)s(ectiv)m(ely)-8 b(.)56 b(If)35 b(no)g(shared)g(v)m (ersion)g(of)630 2013 y(`)p Fq(libgcc)p Fy(')j(w)m(as)i(built)d(when)h (the)i(compiler)e(w)m(as)i(con\014gured,)h(these)f(options)e(ha)m(v)m (e)j(no)630 2123 y(e\013ect.)630 2255 y(There)k(are)h(sev)m(eral)g (situations)f(in)f(whic)m(h)h(an)g(application)g(should)e(use)j(the)g (shared)630 2365 y(`)p Fq(libgcc)p Fy(')c(instead)g(of)i(the)f(static)h (v)m(ersion.)78 b(The)43 b(most)g(common)h(of)f(these)h(is)e(when)630 2474 y(the)29 b(application)e(wishes)g(to)j(thro)m(w)e(and)h(catc)m(h)h (exceptions)f(across)g(di\013eren)m(t)f(shared)g(li-)630 2584 y(braries.)38 b(In)24 b(that)i(case,)h(eac)m(h)f(of)g(the)f (libraries)d(as)k(w)m(ell)e(as)h(the)h(application)d(itself)h(should) 630 2693 y(use)30 b(the)h(shared)e(`)p Fq(libgcc)p Fy('.)630 2825 y(Therefore,)56 b(the)51 b(G)p Fq(++)g Fy(and)g(GCJ)f(driv)m(ers)g (automatically)h(add)f(`)p Fq(-shared-libgcc)p Fy(')630 2935 y(whenev)m(er)38 b(y)m(ou)h(build)c(a)j(shared)g(library)d(or)k(a) f(main)f(executable,)k(b)s(ecause)d(C)p Fq(++)g Fy(and)630 3045 y(Ja)m(v)-5 b(a)31 b(programs)f(t)m(ypically)g(use)g(exceptions,)g (so)h(this)e(is)h(the)g(righ)m(t)g(thing)f(to)j(do.)630 3177 y(If,)41 b(instead,)g(y)m(ou)f(use)e(the)i(GCC)e(driv)m(er)g(to)i (create)h(shared)d(libraries,)h(y)m(ou)h(ma)m(y)f(\014nd)630 3286 y(that)f(they)g(will)e(not)i(alw)m(a)m(ys)g(b)s(e)f(link)m(ed)f (with)h(the)h(shared)f(`)p Fq(libgcc)p Fy('.)62 b(If)37 b(GCC)g(\014nds,)630 3396 y(at)g(its)g(con\014guration)f(time,)i(that)f (y)m(ou)g(ha)m(v)m(e)h(a)f(GNU)h(link)m(er)d(that)i(do)s(es)g(not)g (supp)s(ort)630 3505 y(option)26 b(`)p Fq(--eh-frame-hdr)p Fy(',)d(it)j(will)d(link)h(the)j(shared)e(v)m(ersion)h(of)g(`)p Fq(libgcc)p Fy(')f(in)m(to)h(shared)630 3615 y(libraries)21 b(b)m(y)j(default.)38 b(Otherwise,)25 b(it)e(will)f(tak)m(e)k(adv)-5 b(an)m(tage)26 b(of)e(the)g(link)m(er)f(and)h(optimize)630 3725 y(a)m(w)m(a)m(y)40 b(the)f(linking)c(with)i(the)h(shared)g(v)m (ersion)g(of)g(`)p Fq(libgcc)p Fy(',)h(linking)d(with)h(the)h(static) 630 3834 y(v)m(ersion)30 b(of)i(libgcc)e(b)m(y)h(default.)41 b(This)30 b(allo)m(ws)g(exceptions)h(to)h(propagate)g(through)e(suc)m (h)630 3944 y(shared)g(libraries,)d(without)j(incurring)d(relo)s (cation)j(costs)h(at)g(library)d(load)i(time.)630 4076 y(Ho)m(w)m(ev)m(er,)36 b(if)31 b(a)i(library)e(or)h(main)g(executable)h (is)f(supp)s(osed)f(to)i(thro)m(w)g(or)g(catc)m(h)h(excep-)630 4185 y(tions,)41 b(y)m(ou)f(m)m(ust)g(link)d(it)i(using)f(the)i(G)p Fq(++)f Fy(or)g(GCJ)g(driv)m(er,)i(as)f(appropriate)e(for)i(the)630 4295 y(languages)h(used)f(in)f(the)i(program,)i(or)e(using)e(the)i (option)f(`)p Fq(-shared-libgcc)p Fy(',)g(suc)m(h)630 4405 y(that)31 b(it)f(is)f(link)m(ed)g(with)g(the)i(shared)e(`)p Fq(libgcc)p Fy('.)150 4559 y Fq(-symbolic)630 4669 y Fy(Bind)h(references)i(to)g(global)e(sym)m(b)s(ols)g(when)g(building)e (a)k(shared)e(ob)5 b(ject.)45 b(W)-8 b(arn)31 b(ab)s(out)630 4778 y(an)m(y)22 b(unresolv)m(ed)f(references)h(\(unless)e(o)m(v)m (erridden)h(b)m(y)h(the)g(link)d(editor)j(option)f(`)p Fq(-Xlinker)630 4888 y(-z)30 b(-Xlinker)e(defs)p Fy('\).)40 b(Only)29 b(a)i(few)f(systems)g(supp)s(ort)f(this)g(option.)p 150 4979 1200 4 v 199 5047 a Fj(1)275 5078 y Fi(On)d(some)i(systems,)f (`)p Fh(gcc)g(-shared)p Fi(')i(needs)f(to)f(build)g(supplemen)n(tary)f (stub)h(co)r(de)h(for)g(constructors)h(to)e(w)n(ork.)41 b(On)275 5166 y(m)n(ulti-libb)r(ed)25 b(systems,)i(`)p Fh(gcc)f(-shared)p Fi(')j(m)n(ust)d(select)h(the)g(correct)h(supp)r (ort)e(libraries)i(to)g(link)e(against.)40 b(F)-6 b(ailing)28 b(to)275 5253 y(supply)19 b(the)i(correct)g(\015ags)g(ma)n(y)f(lead)h (to)g(subtle)g(defects.)33 b(Supplying)20 b(them)f(in)i(cases)h(where)f (they)f(are)h(not)f(necessary)275 5340 y(is)26 b(inno)r(cuous.)p eop %%Page: 71 81 71 80 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(71)150 299 y Fq(-Xlinker)28 b Fn(option)630 408 y Fy(P)m(ass)22 b Fn(option)e Fy(as)h(an)g(option)g(to)h(the)f (link)m(er.)36 b(Y)-8 b(ou)22 b(can)f(use)g(this)f(to)i(supply)d (system-sp)s(eci\014c)630 518 y(link)m(er)29 b(options)g(whic)m(h)h (GCC)g(do)s(es)g(not)g(kno)m(w)h(ho)m(w)f(to)h(recognize.)630 653 y(If)26 b(y)m(ou)g(w)m(an)m(t)h(to)g(pass)f(an)g(option)g(that)h (tak)m(es)g(an)f(argumen)m(t,)i(y)m(ou)f(m)m(ust)f(use)g(`)p Fq(-Xlinker)p Fy(')630 763 y(t)m(wice,)59 b(once)54 b(for)f(the)g (option)f(and)h(once)g(for)g(the)g(argumen)m(t.)109 b(F)-8 b(or)54 b(example,)k(to)630 873 y(pass)52 b(`)p Fq(-assert)28 b(definitions)p Fy(',)55 b(y)m(ou)d(m)m(ust)g(write)f(`)p Fq(-Xlinker)29 b(-assert)f(-Xlinker)630 982 y(definitions)p Fy('.)38 b(It)30 b(do)s(es)g(not)h(w)m(ork)g(to)g(write)e(`)p Fq(-Xlinker)g("-assert)f(definitions")p Fy(',)630 1092 y(b)s(ecause)36 b(this)g(passes)g(the)g(en)m(tire)h(string)e(as)i(a)f (single)f(argumen)m(t,)k(whic)m(h)c(is)g(not)i(what)630 1201 y(the)31 b(link)m(er)d(exp)s(ects.)150 1363 y Fq(-Wl,)p Fn(option)630 1472 y Fy(P)m(ass)37 b Fn(option)e Fy(as)i(an)f(option)g (to)g(the)h(link)m(er.)56 b(If)36 b Fn(option)g Fy(con)m(tains)g (commas,)j(it)d(is)f(split)630 1582 y(in)m(to)30 b(m)m(ultiple)e (options)i(at)h(the)g(commas.)150 1743 y Fq(-u)f Fn(sym)m(b)s(ol)72 b Fy(Pretend)39 b(the)h(sym)m(b)s(ol)f Fn(sym)m(b)s(ol)i Fy(is)e(unde\014ned,)h(to)h(force)f(linking)d(of)i(library)f(mo)s (dules)630 1853 y(to)h(de\014ne)f(it.)64 b(Y)-8 b(ou)39 b(can)g(use)f(`)p Fq(-u)p Fy(')g(m)m(ultiple)e(times)i(with)f (di\013eren)m(t)h(sym)m(b)s(ols)f(to)i(force)630 1962 y(loading)29 b(of)i(additional)d(library)g(mo)s(dules.)150 2224 y Fs(3.14)68 b(Options)46 b(for)f(Directory)h(Searc)l(h)275 2419 y Fy(These)31 b(options)f(sp)s(ecify)g(directories)h(to)h(searc)m (h)g(for)f(header)g(\014les,)g(for)g(libraries)e(and)i(for)g(parts)g (of)150 2528 y(the)g(compiler:)150 2690 y Fq(-I)p Fn(dir)271 b Fy(Add)35 b(the)g(directory)g Fn(dir)41 b Fy(to)36 b(the)g(head)f(of)h(the)f(list)g(of)g(directories)g(to)h(b)s(e)f(searc) m(hed)h(for)630 2800 y(header)j(\014les.)67 b(This)37 b(can)j(b)s(e)f(used)f(to)i(o)m(v)m(erride)g(a)g(system)f(header)g (\014le,)i(substituting)630 2910 y(y)m(our)29 b(o)m(wn)f(v)m(ersion,)h (since)f(these)h(directories)e(are)i(searc)m(hed)g(b)s(efore)g(the)f (system)h(header)630 3019 y(\014le)e(directories.)39 b(Ho)m(w)m(ev)m(er,)31 b(y)m(ou)d(should)e(not)i(use)f(this)g(option)h (to)g(add)f(directories)g(that)630 3129 y(con)m(tain)37 b(v)m(endor-supplied)c(system)j(header)g(\014les)g(\(use)g(`)p Fq(-isystem)p Fy(')e(for)i(that\).)60 b(If)36 b(y)m(ou)630 3238 y(use)26 b(more)g(than)g(one)h(`)p Fq(-I)p Fy(')f(option,)g(the)h (directories)e(are)i(scanned)e(in)g(left-to-righ)m(t)i(order;)630 3348 y(the)k(standard)e(system)i(directories)e(come)i(after.)630 3483 y(If)25 b(a)h(standard)f(system)h(include)d(directory)-8 b(,)27 b(or)f(a)g(directory)f(sp)s(eci\014ed)f(with)g(`)p Fq(-isystem)p Fy(',)630 3593 y(is)39 b(also)i(sp)s(eci\014ed)d(with)h (`)p Fq(-I)p Fy(',)k(it)d(will)e(b)s(e)i(searc)m(hed)h(only)e(in)g(the) i(p)s(osition)d(requested)630 3702 y(b)m(y)k(`)p Fq(-I)p Fy('.)74 b(Also,)45 b(it)c(will)e(not)j(b)s(e)f(considered)g(a)h (system)g(include)d(directory)-8 b(.)75 b(If)41 b(that)630 3812 y(directory)31 b(really)f(do)s(es)h(con)m(tain)h(system)g (headers,)f(there)h(is)e(a)i(go)s(o)s(d)f(c)m(hance)i(that)f(they)630 3922 y(will)d(break.)43 b(F)-8 b(or)32 b(instance,)f(if)f(GCC's)h (installation)e(pro)s(cedure)h(edited)h(the)g(headers)g(in)630 4031 y(`)p Fq(/usr/include)p Fy(')k(to)k(\014x)f(bugs,)i(`)p Fq(-I/usr/include)p Fy(')35 b(will)g(cause)k(the)f(original,)h(buggy) 630 4141 y(headers)c(to)i(b)s(e)e(found)f(instead)h(of)h(the)g (corrected)h(ones.)57 b(GCC)35 b(will)e(issue)i(a)h(w)m(arning)630 4250 y(when)29 b(a)i(system)g(include)d(directory)i(is)f(hidden)f(in)h (this)g(w)m(a)m(y)-8 b(.)150 4412 y Fq(-I-)336 b Fy(An)m(y)21 b(directories)f(y)m(ou)h(sp)s(ecify)e(with)h(`)p Fq(-I)p Fy(')h(options)f(b)s(efore)g(the)h(`)p Fq(-I-)p Fy(')g(option)f(are)h (searc)m(hed)630 4521 y(only)44 b(for)g(the)h(case)g(of)g(`)p Fq(#include)28 b(")p Fn(\014le)5 b Fq(")p Fy(';)51 b(they)45 b(are)g(not)g(searc)m(hed)g(for)f(`)p Fq(#include)630 4631 y(<)p Fn(\014le)5 b Fq(>)p Fy('.)630 4766 y(If)40 b(additional)f(directories)g(are)j(sp)s(eci\014ed)c(with)i(`)p Fq(-I)p Fy(')g(options)g(after)i(the)e(`)p Fq(-I-)p Fy(',)j(these)630 4876 y(directories)27 b(are)i(searc)m(hed)f(for)g(all)f(`)p Fq(#include)p Fy(')g(directiv)m(es.)39 b(\(Ordinarily)25 b Fr(al)5 b(l)38 b Fy(`)p Fq(-I)p Fy(')28 b(direc-)630 4985 y(tories)i(are)h(used)f(this)f(w)m(a)m(y)-8 b(.\))630 5121 y(In)24 b(addition,)h(the)g(`)p Fq(-I-)p Fy(')f(option)g(inhibits) e(the)j(use)f(of)h(the)g(curren)m(t)g(directory)f(\(where)h(the)630 5230 y(curren)m(t)i(input)f(\014le)h(came)h(from\))g(as)g(the)g (\014rst)f(searc)m(h)h(directory)f(for)g(`)p Fq(#include)i(")p Fn(\014le)5 b Fq(")p Fy('.)630 5340 y(There)39 b(is)g(no)h(w)m(a)m(y)g (to)h(o)m(v)m(erride)f(this)e(e\013ect)j(of)f(`)p Fq(-I-)p Fy('.)69 b(With)39 b(`)p Fq(-I.)p Fy(')g(y)m(ou)h(can)g(sp)s(ecify)p eop %%Page: 72 82 72 81 bop 150 -116 a Fy(72)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(searc)m(hing)23 b(the)h(directory)f (whic)m(h)f(w)m(as)h(curren)m(t)h(when)e(the)i(compiler)d(w)m(as)j(in)m (v)m(ok)m(ed.)39 b(That)630 408 y(is)25 b(not)i(exactly)g(the)f(same)h (as)f(what)h(the)f(prepro)s(cessor)f(do)s(es)h(b)m(y)g(default,)h(but)e (it)h(is)g(often)630 518 y(satisfactory)-8 b(.)630 673 y(`)p Fq(-I-)p Fy(')25 b(do)s(es)g(not)g(inhibit)d(the)j(use)g(of)g (the)g(standard)g(system)g(directories)f(for)h(header)g(\014les.)630 783 y(Th)m(us,)30 b(`)p Fq(-I-)p Fy(')g(and)f(`)p Fq(-nostdinc)p Fy(')g(are)h(indep)s(enden)m(t.)150 984 y Fq(-L)p Fn(dir)271 b Fy(Add)29 b(directory)h Fn(dir)36 b Fy(to)31 b(the)f(list)f(of)i (directories)e(to)i(b)s(e)f(searc)m(hed)h(for)f(`)p Fq(-l)p Fy('.)150 1185 y Fq(-B)p Fn(pre\014x)158 b Fy(This)30 b(option)h(sp)s(eci\014es)f(where)h(to)i(\014nd)d(the)i(executables,)h (libraries,)c(include)g(\014les,)j(and)630 1295 y(data)f(\014les)e(of)i (the)f(compiler)f(itself.)630 1450 y(The)e(compiler)f(driv)m(er)g (program)h(runs)e(one)j(or)f(more)h(of)f(the)h(subprograms)d(`)p Fq(cpp)p Fy(',)j(`)p Fq(cc1)p Fy(',)630 1559 y(`)p Fq(as)p Fy(')21 b(and)g(`)p Fq(ld)p Fy('.)37 b(It)22 b(tries)f Fn(pre\014x)26 b Fy(as)c(a)f(pre\014x)g(for)g(eac)m(h)h(program)f(it)g (tries)g(to)h(run,)g(b)s(oth)e(with)630 1669 y(and)30 b(without)f(`)p Fn(mac)m(hine)5 b Fq(/)p Fn(v)m(ersion)p Fq(/)p Fy(')30 b(\(see)h(Section)f(3.16)i([T)-8 b(arget)32 b(Options],)e(page)h(79\).)630 1824 y(F)-8 b(or)59 b(eac)m(h)h (subprogram)d(to)i(b)s(e)e(run,)65 b(the)58 b(compiler)f(driv)m(er)g (\014rst)h(tries)f(the)i(`)p Fq(-B)p Fy(')630 1934 y(pre\014x,)j(if)55 b(an)m(y)-8 b(.)118 b(If)56 b(that)h(name)f(is)f(not)h(found,)62 b(or)56 b(if)f(`)p Fq(-B)p Fy(')h(w)m(as)g(not)g(sp)s(eci\014ed,)630 2043 y(the)66 b(driv)m(er)f(tries)g(t)m(w)m(o)j(standard)d(pre\014xes,) 74 b(whic)m(h)65 b(are)i(`)p Fq(/usr/lib/gcc/)p Fy(')c(and)630 2153 y(`)p Fq(/usr/local/lib/gcc-lib/)p Fy('.)70 b(If)41 b(neither)g(of)h(those)h(results)d(in)h(a)h(\014le)f(name)h(that)630 2263 y(is)d(found,)j(the)e(unmo)s(di\014ed)d(program)j(name)h(is)e (searc)m(hed)i(for)f(using)e(the)j(directories)630 2372 y(sp)s(eci\014ed)29 b(in)g(y)m(our)h Fq(PATH)f Fy(en)m(vironmen)m(t)h (v)-5 b(ariable.)630 2528 y(The)43 b(compiler)g(will)e(c)m(hec)m(k)k (to)g(see)f(if)f(the)h(path)g(pro)m(vided)e(b)m(y)i(the)g(`)p Fq(-B)p Fy(')g(refers)f(to)i(a)630 2637 y(directory)-8 b(,)27 b(and)f(if)f(necessary)h(it)g(will)d(add)i(a)i(directory)e (separator)i(c)m(haracter)h(at)e(the)h(end)630 2747 y(of)k(the)f(path.) 630 2902 y(`)p Fq(-B)p Fy(')35 b(pre\014xes)g(that)h(e\013ectiv)m(ely)g (sp)s(ecify)f(directory)g(names)g(also)g(apply)f(to)j(libraries)32 b(in)630 3012 y(the)37 b(link)m(er,)f(b)s(ecause)h(the)f(compiler)f (translates)i(these)g(options)f(in)m(to)g(`)p Fq(-L)p Fy(')g(options)g(for)630 3121 y(the)h(link)m(er.)58 b(They)36 b(also)h(apply)e(to)j(includes)c(\014les)i(in)f(the)i(prepro)s(cessor,) h(b)s(ecause)f(the)630 3231 y(compiler)29 b(translates)i(these)g (options)f(in)m(to)h(`)p Fq(-isystem)p Fy(')e(options)h(for)h(the)g (prepro)s(cessor.)630 3340 y(In)f(this)f(case,)j(the)e(compiler)f(app)s (ends)g(`)p Fq(include)p Fy(')g(to)i(the)f(pre\014x.)630 3496 y(The)38 b(run-time)f(supp)s(ort)f(\014le)h(`)p Fq(libgcc.a)p Fy(')g(can)h(also)h(b)s(e)e(searc)m(hed)i(for)f(using)f (the)h(`)p Fq(-B)p Fy(')630 3605 y(pre\014x,)33 b(if)g(needed.)50 b(If)33 b(it)g(is)f(not)i(found)e(there,)j(the)f(t)m(w)m(o)g(standard)f (pre\014xes)g(ab)s(o)m(v)m(e)i(are)630 3715 y(tried,)e(and)f(that)h(is) f(all.)46 b(The)33 b(\014le)e(is)h(left)h(out)f(of)h(the)g(link)e(if)h (it)g(is)f(not)i(found)f(b)m(y)g(those)630 3824 y(means.)630 3980 y(Another)39 b(w)m(a)m(y)h(to)g(sp)s(ecify)e(a)h(pre\014x)f(m)m (uc)m(h)h(lik)m(e)g(the)g(`)p Fq(-B)p Fy(')g(pre\014x)f(is)g(to)i(use)f (the)g(en)m(vi-)630 4089 y(ronmen)m(t)27 b(v)-5 b(ariable)26 b Fq(GCC_EXEC_PREFIX)p Fy(.)36 b(See)27 b(Section)g(3.19)i([En)m (vironmen)m(t)d(V)-8 b(ariables],)630 4199 y(page)31 b(145.)630 4354 y(As)f(a)g(sp)s(ecial)e(kludge,)h(if)f(the)i(path)g (pro)m(vided)e(b)m(y)h(`)p Fq(-B)p Fy(')h(is)e(`)p Fq([dir/]stage)p Fn(N)10 b Fq(/)p Fy(',)28 b(where)h Fn(N)630 4464 y Fy(is)k(a)h(n)m(um) m(b)s(er)e(in)g(the)i(range)g(0)g(to)g(9,)h(then)e(it)g(will)e(b)s(e)i (replaced)g(b)m(y)h(`)p Fq([dir/]include)p Fy('.)630 4573 y(This)29 b(is)g(to)i(help)e(with)g(b)s(o)s(ot-strapping)g(the)i (compiler.)150 4774 y Fq(-specs=)p Fn(\014le)630 4884 y Fy(Pro)s(cess)38 b Fn(\014le)k Fy(after)d(the)g(compiler)d(reads)i (in)f(the)i(standard)e(`)p Fq(specs)p Fy(')g(\014le,)j(in)c(order)i(to) 630 4994 y(o)m(v)m(erride)25 b(the)g(defaults)f(that)h(the)g(`)p Fq(gcc)p Fy(')f(driv)m(er)g(program)g(uses)h(when)e(determining)g(what) 630 5103 y(switc)m(hes)i(to)h(pass)g(to)g(`)p Fq(cc1)p Fy(',)g(`)p Fq(cc1plus)p Fy(',)f(`)p Fq(as)p Fy(',)i(`)p Fq(ld)p Fy(',)g(etc.)40 b(More)26 b(than)f(one)h(`)p Fq(-specs=)p Fn(\014le)5 b Fy(')630 5213 y(can)36 b(b)s(e)f(sp)s (eci\014ed)g(on)g(the)h(command)g(line,)g(and)f(they)h(are)g(pro)s (cessed)g(in)e(order,)j(from)630 5322 y(left)30 b(to)h(righ)m(t.)p eop %%Page: 73 83 73 82 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(73)150 166 y Fs(3.15)68 b(Sp)t(ecifying)45 b(subpro)t(cesses)g(and)g(the)g(switc)l(hes)h(to)f(pass)g(to)456 299 y(them)275 502 y Fq(gcc)33 b Fy(is)f(a)j(driv)m(er)d(program.)51 b(It)34 b(p)s(erforms)f(its)g(job)h(b)m(y)f(in)m(v)m(oking)h(a)g (sequence)g(of)g(other)g(programs)150 612 y(to)41 b(do)f(the)h(w)m(ork) f(of)h(compiling,)g(assem)m(bling)e(and)g(linking.)68 b(GCC)40 b(in)m(terprets)g(its)f(command-line)150 722 y(parameters)24 b(and)f(uses)h(these)g(to)h(deduce)e(whic)m(h)g (programs)g(it)h(should)e(in)m(v)m(ok)m(e,)k(and)d(whic)m(h)g(command-) 150 831 y(line)31 b(options)g(it)h(ough)m(t)h(to)g(place)f(on)g(their)f (command)h(lines.)44 b(This)31 b(b)s(eha)m(vior)g(is)g(con)m(trolled)h (b)m(y)g Fn(sp)s(ec)150 941 y(strings)p Fy(.)41 b(In)30 b(most)i(cases)g(there)f(is)f(one)h(sp)s(ec)g(string)e(for)i(eac)m(h)h (program)f(that)h(GCC)e(can)h(in)m(v)m(ok)m(e,)i(but)150 1050 y(a)d(few)g(programs)f(ha)m(v)m(e)i(m)m(ultiple)c(sp)s(ec)j (strings)e(to)j(con)m(trol)f(their)e(b)s(eha)m(vior.)40 b(The)29 b(sp)s(ec)h(strings)e(built)150 1160 y(in)m(to)h(GCC)g(can)h (b)s(e)e(o)m(v)m(erridden)h(b)m(y)g(using)f(the)h(`)p Fq(-specs=)p Fy(')f(command-line)g(switc)m(h)h(to)h(sp)s(ecify)e(a)h (sp)s(ec)150 1269 y(\014le.)275 1415 y Fn(Sp)s(ec)34 b(\014les)j Fy(are)f(plain)m(text)e(\014les)g(that)h(are)h(used)e(to)i (construct)f(sp)s(ec)f(strings.)54 b(They)34 b(consist)g(of)i(a)150 1524 y(sequence)31 b(of)g(directiv)m(es)f(separated)h(b)m(y)f(blank)f (lines.)40 b(The)30 b(t)m(yp)s(e)h(of)f(directiv)m(e)g(is)g(determined) f(b)m(y)i(the)150 1634 y(\014rst)f(non-whitespace)f(c)m(haracter)j(on)f (the)f(line)f(and)h(it)g(can)g(b)s(e)g(one)h(of)f(the)h(follo)m(wing:) 150 1810 y Fq(\045)p Fn(command)630 1919 y Fy(Issues)i(a)h Fn(command)j Fy(to)d(the)g(sp)s(ec)g(\014le)e(pro)s(cessor.)51 b(The)33 b(commands)g(that)i(can)f(app)s(ear)630 2029 y(here)c(are:)630 2199 y Fq(\045include)e(<)p Fn(\014le)5 b Fq(>)1110 2309 y Fy(Searc)m(h)32 b(for)g Fn(\014le)37 b Fy(and)31 b(insert)g(its)h(text)h(at)g(the)f(curren)m(t)g(p)s(oin)m (t)f(in)g(the)h(sp)s(ecs)1110 2418 y(\014le.)630 2588 y Fq(\045include_noerr)26 b(<)p Fn(\014le)5 b Fq(>)1110 2698 y Fy(Just)35 b(lik)m(e)g(`)p Fq(\045include)p Fy(',)h(but)f(do)g (not)h(generate)h(an)f(error)f(message)i(if)e(the)1110 2808 y(include)28 b(\014le)i(cannot)h(b)s(e)e(found.)630 2978 y Fq(\045rename)f Fn(old)p 1121 2978 28 4 v 32 w(name)36 b(new)p 1558 2978 V 32 w(name)1110 3087 y Fy(Rename)31 b(the)f(sp)s(ec)g(string)g Fn(old)p 2202 3087 V 32 w(name)35 b Fy(to)c Fn(new)p 2749 3087 V 33 w(name)p Fy(.)150 3258 y Fq(*[)p Fn(sp)s(ec)p 421 3258 V 32 w(name)5 b Fq(]:)630 3367 y Fy(This)29 b(tells)h(the)h(compiler)f(to)h(create,)i(o)m(v)m (erride)e(or)g(delete)g(the)g(named)g(sp)s(ec)f(string.)41 b(All)630 3477 y(lines)35 b(after)i(this)e(directiv)m(e)h(up)f(to)j (the)e(next)h(directiv)m(e)f(or)g(blank)f(line)g(are)i(considered)630 3586 y(to)f(b)s(e)f(the)h(text)g(for)f(the)h(sp)s(ec)f(string.)55 b(If)35 b(this)f(results)g(in)g(an)h(empt)m(y)h(string)f(then)g(the)630 3696 y(sp)s(ec)24 b(will)e(b)s(e)i(deleted.)39 b(\(Or,)26 b(if)d(the)i(sp)s(ec)f(did)f(not)i(exist,)h(then)e(nothing)g(will)e (happ)s(ened.\))630 3806 y(Otherwise,)j(if)f(the)h(sp)s(ec)g(do)s(es)g (not)g(curren)m(tly)f(exist)h(a)g(new)g(sp)s(ec)f(will)f(b)s(e)h (created.)40 b(If)25 b(the)630 3915 y(sp)s(ec)h(do)s(es)g(exist)h(then) f(its)g(con)m(ten)m(ts)i(will)c(b)s(e)i(o)m(v)m(erridden)g(b)m(y)g(the) h(text)h(of)f(this)e(directiv)m(e,)630 4025 y(unless)g(the)i(\014rst)f (c)m(haracter)j(of)e(that)g(text)h(is)e(the)h(`)p Fq(+)p Fy(')g(c)m(haracter,)i(in)d(whic)m(h)f(case)j(the)f(text)630 4134 y(will)h(b)s(e)h(app)s(ended)g(to)i(the)g(sp)s(ec.)150 4305 y Fq([)p Fn(su\016x)6 b Fq(]:)119 b Fy(Creates)33 b(a)g(new)e(`)p Fq([)p Fn(su\016x)6 b Fq(])30 b(spec)p Fy(')h(pair.)45 b(All)31 b(lines)g(after)i(this)e(directiv)m(e)h(and)f (up)h(to)h(the)630 4414 y(next)i(directiv)m(e)f(or)g(blank)f(line)g (are)h(considered)g(to)h(mak)m(e)g(up)f(the)g(sp)s(ec)g(string)g(for)g (the)630 4524 y(indicated)g(su\016x.)55 b(When)35 b(the)h(compiler)e (encoun)m(ters)h(an)h(input)d(\014le)i(with)f(the)h(named)630 4633 y(su\016x,)27 b(it)f(will)e(pro)s(cesses)i(the)h(sp)s(ec)f(string) g(in)f(order)h(to)h(w)m(ork)g(out)g(ho)m(w)f(to)i(compile)d(that)630 4743 y(\014le.)40 b(F)-8 b(or)31 b(example:)870 4877 y Fq(.ZZ:)870 4981 y(z-compile)45 b(-input)h(\045i)630 5121 y Fy(This)27 b(sa)m(ys)i(that)h(an)m(y)f(input)d(\014le)i(whose)h (name)g(ends)e(in)h(`)p Fq(.ZZ)p Fy(')g(should)f(b)s(e)h(passed)g(to)i (the)630 5230 y(program)i(`)p Fq(z-compile)p Fy(',)f(whic)m(h)g(should) f(b)s(e)i(in)m(v)m(ok)m(ed)g(with)f(the)i(command-line)d(switc)m(h)630 5340 y(`)p Fq(-input)p Fy(')f(and)h(with)f(the)i(result)e(of)h(p)s (erforming)f(the)h(`)p Fq(\045i)p Fy(')g(substitution.)39 b(\(See)31 b(b)s(elo)m(w.\))p eop %%Page: 74 84 74 83 bop 150 -116 a Fy(74)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(As)35 b(an)g(alternativ)m(e)g(to)h(pro) m(viding)d(a)i(sp)s(ec)g(string,)g(the)h(text)g(that)f(follo)m(ws)f(a)i (su\016x)e(di-)630 408 y(rectiv)m(e)d(can)g(b)s(e)f(one)g(of)h(the)f (follo)m(wing:)630 583 y Fq(@)p Fn(language)84 b Fy(This)31 b(sa)m(ys)i(that)g(the)g(su\016x)f(is)g(an)g(alias)g(for)h(a)g(kno)m (wn)f Fn(language)p Fy(.)48 b(This)31 b(is)1110 692 y(similar)c(to)j (using)e(the)i(`)p Fq(-x)p Fy(')g(command-line)e(switc)m(h)h(to)h(GCC)f (to)h(sp)s(ecify)f(a)1110 802 y(language)i(explicitly)-8 b(.)39 b(F)-8 b(or)31 b(example:)1350 938 y Fq(.ZZ:)1350 1042 y(@c++)1110 1183 y Fy(Sa)m(ys)g(that)g(.ZZ)e(\014les)h(are,)h(in)e (fact,)i(C)p Fq(++)f Fy(source)g(\014les.)630 1358 y Fq(#)p Fn(name)220 b Fy(This)29 b(causes)h(an)h(error)f(messages)h(sa)m (ying:)1350 1494 y Fn(name)53 b Fq(compiler)45 b(not)i(installed)f(on)h (this)f(system.)630 1668 y Fy(GCC)34 b(already)h(has)g(an)f(extensiv)m (e)i(list)d(of)i(su\016xes)g(built)d(in)m(to)j(it.)54 b(This)33 b(directiv)m(e)i(will)630 1777 y(add)26 b(an)h(en)m(try)g(to) h(the)f(end)f(of)h(the)g(list)f(of)h(su\016xes,)g(but)f(since)g(the)i (list)d(is)h(searc)m(hed)h(from)630 1887 y(the)g(end)g(bac)m(kw)m (ards,)i(it)d(is)h(e\013ectiv)m(ely)h(p)s(ossible)d(to)j(o)m(v)m (erride)f(earlier)f(en)m(tries)h(using)f(this)630 1996 y(tec)m(hnique.)275 2178 y(GCC)j(has)i(the)f(follo)m(wing)f(sp)s(ec)h (strings)f(built)f(in)m(to)j(it.)40 b(Sp)s(ec)30 b(\014les)f(can)h(o)m (v)m(erride)h(these)g(strings)e(or)150 2288 y(create)35 b(their)e(o)m(wn.)51 b(Note)35 b(that)g(individual)29 b(targets)35 b(can)f(also)g(add)f(their)g(o)m(wn)h(sp)s(ec)f(strings)g (to)h(this)150 2397 y(list.)390 2541 y Fq(asm)476 b(Options)46 b(to)h(pass)g(to)g(the)g(assembler)390 2644 y(asm_final)188 b(Options)46 b(to)h(pass)g(to)g(the)g(assembler)e(post-processor)390 2748 y(cpp)476 b(Options)46 b(to)h(pass)g(to)g(the)g(C)h(preprocessor) 390 2852 y(cc1)476 b(Options)46 b(to)h(pass)g(to)g(the)g(C)h(compiler) 390 2956 y(cc1plus)284 b(Options)46 b(to)h(pass)g(to)g(the)g(C++)g (compiler)390 3059 y(endfile)284 b(Object)47 b(files)f(to)h(include)f (at)h(the)g(end)g(of)g(the)g(link)390 3163 y(link)428 b(Options)46 b(to)h(pass)g(to)g(the)g(linker)390 3267 y(lib)476 b(Libraries)46 b(to)h(include)f(on)h(the)g(command)f(line)g (to)h(the)g(linker)390 3371 y(libgcc)332 b(Decides)46 b(which)h(GCC)g(support)e(library)h(to)h(pass)g(to)g(the)g(linker)390 3475 y(linker)332 b(Sets)47 b(the)g(name)g(of)g(the)g(linker)390 3578 y(predefines)140 b(Defines)46 b(to)h(be)h(passed)e(to)h(the)g(C)g (preprocessor)390 3682 y(signed_char)92 b(Defines)46 b(to)h(pass)g(to)g(CPP)g(to)g(say)g(whether)f(char)h(is)g(signed)1010 3786 y(by)h(default)390 3890 y(startfile)188 b(Object)47 b(files)f(to)h(include)f(at)h(the)g(start)f(of)i(the)e(link)275 4039 y Fy(Here)30 b(is)g(a)h(small)d(example)j(of)f(a)h(sp)s(ec)f (\014le:)390 4182 y Fq(\045rename)46 b(lib)810 b(old_lib)390 4390 y(*lib:)390 4494 y(--start-group)44 b(-lgcc)j(-lc)f(-leval1)g (--end-group)f(\045\(old_lib\))275 4643 y Fy(This)23 b(example)j(renames)f(the)h(sp)s(ec)g(called)e(`)p Fq(lib)p Fy(')i(to)g(`)p Fq(old_lib)p Fy(')e(and)i(then)f(o)m(v)m(errides)h(the) f(previous)150 4752 y(de\014nition)33 b(of)j(`)p Fq(lib)p Fy(')f(with)f(a)i(new)f(one.)56 b(The)35 b(new)g(de\014nition)e(adds)i (in)f(some)i(extra)g(command-line)150 4862 y(options)30 b(b)s(efore)g(including)d(the)j(text)i(of)e(the)h(old)e(de\014nition.) 275 5011 y Fn(Sp)s(ec)42 b(strings)k Fy(are)e(a)g(list)e(of)h (command-line)f(options)h(to)h(b)s(e)f(passed)f(to)j(their)d(corresp)s (onding)150 5121 y(program.)79 b(In)43 b(addition,)i(the)e(sp)s(ec)g (strings)f(can)i(con)m(tain)g(`)p Fq(\045)p Fy('-pre\014xed)e (sequences)i(to)g(substitute)150 5230 y(v)-5 b(ariable)30 b(text)h(or)g(to)h(conditionally)c(insert)h(text)j(in)m(to)f(the)g (command)f(line.)41 b(Using)29 b(these)j(constructs)150 5340 y(it)e(is)f(p)s(ossible)f(to)j(generate)h(quite)e(complex)g (command)g(lines.)p eop %%Page: 75 85 75 84 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(75)275 299 y(Here)38 b(is)g(a)g(table)h(of)f(all)f (de\014ned)g(`)p Fq(\045)p Fy('-sequences)i(for)f(sp)s(ec)g(strings.)64 b(Note)39 b(that)g(spaces)g(are)g(not)150 408 y(generated)f (automatically)g(around)e(the)h(results)f(of)i(expanding)e(these)i (sequences.)61 b(Therefore)38 b(y)m(ou)150 518 y(can)31 b(concatenate)i(them)d(together)i(or)e(com)m(bine)g(them)h(with)e (constan)m(t)i(text)h(in)d(a)i(single)e(argumen)m(t.)150 692 y Fq(\045\045)384 b Fy(Substitute)29 b(one)i(`)p Fq(\045)p Fy(')f(in)m(to)g(the)h(program)f(name)h(or)f(argumen)m(t.)150 861 y Fq(\045i)384 b Fy(Substitute)29 b(the)h(name)h(of)f(the)h(input)d (\014le)i(b)s(eing)f(pro)s(cessed.)150 1030 y Fq(\045b)384 b Fy(Substitute)25 b(the)h(basename)g(of)g(the)h(input)d(\014le)h(b)s (eing)g(pro)s(cessed.)38 b(This)25 b(is)g(the)h(substring)630 1139 y(up)j(to)i(\(and)g(not)f(including\))d(the)k(last)f(p)s(erio)s(d) e(and)i(not)h(including)c(the)j(directory)-8 b(.)150 1308 y Fq(\045B)384 b Fy(This)29 b(is)g(the)i(same)f(as)h(`)p Fq(\045b)p Fy(',)f(but)g(include)e(the)j(\014le)e(su\016x)h(\(text)h (after)g(the)g(last)f(p)s(erio)s(d\).)150 1477 y Fq(\045d)384 b Fy(Marks)30 b(the)g(argumen)m(t)g(con)m(taining)f(or)h(follo)m(wing)e (the)i(`)p Fq(\045d)p Fy(')g(as)f(a)i(temp)s(orary)e(\014le)g(name,)630 1587 y(so)42 b(that)h(that)g(\014le)e(will)f(b)s(e)h(deleted)h(if)f (GCC)h(exits)g(successfully)-8 b(.)75 b(Unlik)m(e)41 b(`)p Fq(\045g)p Fy(',)k(this)630 1696 y(con)m(tributes)30 b(no)g(text)i(to)f(the)f(argumen)m(t.)150 1865 y Fq(\045g)p Fn(su\016x)173 b Fy(Substitute)25 b(a)j(\014le)d(name)i(that)h(has)e (su\016x)g Fn(su\016x)32 b Fy(and)27 b(is)e(c)m(hosen)j(once)f(p)s(er)f (compilation,)630 1975 y(and)h(mark)h(the)g(argumen)m(t)g(in)f(the)h (same)g(w)m(a)m(y)h(as)f(`)p Fq(\045d)p Fy('.)40 b(T)-8 b(o)28 b(reduce)g(exp)s(osure)f(to)h(denial-)630 2084 y(of-service)j(attac)m(ks,)j(the)d(\014le)f(name)h(is)f(no)m(w)h(c)m (hosen)g(in)f(a)h(w)m(a)m(y)h(that)f(is)f(hard)g(to)i(predict)630 2194 y(ev)m(en)41 b(when)d(previously)g(c)m(hosen)i(\014le)f(names)h (are)g(kno)m(wn.)69 b(F)-8 b(or)40 b(example,)i(`)p Fq(\045g.s)30 b(...)630 2304 y(\045g.o)f(...)h(\045g.s)p Fy(')21 b(migh)m(t)h(turn)g (in)m(to)g(`)p Fq(ccUVUUAU.s)28 b(ccXYAXZ12.o)f(ccUVUUAU.s)p Fy('.)36 b Fn(su\016x)630 2413 y Fy(matc)m(hes)41 b(the)f(regexp)g(`)p Fq([.A-Za-z]*)p Fy(')d(or)j(the)g(sp)s(ecial)e(string)h(`)p Fq(\045O)p Fy(',)j(whic)m(h)c(is)h(treated)630 2523 y(exactly)24 b(as)f(if)e(`)p Fq(\045O)p Fy(')i(had)f(b)s(een)g(prepro)s(cessed.)37 b(Previously)-8 b(,)23 b(`)p Fq(\045g)p Fy(')g(w)m(as)g(simply)e (substituted)630 2632 y(with)28 b(a)h(\014le)f(name)i(c)m(hosen)f(once) h(p)s(er)e(compilation,)g(without)g(regard)h(to)h(an)m(y)g(app)s(ended) 630 2742 y(su\016x)24 b(\(whic)m(h)g(w)m(as)h(therefore)h(treated)g (just)e(lik)m(e)h(ordinary)e(text\),)28 b(making)c(suc)m(h)h(attac)m (ks)630 2851 y(more)31 b(lik)m(ely)d(to)k(succeed.)150 3020 y Fq(\045u)p Fn(su\016x)173 b Fy(Lik)m(e)23 b(`)p Fq(\045g)p Fy(',)i(but)d(generates)j(a)f(new)f(temp)s(orary)f(\014le)h (name)g(ev)m(en)h(if)e(`)p Fq(\045u)p Fn(su\016x)6 b Fy(')23 b(w)m(as)g(already)630 3130 y(seen.)150 3299 y Fq(\045U)p Fn(su\016x)173 b Fy(Substitutes)25 b(the)j(last)e(\014le)h (name)g(generated)h(with)d(`)p Fq(\045u)p Fn(su\016x)6 b Fy(',)27 b(generating)h(a)f(new)g(one)g(if)630 3409 y(there)j(is)e(no)i(suc)m(h)f(last)g(\014le)g(name.)40 b(In)29 b(the)g(absence)h(of)g(an)m(y)g(`)p Fq(\045u)p Fn(su\016x)6 b Fy(',)29 b(this)f(is)h(just)g(lik)m(e)630 3518 y(`)p Fq(\045g)p Fn(su\016x)6 b Fy(',)26 b(except)h(they)f(don't)g (share)f(the)h(same)g(su\016x)f Fr(sp)-5 b(ac)g(e)p Fy(,)29 b(so)d(`)p Fq(\045g.s)j(...)h(\045U.s)f(...)630 3628 y(\045g.s)g(...)h(\045U.s)p Fy(')d(w)m(ould)g(in)m(v)m(olv)m(e)i(the)f (generation)h(of)f(t)m(w)m(o)i(distinct)c(\014le)i(names,)h(one)f(for) 630 3737 y(eac)m(h)d(`)p Fq(\045g.s)p Fy(')e(and)g(another)g(for)h(eac) m(h)h(`)p Fq(\045U.s)p Fy('.)37 b(Previously)-8 b(,)24 b(`)p Fq(\045U)p Fy(')f(w)m(as)h(simply)e(substituted)630 3847 y(with)30 b(a)i(\014le)e(name)h(c)m(hosen)h(for)f(the)h(previous)e (`)p Fq(\045u)p Fy(',)h(without)g(regard)g(to)h(an)m(y)g(app)s(ended) 630 3956 y(su\016x.)150 4125 y Fq(\045j)p Fn(SUFFIX)630 4235 y Fy(Substitutes)27 b(the)h(name)g(of)h(the)f Fq(HOST_BIT_BUCKET)p Fy(,)d(if)i(an)m(y)-8 b(,)30 b(and)d(if)g(it)h(is)f(writable,)h(and)630 4345 y(if)e(sa)m(v)m(e-temps)j(is)e(o\013;)h(otherwise,)g(substitute)e (the)i(name)f(of)g(a)h(temp)s(orary)f(\014le,)g(just)g(lik)m(e)630 4454 y(`)p Fq(\045u)p Fy('.)58 b(This)34 b(temp)s(orary)i(\014le)f(is)g (not)i(mean)m(t)g(for)f(comm)m(unication)f(b)s(et)m(w)m(een)i(pro)s (cesses,)630 4564 y(but)30 b(rather)g(as)h(a)f(junk)f(disp)s(osal)f (mec)m(hanism.)150 4733 y Fq(\045.)p Fn(SUFFIX)630 4842 y Fy(Substitutes)42 b Fn(.SUFFIX)53 b Fy(for)44 b(the)g(su\016xes)f(of) g(a)h(matc)m(hed)h(switc)m(h's)e(args)h(when)f(it)g(is)630 4952 y(subsequen)m(tly)28 b(output)h(with)f(`)p Fq(\045*)p Fy('.)40 b Fn(SUFFIX)f Fy(is)28 b(terminated)h(b)m(y)g(the)g(next)h (space)g(or)f(\045.)150 5121 y Fq(\045w)384 b Fy(Marks)33 b(the)f(argumen)m(t)h(con)m(taining)f(or)g(follo)m(wing)f(the)i(`)p Fq(\045w)p Fy(')f(as)h(the)f(designated)g(output)630 5230 y(\014le)26 b(of)g(this)f(compilation.)38 b(This)25 b(puts)h(the)g(argumen)m(t)h(in)m(to)g(the)f(sequence)h(of)g(argumen)m (ts)630 5340 y(that)k(`)p Fq(\045o)p Fy(')f(will)e(substitute)h(later.) p eop %%Page: 76 86 76 85 bop 150 -116 a Fy(76)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(\045o)384 b Fy(Substitutes)29 b(the)i(names)g(of)g(all)f(the)h(output)g(\014les,)f(with)f(spaces)j (automatically)e(placed)630 408 y(around)25 b(them.)39 b(Y)-8 b(ou)27 b(should)d(write)h(spaces)h(around)f(the)h(`)p Fq(\045o)p Fy(')g(as)h(w)m(ell)e(or)h(the)g(results)f(are)630 518 y(unde\014ned.)41 b(`)p Fq(\045o)p Fy(')31 b(is)f(for)h(use)g(in)f (the)i(sp)s(ecs)e(for)h(running)e(the)i(link)m(er.)42 b(Input)30 b(\014les)g(whose)630 628 y(names)h(ha)m(v)m(e)h(no)e (recognized)h(su\016x)f(are)h(not)g(compiled)e(at)j(all,)e(but)g(they)h (are)g(included)630 737 y(among)g(the)f(output)g(\014les,)g(so)h(they)f (will)e(b)s(e)i(link)m(ed.)150 899 y Fq(\045O)384 b Fy(Substitutes)29 b(the)j(su\016x)e(for)h(ob)5 b(ject)32 b(\014les.)42 b(Note)32 b(that)g(this)e(is)g(handled)f(sp)s(ecially)g(when)630 1008 y(it)35 b(immediately)f(follo)m(ws)g(`)p Fq(\045g,)c(\045u,)g(or)f (\045U)p Fy(',)37 b(b)s(ecause)e(of)h(the)g(need)f(for)g(those)h(to)g (form)630 1118 y(complete)f(\014le)f(names.)55 b(The)34 b(handling)e(is)i(suc)m(h)h(that)g(`)p Fq(\045O)p Fy(')g(is)f(treated)i (exactly)f(as)h(if)d(it)630 1228 y(had)38 b(already)h(b)s(een)g (substituted,)g(except)h(that)g(`)p Fq(\045g,)30 b(\045u,)f(and)h (\045U)p Fy(')39 b(do)g(not)g(curren)m(tly)630 1337 y(supp)s(ort)30 b(additional)g Fn(su\016x)37 b Fy(c)m(haracters)c(follo)m(wing)e(`)p Fq(\045O)p Fy(')g(as)i(they)f(w)m(ould)e(follo)m(wing,)h(for)630 1447 y(example,)f(`)p Fq(.o)p Fy('.)150 1608 y Fq(\045p)384 b Fy(Substitutes)33 b(the)i(standard)f(macro)h(prede\014nitions)c(for)k (the)f(curren)m(t)h(target)h(mac)m(hine.)630 1718 y(Use)31 b(this)e(when)g(running)f Fq(cpp)p Fy(.)150 1879 y Fq(\045P)384 b Fy(Lik)m(e)37 b(`)p Fq(\045p)p Fy(',)j(but)d(puts)g(`)p Fq(__)p Fy(')g(b)s(efore)g(and)g(after)h(the)g(name)g(of)f(eac)m(h)i (prede\014ned)d(macro,)630 1989 y(except)i(for)f(macros)h(that)g(start) g(with)e(`)p Fq(__)p Fy(')h(or)h(with)e(`)p Fq(_)p Fn(L)p Fy(',)j(where)e Fn(L)g Fy(is)g(an)g(upp)s(ercase)630 2098 y(letter.)k(This)29 b(is)g(for)h(ISO)g(C.)150 2260 y Fq(\045I)384 b Fy(Substitute)29 b(a)i(`)p Fq(-iprefix)p Fy(')d(option)i(made)h(from)e Fq(GCC_EXEC_PREFIX)p Fy(.)150 2421 y Fq(\045s)384 b Fy(Curren)m(t)31 b(argumen)m(t)h(is)e(the)i(name) g(of)g(a)g(library)d(or)i(startup)h(\014le)e(of)i(some)g(sort.)45 b(Searc)m(h)630 2531 y(for)28 b(that)h(\014le)e(in)g(a)i(standard)e (list)g(of)h(directories)g(and)f(substitute)g(the)i(full)d(name)i (found.)150 2693 y Fq(\045e)p Fn(str)277 b Fy(Prin)m(t)33 b Fn(str)41 b Fy(as)34 b(an)g(error)g(message.)54 b Fn(str)40 b Fy(is)33 b(terminated)h(b)m(y)g(a)h(newline.)50 b(Use)35 b(this)e(when)630 2802 y(inconsisten)m(t)c(options)h(are)h(detected.) 150 2964 y Fq(\045|)384 b Fy(Output)29 b(`)p Fq(-)p Fy(')i(if)e(the)i (input)d(for)i(the)h(curren)m(t)f(command)g(is)g(coming)g(from)g(a)g (pip)s(e.)150 3125 y Fq(\045\()p Fn(name)5 b Fq(\))119 b Fy(Substitute)29 b(the)h(con)m(ten)m(ts)j(of)d(sp)s(ec)g(string)f Fn(name)36 b Fy(at)31 b(this)e(p)s(oin)m(t.)150 3287 y Fq(\045[)p Fn(name)5 b Fq(])119 b Fy(Lik)m(e)30 b(`)p Fq(\045\(...)o(\))p Fy(')g(but)g(put)g(`)p Fq(__)p Fy(')g(around)f(`)p Fq(-D)p Fy(')i(argumen)m(ts.)150 3448 y Fq(\045x{)p Fn(option)p Fq(})630 3558 y Fy(Accum)m(ulate)g(an)f(option)g(for)g(`)p Fq(\045X)p Fy('.)150 3719 y Fq(\045X)384 b Fy(Output)29 b(the)i(accum)m(ulated)g(link)m(er)d(options)i(sp)s(eci\014ed)f(b)m(y)h (`)p Fq(-Wl)p Fy(')g(or)g(a)h(`)p Fq(\045x)p Fy(')f(sp)s(ec)g(string.) 150 3881 y Fq(\045Y)384 b Fy(Output)29 b(the)i(accum)m(ulated)g(assem)m (bler)e(options)h(sp)s(eci\014ed)f(b)m(y)h(`)p Fq(-Wa)p Fy('.)150 4042 y Fq(\045Z)384 b Fy(Output)29 b(the)i(accum)m(ulated)g (prepro)s(cessor)e(options)h(sp)s(eci\014ed)e(b)m(y)j(`)p Fq(-Wp)p Fy('.)150 4204 y Fq(\045v1)336 b Fy(Substitute)29 b(the)h(ma)5 b(jor)31 b(v)m(ersion)f(n)m(um)m(b)s(er)f(of)h(GCC.)41 b(\(F)-8 b(or)31 b(v)m(ersion)f(2.9.5,)i(this)e(is)f(2.\))150 4365 y Fq(\045v2)336 b Fy(Substitute)29 b(the)h(minor)f(v)m(ersion)h(n) m(um)m(b)s(er)f(of)i(GCC.)40 b(\(F)-8 b(or)32 b(v)m(ersion)d(2.9.5,)k (this)c(is)h(9.\))150 4527 y Fq(\045v3)336 b Fy(Substitute)29 b(the)h(patc)m(h)h(lev)m(el)g(n)m(um)m(b)s(er)e(of)h(GCC.)40 b(\(F)-8 b(or)32 b(v)m(ersion)e(2.9.5,)i(this)d(is)h(5.\))150 4688 y Fq(\045a)384 b Fy(Pro)s(cess)28 b(the)g Fq(asm)f Fy(sp)s(ec.)40 b(This)26 b(is)h(used)g(to)i(compute)f(the)g(switc)m (hes)g(to)g(b)s(e)g(passed)f(to)i(the)630 4798 y(assem)m(bler.)150 4959 y Fq(\045A)384 b Fy(Pro)s(cess)36 b(the)g Fq(asm_final)e Fy(sp)s(ec.)57 b(This)34 b(is)h(a)h(sp)s(ec)g(string)f(for)h(passing)f (switc)m(hes)g(to)i(an)630 5069 y(assem)m(bler)30 b(p)s(ost-pro)s (cessor,)g(if)f(suc)m(h)h(a)h(program)f(is)g(needed.)150 5230 y Fq(\045l)384 b Fy(Pro)s(cess)25 b(the)g Fq(link)f Fy(sp)s(ec.)38 b(This)24 b(is)g(the)h(sp)s(ec)f(for)h(computing)f(the)h (command)g(line)e(passed)630 5340 y(to)30 b(the)f(link)m(er.)38 b(T)m(ypically)28 b(it)g(will)e(mak)m(e)k(use)f(of)g(the)g(`)p Fq(\045L)h(\045G)g(\045S)g(\045D)f(and)h(\045E)p Fy(')e(sequences.)p eop %%Page: 77 87 77 86 bop 150 -116 a Fy(Chapter)30 b(3:)41 b(GCC)30 b(Command)f (Options)2057 b(77)150 299 y Fq(\045D)384 b Fy(Dump)38 b(out)h(a)g(`)p Fq(-L)p Fy(')f(option)h(for)f(eac)m(h)i(directory)e (that)h(GCC)g(b)s(eliev)m(es)e(migh)m(t)i(con)m(tain)630 408 y(startup)24 b(\014les.)38 b(If)24 b(the)h(target)h(supp)s(orts)d (m)m(ultilibs)e(then)k(the)g(curren)m(t)f(m)m(ultilib)d(directory)630 518 y(will)28 b(b)s(e)h(prep)s(ended)g(to)i(eac)m(h)g(of)g(these)g (paths.)150 681 y Fq(\045M)384 b Fy(Output)37 b(the)h(m)m(ultilib)d (directory)i(with)g(directory)h(separators)g(replaced)g(with)e(`)p Fq(_)p Fy('.)64 b(If)630 791 y(m)m(ultilib)27 b(directories)j(are)h (not)g(set,)h(or)f(the)g(m)m(ultilib)c(directory)j(is)g(`)p Fq(.)p Fy(')h(then)g(this)e(option)630 900 y(emits)h(nothing.)150 1063 y Fq(\045L)384 b Fy(Pro)s(cess)32 b(the)h Fq(lib)e Fy(sp)s(ec.)46 b(This)30 b(is)i(a)g(sp)s(ec)g(string)f(for)h(deciding)f (whic)m(h)g(libraries)e(should)630 1173 y(b)s(e)h(included)d(on)k(the)f (command)g(line)f(to)i(the)g(link)m(er.)150 1336 y Fq(\045G)384 b Fy(Pro)s(cess)26 b(the)h Fq(libgcc)e Fy(sp)s(ec.)39 b(This)25 b(is)h(a)g(sp)s(ec)h(string)e(for)h(deciding)f(whic)m(h)h (GCC)g(supp)s(ort)630 1445 y(library)i(should)g(b)s(e)i(included)e(on)i (the)h(command)f(line)e(to)k(the)e(link)m(er.)150 1608 y Fq(\045S)384 b Fy(Pro)s(cess)43 b(the)h Fq(startfile)c Fy(sp)s(ec.)79 b(This)42 b(is)g(a)i(sp)s(ec)e(for)h(deciding)f(whic)m (h)g(ob)5 b(ject)44 b(\014les)630 1718 y(should)39 b(b)s(e)g(the)i (\014rst)f(ones)g(passed)g(to)i(the)e(link)m(er.)70 b(T)m(ypically)38 b(this)i(migh)m(t)g(b)s(e)g(a)h(\014le)630 1827 y(named)30 b(`)p Fq(crt0.o)p Fy('.)150 1990 y Fq(\045E)384 b Fy(Pro)s(cess)36 b(the)f Fq(endfile)f Fy(sp)s(ec.)56 b(This)34 b(is)h(a)h(sp)s(ec)f (string)g(that)h(sp)s(eci\014es)f(the)h(last)f(ob)5 b(ject)630 2100 y(\014les)29 b(that)i(will)d(b)s(e)i(passed)g(to)h(the)f(link)m (er.)150 2263 y Fq(\045C)384 b Fy(Pro)s(cess)31 b(the)f Fq(cpp)g Fy(sp)s(ec.)42 b(This)28 b(is)i(used)g(to)i(construct)f(the)g (argumen)m(ts)f(to)i(b)s(e)e(passed)g(to)630 2372 y(the)h(C)f(prepro)s (cessor.)150 2535 y Fq(\045c)384 b Fy(Pro)s(cess)28 b(the)h Fq(signed_char)c Fy(sp)s(ec.)39 b(This)27 b(is)g(in)m(tended)g(to)i(b)s (e)f(used)f(to)i(tell)f(cpp)g(whether)630 2645 y(a)j(c)m(har)g(is)e (signed.)40 b(It)30 b(t)m(ypically)f(has)h(the)h(de\014nition:)870 2775 y Fq(\045{funsigned-char:-D__CHA)o(R_UN)o(SIGN)o(ED_)o(_})150 2938 y(\0451)384 b Fy(Pro)s(cess)28 b(the)h Fq(cc1)f Fy(sp)s(ec.)39 b(This)27 b(is)g(used)h(to)h(construct)g(the)g(options)f (to)h(b)s(e)f(passed)g(to)h(the)630 3048 y(actual)i(C)f(compiler)f(\(`) p Fq(cc1)p Fy('\).)150 3210 y Fq(\0452)384 b Fy(Pro)s(cess)34 b(the)f Fq(cc1plus)f Fy(sp)s(ec.)50 b(This)32 b(is)h(used)g(to)h (construct)g(the)g(options)f(to)h(b)s(e)f(passed)630 3320 y(to)e(the)g(actual)f(C)p Fq(++)g Fy(compiler)f(\(`)p Fq(cc1plus)p Fy('\).)150 3483 y Fq(\045*)384 b Fy(Substitute)34 b(the)h(v)-5 b(ariable)34 b(part)h(of)g(a)h(matc)m(hed)g(option.)54 b(See)35 b(b)s(elo)m(w.)55 b(Note)36 b(that)g(eac)m(h)630 3593 y(comma)31 b(in)e(the)i(substituted)e(string)g(is)g(replaced)h(b)m (y)g(a)h(single)e(space.)150 3755 y Fq(\045{S})288 b Fy(Substitutes)28 b(the)i Fq(-S)f Fy(switc)m(h,)g(if)g(that)h(switc)m (h)f(w)m(as)h(giv)m(en)g(to)g(GCC.)40 b(If)29 b(that)i(switc)m(h)e(w)m (as)630 3865 y(not)35 b(sp)s(eci\014ed,)g(this)f(substitutes)f (nothing.)54 b(Note)36 b(that)g(the)f(leading)f(dash)g(is)g(omitted)630 3975 y(when)28 b(sp)s(ecifying)e(this)i(option,)h(and)f(it)g(is)g (automatically)h(inserted)f(if)f(the)i(substitution)630 4084 y(is)37 b(p)s(erformed.)63 b(Th)m(us)37 b(the)h(sp)s(ec)g(string)f (`)p Fq(\045{foo})p Fy(')g(w)m(ould)g(matc)m(h)i(the)f(command-line)630 4194 y(option)30 b(`)p Fq(-foo)p Fy(')g(and)f(w)m(ould)g(output)h(the)h (command)f(line)f(option)h(`)p Fq(-foo)p Fy('.)150 4357 y Fq(\045W{S})240 b Fy(Lik)m(e)35 b(\045)p Fq({S})g Fy(but)g(mark)g (last)g(argumen)m(t)h(supplied)c(within)h(as)j(a)g(\014le)f(to)h(b)s(e) f(deleted)g(on)630 4466 y(failure.)150 4629 y Fq(\045{S*})240 b Fy(Substitutes)32 b(all)g(the)h(switc)m(hes)g(sp)s(eci\014ed)f(to)h (GCC)g(whose)g(names)g(start)h(with)e Fq(-S)p Fy(,)i(but)630 4739 y(whic)m(h)40 b(also)h(tak)m(e)i(an)e(argumen)m(t.)74 b(This)39 b(is)i(used)f(for)h(switc)m(hes)g(lik)m(e)g(`)p Fq(-o)p Fy(',)j(`)p Fq(-D)p Fy(',)g(`)p Fq(-I)p Fy(',)630 4848 y(etc.)k(GCC)32 b(considers)g(`)p Fq(-o)e(foo)p Fy(')i(as)h(b)s(eing)e(one)h(switc)m(h)g(whose)h(names)f(starts)h(with) f(`)p Fq(o)p Fy('.)630 4958 y(\045)p Fq({)p Fy(o*)p Fq(})39 b Fy(w)m(ould)e(substitute)h(this)f(text,)42 b(including)36 b(the)j(space.)66 b(Th)m(us)38 b(t)m(w)m(o)i(argumen)m(ts)630 5067 y(w)m(ould)29 b(b)s(e)h(generated.)150 5230 y Fq(\045{^S*})192 b Fy(Lik)m(e)34 b(\045)p Fq({S)p Fy(*)p Fq(})p Fy(,)g(but)f(don't)h (put)f(a)h(blank)e(b)s(et)m(w)m(een)j(a)f(switc)m(h)f(and)g(its)h (argumen)m(t.)51 b(Th)m(us)630 5340 y(\045)p Fq({^)p Fy(o*)p Fq(})30 b Fy(w)m(ould)f(only)h(generate)i(one)e(argumen)m(t,)h (not)g(t)m(w)m(o.)p eop %%Page: 78 88 78 87 bop 150 -116 a Fy(78)1763 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(\045{S*&T*})96 b Fy(Lik)m(e)39 b(\045)p Fq({S)p Fy(*)p Fq(})p Fy(,)i(but)e(preserv)m(e)h(order)e(of)i Fq(S)f Fy(and)g Fq(T)g Fy(options)f(\(the)i(order)f(of)h Fq(S)f Fy(and)f Fq(T)h Fy(in)630 408 y(the)31 b(sp)s(ec)f(is)g(not)h (signi\014can)m(t\).)42 b(There)30 b(can)h(b)s(e)f(an)m(y)h(n)m(um)m(b) s(er)f(of)h(amp)s(ersand-separated)630 518 y(v)-5 b(ariables;)29 b(for)g(eac)m(h)h(the)g(wild)d(card)i(is)f(optional.)40 b(Useful)28 b(for)h(CPP)g(as)g(`)p Fq(\045{D*&U*&A*})p Fy('.)150 685 y Fq(\045{)330 2614 y Fn(and)j Fq()d Fn(that)k(return)e (\015oating-p)s(oin)m(t)h(results)f(\(5.2.4.2.2\).)225 2750 y Fx(\017)60 b Fn(The)30 b(rounding)e(b)s(eha)m(viors)h(c)m (haracterized)j(b)m(y)e(non-standard)f(v)-5 b(alues)30 b(of)h Fq(FLT_ROUNDS)330 2860 y Fn(\(5.2.4.2.2\).)225 2996 y Fx(\017)60 b Fn(The)33 b(ev)-5 b(aluation)34 b(metho)s(ds)f(c)m (haracterized)i(b)m(y)e(non-standard)g(negativ)m(e)i(v)-5 b(alues)33 b(of)h Fq(FLT_EVAL_)330 3105 y(METHOD)29 b Fn(\(5.2.4.2.2\).)225 3242 y Fx(\017)60 b Fn(The)26 b(direction)f(of)i (rounding)d(when)h(an)h(in)m(teger)h(is)f(con)m(v)m(erted)i(to)f(a)g (\015oating-p)s(oin)m(t)e(n)m(um)m(b)s(er)g(that)330 3351 y(cannot)31 b(exactly)g(represen)m(t)g(the)f(original)f(v)-5 b(alue)29 b(\(6.3.1.4\).)225 3487 y Fx(\017)60 b Fn(The)40 b(direction)e(of)j(rounding)d(when)h(a)h(\015oating-p)s(oin)m(t)g(n)m (um)m(b)s(er)f(is)g(con)m(v)m(erted)i(to)g(a)g(narro)m(w)m(er)330 3597 y(\015oating-p)s(oin)m(t)30 b(n)m(um)m(b)s(er)f(\(6.3.1.5\).)225 3733 y Fx(\017)60 b Fn(Ho)m(w)38 b(the)f(nearest)h(represen)m(table)f (v)-5 b(alue)37 b(or)g(the)g(larger)g(or)g(smaller)f(represen)m(table)h (v)-5 b(alue)37 b(im-)330 3843 y(mediately)43 b(adjacen)m(t)i(to)f(the) g(nearest)g(represen)m(table)g(v)-5 b(alue)43 b(is)g(c)m(hosen)h(for)f (certain)h(\015oating)330 3952 y(constan)m(ts)32 b(\(6.4.4.2\).)225 4088 y Fx(\017)60 b Fn(Whether)32 b(and)f(ho)m(w)h(\015oating)f (expressions)g(are)h(con)m(tracted)h(when)e(not)h(disallo)m(w)m(ed)e(b) m(y)i(the)g Fq(FP_)330 4198 y(CONTRACT)c Fn(pragma)j(\(6.5\).)225 4334 y Fx(\017)60 b Fn(The)30 b(default)f(state)j(for)e(the)h Fq(FENV_ACCESS)c Fn(pragma)k(\(7.6.1\).)225 4470 y Fx(\017)60 b Fn(Additional)42 b(\015oating-p)s(oin)m(t)i(exceptions,)k(rounding)42 b(mo)s(des,)48 b(en)m(vironmen)m(ts,)f(and)d(classi\014ca-)330 4580 y(tions,)30 b(and)g(their)f(macro)i(names)f(\(7.6,)j(7.12\).)225 4716 y Fx(\017)60 b Fn(The)30 b(default)f(state)j(for)e(the)h Fq(FP_CONTRACT)c Fn(pragma)k(\(7.12.2\).)225 4852 y Fx(\017)60 b Fn(Whether)29 b(the)g(\\inexact")h(\015oating-p)s(oin)m(t)e (exception)h(can)h(b)s(e)e(raised)g(when)g(the)h(rounded)e(result)330 4962 y(actually)j(do)s(es)f(equal)h(the)g(mathematical)g(result)f(in)g (an)h(IEC)f(60559)j(conforman)m(t)f(implemen)m(ta-)330 5071 y(tion)f(\(F.9\).)225 5208 y Fx(\017)60 b Fn(Whether)30 b(the)f(\\under\015o)m(w")h(\(and)f(\\inexact"\))i(\015oating-p)s(oin)m (t)e(exception)h(can)f(b)s(e)g(raised)g(when)330 5317 y(a)i(result)e(is)g(tin)m(y)h(but)g(not)h(inexact)f(in)f(an)i(IEC)e (60559)k(conforman)m(t)e(implemen)m(tation)e(\(F.9\).)p eop %%Page: 153 163 153 162 bop 150 -116 a Fy(Chapter)30 b(4:)41 b(C)30 b(Implemen)m (tation-de\014ned)f(b)s(eha)m(vior)1591 b(153)150 299 y Fs(4.7)68 b(Arra)l(ys)45 b(and)g(p)t(oin)l(ters)225 467 y Fx(\017)60 b Fn(The)30 b(result)f(of)i(con)m(v)m(erting)g(a)g(p)s (oin)m(ter)e(to)i(an)f(in)m(teger)h(or)f(vice)h(v)m(ersa)g (\(6.3.2.3\).)330 596 y Fy(A)22 b(cast)g(from)f(p)s(oin)m(ter)g(to)h (in)m(teger)g(discards)e(most-signi\014can)m(t)h(bits)g(if)f(the)i(p)s (oin)m(ter)f(represen)m(tation)330 706 y(is)37 b(larger)h(than)f(the)h (in)m(teger)h(t)m(yp)s(e,)h(sign-extends)2115 673 y Fj(1)2189 706 y Fy(if)d(the)h(p)s(oin)m(ter)f(represen)m(tation)h(is)f(smaller) 330 816 y(than)30 b(the)h(in)m(teger)f(t)m(yp)s(e,)h(otherwise)f(the)h (bits)e(are)i(unc)m(hanged.)330 945 y(A)22 b(cast)g(from)f(in)m(teger)h (to)h(p)s(oin)m(ter)d(discards)g(most-signi\014can)m(t)h(bits)g(if)f (the)i(p)s(oin)m(ter)f(represen)m(tation)330 1055 y(is)j(smaller)g (than)h(the)h(in)m(teger)g(t)m(yp)s(e,)h(extends)e(according)g(to)h (the)g(signedness)e(of)h(the)h(in)m(teger)g(t)m(yp)s(e)330 1164 y(if)42 b(the)h(p)s(oin)m(ter)e(represen)m(tation)i(is)f(larger)g (than)h(the)g(in)m(teger)g(t)m(yp)s(e,)j(otherwise)c(the)h(bits)f(are) 330 1274 y(unc)m(hanged.)330 1404 y(When)34 b(casting)g(from)f(p)s(oin) m(ter)g(to)h(in)m(teger)h(and)e(bac)m(k)h(again,)h(the)f(resulting)e(p) s(oin)m(ter)h(m)m(ust)h(ref-)330 1513 y(erence)40 b(the)g(same)g(ob)5 b(ject)41 b(as)f(the)f(original)f(p)s(oin)m(ter,)k(otherwise)d(the)g(b) s(eha)m(vior)g(is)g(unde\014ned.)330 1623 y(That)28 b(is,)g(one)h(ma)m (y)g(not)g(use)f(in)m(teger)h(arithmetic)f(to)h(a)m(v)m(oid)g(the)g (unde\014ned)d(b)s(eha)m(vior)h(of)i(p)s(oin)m(ter)330 1733 y(arithmetic)h(as)g(proscrib)s(ed)e(in)h(6.5.6/8.)225 1862 y Fx(\017)60 b Fn(The)27 b(size)g(of)g(the)g(result)f(of)h (subtracting)g(t)m(w)m(o)h(p)s(oin)m(ters)e(to)i(elemen)m(ts)f(of)h (the)f(same)h(arra)m(y)f(\(6.5.6\).)150 2106 y Fs(4.8)68 b(Hin)l(ts)225 2273 y Fx(\017)60 b Fn(The)38 b(exten)m(t)h(to)g(whic)m (h)d(suggestions)i(made)g(b)m(y)g(using)f(the)h Fq(register)e Fn(storage-class)k(sp)s(eci\014er)330 2383 y(are)31 b(e\013ectiv)m(e)h (\(6.7.1\).)225 2513 y Fx(\017)60 b Fn(The)23 b(exten)m(t)j(to)f(whic)m (h)d(suggestions)i(made)g(b)m(y)g(using)f(the)h(inline)d(function)i(sp) s(eci\014er)f(are)i(e\013ectiv)m(e)330 2622 y(\(6.7.4\).)150 2865 y Fs(4.9)68 b(Structures,)45 b(unions,)g(en)l(umerations,)i(and)d (bit-\014elds)225 3033 y Fx(\017)60 b Fn(Whether)32 b(a)g(\\plain")f (in)m(t)g(bit-\014eld)f(is)h(treated)i(as)f(a)g Fq(signed)d(int)i Fn(bit-\014eld)f(or)h(as)h(an)g Fq(unsigned)330 3143 y(int)d Fn(bit-\014eld)g(\(6.7.2,)k(6.7.2.1\).)225 3272 y Fx(\017)60 b Fn(Allo)m(w)m(able)30 b(bit-\014eld)e(t)m(yp)s(es)i (other)h(than)f Fq(_Bool)p Fn(,)f Fq(signed)g(int)p Fn(,)h(and)g Fq(unsigned)e(int)h Fn(\(6.7.2.1\).)225 3402 y Fx(\017)60 b Fn(Whether)31 b(a)f(bit-\014eld)f(can)h(straddle)g(a)g(storage-unit)h (b)s(oundary)d(\(6.7.2.1\).)225 3532 y Fx(\017)60 b Fn(The)30 b(order)g(of)g(allo)s(cation)g(of)g(bit-\014elds)f(within)f(a)i(unit)f (\(6.7.2.1\).)225 3662 y Fx(\017)60 b Fn(The)30 b(alignmen)m(t)g(of)g (non-bit-\014eld)e(mem)m(b)s(ers)i(of)g(structures)g(\(6.7.2.1\).)225 3791 y Fx(\017)60 b Fn(The)30 b(in)m(teger)h(t)m(yp)s(e)f(compatible)g (with)f(eac)m(h)i(en)m(umerated)g(t)m(yp)s(e)g(\(6.7.2.2\).)150 4035 y Fs(4.10)68 b(Quali\014ers)225 4202 y Fx(\017)60 b Fn(What)31 b(constitutes)g(an)f(access)i(to)f(an)f(ob)5 b(ject)31 b(that)g(has)f(v)m(olatile-quali\014ed)f(t)m(yp)s(e)h (\(6.7.3\).)150 4446 y Fs(4.11)68 b(Prepro)t(cessing)46 b(directiv)l(es)225 4613 y Fx(\017)60 b Fn(Ho)m(w)24 b(sequences)g(in)e(b)s(oth)h(forms)g(of)h(header)f(names)h(are)g(mapp)s (ed)e(to)i(headers)g(or)f(external)h(source)330 4723 y(\014le)29 b(names)i(\(6.4.7\).)225 4853 y Fx(\017)60 b Fn(Whether)32 b(the)g(v)-5 b(alue)31 b(of)h(a)g(c)m(haracter)h (constan)m(t)g(in)e(a)h(constan)m(t)h(expression)d(that)i(con)m(trols)g (con-)330 4962 y(ditional)j(inclusion)e(matc)m(hes)38 b(the)e(v)-5 b(alue)36 b(of)h(the)g(same)g(c)m(haracter)h(constan)m(t)g (in)d(the)i(execution)330 5072 y(c)m(haracter)32 b(set)f(\(6.10.1\).)p 150 5154 1200 4 v 199 5221 a Fj(1)275 5253 y Fi(F)-6 b(uture)28 b(v)n(ersions)h(of)h(GCC)g(ma)n(y)e(zero-extend,)h(or)g(use) g(a)h(target-de\014ned)e Fh(ptr_extend)j Fi(pattern.)44 b(Do)29 b(not)g(rely)g(on)275 5340 y(sign)d(extension.)p eop %%Page: 154 164 154 163 bop 150 -116 a Fy(154)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))225 299 y Fx(\017)60 b Fn(Whether)40 b(the)g(v)-5 b(alue)39 b(of)h(a)g(single-c)m(haracter)g(c)m(haracter)i (constan)m(t)f(in)d(a)i(constan)m(t)h(expression)330 408 y(that)31 b(con)m(trols)g(conditional)d(inclusion)g(ma)m(y)j(ha)m (v)m(e)g(a)g(negativ)m(e)h(v)-5 b(alue)29 b(\(6.10.1\).)225 543 y Fx(\017)60 b Fn(The)27 b(places)h(that)h(are)f(searc)m(hed)g(for) g(an)g(included)d(`)p Fq(<>)p Fn(')j(delimited)d(header,)k(and)e(ho)m (w)h(the)g(places)330 653 y(are)j(sp)s(eci\014ed)d(or)j(the)f(header)h (is)e(iden)m(ti\014ed)f(\(6.10.2\).)225 787 y Fx(\017)60 b Fn(Ho)m(w)27 b(the)g(named)f(source)h(\014le)f(is)g(searc)m(hed)h (for)f(in)g(an)g(included)e(`)p Fq("")p Fn(')j(delimited)d(header)j (\(6.10.2\).)225 922 y Fx(\017)60 b Fn(The)29 b(metho)s(d)g(b)m(y)h (whic)m(h)e(prepro)s(cessing)g(tok)m(ens)j(\(p)s(ossibly)c(resulting)h (from)h(macro)i(expansion\))330 1031 y(in)e(a)i Fq(#include)d Fn(directiv)m(e)i(are)h(com)m(bined)e(in)m(to)i(a)f(header)g(name)h (\(6.10.2\).)225 1166 y Fx(\017)60 b Fn(The)30 b(nesting)g(limit)e(for) i Fq(#include)e Fn(pro)s(cessing)h(\(6.10.2\).)225 1300 y Fx(\017)60 b Fn(Whether)32 b(the)g(`)p Fq(#)p Fn(')h(op)s(erator)f (inserts)f(a)h(`)p Fq(\\)p Fn(')g(c)m(haracter)i(b)s(efore)d(the)i(`)p Fq(\\)p Fn(')f(c)m(haracter)h(that)g(b)s(egins)e(a)330 1410 y(univ)m(ersal)e(c)m(haracter)j(name)e(in)f(a)i(c)m(haracter)h (constan)m(t)f(or)g(string)e(literal)g(\(6.10.3.2\).)225 1544 y Fx(\017)60 b Fn(The)30 b(b)s(eha)m(vior)f(on)i(eac)m(h)g (recognized)g(non-)p Fq(STDC)e(#pragma)f Fn(directiv)m(e)i(\(6.10.6\).) 225 1679 y Fx(\017)60 b Fn(The)37 b(de\014nitions)e(for)i Fq(__DATE__)e Fn(and)i Fq(__TIME__)e Fn(when)i(resp)s(ectiv)m(ely)-8 b(,)39 b(the)f(date)g(and)f(time)g(of)330 1788 y(translation)29 b(are)i(not)g(a)m(v)-5 b(ailable)29 b(\(6.10.8\).)150 2046 y Fs(4.12)68 b(Library)45 b(functions)275 2238 y Fy(The)27 b(b)s(eha)m(vior)g(of)i(these)f(p)s(oin)m(ts)f(are)h(dep)s (enden)m(t)g(on)g(the)g(implemen)m(tation)f(of)h(the)g(C)g(library)-8 b(,)27 b(and)150 2348 y(are)k(not)f(de\014ned)g(b)m(y)g(GCC)g(itself.) 150 2605 y Fs(4.13)68 b(Arc)l(hitecture)225 2773 y Fx(\017)60 b Fn(The)32 b(v)-5 b(alues)32 b(or)h(expressions)e(assigned)h(to)i(the) e(macros)i(sp)s(eci\014ed)d(in)g(the)i(headers)f Fq()p Fn(,)330 2883 y Fq()p Fn(,)c(and)i Fq()d Fn(\(5.2.4.2,)34 b(7.18.2,)f(7.18.3\).)225 3017 y Fx(\017)60 b Fn(The)30 b(n)m(um)m(b)s(er,)f(order,)h(and)f(enco)s(ding)g(of)h(b)m (ytes)h(in)e(an)m(y)h(ob)5 b(ject)31 b(\(when)f(not)g(explicitly)e(sp)s (eci\014ed)330 3127 y(in)h(this)g(In)m(ternational)h(Standard\))g (\(6.2.6.1\).)225 3261 y Fx(\017)60 b Fn(The)30 b(v)-5 b(alue)30 b(of)g(the)h(result)e(of)i(the)f(sizeof)h(op)s(erator)f (\(6.5.3.4\).)150 3518 y Fs(4.14)68 b(Lo)t(cale-sp)t(eci\014c)45 b(b)t(eha)l(vior)275 3711 y Fy(The)27 b(b)s(eha)m(vior)g(of)i(these)f (p)s(oin)m(ts)f(are)h(dep)s(enden)m(t)g(on)g(the)g(implemen)m(tation)f (of)h(the)g(C)g(library)-8 b(,)27 b(and)150 3821 y(are)k(not)f (de\014ned)g(b)m(y)g(GCC)g(itself.)p eop %%Page: 155 165 155 164 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(155)150 299 y Fv(5)80 b(Extensions)53 b(to)g(the)g(C)g(Language)g(F)-13 b(amily)275 536 y Fy(GNU)56 b(C)f(pro)m(vides)f(sev)m(eral)i(language)g (features)g(not)g(found)e(in)h(ISO)f(standard)h(C.)116 b(\(The)150 646 y(`)p Fq(-pedantic)p Fy(')41 b(option)i(directs)f(GCC)h (to)h(prin)m(t)d(a)j(w)m(arning)e(message)i(if)e(an)m(y)i(of)f(these)g (features)h(is)150 755 y(used.\))49 b(T)-8 b(o)34 b(test)g(for)f(the)g (a)m(v)-5 b(ailabilit)m(y)32 b(of)h(these)h(features)f(in)f (conditional)g(compilation,)h(c)m(hec)m(k)i(for)e(a)150 865 y(prede\014ned)c(macro)i Fq(__GNUC__)p Fy(,)d(whic)m(h)h(is)h(alw)m (a)m(ys)g(de\014ned)g(under)e(GCC.)275 1000 y(These)g(extensions)g(are) h(a)m(v)-5 b(ailable)28 b(in)g(C)g(and)g(Ob)5 b(jectiv)m(e-C.)40 b(Most)30 b(of)f(them)f(are)i(also)e(a)m(v)-5 b(ailable)28 b(in)150 1110 y(C)p Fq(++)p Fy(.)39 b(See)29 b(Chapter)g(6)g ([Extensions)f(to)h(the)g(C)p Fq(++)f Fy(Language],)j(page)e(249,)i (for)e(extensions)f(that)h(apply)150 1219 y Fr(only)39 b Fy(to)31 b(C)p Fq(++)p Fy(.)275 1355 y(Some)d(features)h(that)g(are)g (in)e(ISO)g(C99)i(but)f(not)h(C89)f(or)h(C)p Fq(++)e Fy(are)i(also,)g(as)g(extensions,)g(accepted)150 1464 y(b)m(y)h(GCC)g(in)f(C89)i(mo)s(de)f(and)g(in)f(C)p Fq(++)p Fy(.)150 1724 y Fs(5.1)68 b(Statemen)l(ts)47 b(and)d(Declarations)j(in) e(Expressions)275 1918 y Fy(A)26 b(comp)s(ound)f(statemen)m(t)k (enclosed)d(in)f(paren)m(theses)i(ma)m(y)g(app)s(ear)f(as)h(an)f (expression)g(in)f(GNU)i(C.)150 2027 y(This)i(allo)m(ws)g(y)m(ou)i(to)g (use)f(lo)s(ops,)g(switc)m(hes,)g(and)g(lo)s(cal)g(v)-5 b(ariables)29 b(within)e(an)k(expression.)275 2163 y(Recall)d(that)h(a) g(comp)s(ound)e(statemen)m(t)k(is)c(a)i(sequence)g(of)g(statemen)m(ts)h (surrounded)c(b)m(y)j(braces;)g(in)150 2272 y(this)g(construct,)i (paren)m(theses)g(go)g(around)e(the)i(braces.)41 b(F)-8 b(or)31 b(example:)390 2402 y Fq(\({)47 b(int)g(y)h(=)f(foo)g(\(\);)g (int)g(z;)533 2506 y(if)g(\(y)h(>)f(0\))g(z)h(=)f(y;)533 2610 y(else)g(z)g(=)h(-)f(y;)533 2713 y(z;)g(}\))150 2849 y Fy(is)31 b(a)h(v)-5 b(alid)30 b(\(though)i(sligh)m(tly)f(more)h (complex)f(than)h(necessary\))g(expression)f(for)h(the)g(absolute)f(v) -5 b(alue)150 2959 y(of)31 b Fq(foo)e(\(\))p Fy(.)275 3094 y(The)h(last)i(thing)e(in)g(the)i(comp)s(ound)e(statemen)m(t)j (should)d(b)s(e)h(an)g(expression)f(follo)m(w)m(ed)h(b)m(y)h(a)f(semi-) 150 3204 y(colon;)d(the)f(v)-5 b(alue)26 b(of)h(this)f(sub)s (expression)e(serv)m(es)j(as)g(the)g(v)-5 b(alue)26 b(of)h(the)g(en)m (tire)g(construct.)40 b(\(If)26 b(y)m(ou)h(use)150 3313 y(some)i(other)g(kind)d(of)j(statemen)m(t)h(last)f(within)d(the)j (braces,)g(the)g(construct)f(has)h(t)m(yp)s(e)f Fq(void)p Fy(,)g(and)g(th)m(us)150 3423 y(e\013ectiv)m(ely)j(no)g(v)-5 b(alue.\))275 3558 y(This)22 b(feature)i(is)f(esp)s(ecially)f(useful)g (in)h(making)g(macro)i(de\014nitions)c(\\safe")k(\(so)g(that)f(they)g (ev)-5 b(aluate)150 3668 y(eac)m(h)37 b(op)s(erand)d(exactly)j(once\).) 57 b(F)-8 b(or)37 b(example,)g(the)f(\\maxim)m(um")f(function)f(is)h (commonly)g(de\014ned)150 3777 y(as)c(a)f(macro)h(in)e(standard)h(C)g (as)h(follo)m(ws:)390 3907 y Fq(#define)46 b(max\(a,b\))f(\(\(a\))i(>)g (\(b\))g(?)h(\(a\))f(:)g(\(b\)\))150 4043 y Fy(But)35 b(this)e(de\014nition)f(computes)j(either)f Fn(a)h Fy(or)f Fn(b)i Fy(t)m(wice,)h(with)c(bad)h(results)f(if)h(the)g(op)s(erand)g (has)g(side)150 4152 y(e\013ects.)47 b(In)32 b(GNU)h(C,)f(if)f(y)m(ou)h (kno)m(w)g(the)h(t)m(yp)s(e)f(of)g(the)h(op)s(erands)d(\(here)j(let's)f (assume)g Fq(int)p Fy(\),)g(y)m(ou)h(can)150 4262 y(de\014ne)d(the)g (macro)h(safely)f(as)h(follo)m(ws:)390 4391 y Fq(#define)46 b(maxint\(a,b\))f(\\)485 4495 y(\({int)i(_a)g(=)g(\(a\),)g(_b)g(=)h (\(b\);)e(_a)i(>)f(_b)g(?)h(_a)f(:)g(_b;)g(}\))275 4631 y Fy(Em)m(b)s(edded)32 b(statemen)m(ts)k(are)f(not)f(allo)m(w)m(ed)g (in)f(constan)m(t)i(expressions,)f(suc)m(h)g(as)h(the)f(v)-5 b(alue)34 b(of)g(an)150 4740 y(en)m(umeration)c(constan)m(t,)i(the)e (width)f(of)i(a)f(bit-\014eld,)f(or)h(the)h(initial)d(v)-5 b(alue)29 b(of)i(a)g(static)g(v)-5 b(ariable.)275 4876 y(If)41 b(y)m(ou)i(don't)f(kno)m(w)g(the)g(t)m(yp)s(e)g(of)h(the)f(op)s (erand,)i(y)m(ou)f(can)f(still)e(do)i(this,)i(but)e(y)m(ou)g(m)m(ust)g (use)150 4985 y Fq(typeof)21 b Fy(\(see)i(Section)f(5.7)h([T)m(yp)s (eof)7 b(],)25 b(page)e(161\))h(or)e(t)m(yp)s(e)g(naming)f(\(see)j (Section)e(5.6)h([Naming)f(T)m(yp)s(es],)150 5095 y(page)31 b(160\).)275 5230 y(Statemen)m(t)37 b(expressions)e(are)i(not)f(supp)s (orted)e(fully)g(in)h(G)p Fq(++)p Fy(,)j(and)e(their)f(fate)i(there)f (is)g(unclear.)150 5340 y(\(It)i(is)f(p)s(ossible)e(that)k(they)f(will) d(b)s(ecome)j(fully)d(supp)s(orted)h(at)j(some)f(p)s(oin)m(t,)h(or)e (that)i(they)e(will)f(b)s(e)p eop %%Page: 156 166 156 165 bop 150 -116 a Fy(156)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y(deprecated,)g(or)g(that)f(the)h(bugs)e (that)i(are)g(presen)m(t)f(will)e(con)m(tin)m(ue)j(to)g(exist)f (inde\014nitely)-8 b(.\))38 b(Presen)m(tly)-8 b(,)150 408 y(statemen)m(t)32 b(expressions)d(do)h(not)h(w)m(ork)g(w)m(ell)e (as)i(default)e(argumen)m(ts.)275 545 y(In)i(addition,)h(there)h(are)g (seman)m(tic)g(issues)e(with)g(statemen)m(t-expressions)j(in)d(C)p Fq(++)p Fy(.)47 b(If)32 b(y)m(ou)h(try)f(to)150 655 y(use)i(statemen)m (t-expressions)g(instead)g(of)g(inline)d(functions)h(in)h(C)p Fq(++)p Fy(,)h(y)m(ou)g(ma)m(y)h(b)s(e)e(surprised)e(at)k(the)150 765 y(w)m(a)m(y)c(ob)5 b(ject)32 b(destruction)d(is)h(handled.)38 b(F)-8 b(or)31 b(example:)390 896 y Fq(#define)46 b(foo\(a\))94 b(\({int)46 b(b)h(=)h(\(a\);)f(b)g(+)g(3;)h(}\))150 1033 y Fy(do)s(es)30 b(not)h(w)m(ork)f(the)h(same)f(w)m(a)m(y)i(as:)390 1164 y Fq(inline)46 b(int)h(foo\(int)f(a\))h({)g(int)g(b)h(=)f(a;)g (return)g(b)g(+)g(3;)h(})150 1301 y Fy(In)38 b(particular,)i(if)e(the)h (expression)f(passed)g(in)m(to)h Fq(foo)f Fy(in)m(v)m(olv)m(es)i(the)f (creation)g(of)g(temp)s(oraries,)i(the)150 1411 y(destructors)35 b(for)g(those)h(temp)s(oraries)f(will)d(b)s(e)j(run)f(earlier)g(in)g (the)i(case)g(of)g(the)g(macro)g(than)f(in)f(the)150 1520 y(case)d(of)g(the)g(function.)275 1657 y(These)i(considerations)f (mean)i(that)g(it)f(is)g(probably)e(a)j(bad)f(idea)h(to)g(use)f (statemen)m(t-expressions)150 1767 y(of)27 b(this)e(form)i(in)e(header) h(\014les)g(that)h(are)g(designed)f(to)h(w)m(ork)g(with)f(C)p Fq(++)p Fy(.)38 b(\(Note)28 b(that)g(some)f(v)m(ersions)f(of)150 1876 y(the)h(GNU)g(C)f(Library)f(con)m(tained)i(header)f(\014les)g (using)f(statemen)m(t-expression)j(that)f(lead)f(to)h(precisely)150 1986 y(this)i(bug.\))150 2250 y Fs(5.2)68 b(Lo)t(cally)46 b(Declared)f(Lab)t(els)275 2445 y Fy(Eac)m(h)27 b(statemen)m(t)i (expression)c(is)h(a)h(scop)s(e)g(in)f(whic)m(h)f Fn(lo)s(cal)h(lab)s (els)j Fy(can)e(b)s(e)g(declared.)39 b(A)27 b(lo)s(cal)f(lab)s(el)150 2554 y(is)j(simply)e(an)j(iden)m(ti\014er;)e(y)m(ou)i(can)g(jump)e(to)j (it)e(with)f(an)i(ordinary)e Fq(goto)h Fy(statemen)m(t,)j(but)d(only)f (from)150 2664 y(within)g(the)i(statemen)m(t)j(expression)c(it)h(b)s (elongs)f(to.)275 2801 y(A)h(lo)s(cal)g(lab)s(el)e(declaration)i(lo)s (oks)g(lik)m(e)g(this:)390 2932 y Fq(__label__)45 b Fn(lab)s(el)t Fq(;)150 3069 y Fy(or)390 3200 y Fq(__label__)g Fn(lab)s(el1)p Fq(,)i Fn(lab)s(el2)p Fq(,)f(...)o(;)275 3337 y Fy(Lo)s(cal)32 b(lab)s(el)f(declarations)h(m)m(ust)g(come)i(at)f(the)g(b)s(eginning)c (of)k(the)g(statemen)m(t)h(expression,)e(righ)m(t)150 3447 y(after)f(the)f(`)p Fq(\({)p Fy(',)h(b)s(efore)f(an)m(y)h (ordinary)d(declarations.)275 3584 y(The)34 b(lab)s(el)f(declaration)h (de\014nes)g(the)h(lab)s(el)e Fr(name)p Fy(,)k(but)d(do)s(es)g(not)h (de\014ne)f(the)h(lab)s(el)e(itself.)52 b(Y)-8 b(ou)150 3694 y(m)m(ust)31 b(do)f(this)g(in)f(the)i(usual)e(w)m(a)m(y)-8 b(,)32 b(with)e Fn(lab)s(el)t Fq(:)p Fy(,)e(within)h(the)h(statemen)m (ts)j(of)e(the)f(statemen)m(t)j(expres-)150 3803 y(sion.)275 3940 y(The)27 b(lo)s(cal)g(lab)s(el)f(feature)i(is)e(useful)g(b)s (ecause)i(statemen)m(t)i(expressions)c(are)i(often)g(used)f(in)f (macros.)150 4050 y(If)f(the)h(macro)g(con)m(tains)g(nested)f(lo)s (ops,)h(a)g Fq(goto)e Fy(can)i(b)s(e)f(useful)e(for)j(breaking)e(out)i (of)g(them.)39 b(Ho)m(w)m(ev)m(er,)150 4159 y(an)c(ordinary)e(lab)s(el) g(whose)h(scop)s(e)h(is)f(the)h(whole)f(function)f(cannot)j(b)s(e)e (used:)48 b(if)34 b(the)h(macro)h(can)f(b)s(e)150 4269 y(expanded)29 b(sev)m(eral)i(times)e(in)g(one)h(function,)f(the)h(lab)s (el)f(will)e(b)s(e)j(m)m(ultiply)d(de\014ned)i(in)f(that)j(function.) 150 4379 y(A)f(lo)s(cal)g(lab)s(el)f(a)m(v)m(oids)i(this)e(problem.)39 b(F)-8 b(or)31 b(example:)390 4510 y Fq(#define)46 b(SEARCH\(array,)e (target\))1000 b(\\)390 4614 y(\({)2290 b(\\)485 4717 y(__label__)46 b(found;)1525 b(\\)485 4821 y(typeof)47 b(\(target\))e(_SEARCH_target)f(=)j(\(target\);)284 b(\\)485 4925 y(typeof)47 b(\(*\(array\)\))e(*_SEARCH_array)e(=)48 b(\(array\);)236 b(\\)485 5029 y(int)47 b(i,)h(j;)1860 b(\\)485 5132 y(int)47 b(value;)1812 b(\\)485 5236 y(for)47 b(\(i)h(=)f(0;)g(i)h(<)f(max;)g(i++\))1096 b(\\)581 5340 y(for)47 b(\(j)g(=)g(0;)h(j)f(<)h(max;)e(j++\))1001 b(\\)p eop %%Page: 157 167 157 166 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(157)676 299 y Fq(if)48 b(\(_SEARCH_array[i][j])42 b(==)47 b(_SEARCH_target\))91 b(\\)772 403 y({)47 b(value)g(=)g(i;)g(goto)g(found;)f(})763 b(\\)485 506 y(value)47 b(=)g(-1;)1765 b(\\)438 610 y(found:)2050 b(\\)485 714 y(value;)2003 b(\\)390 818 y(}\))150 1097 y Fs(5.3)68 b(Lab)t(els)45 b(as)h(V)-11 b(alues)275 1299 y Fy(Y)j(ou)44 b(can)h(get)g(the)g(address)e(of)h(a)h(lab)s(el)e (de\014ned)g(in)g(the)h(curren)m(t)g(function)f(\(or)i(a)f(con)m (taining)150 1408 y(function\))25 b(with)f(the)i(unary)f(op)s(erator)h (`)p Fq(&&)p Fy('.)39 b(The)26 b(v)-5 b(alue)25 b(has)g(t)m(yp)s(e)h Fq(void)k(*)p Fy(.)38 b(This)24 b(v)-5 b(alue)26 b(is)e(a)j(constan)m (t)150 1518 y(and)j(can)g(b)s(e)g(used)g(wherev)m(er)g(a)h(constan)m(t) h(of)e(that)h(t)m(yp)s(e)g(is)e(v)-5 b(alid.)39 b(F)-8 b(or)31 b(example:)390 1655 y Fq(void)47 b(*ptr;)390 1759 y(...)390 1863 y(ptr)g(=)g(&&foo;)275 2006 y Fy(T)-8 b(o)26 b(use)f(these)h(v)-5 b(alues,)26 b(y)m(ou)g(need)f(to)h(b)s(e)f (able)g(to)i(jump)d(to)i(one.)39 b(This)24 b(is)h(done)g(with)f(the)i (computed)150 2116 y(goto)32 b(statemen)m(t)742 2083 y Fj(1)781 2116 y Fy(,)f Fq(goto)e(*)p Fn(exp)s Fq(;)p Fy(.)40 b(F)-8 b(or)31 b(example,)390 2253 y Fq(goto)47 b(*ptr;)150 2397 y Fy(An)m(y)30 b(expression)g(of)g(t)m(yp)s(e)h Fq(void)e(*)h Fy(is)f(allo)m(w)m(ed.)275 2540 y(One)c(w)m(a)m(y)i(of)f (using)f(these)h(constan)m(ts)h(is)e(in)g(initializing)d(a)k(static)h (arra)m(y)f(that)h(will)c(serv)m(e)k(as)f(a)g(jump)150 2650 y(table:)390 2787 y Fq(static)46 b(void)h(*array[])e(=)j({)f (&&foo,)f(&&bar,)g(&&hack)g(};)275 2930 y Fy(Then)29 b(y)m(ou)i(can)f(select)h(a)g(lab)s(el)e(with)g(indexing,)f(lik)m(e)i (this:)390 3068 y Fq(goto)47 b(*array[i];)150 3211 y Fy(Note)25 b(that)g(this)e(do)s(es)h(not)g(c)m(hec)m(k)i(whether)e(the) g(subscript)e(is)h(in)g(b)s(ounds|arra)m(y)f(indexing)g(in)h(C)h(nev)m (er)150 3321 y(do)s(es)30 b(that.)275 3464 y(Suc)m(h)g(an)i(arra)m(y)g (of)f(lab)s(el)f(v)-5 b(alues)31 b(serv)m(es)h(a)g(purp)s(ose)d(m)m(uc) m(h)j(lik)m(e)f(that)h(of)f(the)h Fq(switch)e Fy(statemen)m(t.)150 3574 y(The)f Fq(switch)e Fy(statemen)m(t)k(is)d(cleaner,)h(so)h(use)e (that)i(rather)f(than)g(an)g(arra)m(y)g(unless)f(the)h(problem)e(do)s (es)150 3683 y(not)k(\014t)f(a)h Fq(switch)d Fy(statemen)m(t)k(v)m(ery) f(w)m(ell.)275 3827 y(Another)d(use)h(of)g(lab)s(el)e(v)-5 b(alues)28 b(is)g(in)f(an)i(in)m(terpreter)f(for)g(threaded)h(co)s(de.) 40 b(The)29 b(lab)s(els)e(within)f(the)150 3936 y(in)m(terpreter)k (function)f(can)i(b)s(e)e(stored)i(in)e(the)h(threaded)g(co)s(de)h(for) f(sup)s(er-fast)g(dispatc)m(hing.)275 4080 y(Y)-8 b(ou)27 b(ma)m(y)h(not)g(use)e(this)h(mec)m(hanism)f(to)i(jump)e(to)i(co)s(de)f (in)f(a)i(di\013eren)m(t)e(function.)39 b(If)26 b(y)m(ou)i(do)f(that,) 150 4189 y(totally)35 b(unpredictable)d(things)h(will)f(happ)s(en.)52 b(The)34 b(b)s(est)g(w)m(a)m(y)i(to)f(a)m(v)m(oid)g(this)f(is)f(to)j (store)f(the)g(lab)s(el)150 4299 y(address)29 b(only)h(in)f(automatic)i (v)-5 b(ariables)29 b(and)h(nev)m(er)h(pass)f(it)g(as)g(an)h(argumen)m (t.)275 4442 y(An)f(alternate)h(w)m(a)m(y)g(to)g(write)f(the)g(ab)s(o)m (v)m(e)i(example)e(is)390 4580 y Fq(static)46 b(const)g(int)h(array[])f (=)i({)f(&&foo)f(-)i(&&foo,)e(&&bar)g(-)i(&&foo,)1774 4684 y(&&hack)e(-)i(&&foo)e(};)390 4787 y(goto)h(*\(&&foo)e(+)j (array[i]\);)150 4931 y Fy(This)25 b(is)h(more)h(friendly)d(to)k(co)s (de)f(living)e(in)h(shared)g(libraries,)f(as)i(it)g(reduces)f(the)h(n)m (um)m(b)s(er)f(of)h(dynamic)150 5040 y(relo)s(cations)j(that)h(are)g (needed,)f(and)g(b)m(y)g(consequence,)h(allo)m(ws)f(the)h(data)g(to)g (b)s(e)e(read-only)-8 b(.)p 150 5154 1200 4 v 199 5221 a Fj(1)275 5253 y Fi(The)29 b(analogous)j(feature)e(in)g(F)-6 b(ortran)29 b(is)h(called)h(an)f(assigned)g(goto,)i(but)d(that)g(name)g (seems)h(inappropriate)g(in)f(C,)275 5340 y(where)d(one)f(can)h(do)g (more)f(than)g(simply)g(store)h(lab)r(el)h(addresses)g(in)e(lab)r(el)i (v)l(ariables.)p eop %%Page: 158 168 158 167 bop 150 -116 a Fy(158)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fs(5.4)68 b(Nested)46 b(F)-11 b(unctions)275 494 y Fy(A)35 b Fn(nested)g(function)f Fy(is)g(a)i(function)e(de\014ned)g(inside)f(another)i(function.)54 b(\(Nested)37 b(functions)d(are)150 604 y(not)d(supp)s(orted)f(for)g (GNU)i(C)p Fq(++)p Fy(.\))43 b(The)30 b(nested)h(function's)f(name)h (is)f(lo)s(cal)h(to)h(the)f(blo)s(c)m(k)g(where)f(it)h(is)150 713 y(de\014ned.)39 b(F)-8 b(or)32 b(example,)e(here)g(w)m(e)h (de\014ne)f(a)g(nested)h(function)e(named)h Fq(square)p Fy(,)f(and)g(call)h(it)g(t)m(wice:)390 845 y Fq(foo)47 b(\(double)f(a,)h(double)f(b\))390 948 y({)485 1052 y(double)h(square)f (\(double)f(z\))j({)f(return)f(z)i(*)f(z;)g(})485 1260 y(return)g(square)f(\(a\))h(+)g(square)f(\(b\);)390 1364 y(})275 1494 y Fy(The)22 b(nested)h(function)f(can)h(access)h(all)e (the)h(v)-5 b(ariables)22 b(of)h(the)g(con)m(taining)g(function)f(that) h(are)g(visible)150 1603 y(at)35 b(the)g(p)s(oin)m(t)e(of)i(its)f (de\014nition.)51 b(This)32 b(is)i(called)f Fn(lexical)h(scoping)p Fy(.)52 b(F)-8 b(or)35 b(example,)h(here)e(w)m(e)h(sho)m(w)g(a)150 1713 y(nested)30 b(function)f(whic)m(h)g(uses)h(an)h(inherited)d(v)-5 b(ariable)29 b(named)h Fq(offset)p Fy(:)390 1844 y Fq(bar)47 b(\(int)g(*array,)e(int)i(offset,)f(int)h(size\))390 1948 y({)485 2052 y(int)g(access)f(\(int)h(*array,)f(int)h(index\))581 2155 y({)g(return)f(array[index)f(+)j(offset];)d(})485 2259 y(int)i(i;)485 2363 y(...)485 2467 y(for)g(\(i)h(=)f(0;)g(i)h(<)f (size;)f(i++\))581 2571 y(...)h(access)f(\(array,)g(i\))h(...)390 2674 y(})275 2804 y Fy(Nested)33 b(function)e(de\014nitions)f(are)k(p)s (ermitted)d(within)f(functions)h(in)h(the)g(places)h(where)f(v)-5 b(ariable)150 2914 y(de\014nitions)28 b(are)j(allo)m(w)m(ed;)f(that)h (is,)f(in)f(an)m(y)i(blo)s(c)m(k,)f(b)s(efore)g(the)g(\014rst)g (statemen)m(t)i(in)d(the)i(blo)s(c)m(k.)275 3051 y(It)j(is)g(p)s (ossible)e(to)j(call)f(the)h(nested)f(function)g(from)g(outside)f(the)i (scop)s(e)g(of)g(its)e(name)i(b)m(y)g(storing)150 3161 y(its)30 b(address)f(or)i(passing)e(the)h(address)g(to)h(another)g (function:)390 3292 y Fq(hack)47 b(\(int)f(*array,)g(int)h(size\))390 3396 y({)485 3500 y(void)g(store)f(\(int)h(index,)f(int)h(value\))581 3603 y({)g(array[index])e(=)i(value;)f(})485 3811 y(intermediate)f (\(store,)h(size\);)390 3915 y(})275 4052 y Fy(Here,)h(the)d(function)f Fq(intermediate)d Fy(receiv)m(es)45 b(the)f(address)f(of)h Fq(store)e Fy(as)i(an)g(argumen)m(t.)81 b(If)150 4161 y Fq(intermediate)23 b Fy(calls)j Fq(store)p Fy(,)g(the)h(argumen)m(ts) g(giv)m(en)g(to)g Fq(store)e Fy(are)j(used)d(to)j(store)f(in)m(to)g Fq(array)p Fy(.)38 b(But)150 4271 y(this)33 b(tec)m(hnique)g(w)m(orks)h (only)f(so)h(long)g(as)g(the)g(con)m(taining)f(function)g(\()p Fq(hack)p Fy(,)h(in)f(this)f(example\))i(do)s(es)150 4381 y(not)d(exit.)275 4518 y(If)i(y)m(ou)i(try)f(to)h(call)f(the)h (nested)f(function)f(through)h(its)f(address)h(after)h(the)f(con)m (taining)g(function)150 4627 y(has)f(exited,)i(all)d(hell)g(will)f (break)i(lo)s(ose.)51 b(If)33 b(y)m(ou)h(try)f(to)h(call)f(it)g(after)h (a)g(con)m(taining)f(scop)s(e)h(lev)m(el)f(has)150 4737 y(exited,)40 b(and)e(if)f(it)h(refers)f(to)i(some)g(of)f(the)h(v)-5 b(ariables)37 b(that)h(are)h(no)f(longer)g(in)f(scop)s(e,)j(y)m(ou)f (ma)m(y)g(b)s(e)150 4847 y(luc)m(ky)-8 b(,)33 b(but)f(it's)h(not)g (wise)f(to)h(tak)m(e)h(the)f(risk.)47 b(If,)33 b(ho)m(w)m(ev)m(er,)i (the)d(nested)h(function)e(do)s(es)i(not)g(refer)f(to)150 4956 y(an)m(ything)e(that)h(has)f(gone)h(out)g(of)f(scop)s(e,)h(y)m(ou) g(should)d(b)s(e)i(safe.)275 5093 y(GCC)e(implemen)m(ts)f(taking)h(the) h(address)f(of)h(a)g(nested)f(function)f(using)g(a)i(tec)m(hnique)g (called)f Fn(tram-)150 5203 y(p)s(olines)p Fy(.)38 b(A)31 b(pap)s(er)e(describing)f(them)j(is)e(a)m(v)-5 b(ailable)30 b(as)150 5340 y Fq(http://people.debian.org)o(/~ka)o(rlhe)o(g/U)o(seni) o(x88-)o(lex)o(ic.p)o(df)p Fy(.)p eop %%Page: 159 169 159 168 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(159)275 299 y(A)37 b(nested)g(function)e(can)j(jump)d(to)j(a)f(lab)s(el)f (inherited)e(from)j(a)g(con)m(taining)g(function,)g(pro)m(vided)150 408 y(the)31 b(lab)s(el)f(w)m(as)h(explicitly)e(declared)i(in)e(the)j (con)m(taining)e(function)g(\(see)i(Section)f(5.2)h([Lo)s(cal)g(Lab)s (els],)150 518 y(page)39 b(156\).)67 b(Suc)m(h)38 b(a)h(jump)f(returns) f(instan)m(tly)g(to)j(the)f(con)m(taining)f(function,)h(exiting)f(the)h (nested)150 628 y(function)29 b(whic)m(h)g(did)g(the)h Fq(goto)g Fy(and)f(an)m(y)i(in)m(termediate)f(functions)f(as)i(w)m (ell.)39 b(Here)31 b(is)f(an)g(example:)390 775 y Fq(bar)47 b(\(int)g(*array,)e(int)i(offset,)f(int)h(size\))390 878 y({)485 982 y(__label__)f(failure;)485 1086 y(int)h(access)f(\(int) h(*array,)f(int)h(index\))581 1190 y({)676 1293 y(if)h(\(index)e(>)h (size\))772 1397 y(goto)f(failure;)676 1501 y(return)g(array[index)f(+) j(offset];)581 1605 y(})485 1709 y(int)f(i;)485 1812 y(...)485 1916 y(for)g(\(i)h(=)f(0;)g(i)h(<)f(size;)f(i++\))581 2020 y(...)h(access)f(\(array,)g(i\))h(...)485 2124 y(...)485 2227 y(return)g(0;)438 2435 y(/*)g Fy(Con)m(trol)30 b(comes)h(here)f (from)g Fq(access)511 2539 y Fy(if)g(it)f(detects)j(an)e(error.)96 b Fq(*/)438 2643 y(failure:)485 2746 y(return)47 b(-1;)390 2850 y(})275 2996 y Fy(A)31 b(nested)g(function)f(alw)m(a)m(ys)i(has)f (in)m(ternal)f(link)-5 b(age.)43 b(Declaring)31 b(one)g(with)f Fq(extern)g Fy(is)g(erroneous.)150 3105 y(If)c(y)m(ou)h(need)f(to)h (declare)f(the)h(nested)f(function)f(b)s(efore)h(its)g(de\014nition,)f (use)h Fq(auto)g Fy(\(whic)m(h)f(is)h(otherwise)150 3215 y(meaningless)j(for)h(function)f(declarations\).)390 3362 y Fq(bar)47 b(\(int)g(*array,)e(int)i(offset,)f(int)h(size\))390 3466 y({)485 3569 y(__label__)f(failure;)485 3673 y(auto)h(int)g (access)f(\(int)h(*,)g(int\);)485 3777 y(...)485 3881 y(int)g(access)f(\(int)h(*array,)f(int)h(index\))581 3984 y({)676 4088 y(if)h(\(index)e(>)h(size\))772 4192 y(goto)f(failure;)676 4296 y(return)g(array[index)f(+)j(offset];)581 4400 y(})485 4503 y(...)390 4607 y(})150 4910 y Fs(5.5)68 b(Constructing)45 b(F)-11 b(unction)44 b(Calls)275 5121 y Fy(Using)33 b(the)h(built-in)d(functions)i(describ)s(ed)f(b)s(elo)m (w,)i(y)m(ou)h(can)f(record)g(the)g(argumen)m(ts)h(a)f(function)150 5230 y(receiv)m(ed,)c(and)e(call)f(another)i(function)f(with)f(the)i (same)g(argumen)m(ts,)g(without)f(kno)m(wing)f(the)i(n)m(um)m(b)s(er) 150 5340 y(or)h(t)m(yp)s(es)h(of)f(the)h(argumen)m(ts.)p eop %%Page: 160 170 160 169 bop 150 -116 a Fy(160)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))275 299 y(Y)-8 b(ou)34 b(can)f(also)h(record)g (the)f(return)g(v)-5 b(alue)33 b(of)h(that)g(function)e(call,)i(and)f (later)h(return)e(that)i(v)-5 b(alue,)150 408 y(without)26 b(kno)m(wing)g(what)g(data)i(t)m(yp)s(e)f(the)g(function)e(tried)h(to)h (return)f(\(as)h(long)g(as)g(y)m(our)g(caller)f(exp)s(ects)150 518 y(that)31 b(data)g(t)m(yp)s(e\).)3188 767 y(Built-in)d(F)-8 b(unction)-3725 b Ff(void)54 b(*)e(__builtin_apply_args)g Fe(\(\))390 877 y Fy(This)26 b(built-in)e(function)i(returns)g(a)i(p)s (oin)m(ter)e(to)i(data)g(describing)d(ho)m(w)j(to)g(p)s(erform)e(a)i (call)e(with)390 986 y(the)31 b(same)f(argumen)m(ts)h(as)g(w)m(ere)f (passed)g(to)h(the)g(curren)m(t)f(function.)390 1126 y(The)g(function)f(sa)m(v)m(es)j(the)f(arg)g(p)s(oin)m(ter)f(register,) h(structure)f(v)-5 b(alue)30 b(address,)g(and)g(all)f(registers)390 1235 y(that)g(migh)m(t)f(b)s(e)f(used)g(to)i(pass)f(argumen)m(ts)g(to)h (a)g(function)d(in)m(to)j(a)f(blo)s(c)m(k)g(of)g(memory)g(allo)s(cated) 390 1345 y(on)i(the)h(stac)m(k.)42 b(Then)29 b(it)h(returns)f(the)i (address)e(of)i(that)g(blo)s(c)m(k.)3188 1594 y(Built-in)d(F)-8 b(unction)-3725 b Ff(void)54 b(*)e(__builtin_apply)e Fe(\()p Fq(void)30 b Fe(\()p Fq(*)p Fn(function)p Fe(\)\(\))p Fq(,)g(void)565 1704 y(*)p Fn(argumen)m(ts)p Fq(,)g(size_t)f Fn(size)5 b Fe(\))390 1813 y Fy(This)35 b(built-in)f(function)h(in)m(v) m(ok)m(es)j Fn(function)d Fy(with)h(a)h(cop)m(y)g(of)g(the)g (parameters)g(describ)s(ed)e(b)m(y)390 1923 y Fn(argumen)m(ts)f Fy(and)c Fn(size)p Fy(.)390 2062 y(The)41 b(v)-5 b(alue)41 b(of)g Fn(argumen)m(ts)k Fy(should)40 b(b)s(e)h(the)g(v)-5 b(alue)41 b(returned)f(b)m(y)h Fq(__builtin_apply_args)p Fy(.)390 2172 y(The)30 b(argumen)m(t)h Fn(size)k Fy(sp)s(eci\014es)29 b(the)i(size)f(of)g(the)h(stac)m(k)h(argumen)m(t)f(data,)g(in)e(b)m (ytes.)390 2311 y(This)f(function)h(returns)g(a)i(p)s(oin)m(ter)e(to)i (data)g(describing)d(ho)m(w)i(to)h(return)e(whatev)m(er)i(v)-5 b(alue)30 b(w)m(as)390 2421 y(returned)d(b)m(y)h Fn(function)p Fy(.)39 b(The)27 b(data)i(is)f(sa)m(v)m(ed)h(in)e(a)h(blo)s(c)m(k)g(of) g(memory)h(allo)s(cated)f(on)g(the)g(stac)m(k.)390 2560 y(It)37 b(is)e(not)i(alw)m(a)m(ys)g(simple)d(to)j(compute)g(the)f(prop) s(er)f(v)-5 b(alue)36 b(for)g Fn(size)p Fy(.)59 b(The)36 b(v)-5 b(alue)36 b(is)f(used)h(b)m(y)390 2670 y Fq(__builtin_apply)21 b Fy(to)26 b(compute)g(the)f(amoun)m(t)h(of)f(data)h(that)g(should)d(b) s(e)i(pushed)e(on)i(the)g(stac)m(k)390 2780 y(and)30 b(copied)g(from)f(the)i(incoming)e(argumen)m(t)i(area.)3188 3029 y(Built-in)d(F)-8 b(unction)-3725 b Ff(void)54 b(__builtin_return) c Fe(\()p Fq(void)29 b(*)p Fn(result)r Fe(\))390 3138 y Fy(This)d(built-in)f(function)i(returns)f(the)i(v)-5 b(alue)28 b(describ)s(ed)e(b)m(y)i Fn(result)g Fy(from)g(the)g(con)m (taining)g(func-)390 3248 y(tion.)40 b(Y)-8 b(ou)31 b(should)d(sp)s (ecify)-8 b(,)30 b(for)g Fn(result)p Fy(,)g(a)h(v)-5 b(alue)29 b(returned)h(b)m(y)g Fq(__builtin_apply)p Fy(.)150 3518 y Fs(5.6)68 b(Naming)46 b(an)f(Expression's)h(T)l(yp)t(e)275 3715 y Fy(Y)-8 b(ou)32 b(can)g(giv)m(e)h(a)f(name)g(to)h(the)f(t)m(yp)s (e)g(of)g(an)g(expression)f(using)f(a)j Fq(typedef)d Fy(declaration)h(with)g(an)150 3825 y(initializer.)38 b(Here)31 b(is)e(ho)m(w)h(to)h(de\014ne)f Fn(name)36 b Fy(as)30 b(a)h(t)m(yp)s(e)g(name)f(for)g(the)h(t)m(yp)s(e)f(of)h Fn(exp)s Fy(:)390 3958 y Fq(typedef)46 b Fn(name)53 b Fq(=)47 b Fn(exp)s Fq(;)275 4098 y Fy(This)38 b(is)i(useful)f(in)g (conjunction)g(with)h(the)g(statemen)m(ts-within-expressions)f (feature.)72 b(Here)41 b(is)150 4208 y(ho)m(w)29 b(the)h(t)m(w)m(o)g (together)h(can)e(b)s(e)g(used)f(to)i(de\014ne)f(a)g(safe)h(\\maxim)m (um")f(macro)h(that)g(op)s(erates)f(on)h(an)m(y)150 4317 y(arithmetic)g(t)m(yp)s(e:)390 4451 y Fq(#define)46 b(max\(a,b\))f(\\) 485 4555 y(\({typedef)h(_ta)h(=)g(\(a\),)g(_tb)g(=)g(\(b\);)94 b(\\)581 4658 y(_ta)47 b(_a)g(=)g(\(a\);)g(_tb)g(_b)g(=)h(\(b\);)237 b(\\)581 4762 y(_a)47 b(>)h(_b)f(?)g(_a)g(:)h(_b;)f(}\))275 4902 y Fy(The)25 b(reason)i(for)e(using)g(names)h(that)h(start)g(with)e (underscores)g(for)h(the)g(lo)s(cal)f(v)-5 b(ariables)25 b(is)h(to)g(a)m(v)m(oid)150 5011 y(con\015icts)34 b(with)f(v)-5 b(ariable)33 b(names)i(that)g(o)s(ccur)f(within)e(the)i(expressions)f (that)i(are)g(substituted)e(for)h Fq(a)150 5121 y Fy(and)e Fq(b)p Fy(.)49 b(Ev)m(en)m(tually)33 b(w)m(e)g(hop)s(e)g(to)g(design)f (a)i(new)e(form)h(of)g(declaration)g(syn)m(tax)h(that)f(allo)m(ws)g(y)m (ou)g(to)150 5230 y(declare)c(v)-5 b(ariables)28 b(whose)h(scop)s(es)h (start)g(only)e(after)i(their)e(initializers;)f(this)h(will)f(b)s(e)i (a)g(more)h(reliable)150 5340 y(w)m(a)m(y)h(to)g(prev)m(en)m(t)g(suc)m (h)g(con\015icts.)p eop %%Page: 161 171 161 170 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(161)150 299 y Fs(5.7)68 b(Referring)46 b(to)g(a)f(T)l(yp)t(e)f(with)i Ft(typeof)275 493 y Fy(Another)32 b(w)m(a)m(y)h(to)g(refer)f(to)h(the)f (t)m(yp)s(e)h(of)f(an)g(expression)f(is)h(with)f Fq(typeof)p Fy(.)44 b(The)32 b(syn)m(tax)h(of)f(using)150 603 y(of)40 b(this)e(k)m(eyw)m(ord)i(lo)s(oks)f(lik)m(e)f Fq(sizeof)p Fy(,)j(but)d(the)i(construct)g(acts)g(seman)m(tically)f(lik)m(e)f(a)i (t)m(yp)s(e)g(name)150 713 y(de\014ned)29 b(with)g Fq(typedef)p Fy(.)275 849 y(There)35 b(are)h(t)m(w)m(o)i(w)m(a)m(ys)f(of)f(writing)e (the)i(argumen)m(t)g(to)h Fq(typeof)p Fy(:)50 b(with)35 b(an)h(expression)f(or)h(with)f(a)150 959 y(t)m(yp)s(e.)41 b(Here)31 b(is)e(an)h(example)h(with)e(an)h(expression:)390 1089 y Fq(typeof)46 b(\(x[0]\(1\)\))150 1226 y Fy(This)31 b(assumes)i(that)h Fq(x)f Fy(is)f(an)h(arra)m(y)h(of)f(p)s(oin)m(ters)f (to)i(functions;)g(the)f(t)m(yp)s(e)g(describ)s(ed)e(is)i(that)g(of)h (the)150 1335 y(v)-5 b(alues)30 b(of)g(the)h(functions.)275 1472 y(Here)f(is)g(an)g(example)g(with)f(a)i(t)m(yp)s(ename)g(as)f(the) h(argumen)m(t:)390 1603 y Fq(typeof)46 b(\(int)h(*\))150 1739 y Fy(Here)31 b(the)f(t)m(yp)s(e)h(describ)s(ed)d(is)i(that)h(of)f (p)s(oin)m(ters)f(to)j Fq(int)p Fy(.)275 1875 y(If)c(y)m(ou)h(are)g (writing)d(a)j(header)g(\014le)f(that)h(m)m(ust)f(w)m(ork)h(when)f (included)e(in)h(ISO)h(C)g(programs,)h(write)150 1985 y Fq(__typeof__)f Fy(instead)h(of)i Fq(typeof)p Fy(.)39 b(See)30 b(Section)h(5.40)g([Alternate)h(Keyw)m(ords],)e(page)h(213.) 275 2122 y(A)f Fq(typeof)p Fy(-construct)e(can)j(b)s(e)e(used)g(an)m (ywhere)h(a)g(t)m(yp)s(edef)g(name)f(could)g(b)s(e)h(used.)39 b(F)-8 b(or)31 b(example,)150 2231 y(y)m(ou)g(can)f(use)g(it)g(in)f(a)i (declaration,)f(in)f(a)i(cast,)h(or)e(inside)e(of)j Fq(sizeof)d Fy(or)j Fq(typeof)p Fy(.)225 2368 y Fx(\017)60 b Fy(This)29 b(declares)h Fq(y)g Fy(with)f(the)h(t)m(yp)s(e)h(of)g(what)f Fq(x)g Fy(p)s(oin)m(ts)f(to.)570 2497 y Fq(typeof)46 b(\(*x\))h(y;)225 2633 y Fx(\017)60 b Fy(This)29 b(declares)h Fq(y)g Fy(as)g(an)h(arra)m(y)g(of)f(suc)m(h)g(v)-5 b(alues.)570 2762 y Fq(typeof)46 b(\(*x\))h(y[4];)225 2898 y Fx(\017)60 b Fy(This)29 b(declares)h Fq(y)g Fy(as)g(an)h(arra)m(y)g(of)f(p)s(oin)m (ters)f(to)i(c)m(haracters:)570 3028 y Fq(typeof)46 b(\(typeof)g (\(char)g(*\)[4]\))g(y;)330 3163 y Fy(It)30 b(is)g(equiv)-5 b(alen)m(t)30 b(to)h(the)f(follo)m(wing)f(traditional)g(C)h (declaration:)570 3293 y Fq(char)47 b(*y[4];)330 3428 y Fy(T)-8 b(o)29 b(see)h(the)f(meaning)f(of)h(the)g(declaration)f (using)f Fq(typeof)p Fy(,)h(and)g(wh)m(y)h(it)f(migh)m(t)h(b)s(e)f(a)h (useful)e(w)m(a)m(y)330 3538 y(to)k(write,)f(let's)g(rewrite)g(it)g (with)f(these)i(macros:)570 3667 y Fq(#define)46 b(pointer\(T\))93 b(typeof\(T)45 b(*\))570 3771 y(#define)h(array\(T,)f(N\))j(typeof\(T)d ([N]\))330 3907 y Fy(No)m(w)31 b(the)g(declaration)f(can)g(b)s(e)g (rewritten)f(this)h(w)m(a)m(y:)570 4036 y Fq(array)46 b(\(pointer)g(\(char\),)g(4\))h(y;)330 4172 y Fy(Th)m(us,)30 b Fq(array)e(\(pointer)h(\(char\),)f(4\))i Fy(is)f(the)i(t)m(yp)s(e)f (of)h(arra)m(ys)g(of)f(4)h(p)s(oin)m(ters)e(to)i Fq(char)p Fy(.)150 4434 y Fs(5.8)68 b(Generalized)46 b(Lv)-7 b(alues)275 4629 y Fy(Comp)s(ound)21 b(expressions,)k(conditional)d(expressions)h (and)h(casts)h(are)f(allo)m(w)m(ed)g(as)h(lv)-5 b(alues)22 b(pro)m(vided)150 4738 y(their)36 b(op)s(erands)f(are)i(lv)-5 b(alues.)59 b(This)35 b(means)h(that)h(y)m(ou)g(can)g(tak)m(e)i(their)d (addresses)g(or)g(store)i(v)-5 b(alues)150 4848 y(in)m(to)30 b(them.)275 4984 y(Standard)f(C)p Fq(++)h Fy(allo)m(ws)g(comp)s(ound)f (expressions)g(and)i(conditional)e(expressions)g(as)i(lv)-5 b(alues,)30 b(and)150 5094 y(p)s(ermits)f(casts)i(to)g(reference)g(t)m (yp)s(e,)g(so)f(use)g(of)h(this)e(extension)h(is)f(deprecated)i(for)f (C)p Fq(++)g Fy(co)s(de.)275 5230 y(F)-8 b(or)37 b(example,)i(a)e(comp) s(ound)f(expression)g(can)h(b)s(e)g(assigned,)h(pro)m(vided)d(the)j (last)e(expression)g(in)150 5340 y(the)31 b(sequence)f(is)g(an)g(lv)-5 b(alue.)39 b(These)31 b(t)m(w)m(o)g(expressions)e(are)i(equiv)-5 b(alen)m(t:)p eop %%Page: 162 172 162 171 bop 150 -116 a Fy(162)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(\(a,)47 b(b\))g(+=)g(5)390 403 y(a,)g(\(b)g(+=)h(5\))275 534 y Fy(Similarly)-8 b(,)27 b(the)j(address)f(of)i(the)f(comp)s(ound)f(expression)g(can)h(b)s(e)g (tak)m(en.)42 b(These)30 b(t)m(w)m(o)h(expressions)150 644 y(are)g(equiv)-5 b(alen)m(t:)390 770 y Fq(&\(a,)47 b(b\))390 874 y(a,)g(&b)275 1005 y Fy(A)35 b(conditional)e(expression)h (is)g(a)i(v)-5 b(alid)33 b(lv)-5 b(alue)34 b(if)g(its)h(t)m(yp)s(e)g (is)f(not)h(v)m(oid)g(and)g(the)g(true)g(and)f(false)150 1115 y(branc)m(hes)c(are)h(b)s(oth)e(v)-5 b(alid)29 b(lv)-5 b(alues.)39 b(F)-8 b(or)32 b(example,)e(these)h(t)m(w)m(o)g (expressions)e(are)i(equiv)-5 b(alen)m(t:)390 1241 y Fq(\(a)47 b(?)h(b)f(:)h(c\))f(=)g(5)390 1345 y(\(a)g(?)h(b)f(=)h(5)f(:) g(\(c)h(=)f(5\)\))275 1476 y Fy(A)30 b(cast)h(is)e(a)h(v)-5 b(alid)28 b(lv)-5 b(alue)29 b(if)g(its)g(op)s(erand)g(is)g(an)h(lv)-5 b(alue.)39 b(A)30 b(simple)e(assignmen)m(t)i(whose)g(left-hand)150 1586 y(side)d(is)f(a)i(cast)h(w)m(orks)f(b)m(y)f(con)m(v)m(erting)h (the)g(righ)m(t-hand)f(side)f(\014rst)h(to)i(the)e(sp)s(eci\014ed)f(t)m (yp)s(e,)j(then)e(to)i(the)150 1695 y(t)m(yp)s(e)g(of)g(the)g(inner)e (left-hand)h(side)g(expression.)39 b(After)29 b(this)f(is)g(stored,)h (the)g(v)-5 b(alue)29 b(is)f(con)m(v)m(erted)i(bac)m(k)150 1805 y(to)36 b(the)g(sp)s(eci\014ed)d(t)m(yp)s(e)j(to)g(b)s(ecome)g (the)f(v)-5 b(alue)35 b(of)h(the)f(assignmen)m(t.)56 b(Th)m(us,)36 b(if)e Fq(a)h Fy(has)g(t)m(yp)s(e)h Fq(char)29 b(*)p Fy(,)150 1915 y(the)i(follo)m(wing)d(t)m(w)m(o)k(expressions)d (are)i(equiv)-5 b(alen)m(t:)390 2041 y Fq(\(int\)a)46 b(=)i(5)390 2144 y(\(int\)\(a)e(=)h(\(char)g(*\)\(int\)5\))275 2276 y Fy(An)40 b(assignmen)m(t-with-arithmetic)f(op)s(eration)h(suc)m (h)h(as)f(`)p Fq(+=)p Fy(')h(applied)d(to)k(a)f(cast)h(p)s(erforms)d (the)150 2386 y(arithmetic)f(using)e(the)j(t)m(yp)s(e)g(resulting)d (from)i(the)g(cast,)k(and)c(then)g(con)m(tin)m(ues)g(as)h(in)e(the)h (previous)150 2495 y(case.)k(Therefore,)30 b(these)h(t)m(w)m(o)h (expressions)d(are)h(equiv)-5 b(alen)m(t:)390 2621 y Fq(\(int\)a)46 b(+=)h(5)390 2725 y(\(int\)\(a)f(=)h(\(char)g (*\)\(int\))e(\(\(int\)a)h(+)i(5\)\))275 2857 y Fy(Y)-8 b(ou)31 b(cannot)g(tak)m(e)i(the)e(address)f(of)h(an)g(lv)-5 b(alue)30 b(cast,)i(b)s(ecause)f(the)g(use)g(of)g(its)f(address)g(w)m (ould)g(not)150 2966 y(w)m(ork)d(out)f(coheren)m(tly)-8 b(.)40 b(Supp)s(ose)25 b(that)i Fq(&\(int\)f)d Fy(w)m(ere)j(p)s (ermitted,)f(where)g Fq(f)g Fy(has)g(t)m(yp)s(e)h Fq(float)p Fy(.)38 b(Then)150 3076 y(the)i(follo)m(wing)e(statemen)m(t)k(w)m(ould) d(try)g(to)i(store)f(an)g(in)m(teger)g(bit-pattern)g(where)f(a)h (\015oating)g(p)s(oin)m(t)150 3185 y(n)m(um)m(b)s(er)29 b(b)s(elongs:)390 3311 y Fq(*&\(int\)f)46 b(=)h(1;)275 3443 y Fy(This)24 b(is)i(quite)g(di\013eren)m(t)h(from)f(what)h Fq(\(int\)f)h(=)i(1)d Fy(w)m(ould)e(do|that)j(w)m(ould)d(con)m(v)m(ert) j(1)g(to)f(\015oating)150 3553 y(p)s(oin)m(t)34 b(and)f(store)j(it.)52 b(Rather)35 b(than)f(cause)i(this)d(inconsistency)-8 b(,)35 b(w)m(e)g(think)e(it)h(is)g(b)s(etter)g(to)i(prohibit)150 3662 y(use)30 b(of)h(`)p Fq(&)p Fy(')f(on)g(a)h(cast.)275 3794 y(If)d(y)m(ou)h(really)f(do)h(w)m(an)m(t)h(an)e Fq(int)i(*)e Fy(p)s(oin)m(ter)g(with)g(the)h(address)f(of)h Fq(f)p Fy(,)g(y)m(ou)g(can)h(simply)c(write)i Fq(\(int)150 3903 y(*\)&f)p Fy(.)150 4152 y Fs(5.9)68 b(Conditionals)47 b(with)e(Omitted)h(Op)t(erands)275 4342 y Fy(The)20 b(middle)e(op)s (erand)h(in)h(a)g(conditional)f(expression)h(ma)m(y)h(b)s(e)f(omitted.) 37 b(Then)20 b(if)f(the)i(\014rst)f(op)s(erand)150 4452 y(is)29 b(nonzero,)i(its)f(v)-5 b(alue)30 b(is)f(the)i(v)-5 b(alue)30 b(of)g(the)h(conditional)e(expression.)275 4583 y(Therefore,)h(the)g(expression)390 4709 y Fq(x)47 b(?)h(:)f(y)150 4841 y Fy(has)30 b(the)h(v)-5 b(alue)30 b(of)g Fq(x)g Fy(if)f(that)i(is)f(nonzero;)h(otherwise,)f(the)g(v)-5 b(alue)30 b(of)h Fq(y)p Fy(.)275 4973 y(This)d(example)i(is)g(p)s (erfectly)f(equiv)-5 b(alen)m(t)30 b(to)390 5099 y Fq(x)47 b(?)h(x)f(:)h(y)150 5230 y Fy(In)27 b(this)f(simple)f(case,)30 b(the)d(abilit)m(y)f(to)i(omit)g(the)f(middle)e(op)s(erand)h(is)h(not)h (esp)s(ecially)d(useful.)38 b(When)27 b(it)150 5340 y(b)s(ecomes)f (useful)f(is)g(when)h(the)g(\014rst)f(op)s(erand)h(do)s(es,)h(or)f(ma)m (y)h(\(if)e(it)h(is)f(a)i(macro)g(argumen)m(t\),)h(con)m(tain)f(a)p eop %%Page: 163 173 163 172 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(163)150 299 y(side)30 b(e\013ect.)46 b(Then)30 b(rep)s(eating)h(the)h(op)s (erand)e(in)g(the)i(middle)d(w)m(ould)h(p)s(erform)g(the)i(side)e (e\013ect)j(t)m(wice.)150 408 y(Omitting)41 b(the)h(middle)e(op)s (erand)h(uses)h(the)g(v)-5 b(alue)42 b(already)g(computed)g(without)f (the)i(undesirable)150 518 y(e\013ects)32 b(of)e(recomputing)g(it.)150 784 y Fs(5.10)68 b(Double-W)-11 b(ord)45 b(In)l(tegers)275 981 y Fy(ISO)d(C99)i(supp)s(orts)e(data)i(t)m(yp)s(es)g(for)g(in)m (tegers)f(that)i(are)f(at)g(least)g(64)h(bits)d(wide,)k(and)d(as)h(an) 150 1090 y(extension)33 b(GCC)h(supp)s(orts)d(them)j(in)e(C89)j(mo)s (de)e(and)g(in)f(C)p Fq(++)p Fy(.)50 b(Simply)31 b(write)i Fq(long)c(long)g(int)k Fy(for)150 1200 y(a)g(signed)f(in)m(teger,)h(or) g Fq(unsigned)28 b(long)h(long)g(int)j Fy(for)h(an)f(unsigned)f(in)m (teger.)47 b(T)-8 b(o)33 b(mak)m(e)h(an)f(in)m(teger)150 1309 y(constan)m(t)42 b(of)e(t)m(yp)s(e)h Fq(long)29 b(long)g(int)p Fy(,)42 b(add)e(the)h(su\016x)e(`)p Fq(LL)p Fy(')h(to)h(the)g(in)m(teger.)71 b(T)-8 b(o)41 b(mak)m(e)g(an)g(in)m (teger)150 1419 y(constan)m(t)32 b(of)e(t)m(yp)s(e)h Fq(unsigned)d(long)h(long)g(int)p Fy(,)h(add)g(the)g(su\016x)g(`)p Fq(ULL)p Fy(')g(to)h(the)f(in)m(teger.)275 1557 y(Y)-8 b(ou)23 b(can)g(use)g(these)h(t)m(yp)s(es)f(in)f(arithmetic)g(lik)m(e)g (an)m(y)i(other)f(in)m(teger)g(t)m(yp)s(es.)39 b(Addition,)22 b(subtraction,)150 1667 y(and)39 b(bit)m(wise)g(b)s(o)s(olean)f(op)s (erations)h(on)h(these)g(t)m(yp)s(es)g(are)g(op)s(en-co)s(ded)f(on)h (all)e(t)m(yp)s(es)i(of)g(mac)m(hines.)150 1776 y(Multiplication)d(is)i (op)s(en-co)s(ded)g(if)g(the)h(mac)m(hine)f(supp)s(orts)f(fullw)m (ord-to-doublew)m(ord)f(a)j(widening)150 1886 y(m)m(ultiply)e (instruction.)68 b(Division)38 b(and)i(shifts)e(are)j(op)s(en-co)s(ded) f(only)f(on)h(mac)m(hines)g(that)h(pro)m(vide)150 1995 y(sp)s(ecial)32 b(supp)s(ort.)49 b(The)34 b(op)s(erations)f(that)h(are) g(not)g(op)s(en-co)s(ded)g(use)f(sp)s(ecial)f(library)g(routines)g (that)150 2105 y(come)f(with)e(GCC.)275 2243 y(There)e(ma)m(y)h(b)s(e)g (pitfalls)d(when)i(y)m(ou)i(use)e Fq(long)i(long)e Fy(t)m(yp)s(es)h (for)g(function)e(argumen)m(ts,)j(unless)e(y)m(ou)150 2353 y(declare)k(function)e(protot)m(yp)s(es.)43 b(If)31 b(a)g(function)f(exp)s(ects)h(t)m(yp)s(e)g Fq(int)f Fy(for)h(its)f (argumen)m(t,)i(and)e(y)m(ou)h(pass)150 2462 y(a)i(v)-5 b(alue)31 b(of)i(t)m(yp)s(e)f Fq(long)d(long)g(int)p Fy(,)j(confusion)f(will)f(result)h(b)s(ecause)h(the)h(caller)e(and)h (the)g(subroutine)150 2572 y(will)26 b(disagree)i(ab)s(out)g(the)g(n)m (um)m(b)s(er)f(of)h(b)m(ytes)h(for)f(the)h(argumen)m(t.)40 b(Lik)m(ewise,)28 b(if)f(the)i(function)e(exp)s(ects)150 2681 y Fq(long)i(long)g(int)24 b Fy(and)f(y)m(ou)h(pass)g Fq(int)p Fy(.)38 b(The)23 b(b)s(est)h(w)m(a)m(y)h(to)g(a)m(v)m(oid)g (suc)m(h)e(problems)g(is)g(to)i(use)e(protot)m(yp)s(es.)150 2948 y Fs(5.11)68 b(Complex)46 b(Num)l(b)t(ers)275 3144 y Fy(ISO)25 b(C99)i(supp)s(orts)e(complex)h(\015oating)g(data)h(t)m(yp) s(es,)h(and)e(as)h(an)f(extension)g(GCC)g(supp)s(orts)f(them)150 3253 y(in)33 b(C89)i(mo)s(de)f(and)g(in)f(C)p Fq(++)p Fy(,)h(and)g(supp)s(orts)f(complex)h(in)m(teger)h(data)g(t)m(yp)s(es)f (whic)m(h)f(are)i(not)g(part)f(of)150 3363 y(ISO)g(C99.)55 b(Y)-8 b(ou)35 b(can)g(declare)g(complex)g(t)m(yp)s(es)g(using)e(the)i (k)m(eyw)m(ord)g Fq(_Complex)p Fy(.)52 b(As)35 b(an)g(extension,)150 3473 y(the)c(older)e(GNU)i(k)m(eyw)m(ord)g Fq(__complex__)c Fy(is)j(also)g(supp)s(orted.)275 3611 y(F)-8 b(or)33 b(example,)h(`)p Fq(_Complex)29 b(double)f(x;)p Fy(')33 b(declares)g Fq(x)g Fy(as)g(a)h(v)-5 b(ariable)32 b(whose)g(real)h (part)g(and)g(imag-)150 3720 y(inary)f(part)h(are)h(b)s(oth)e(of)i(t)m (yp)s(e)f Fq(double)p Fy(.)48 b(`)p Fq(_Complex)29 b(short)g(int)g(y;)p Fy(')k(declares)g Fq(y)g Fy(to)h(ha)m(v)m(e)h(real)e(and)150 3830 y(imaginary)28 b(parts)i(of)g(t)m(yp)s(e)g Fq(short)f(int)p Fy(;)g(this)f(is)h(not)h(lik)m(ely)e(to)j(b)s(e)e(useful,)f(but)h(it)h (sho)m(ws)f(that)h(the)g(set)150 3939 y(of)h(complex)f(t)m(yp)s(es)g (is)f(complete.)275 4078 y(T)-8 b(o)31 b(write)f(a)h(constan)m(t)h (with)e(a)h(complex)g(data)g(t)m(yp)s(e,)h(use)e(the)i(su\016x)d(`)p Fq(i)p Fy(')i(or)g(`)p Fq(j)p Fy(')g(\(either)g(one;)h(they)150 4187 y(are)h(equiv)-5 b(alen)m(t\).)48 b(F)-8 b(or)33 b(example,)g Fq(2.5fi)f Fy(has)g(t)m(yp)s(e)h Fq(_Complex)28 b(float)k Fy(and)g Fq(3i)g Fy(has)g(t)m(yp)s(e)h Fq(_Complex)150 4297 y(int)p Fy(.)55 b(Suc)m(h)35 b(a)h(constan)m(t)h(alw)m(a)m(ys)f (has)f(a)h(pure)e(imaginary)g(v)-5 b(alue,)37 b(but)e(y)m(ou)h(can)f (form)g(an)m(y)h(complex)150 4406 y(v)-5 b(alue)23 b(y)m(ou)i(lik)m(e)e (b)m(y)h(adding)f(one)h(to)h(a)f(real)g(constan)m(t.)39 b(This)23 b(is)g(a)h(GNU)h(extension;)h(if)d(y)m(ou)h(ha)m(v)m(e)h(an)f (ISO)150 4516 y(C99)30 b(conforming)e(C)g(library)f(\(suc)m(h)i(as)h (GNU)f(lib)s(c\),)f(and)h(w)m(an)m(t)g(to)h(construct)g(complex)f (constan)m(ts)h(of)150 4625 y(\015oating)23 b(t)m(yp)s(e,)i(y)m(ou)f (should)d(include)g Fq()f Fy(and)j(use)g(the)g(macros)h Fq(I)f Fy(or)g Fq(_Complex_I)d Fy(instead.)275 4764 y(T)-8 b(o)30 b(extract)i(the)e(real)g(part)f(of)i(a)f(complex-v)-5 b(alued)29 b(expression)g Fn(exp)p Fy(,)h(write)f Fq(__real__)g Fn(exp)s Fy(.)40 b(Lik)m(e-)150 4873 y(wise,)33 b(use)g Fq(__imag__)d Fy(to)k(extract)h(the)e(imaginary)f(part.)48 b(This)31 b(is)h(a)i(GNU)f(extension;)i(for)d(v)-5 b(alues)33 b(of)150 4983 y(\015oating)26 b(t)m(yp)s(e,)h(y)m(ou)f(should)e(use)i (the)g(ISO)f(C99)h(functions)f Fq(crealf)p Fy(,)g Fq(creal)p Fy(,)h Fq(creall)p Fy(,)f Fq(cimagf)p Fy(,)g Fq(cimag)150 5092 y Fy(and)30 b Fq(cimagl)p Fy(,)f(declared)h(in)f Fq()e Fy(and)j(also)g(pro)m(vided)f(as)i(built-in)c (functions)i(b)m(y)h(GCC.)275 5230 y(The)35 b(op)s(erator)i(`)p Fq(~)p Fy(')f(p)s(erforms)e(complex)i(conjugation)g(when)f(used)h(on)g (a)g(v)-5 b(alue)36 b(with)f(a)h(complex)150 5340 y(t)m(yp)s(e.)62 b(This)36 b(is)h(a)h(GNU)g(extension;)j(for)c(v)-5 b(alues)37 b(of)g(\015oating)h(t)m(yp)s(e,)i(y)m(ou)d(should)f(use)h(the)h(ISO)e (C99)p eop %%Page: 164 174 164 173 bop 150 -116 a Fy(164)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y(functions)k Fq(conjf)p Fy(,)i Fq(conj)e Fy(and)h Fq(conjl)p Fy(,)g(declared)g(in)g Fq()d Fy(and)j(also)g(pro)m(vided)f(as)i(built-in)150 408 y(functions)29 b(b)m(y)h(GCC.)275 539 y(GCC)41 b(can)h(allo)s(cate) g(complex)g(automatic)h(v)-5 b(ariables)40 b(in)h(a)h(noncon)m(tiguous) f(fashion;)47 b(it's)41 b(ev)m(en)150 648 y(p)s(ossible)i(for)i(the)g (real)g(part)g(to)h(b)s(e)f(in)e(a)j(register)f(while)e(the)j (imaginary)e(part)h(is)f(on)h(the)g(stac)m(k)150 758 y(\(or)f(vice-v)m(ersa\).)83 b(None)44 b(of)g(the)g(supp)s(orted)e (debugging)h(info)g(formats)h(has)f(a)h(w)m(a)m(y)h(to)g(represen)m(t) 150 868 y(noncon)m(tiguous)33 b(allo)s(cation)f(lik)m(e)g(this,)h(so)g (GCC)g(describ)s(es)e(a)j(noncon)m(tiguous)e(complex)h(v)-5 b(ariable)32 b(as)150 977 y(if)g(it)g(w)m(ere)h(t)m(w)m(o)h(separate)f (v)-5 b(ariables)31 b(of)i(noncomplex)f(t)m(yp)s(e.)47 b(If)32 b(the)h(v)-5 b(ariable's)31 b(actual)i(name)g(is)f Fq(foo)p Fy(,)150 1087 y(the)h(t)m(w)m(o)i(\014ctitious)d(v)-5 b(ariables)32 b(are)h(named)g Fq(foo$real)e Fy(and)h Fq(foo$imag)p Fy(.)47 b(Y)-8 b(ou)34 b(can)f(examine)g(and)f(set)150 1196 y(these)f(t)m(w)m(o)h(\014ctitious)d(v)-5 b(ariables)29 b(with)g(y)m(our)h(debugger.)275 1327 y(A)39 b(future)f(v)m(ersion)g (of)h(GDB)i(will)36 b(kno)m(w)j(ho)m(w)g(to)h(recognize)f(suc)m(h)g (pairs)f(and)g(treat)i(them)f(as)h(a)150 1436 y(single)29 b(v)-5 b(ariable)29 b(with)g(a)i(complex)f(t)m(yp)s(e.)150 1681 y Fs(5.12)68 b(Hex)46 b(Floats)275 1870 y Fy(ISO)23 b(C99)i(supp)s(orts)d(\015oating-p)s(oin)m(t)i(n)m(um)m(b)s(ers)e (written)i(not)g(only)g(in)f(the)h(usual)f(decimal)g(notation,)150 1979 y(suc)m(h)41 b(as)h Fq(1.55e1)p Fy(,)g(but)f(also)g(n)m(um)m(b)s (ers)f(suc)m(h)h(as)h Fq(0x1.fp3)d Fy(written)h(in)g(hexadecimal)h (format.)74 b(As)150 2089 y(a)40 b(GNU)h(extension,)h(GCC)e(supp)s (orts)e(this)h(in)g(C89)h(mo)s(de)g(\(except)h(in)e(some)h(cases)h (when)e(strictly)150 2198 y(conforming\))28 b(and)g(in)f(C)p Fq(++)p Fy(.)39 b(In)28 b(that)h(format)g(the)g(`)p Fq(0x)p Fy(')f(hex)g(in)m(tro)s(ducer)f(and)h(the)h(`)p Fq(p)p Fy(')g(or)f(`)p Fq(P)p Fy(')h(exp)s(onen)m(t)150 2308 y(\014eld)34 b(are)h(mandatory)-8 b(.)55 b(The)34 b(exp)s(onen)m(t)h (is)f(a)i(decimal)d(n)m(um)m(b)s(er)h(that)i(indicates)d(the)j(p)s(o)m (w)m(er)f(of)g(2)g(b)m(y)150 2418 y(whic)m(h)f(the)h(signi\014can)m(t)f (part)h(will)e(b)s(e)h(m)m(ultiplied.)51 b(Th)m(us)34 b(`)p Fq(0x1.f)p Fy(')h(is)f(1)2712 2382 y Fj(15)p 2712 2397 67 4 v 2712 2449 a(16)2788 2418 y Fy(,)j(`)p Fq(p3)p Fy(')e(m)m(ultiplies)d(it)i(b)m(y)h(8,)150 2527 y(and)30 b(the)g(v)-5 b(alue)30 b(of)h Fq(0x1.fp3)d Fy(is)i(the)g(same)h(as)f Fq(1.55e1)p Fy(.)275 2658 y(Unlik)m(e)21 b(for)h(\015oating-p)s(oin)m (t)f(n)m(um)m(b)s(ers)g(in)g(the)h(decimal)g(notation)g(the)g(exp)s (onen)m(t)h(is)e(alw)m(a)m(ys)i(required)150 2767 y(in)42 b(the)h(hexadecimal)f(notation.)78 b(Otherwise)41 b(the)i(compiler)f(w) m(ould)f(not)i(b)s(e)g(able)f(to)i(resolv)m(e)f(the)150 2877 y(am)m(biguit)m(y)33 b(of,)h(e.g.,)i Fq(0x1.f)p Fy(.)49 b(This)31 b(could)i(mean)g Fq(1.0f)f Fy(or)i Fq(1.9375)d Fy(since)i(`)p Fq(f)p Fy(')h(is)e(also)i(the)f(extension) 150 2986 y(for)d(\015oating-p)s(oin)m(t)g(constan)m(ts)h(of)g(t)m(yp)s (e)f Fq(float)p Fy(.)150 3231 y Fs(5.13)68 b(Arra)l(ys)45 b(of)g(Length)g(Zero)275 3420 y Fy(Zero-length)29 b(arra)m(ys)i(are)f (allo)m(w)m(ed)g(in)e(GNU)j(C.)40 b(They)30 b(are)g(v)m(ery)g(useful)f (as)h(the)g(last)g(elemen)m(t)g(of)h(a)150 3529 y(structure)f(whic)m(h) f(is)g(really)h(a)g(header)h(for)f(a)h(v)-5 b(ariable-length)28 b(ob)5 b(ject:)390 3654 y Fq(struct)46 b(line)h({)485 3758 y(int)g(length;)485 3861 y(char)g(contents[0];)390 3965 y(};)390 4173 y(struct)f(line)h(*thisline)e(=)i(\(struct)f(line)h (*\))485 4276 y(malloc)g(\(sizeof)e(\(struct)h(line\))h(+)g (this_length\);)390 4380 y(thisline->length)c(=)48 b(this_length;)275 4511 y Fy(In)36 b(ISO)g(C89,)k(y)m(ou)d(w)m(ould)f(ha)m(v)m(e)j(to)f (giv)m(e)g Fq(contents)d Fy(a)i(length)g(of)g(1,)j(whic)m(h)c(means)h (either)g(y)m(ou)150 4620 y(w)m(aste)32 b(space)e(or)h(complicate)f (the)h(argumen)m(t)g(to)g Fq(malloc)p Fy(.)275 4751 y(In)d(ISO)f(C99,)j (y)m(ou)f(w)m(ould)f(use)h(a)g Fn(\015exible)e(arra)m(y)i(mem)m(b)s(er) p Fy(,)g(whic)m(h)f(is)f(sligh)m(tly)h(di\013eren)m(t)g(in)f(syn)m(tax) 150 4860 y(and)j(seman)m(tics:)225 4990 y Fx(\017)60 b Fy(Flexible)29 b(arra)m(y)i(mem)m(b)s(ers)e(are)i(written)e(as)i Fq(contents[])d Fy(without)h(the)i Fq(0)p Fy(.)225 5121 y Fx(\017)60 b Fy(Flexible)37 b(arra)m(y)h(mem)m(b)s(ers)g(ha)m(v)m(e)i (incomplete)d(t)m(yp)s(e,)k(and)d(so)g(the)h Fq(sizeof)d Fy(op)s(erator)j(ma)m(y)g(not)330 5230 y(b)s(e)e(applied.)59 b(As)37 b(a)h(quirk)d(of)j(the)f(original)f(implemen)m(tation)g(of)h (zero-length)h(arra)m(ys,)i Fq(sizeof)330 5340 y Fy(ev)-5 b(aluates)31 b(to)g(zero.)p eop %%Page: 165 175 165 174 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(165)225 299 y Fx(\017)60 b Fy(Flexible)44 b(arra)m(y)i(mem)m(b)s(ers)f(ma)m(y)h (only)f(app)s(ear)f(as)i(the)g(last)f(mem)m(b)s(er)g(of)h(a)g Fq(struct)e Fy(that)i(is)330 408 y(otherwise)30 b(non-empt)m(y)-8 b(.)275 563 y(GCC)27 b(v)m(ersions)h(b)s(efore)f(3.0)j(allo)m(w)m(ed)e (zero-length)g(arra)m(ys)h(to)g(b)s(e)e(statically)h(initialized,)d(as) k(if)e(they)150 672 y(w)m(ere)c(\015exible)e(arra)m(ys.)38 b(In)22 b(addition)e(to)k(those)f(cases)g(that)g(w)m(ere)g(useful,)f (it)g(also)h(allo)m(w)m(ed)f(initializations)150 782 y(in)h(situations)f(that)j(w)m(ould)e(corrupt)g(later)h(data.)39 b(Non-empt)m(y)25 b(initialization)c(of)j(zero-length)h(arra)m(ys)f(is) 150 892 y(no)m(w)k(treated)i(lik)m(e)d(an)m(y)i(case)h(where)d(there)i (are)g(more)f(initializer)d(elemen)m(ts)k(than)f(the)h(arra)m(y)g (holds,)e(in)150 1001 y(that)k(a)g(suitable)e(w)m(arning)g(ab)s(out)h Fq(")p Fy(excess)h(elemen)m(ts)f(in)f(arra)m(y)p Fq(")i Fy(is)e(giv)m(en,)i(and)f(the)g(excess)i(elemen)m(ts)150 1111 y(\(all)e(of)g(them,)h(in)e(this)g(case\))j(are)f(ignored.)275 1243 y(Instead)e(GCC)g(allo)m(ws)f(static)i(initialization)d(of)i (\015exible)f(arra)m(y)i(mem)m(b)s(ers.)39 b(This)28 b(is)g(equiv)-5 b(alen)m(t)29 b(to)150 1352 y(de\014ning)f(a)i(new)f (structure)g(con)m(taining)g(the)h(original)e(structure)h(follo)m(w)m (ed)g(b)m(y)h(an)g(arra)m(y)g(of)f(su\016cien)m(t)150 1462 y(size)34 b(to)h(con)m(tain)f(the)h(data.)52 b(I.e.)35 b(in)e(the)h(follo)m(wing,)g Fq(f1)g Fy(is)f(constructed)h(as)h(if)e (it)g(w)m(ere)i(declared)f(lik)m(e)150 1571 y Fq(f2)p Fy(.)390 1698 y Fq(struct)46 b(f1)h({)485 1801 y(int)g(x;)h(int)e(y[];) 390 1905 y(})h(f1)h(=)f({)h(1,)f({)g(2,)g(3,)h(4)f(})g(};)390 2113 y(struct)f(f2)h({)485 2216 y(struct)g(f1)g(f1;)g(int)g(data[3];) 390 2320 y(})g(f2)h(=)f({)h({)f(1)g(},)h({)f(2,)g(3,)g(4)h(})f(};)150 2452 y Fy(The)32 b(con)m(v)m(enience)i(of)f(this)f(extension)g(is)g (that)i Fq(f1)e Fy(has)g(the)h(desired)f(t)m(yp)s(e,)h(eliminating)e (the)i(need)f(to)150 2562 y(consisten)m(tly)e(refer)g(to)h Fq(f2.f1)p Fy(.)275 2694 y(This)g(has)i(symmetry)g(with)f(normal)g (static)i(arra)m(ys,)g(in)e(that)i(an)f(arra)m(y)h(of)f(unkno)m(wn)f (size)h(is)f(also)150 2803 y(written)d(with)h Fq([])p Fy(.)275 2935 y(Of)h(course,)i(this)d(extension)i(only)f(mak)m(es)i (sense)f(if)f(the)h(extra)g(data)h(comes)g(at)g(the)f(end)f(of)h(a)g (top-)150 3045 y(lev)m(el)39 b(ob)5 b(ject,)43 b(as)c(otherwise)g(w)m (e)h(w)m(ould)e(b)s(e)h(o)m(v)m(erwriting)f(data)i(at)h(subsequen)m(t)d (o\013sets.)69 b(T)-8 b(o)39 b(a)m(v)m(oid)150 3154 y(undue)g (complication)g(and)g(confusion)g(with)g(initialization)e(of)j(deeply)f (nested)i(arra)m(ys,)i(w)m(e)d(simply)150 3264 y(disallo)m(w)26 b(an)m(y)h(non-empt)m(y)h(initialization)d(except)j(when)f(the)g (structure)g(is)g(the)h(top-lev)m(el)g(ob)5 b(ject.)40 b(F)-8 b(or)150 3374 y(example:)390 3500 y Fq(struct)46 b(foo)h({)g(int)g(x;)h(int)e(y[];)h(};)390 3603 y(struct)f(bar)h({)g (struct)g(foo)f(z;)i(};)390 3811 y(struct)e(foo)h(a)g(=)h({)f(1,)h({)f (2,)g(3,)g(4)h(})f(};)382 b(//)47 b Fy(V)-8 b(alid.)390 3915 y Fq(struct)46 b(bar)h(b)g(=)h({)f({)h(1,)f({)g(2,)h(3,)f(4)g(})h (})f(};)191 b(//)47 b Fy(In)m(v)-5 b(alid.)390 4019 y Fq(struct)46 b(bar)h(c)g(=)h({)f({)h(1,)f({)g(})h(})f(};)573 b(//)47 b Fy(V)-8 b(alid.)390 4122 y Fq(struct)46 b(foo)h(d[1])g(=)g({) h({)f(1)g({)h(2,)f(3,)g(4)h(})f(})h(};)95 b(//)47 b Fy(In)m(v)-5 b(alid.)150 4372 y Fs(5.14)68 b(Arra)l(ys)45 b(of)g(V)-11 b(ariable)46 b(Length)275 4562 y Fy(V)-8 b(ariable-length)40 b(automatic)j(arra)m(ys)f(are)g(allo)m(w)m(ed)g(in)e(ISO)h(C99,)k(and)c (as)h(an)g(extension)f(GCC)150 4672 y(accepts)k(them)e(in)f(C89)i(mo)s (de)f(and)g(in)f(C)p Fq(++)p Fy(.)80 b(\(Ho)m(w)m(ev)m(er,)49 b(GCC's)43 b(implemen)m(tation)f(of)i(v)-5 b(ariable-)150 4781 y(length)34 b(arra)m(ys)h(do)s(es)f(not)h(y)m(et)h(conform)f(in)e (detail)h(to)h(the)g(ISO)f(C99)h(standard.\))53 b(These)35 b(arra)m(ys)g(are)150 4891 y(declared)22 b(lik)m(e)g(an)m(y)h(other)g (automatic)g(arra)m(ys,)i(but)d(with)f(a)i(length)f(that)h(is)e(not)i (a)g(constan)m(t)h(expression.)150 5000 y(The)29 b(storage)h(is)f(allo) s(cated)g(at)h(the)f(p)s(oin)m(t)g(of)g(declaration)g(and)f(deallo)s (cated)i(when)e(the)h(brace-lev)m(el)h(is)150 5110 y(exited.)41 b(F)-8 b(or)31 b(example:)390 5236 y Fq(FILE)47 b(*)390 5340 y(concat_fopen)d(\(char)j(*s1,)f(char)h(*s2,)g(char)f(*mode\))p eop %%Page: 166 176 166 175 bop 150 -116 a Fy(166)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq({)485 403 y(char)47 b(str[strlen)e(\(s1\))i(+)g(strlen)f(\(s2\))h(+)g(1];)485 506 y(strcpy)g(\(str,)f(s1\);)485 610 y(strcat)h(\(str,)f(s2\);)485 714 y(return)h(fopen)f(\(str,)g(mode\);)390 818 y(})275 964 y Fy(Jumping)20 b(or)i(breaking)g(out)h(of)g(the)g(scop)s(e)f(of)h (the)g(arra)m(y)g(name)g(deallo)s(cates)g(the)g(storage.)39 b(Jumping)150 1073 y(in)m(to)30 b(the)h(scop)s(e)f(is)g(not)g(allo)m(w) m(ed;)h(y)m(ou)g(get)g(an)f(error)g(message)i(for)e(it.)275 1219 y(Y)-8 b(ou)31 b(can)h(use)f(the)g(function)f Fq(alloca)f Fy(to)j(get)h(an)e(e\013ect)h(m)m(uc)m(h)g(lik)m(e)e(v)-5 b(ariable-length)30 b(arra)m(ys.)43 b(The)150 1329 y(function)38 b Fq(alloca)g Fy(is)g(a)m(v)-5 b(ailable)39 b(in)f(man)m(y)i(other)g(C) f(implemen)m(tations)f(\(but)h(not)h(in)e(all\).)67 b(On)39 b(the)150 1439 y(other)31 b(hand,)e(v)-5 b(ariable-length)29 b(arra)m(ys)i(are)g(more)f(elegan)m(t.)275 1585 y(There)36 b(are)h(other)h(di\013erences)e(b)s(et)m(w)m(een)h(these)h(t)m(w)m(o)g (metho)s(ds.)60 b(Space)37 b(allo)s(cated)g(with)f Fq(alloca)150 1694 y Fy(exists)d(un)m(til)e(the)i(con)m(taining)g Fr(function)40 b Fy(returns.)47 b(The)32 b(space)i(for)f(a)g(v)-5 b(ariable-length)32 b(arra)m(y)h(is)f(deal-)150 1804 y(lo)s(cated)39 b(as)g(so)s(on)f(as)h (the)g(arra)m(y)g(name's)g(scop)s(e)g(ends.)64 b(\(If)39 b(y)m(ou)g(use)f(b)s(oth)g(v)-5 b(ariable-length)38 b(arra)m(ys)150 1913 y(and)25 b Fq(alloca)f Fy(in)h(the)h(same)g(function,)f(deallo)s (cation)g(of)h(a)g(v)-5 b(ariable-length)25 b(arra)m(y)h(will)d(also)j (deallo)s(cate)150 2023 y(an)m(ything)k(more)g(recen)m(tly)h(allo)s (cated)f(with)f Fq(alloca)p Fy(.\))275 2169 y(Y)-8 b(ou)30 b(can)h(also)f(use)g(v)-5 b(ariable-length)29 b(arra)m(ys)i(as)g (argumen)m(ts)f(to)i(functions:)390 2309 y Fq(struct)46 b(entry)390 2413 y(tester)g(\(int)h(len,)f(char)h(data[len][len]\))390 2517 y({)485 2620 y(...)390 2724 y(})275 2870 y Fy(The)22 b(length)g(of)h(an)g(arra)m(y)g(is)f(computed)g(once)i(when)e(the)h (storage)h(is)e(allo)s(cated)h(and)f(is)g(remem)m(b)s(ered)150 2980 y(for)30 b(the)h(scop)s(e)f(of)h(the)f(arra)m(y)h(in)e(case)j(y)m (ou)e(access)i(it)e(with)f Fq(sizeof)p Fy(.)275 3126 y(If)40 b(y)m(ou)i(w)m(an)m(t)g(to)g(pass)f(the)h(arra)m(y)g(\014rst)f (and)f(the)i(length)f(afterw)m(ard,)j(y)m(ou)e(can)g(use)f(a)g(forw)m (ard)150 3235 y(declaration)30 b(in)f(the)i(parameter)f(list|another)g (GNU)h(extension.)390 3376 y Fq(struct)46 b(entry)390 3479 y(tester)g(\(int)h(len;)f(char)h(data[len][len],)d(int)j(len\))390 3583 y({)485 3687 y(...)390 3791 y(})275 3937 y Fy(The)26 b(`)p Fq(int)k(len)p Fy(')c(b)s(efore)h(the)g(semicolon)g(is)f(a)h Fn(parameter)h(forw)m(ard)e(declaration)p Fy(,)i(and)e(it)h(serv)m(es)h (the)150 4046 y(purp)s(ose)h(of)h(making)g(the)g(name)h Fq(len)e Fy(kno)m(wn)h(when)g(the)g(declaration)g(of)h Fq(data)e Fy(is)g(parsed.)275 4192 y(Y)-8 b(ou)42 b(can)g(write)f(an)m (y)h(n)m(um)m(b)s(er)e(of)i(suc)m(h)g(parameter)g(forw)m(ard)f (declarations)g(in)g(the)g(parameter)150 4302 y(list.)56 b(They)36 b(can)g(b)s(e)g(separated)g(b)m(y)g(commas)h(or)f (semicolons,)h(but)e(the)h(last)g(one)g(m)m(ust)g(end)g(with)f(a)150 4411 y(semicolon,)24 b(whic)m(h)f(is)f(follo)m(w)m(ed)i(b)m(y)f(the)h (\\real")g(parameter)g(declarations.)38 b(Eac)m(h)24 b(forw)m(ard)f(declaration)150 4521 y(m)m(ust)41 b(matc)m(h)h(a)f (\\real")h(declaration)f(in)e(parameter)j(name)f(and)g(data)g(t)m(yp)s (e.)73 b(ISO)40 b(C99)i(do)s(es)f(not)150 4631 y(supp)s(ort)29 b(parameter)h(forw)m(ard)g(declarations.)150 4917 y Fs(5.15)68 b(Macros)45 b(with)g(a)h(V)-11 b(ariable)45 b(Num)l(b)t(er)g(of)g (Argumen)l(ts.)275 5121 y Fy(In)29 b(the)h(ISO)f(C)g(standard)g(of)h (1999,)i(a)e(macro)h(can)f(b)s(e)f(declared)g(to)i(accept)g(a)g(v)-5 b(ariable)28 b(n)m(um)m(b)s(er)h(of)150 5230 y(argumen)m(ts)i(m)m(uc)m (h)g(as)g(a)g(function)f(can.)42 b(The)30 b(syn)m(tax)i(for)e (de\014ning)f(the)i(macro)h(is)e(similar)e(to)j(that)h(of)150 5340 y(a)f(function.)39 b(Here)31 b(is)e(an)i(example:)p eop %%Page: 167 177 167 176 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(167)390 299 y Fq(#define)46 b(debug\(format,)e(...\))j(fprintf)e(\(stderr,)h (format,)g(__VA_ARGS__\))275 436 y Fy(Here)33 b(`)p Fq(...)p Fy(')g(is)f(a)i Fn(v)-5 b(ariable)32 b(argumen)m(t)p Fy(.)49 b(In)33 b(the)g(in)m(v)m(o)s(cation)g(of)h(suc)m(h)f(a)g (macro,)i(it)e(represen)m(ts)g(the)150 546 y(zero)k(or)g(more)f(tok)m (ens)i(un)m(til)d(the)h(closing)g(paren)m(thesis)g(that)h(ends)e(the)i (in)m(v)m(o)s(cation,)i(including)33 b(an)m(y)150 655 y(commas.)39 b(This)23 b(set)h(of)g(tok)m(ens)h(replaces)f(the)h(iden)m (ti\014er)d Fq(__VA_ARGS__)f Fy(in)i(the)h(macro)g(b)s(o)s(dy)f(wherev) m(er)150 765 y(it)30 b(app)s(ears.)40 b(See)30 b(the)h(CPP)f(man)m(ual) f(for)i(more)f(information.)275 902 y(GCC)g(has)h(long)g(supp)s(orted)e (v)-5 b(ariadic)30 b(macros,)i(and)e(used)g(a)i(di\013eren)m(t)e(syn)m (tax)i(that)g(allo)m(w)m(ed)f(y)m(ou)150 1012 y(to)d(giv)m(e)g(a)f (name)g(to)h(the)g(v)-5 b(ariable)26 b(argumen)m(ts)h(just)g(lik)m(e)f (an)m(y)i(other)f(argumen)m(t.)40 b(Here)28 b(is)e(an)h(example:)390 1143 y Fq(#define)46 b(debug\(format,)e(args...\))i(fprintf)f (\(stderr,)h(format,)g(args\))275 1280 y Fy(This)28 b(is)i(in)f(all)g (w)m(a)m(ys)i(equiv)-5 b(alen)m(t)30 b(to)h(the)g(ISO)e(C)h(example)h (ab)s(o)m(v)m(e,)h(but)d(arguably)h(more)g(readable)150 1390 y(and)g(descriptiv)m(e.)275 1527 y(GNU)c(CPP)g(has)f(t)m(w)m(o)j (further)d(v)-5 b(ariadic)25 b(macro)h(extensions,)h(and)e(p)s(ermits)g (them)h(to)h(b)s(e)e(used)g(with)150 1637 y(either)30 b(of)g(the)h(ab)s(o)m(v)m(e)h(forms)d(of)i(macro)g(de\014nition.)275 1774 y(In)d(standard)h(C,)h(y)m(ou)g(are)g(not)f(allo)m(w)m(ed)h(to)g (lea)m(v)m(e)h(the)f(v)-5 b(ariable)28 b(argumen)m(t)j(out)e(en)m (tirely;)h(but)f(y)m(ou)150 1883 y(are)k(allo)m(w)m(ed)g(to)h(pass)e (an)h(empt)m(y)g(argumen)m(t.)49 b(F)-8 b(or)33 b(example,)h(this)e(in) m(v)m(o)s(cation)g(is)g(in)m(v)-5 b(alid)31 b(in)g(ISO)h(C,)150 1993 y(b)s(ecause)e(there)h(is)e(no)i(comma)g(after)g(the)f(string:)390 2124 y Fq(debug)46 b(\("A)h(message"\))275 2262 y Fy(GNU)34 b(CPP)g(p)s(ermits)e(y)m(ou)i(to)h(completely)f(omit)f(the)i(v)-5 b(ariable)32 b(argumen)m(ts)j(in)d(this)h(w)m(a)m(y)-8 b(.)53 b(In)34 b(the)150 2371 y(ab)s(o)m(v)m(e)26 b(examples,)g(the)f (compiler)e(w)m(ould)h(complain,)h(though)f(since)h(the)g(expansion)e (of)i(the)h(macro)f(still)150 2481 y(has)30 b(the)h(extra)g(comma)g (after)g(the)f(format)h(string.)275 2618 y(T)-8 b(o)28 b(help)f(solv)m(e)i(this)e(problem,)h(CPP)f(b)s(eha)m(v)m(es)i(sp)s (ecially)d(for)i(v)-5 b(ariable)28 b(argumen)m(ts)g(used)g(with)f(the) 150 2728 y(tok)m(en)k(paste)g(op)s(erator,)g(`)p Fq(##)p Fy('.)41 b(If)30 b(instead)f(y)m(ou)i(write)390 2859 y Fq(#define)46 b(debug\(format,)e(...\))j(fprintf)e(\(stderr,)h (format,)g(##)h(__VA_ARGS__\))275 2996 y Fy(and)35 b(if)h(the)g(v)-5 b(ariable)36 b(argumen)m(ts)g(are)h(omitted)g(or)f(empt)m(y)-8 b(,)39 b(the)e(`)p Fq(##)p Fy(')f(op)s(erator)h(causes)g(the)f(pre-)150 3106 y(pro)s(cessor)h(to)h(remo)m(v)m(e)h(the)e(comma)h(b)s(efore)f (it.)62 b(If)36 b(y)m(ou)i(do)f(pro)m(vide)g(some)g(v)-5 b(ariable)37 b(argumen)m(ts)g(in)150 3215 y(y)m(our)24 b(macro)h(in)m(v)m(o)s(cation,)h(GNU)e(CPP)g(do)s(es)g(not)g(complain)f (ab)s(out)h(the)g(paste)h(op)s(eration)e(and)h(instead)150 3325 y(places)h(the)g(v)-5 b(ariable)24 b(argumen)m(ts)h(after)h(the)f (comma.)39 b(Just)25 b(lik)m(e)f(an)m(y)h(other)h(pasted)f(macro)g (argumen)m(t,)150 3435 y(these)31 b(argumen)m(ts)g(are)f(not)h(macro)g (expanded.)150 3699 y Fs(5.16)68 b(Sligh)l(tly)46 b(Lo)t(oser)g(Rules)f (for)g(Escap)t(ed)g(Newlines)275 3894 y Fy(Recen)m(tly)-8 b(,)27 b(the)e(non-traditional)f(prepro)s(cessor)g(has)h(relaxed)g(its) g(treatmen)m(t)h(of)g(escap)s(ed)f(newlines.)150 4004 y(Previously)-8 b(,)25 b(the)g(newline)e(had)h(to)i(immediately)d (follo)m(w)h(a)i(bac)m(kslash.)38 b(The)25 b(curren)m(t)f(implemen)m (tation)150 4113 y(allo)m(ws)e(whitespace)h(in)e(the)i(form)f(of)h (spaces,)i(horizon)m(tal)e(and)f(v)m(ertical)h(tabs,)h(and)e(form)h (feeds)f(b)s(et)m(w)m(een)150 4223 y(the)35 b(bac)m(kslash)g(and)g(the) g(subsequen)m(t)g(newline.)53 b(The)34 b(prepro)s(cessor)h(issues)e(a)j (w)m(arning,)g(but)e(treats)150 4333 y(it)c(as)i(a)f(v)-5 b(alid)29 b(escap)s(ed)i(newline)e(and)h(com)m(bines)h(the)g(t)m(w)m(o) h(lines)d(to)j(form)f(a)g(single)f(logical)g(line.)41 b(This)150 4442 y(w)m(orks)29 b(within)d(commen)m(ts)k(and)f(tok)m (ens,)h(including)c(m)m(ulti-line)g(strings,)j(as)g(w)m(ell)f(as)h(b)s (et)m(w)m(een)h(tok)m(ens.)150 4552 y(Commen)m(ts)c(are)f Fr(not)35 b Fy(treated)26 b(as)g(whitespace)f(for)g(the)h(purp)s(oses)d (of)j(this)e(relaxation,)i(since)f(they)h(ha)m(v)m(e)150 4661 y(not)31 b(y)m(et)g(b)s(een)f(replaced)g(with)f(spaces.)150 4925 y Fs(5.17)68 b(String)45 b(Literals)i(with)e(Em)l(b)t(edded)g (Newlines)275 5121 y Fy(As)20 b(an)g(extension,)i(GNU)f(CPP)f(p)s (ermits)e(string)h(literals)g(to)i(cross)f(m)m(ultiple)e(lines)h (without)g(escaping)150 5230 y(the)30 b(em)m(b)s(edded)f(newlines.)39 b(Eac)m(h)30 b(em)m(b)s(edded)f(newline)f(is)h(replaced)h(with)f(a)h (single)f(`)p Fq(\\n)p Fy(')h(c)m(haracter)h(in)150 5340 y(the)g(resulting)d(string)h(literal,)h(regardless)f(of)i(what)f(form)g (the)h(newline)d(to)s(ok)j(originally)-8 b(.)p eop %%Page: 168 178 168 177 bop 150 -116 a Fy(168)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))275 299 y(CPP)20 b(curren)m(tly)g(allo)m(ws)g (suc)m(h)h(strings)e(in)h(directiv)m(es)g(as)h(w)m(ell)f(\(other)i (than)f(the)g(`)p Fq(#include)p Fy(')e(family\).)150 408 y(This)29 b(is)g(deprecated)i(and)f(will)d(ev)m(en)m(tually)k(b)s (e)e(remo)m(v)m(ed.)150 669 y Fs(5.18)68 b(Non-Lv)-7 b(alue)45 b(Arra)l(ys)g(Ma)l(y)g(Ha)l(v)l(e)h(Subscripts)275 863 y Fy(In)29 b(ISO)g(C99,)i(arra)m(ys)f(that)h(are)g(not)f(lv)-5 b(alues)29 b(still)f(deca)m(y)j(to)g(p)s(oin)m(ters,)e(and)h(ma)m(y)g (b)s(e)g(subscripted,)150 972 y(although)36 b(they)g(ma)m(y)h(not)g(b)s (e)f(mo)s(di\014ed)e(or)j(used)e(after)i(the)g(next)f(sequence)h(p)s (oin)m(t)f(and)f(the)i(unary)150 1082 y(`)p Fq(&)p Fy(')k(op)s(erator)f (ma)m(y)h(not)g(b)s(e)f(applied)e(to)k(them.)71 b(As)40 b(an)g(extension,)j(GCC)d(allo)m(ws)g(suc)m(h)g(arra)m(ys)h(to)150 1191 y(b)s(e)33 b(subscripted)e(in)h(C89)i(mo)s(de,)g(though)f (otherwise)g(they)h(do)f(not)h(deca)m(y)g(to)g(p)s(oin)m(ters)f (outside)f(C99)150 1301 y(mo)s(de.)40 b(F)-8 b(or)31 b(example,)g(this)e(is)g(v)-5 b(alid)29 b(in)g(GNU)i(C)f(though)g(not)h (v)-5 b(alid)29 b(in)g(C89:)390 1431 y Fq(struct)46 b(foo)h({int)g (a[4];};)390 1638 y(struct)f(foo)h(f\(\);)390 1846 y(bar)g(\(int)g (index\))390 1950 y({)485 2054 y(return)g(f\(\).a[index];)390 2157 y(})150 2409 y Fs(5.19)68 b(Arithmetic)46 b(on)f Ft(void)p Fs(-)d(and)j(F)-11 b(unction-P)l(oin)l(ters)275 2603 y Fy(In)30 b(GNU)i(C,)f(addition)e(and)i(subtraction)f(op)s (erations)h(are)g(supp)s(orted)e(on)j(p)s(oin)m(ters)e(to)i Fq(void)e Fy(and)150 2713 y(on)g(p)s(oin)m(ters)g(to)h(functions.)39 b(This)28 b(is)i(done)g(b)m(y)g(treating)h(the)g(size)f(of)g(a)h Fq(void)e Fy(or)i(of)f(a)h(function)e(as)i(1.)275 2848 y(A)d(consequence)g(of)h(this)d(is)h(that)i Fq(sizeof)d Fy(is)h(also)h(allo)m(w)m(ed)g(on)g Fq(void)f Fy(and)g(on)h(function)f (t)m(yp)s(es,)i(and)150 2958 y(returns)g(1.)275 3093 y(The)g(option)h(`)p Fq(-Wpointer-arith)p Fy(')d(requests)j(a)h(w)m (arning)e(if)h(these)g(extensions)g(are)h(used.)150 3354 y Fs(5.20)68 b(Non-Constan)l(t)46 b(Initializers)275 3548 y Fy(As)20 b(in)f(standard)h(C)p Fq(++)g Fy(and)g(ISO)f(C99,)k (the)e(elemen)m(ts)g(of)g(an)f(aggregate)k(initializer)17 b(for)k(an)f(automatic)150 3657 y(v)-5 b(ariable)32 b(are)h(not)h (required)d(to)j(b)s(e)f(constan)m(t)h(expressions)e(in)g(GNU)h(C.)49 b(Here)34 b(is)e(an)h(example)g(of)g(an)150 3767 y(initializer)27 b(with)i(run-time)g(v)-5 b(arying)30 b(elemen)m(ts:)390 3897 y Fq(foo)47 b(\(float)f(f,)h(float)g(g\))390 4000 y({)485 4104 y(float)g(beat_freqs[2])d(=)j({)h(f-g,)f(f+g)f(};)485 4208 y(...)390 4312 y(})150 4572 y Fs(5.21)68 b(Comp)t(ound)45 b(Literals)275 4766 y Fy(ISO)25 b(C99)i(supp)s(orts)e(comp)s(ound)g (literals.)37 b(A)27 b(comp)s(ound)e(literal)g(lo)s(oks)h(lik)m(e)g(a)h (cast)g(con)m(taining)f(an)150 4876 y(initializer.)47 b(Its)33 b(v)-5 b(alue)33 b(is)f(an)i(ob)5 b(ject)34 b(of)f(the)h(t)m(yp)s(e)f(sp)s(eci\014ed)f(in)g(the)i(cast,)h(con)m (taining)e(the)h(elemen)m(ts)150 4985 y(sp)s(eci\014ed)23 b(in)h(the)i(initializer;)e(it)g(is)h(an)g(lv)-5 b(alue.)37 b(As)26 b(an)f(extension,)h(GCC)f(supp)s(orts)e(comp)s(ound)h(literals) 150 5095 y(in)29 b(C89)i(mo)s(de)f(and)g(in)f(C)p Fq(++)p Fy(.)275 5230 y(Usually)-8 b(,)31 b(the)i(sp)s(eci\014ed)d(t)m(yp)s(e)j (is)e(a)i(structure.)46 b(Assume)31 b(that)i Fq(struct)c(foo)i Fy(and)h Fq(structure)e Fy(are)150 5340 y(declared)g(as)g(sho)m(wn:)p eop %%Page: 169 179 169 178 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(169)390 299 y Fq(struct)46 b(foo)h({int)g(a;)g(char)f(b[2];})h(structure;)150 431 y Fy(Here)31 b(is)e(an)i(example)f(of)g(constructing)g(a)h Fq(struct)e(foo)g Fy(with)g(a)i(comp)s(ound)e(literal:)390 558 y Fq(structure)45 b(=)j(\(\(struct)d(foo\))i({x)g(+)h(y,)f('a',)f (0}\);)150 690 y Fy(This)29 b(is)g(equiv)-5 b(alen)m(t)30 b(to)h(writing)d(the)j(follo)m(wing:)390 816 y Fq({)485 920 y(struct)47 b(foo)f(temp)h(=)h({x)f(+)g(y,)g('a',)g(0};)485 1024 y(structure)f(=)h(temp;)390 1128 y(})275 1260 y Fy(Y)-8 b(ou)33 b(can)g(also)f(construct)h(an)g(arra)m(y)-8 b(.)48 b(If)32 b(all)g(the)h(elemen)m(ts)g(of)f(the)h(comp)s(ound)e (literal)h(are)h(\(made)150 1369 y(up)25 b(of)7 b(\))27 b(simple)d(constan)m(t)k(expressions,)d(suitable)g(for)h(use)g(in)f (initializers)e(of)j(ob)5 b(jects)27 b(of)g(static)f(storage)150 1479 y(duration,)38 b(then)g(the)g(comp)s(ound)e(literal)g(can)j(b)s(e) e(co)s(erced)h(to)h(a)f(p)s(oin)m(ter)f(to)h(its)f(\014rst)g(elemen)m (t)i(and)150 1589 y(used)30 b(in)f(suc)m(h)h(an)g(initializer,)d(as)k (sho)m(wn)f(here:)390 1715 y Fq(char)47 b(**foo)f(=)h(\(char)g(*[]\))f ({)i("x",)f("y",)f("z")h(};)275 1847 y Fy(Comp)s(ound)37 b(literals)g(for)j(scalar)f(t)m(yp)s(es)g(and)g(union)e(t)m(yp)s(es)j (are)g(is)e(also)h(allo)m(w)m(ed,)j(but)d(then)g(the)150 1957 y(comp)s(ound)29 b(literal)g(is)g(equiv)-5 b(alen)m(t)30 b(to)h(a)g(cast.)275 2089 y(As)i(a)i(GNU)f(extension,)h(GCC)f(allo)m (ws)f(initialization)e(of)j(ob)5 b(jects)35 b(with)d(static)j(storage)g (duration)150 2199 y(b)m(y)40 b(comp)s(ound)e(literals)g(\(whic)m(h)h (is)g(not)h(p)s(ossible)e(in)g(ISO)h(C99,)k(b)s(ecause)d(the)g (initializer)d(is)h(not)j(a)150 2308 y(constan)m(t\).)50 b(It)33 b(is)f(handled)f(as)i(if)f(the)h(ob)5 b(ject)34 b(w)m(as)f(initialized)d(only)i(with)g(the)h(brac)m(k)m(et)i(enclosed)d (list)150 2418 y(if)i(comp)s(ound)g(literal's)f(and)i(ob)5 b(ject)36 b(t)m(yp)s(es)f(matc)m(h.)55 b(The)35 b(initializer)d(list)h (of)j(the)f(comp)s(ound)e(literal)150 2527 y(m)m(ust)c(b)s(e)f(constan) m(t.)42 b(If)28 b(the)h(ob)5 b(ject)30 b(b)s(eing)d(initialized)f(has)j (arra)m(y)g(t)m(yp)s(e)g(of)g(unkno)m(wn)f(size,)h(the)g(size)g(is)150 2637 y(determined)g(b)m(y)h(comp)s(ound)f(literal)g(size.)390 2763 y Fq(static)46 b(struct)g(foo)h(x)h(=)f(\(struct)f(foo\))g({1,)h ('a',)g('b'};)390 2867 y(static)f(int)h(y[])g(=)g(\(int)g([]\))g({1,)g (2,)g(3};)390 2971 y(static)f(int)h(z[])g(=)g(\(int)g([3]\))g({1};)150 3103 y Fy(The)30 b(ab)s(o)m(v)m(e)h(lines)e(are)i(equiv)-5 b(alen)m(t)30 b(to)h(the)f(follo)m(wing:)390 3230 y Fq(static)46 b(struct)g(foo)h(x)h(=)f({1,)g('a',)g('b'};)390 3333 y(static)f(int)h(y[])g(=)g({1,)g(2,)g(3};)390 3437 y(static)f(int)h (z[])g(=)g({1,)g(0,)g(0};)150 3688 y Fs(5.22)68 b(Designated)47 b(Initializers)275 3878 y Fy(Standard)26 b(C89)i(requires)e(the)i (elemen)m(ts)g(of)g(an)f(initializer)e(to)j(app)s(ear)f(in)g(a)h (\014xed)f(order,)h(the)g(same)150 3988 y(as)j(the)f(order)g(of)h(the)f (elemen)m(ts)h(in)e(the)i(arra)m(y)f(or)h(structure)f(b)s(eing)f (initialized.)275 4120 y(In)42 b(ISO)h(C99)h(y)m(ou)g(can)f(giv)m(e)h (the)g(elemen)m(ts)g(in)e(an)m(y)i(order,)i(sp)s(ecifying)c(the)h(arra) m(y)h(indices)e(or)150 4229 y(structure)32 b(\014eld)g(names)g(they)h (apply)e(to,)k(and)d(GNU)h(C)f(allo)m(ws)g(this)g(as)h(an)f(extension)h (in)e(C89)i(mo)s(de)150 4339 y(as)e(w)m(ell.)39 b(This)29 b(extension)h(is)f(not)i(implemen)m(ted)e(in)g(GNU)i(C)p Fq(++)p Fy(.)275 4471 y(T)-8 b(o)30 b(sp)s(ecify)f(an)i(arra)m(y)g (index,)e(write)g(`)p Fq([)p Fn(index)6 b Fq(])29 b(=)p Fy(')i(b)s(efore)e(the)i(elemen)m(t)g(v)-5 b(alue.)40 b(F)-8 b(or)31 b(example,)390 4598 y Fq(int)47 b(a[6])g(=)g({)g([4])g (=)h(29,)f([2])g(=)g(15)g(};)150 4730 y Fy(is)29 b(equiv)-5 b(alen)m(t)30 b(to)390 4856 y Fq(int)47 b(a[6])g(=)g({)g(0,)h(0,)f(15,) g(0,)g(29,)g(0)g(};)150 4989 y Fy(The)32 b(index)g(v)-5 b(alues)32 b(m)m(ust)h(b)s(e)f(constan)m(t)i(expressions,)e(ev)m(en)i (if)e(the)h(arra)m(y)g(b)s(eing)e(initialized)f(is)i(auto-)150 5098 y(matic.)275 5230 y(An)39 b(alternativ)m(e)h(syn)m(tax)g(for)f (this)g(whic)m(h)f(has)i(b)s(een)f(obsolete)h(since)f(GCC)g(2.5)i(but)e (GCC)g(still)150 5340 y(accepts)32 b(is)d(to)i(write)f(`)p Fq([)p Fn(index)6 b Fq(])p Fy(')29 b(b)s(efore)h(the)h(elemen)m(t)f(v) -5 b(alue,)30 b(with)g(no)g(`)p Fq(=)p Fy('.)p eop %%Page: 170 180 170 179 bop 150 -116 a Fy(170)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))275 299 y(T)-8 b(o)28 b(initialize)d(a)j(range)h (of)f(elemen)m(ts)g(to)g(the)h(same)f(v)-5 b(alue,)28 b(write)f(`)p Fq([)p Fn(\014rst)32 b Fq(...)d Fn(last)r Fq(])h(=)g Fn(v)-5 b(alue)5 b Fy('.)40 b(This)150 408 y(is)29 b(a)i(GNU)g(extension.)41 b(F)-8 b(or)31 b(example,)390 530 y Fq(int)47 b(widths[])e(=)j({)f([0)h(...)e(9])i(=)f(1,)g([10)g (...)g(99])g(=)g(2,)h([100])e(=)h(3)h(};)150 657 y Fy(If)28 b(the)g(v)-5 b(alue)28 b(in)f(it)h(has)g(side-e\013ects,)i(the)f (side-e\013ects)g(will)c(happ)s(en)i(only)g(once,)j(not)f(for)f(eac)m (h)h(initial-)150 767 y(ized)h(\014eld)f(b)m(y)h(the)h(range)f (initializer.)150 895 y(Note)i(that)f(the)f(length)g(of)h(the)f(arra)m (y)h(is)e(the)i(highest)f(v)-5 b(alue)29 b(sp)s(eci\014ed)g(plus)g (one.)275 1022 y(In)40 b(a)i(structure)e(initializer,)h(sp)s(ecify)f (the)i(name)f(of)g(a)h(\014eld)e(to)h(initialize)e(with)h(`)p Fq(.)p Fn(\014eldname)34 b Fq(=)p Fy(')150 1132 y(b)s(efore)c(the)h (elemen)m(t)f(v)-5 b(alue.)41 b(F)-8 b(or)31 b(example,)f(giv)m(en)g (the)h(follo)m(wing)e(structure,)390 1253 y Fq(struct)46 b(point)g({)i(int)f(x,)g(y;)g(};)150 1381 y Fy(the)31 b(follo)m(wing)d(initialization)390 1502 y Fq(struct)46 b(point)g(p)i(=)f({)h(.y)f(=)g(yvalue,)f(.x)h(=)h(xvalue)e(};)150 1630 y Fy(is)29 b(equiv)-5 b(alen)m(t)30 b(to)390 1751 y Fq(struct)46 b(point)g(p)i(=)f({)h(xvalue,)e(yvalue)g(};)275 1879 y Fy(Another)34 b(syn)m(tax)i(whic)m(h)e(has)g(the)i(same)f (meaning,)h(obsolete)f(since)g(GCC)f(2.5,)k(is)c(`)p Fn(\014eldname)5 b Fq(:)p Fy(',)150 1988 y(as)31 b(sho)m(wn)e(here:)390 2110 y Fq(struct)46 b(point)g(p)i(=)f({)h(y:)f(yvalue,)f(x:)h(xvalue)f (};)275 2237 y Fy(The)32 b(`)p Fq([)p Fn(index)6 b Fq(])p Fy(')32 b(or)i(`)p Fq(.)p Fn(\014eldname)5 b Fy(')32 b(is)g(kno)m(wn)h(as)h(a)f Fn(designator)p Fy(.)50 b(Y)-8 b(ou)34 b(can)f(also)g(use)g(a)h(designator)150 2347 y(\(or)k(the)g(obsolete)h(colon)e(syn)m(tax\))i(when)e(initializing)d (a)k(union,)g(to)h(sp)s(ecify)d(whic)m(h)g(elemen)m(t)j(of)f(the)150 2456 y(union)29 b(should)f(b)s(e)i(used.)40 b(F)-8 b(or)31 b(example,)390 2578 y Fq(union)46 b(foo)h({)h(int)f(i;)g(double)f(d;)h (};)390 2786 y(union)f(foo)h(f)h(=)f({)h(.d)f(=)g(4)h(};)150 2913 y Fy(will)30 b(con)m(v)m(ert)k(4)f(to)g(a)g Fq(double)d Fy(to)k(store)f(it)f(in)f(the)h(union)f(using)g(the)i(second)f(elemen)m (t.)48 b(By)32 b(con)m(trast,)150 3023 y(casting)37 b(4)g(to)g(t)m(yp)s (e)g Fq(union)28 b(foo)36 b Fy(w)m(ould)f(store)i(it)g(in)m(to)f(the)h (union)d(as)j(the)g(in)m(teger)g Fq(i)p Fy(,)h(since)d(it)h(is)g(an)150 3132 y(in)m(teger.)41 b(\(See)31 b(Section)f(5.24)i([Cast)f(to)g (Union],)f(page)h(171.\))275 3260 y(Y)-8 b(ou)39 b(can)h(com)m(bine)f (this)f(tec)m(hnique)h(of)h(naming)e(elemen)m(ts)i(with)e(ordinary)g(C) g(initialization)f(of)150 3369 y(successiv)m(e)29 b(elemen)m(ts.)40 b(Eac)m(h)29 b(initializer)d(elemen)m(t)j(that)g(do)s(es)f(not)g(ha)m (v)m(e)i(a)f(designator)f(applies)f(to)i(the)150 3479 y(next)i(consecutiv)m(e)g(elemen)m(t)g(of)f(the)h(arra)m(y)g(or)f (structure.)40 b(F)-8 b(or)31 b(example,)390 3600 y Fq(int)47 b(a[6])g(=)g({)g([1])g(=)h(v1,)f(v2,)g([4])g(=)g(v4)g(};)150 3728 y Fy(is)29 b(equiv)-5 b(alen)m(t)30 b(to)390 3849 y Fq(int)47 b(a[6])g(=)g({)g(0,)h(v1,)f(v2,)f(0,)i(v4,)f(0)g(};)275 3977 y Fy(Lab)s(eling)38 b(the)i(elemen)m(ts)h(of)f(an)g(arra)m(y)h (initializer)c(is)i(esp)s(ecially)f(useful)h(when)g(the)h(indices)f (are)150 4086 y(c)m(haracters)32 b(or)e(b)s(elong)g(to)h(an)f Fq(enum)f Fy(t)m(yp)s(e.)41 b(F)-8 b(or)31 b(example:)390 4208 y Fq(int)47 b(whitespace[256])485 4312 y(=)h({)f([')h('])f(=)g(1,) g(['\\t'])f(=)i(1,)f(['\\h'])f(=)i(1,)676 4416 y(['\\f'])e(=)i(1,)f (['\\n'])f(=)i(1,)f(['\\r'])f(=)h(1)h(};)275 4543 y Fy(Y)-8 b(ou)23 b(can)f(also)h(write)f(a)h(series)f(of)g(`)p Fq(.)p Fn(\014eldname)5 b Fy(')22 b(and)g(`)p Fq([)p Fn(index)6 b Fq(])p Fy(')21 b(designators)h(b)s(efore)h(an)f(`)p Fq(=)p Fy(')h(to)g(sp)s(ec-)150 4653 y(ify)28 b(a)i(nested)f(sub)s(ob)5 b(ject)28 b(to)i(initialize;)d(the)i(list)f(is)g(tak)m(en)i(relativ)m (e)f(to)h(the)g(sub)s(ob)5 b(ject)28 b(corresp)s(onding)150 4762 y(to)38 b(the)f(closest)h(surrounding)33 b(brace)38 b(pair.)59 b(F)-8 b(or)38 b(example,)h(with)c(the)j(`)p Fq(struct)28 b(point)p Fy(')36 b(declaration)150 4872 y(ab)s(o)m(v)m(e:)390 4993 y Fq(struct)46 b(point)g(ptarray[10])f(=)j ({)f([2].y)f(=)i(yv2,)f([2].x)f(=)h(xv2,)g([0].x)f(=)i(xv0)f(};)150 5121 y Fy(If)31 b(the)h(same)g(\014eld)e(is)g(initialized)e(m)m (ultiple)i(times,)h(it)g(will)e(ha)m(v)m(e)k(v)-5 b(alue)31 b(from)g(the)g(last)h(initialization.)150 5230 y(If)e(an)m(y)g(suc)m(h) g(o)m(v)m(erridden)f(initialization)e(has)j(side-e\013ect,)i(it)d(is)h (unsp)s(eci\014ed)d(whether)j(the)g(side-e\013ect)150 5340 y(happ)s(ens)f(or)h(not.)41 b(Curren)m(tly)-8 b(,)29 b(gcc)j(will)c(discard)g(them)j(and)e(issue)h(a)g(w)m(arning.)p eop %%Page: 171 181 171 180 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(171)150 299 y Fs(5.23)68 b(Case)46 b(Ranges)275 503 y Fy(Y)-8 b(ou)30 b(can)h(sp)s(ecify)e(a)i(range)g(of)f(consecutiv)m(e)h(v)-5 b(alues)30 b(in)f(a)i(single)e Fq(case)g Fy(lab)s(el,)g(lik)m(e)h (this:)390 643 y Fq(case)47 b Fn(lo)m(w)55 b Fq(...)47 b Fn(high)p Fq(:)150 788 y Fy(This)22 b(has)i(the)h(same)f(e\013ect)i (as)f(the)f(prop)s(er)f(n)m(um)m(b)s(er)g(of)h(individual)c Fq(case)j Fy(lab)s(els,)h(one)g(for)g(eac)m(h)i(in)m(teger)150 898 y(v)-5 b(alue)30 b(from)g Fn(lo)m(w)38 b Fy(to)31 b Fn(high)p Fy(,)e(inclusiv)m(e.)275 1044 y(This)f(feature)j(is)e(esp)s (ecially)g(useful)g(for)h(ranges)g(of)h(ASCI)s(I)e(c)m(haracter)j(co)s (des:)390 1184 y Fq(case)47 b('A')g(...)f('Z':)275 1330 y Fl(Be)35 b(careful:)52 b Fy(W)-8 b(rite)37 b(spaces)f(around)f(the)h Fq(...)p Fy(,)g(for)g(otherwise)f(it)h(ma)m(y)g(b)s(e)f(parsed)g(wrong) h(when)150 1439 y(y)m(ou)31 b(use)f(it)g(with)f(in)m(teger)i(v)-5 b(alues.)40 b(F)-8 b(or)31 b(example,)f(write)g(this:)390 1579 y Fq(case)47 b(1)g(...)g(5:)150 1725 y Fy(rather)30 b(than)g(this:)390 1865 y Fq(case)47 b(1...5:)150 2150 y Fs(5.24)68 b(Cast)46 b(to)f(a)h(Union)f(T)l(yp)t(e)275 2354 y Fy(A)32 b(cast)h(to)h(union)c(t)m(yp)s(e)j(is)e(similar)f(to)j (other)f(casts,)i(except)g(that)f(the)f(t)m(yp)s(e)h(sp)s(eci\014ed)e (is)g(a)i(union)150 2464 y(t)m(yp)s(e.)54 b(Y)-8 b(ou)35 b(can)g(sp)s(ecify)e(the)i(t)m(yp)s(e)f(either)g(with)g Fq(union)29 b Fn(tag)43 b Fy(or)35 b(with)e(a)i(t)m(yp)s(edef)f(name.) 54 b(A)35 b(cast)g(to)150 2573 y(union)30 b(is)i(actually)g(a)g (constructor)h(though,)g(not)f(a)h(cast,)h(and)e(hence)g(do)s(es)g(not) h(yield)d(an)j(lv)-5 b(alue)31 b(lik)m(e)150 2683 y(normal)e(casts.)42 b(\(See)31 b(Section)f(5.21)i([Comp)s(ound)c(Literals],)i(page)h (168.\))275 2829 y(The)j(t)m(yp)s(es)h(that)g(ma)m(y)h(b)s(e)e(cast)i (to)f(the)h(union)d(t)m(yp)s(e)i(are)g(those)g(of)g(the)g(mem)m(b)s (ers)f(of)h(the)h(union.)150 2938 y(Th)m(us,)30 b(giv)m(en)g(the)g (follo)m(wing)f(union)g(and)h(v)-5 b(ariables:)390 3078 y Fq(union)46 b(foo)h({)h(int)f(i;)g(double)f(d;)h(};)390 3182 y(int)g(x;)390 3286 y(double)f(y;)150 3432 y Fy(b)s(oth)30 b Fq(x)g Fy(and)f Fq(y)h Fy(can)h(b)s(e)f(cast)h(to)g(t)m(yp)s(e)g Fq(union)e(foo)p Fy(.)275 3577 y(Using)37 b(the)i(cast)g(as)g(the)g (righ)m(t-hand)e(side)h(of)h(an)f(assignmen)m(t)g(to)i(a)e(v)-5 b(ariable)38 b(of)h(union)d(t)m(yp)s(e)j(is)150 3687 y(equiv)-5 b(alen)m(t)30 b(to)h(storing)f(in)f(a)i(mem)m(b)s(er)e(of)i (the)f(union:)390 3827 y Fq(union)46 b(foo)h(u;)390 3931 y(...)390 4034 y(u)g(=)h(\(union)e(foo\))h(x)1309 4038 y Fx(\021)1488 4034 y Fq(u.i)g(=)g(x)390 4138 y(u)g(=)h(\(union)e (foo\))h(y)1309 4142 y Fx(\021)1488 4138 y Fq(u.d)g(=)g(y)275 4284 y Fy(Y)-8 b(ou)30 b(can)h(also)f(use)g(the)h(union)e(cast)i(as)g (a)f(function)f(argumen)m(t:)390 4424 y Fq(void)47 b(hack)f(\(union)g (foo\);)390 4528 y(...)390 4631 y(hack)h(\(\(union)e(foo\))i(x\);)150 4917 y Fs(5.25)68 b(Mixed)45 b(Declarations)i(and)e(Co)t(de)275 5121 y Fy(ISO)27 b(C99)j(and)e(ISO)f(C)p Fq(++)h Fy(allo)m(w)g (declarations)h(and)f(co)s(de)h(to)g(b)s(e)f(freely)h(mixed)e(within)f (comp)s(ound)150 5230 y(statemen)m(ts.)51 b(As)33 b(an)h(extension,)g (GCC)e(also)i(allo)m(ws)e(this)g(in)g(C89)i(mo)s(de.)49 b(F)-8 b(or)34 b(example,)g(y)m(ou)g(could)150 5340 y(do:)p eop %%Page: 172 182 172 181 bop 150 -116 a Fy(172)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(int)47 b(i;)390 403 y(...)390 506 y(i++;)390 610 y(int)g(j)g(=)h(i)f(+)h(2;)275 761 y Fy(Eac)m(h)31 b(iden)m(ti\014er)d(is)i(visible)d(from)j(where)g (it)g(is)f(declared)h(un)m(til)f(the)h(end)g(of)h(the)f(enclosing)g (blo)s(c)m(k.)150 1058 y Fs(5.26)68 b(Declaring)46 b(A)l(ttributes)g (of)f(F)-11 b(unctions)275 1266 y Fy(In)24 b(GNU)i(C,)g(y)m(ou)g (declare)f(certain)h(things)e(ab)s(out)h(functions)f(called)h(in)f(y)m (our)i(program)f(whic)m(h)f(help)150 1376 y(the)31 b(compiler)e (optimize)g(function)g(calls)h(and)g(c)m(hec)m(k)h(y)m(our)g(co)s(de)f (more)h(carefully)-8 b(.)275 1526 y(The)39 b(k)m(eyw)m(ord)h Fq(__attribute__)d Fy(allo)m(ws)i(y)m(ou)h(to)h(sp)s(ecify)d(sp)s (ecial)h(attributes)g(when)g(making)h(a)150 1636 y(declaration.)h(This) 29 b(k)m(eyw)m(ord)i(is)f(follo)m(w)m(ed)g(b)m(y)h(an)f(attribute)g(sp) s(eci\014cation)g(inside)e(double)h(paren)m(the-)150 1745 y(ses.)50 b(The)33 b(follo)m(wing)f(attributes)h(are)h(curren)m (tly)f(de\014ned)f(for)i(functions)e(on)h(all)f(targets:)49 b Fq(noreturn)p Fy(,)150 1855 y Fq(noinline)p Fy(,)28 b Fq(always_inline)p Fy(,)e Fq(pure)p Fy(,)j Fq(const)p Fy(,)f Fq(format)p Fy(,)h Fq(format_arg)p Fy(,)e Fq (no_instrument_function)p Fy(,)150 1965 y Fq(section)p Fy(,)c Fq(constructor)p Fy(,)f Fq(destructor)p Fy(,)g Fq(used)p Fy(,)h Fq(unused)p Fy(,)h Fq(deprecated)p Fy(,)e Fq(weak)p Fy(,)h Fq(malloc)p Fy(,)h(and)e Fq(alias)p Fy(.)150 2074 y(Sev)m(eral)36 b(other)f(attributes)g(are)h(de\014ned)f (for)g(functions)f(on)i(particular)d(target)38 b(systems.)56 b(Other)35 b(at-)150 2184 y(tributes,)27 b(including)c Fq(section)i Fy(are)i(supp)s(orted)e(for)h(v)-5 b(ariables)26 b(declarations)g(\(see)i(Section)e(5.33)j([V)-8 b(ari-)150 2293 y(able)30 b(A)m(ttributes],)h(page)g(184\))h(and)d(for)i(t)m(yp)s (es)f(\(see)h(Section)g(5.34)g([T)m(yp)s(e)g(A)m(ttributes],)f(page)h (188\).)275 2444 y(Y)-8 b(ou)35 b(ma)m(y)g(also)f(sp)s(ecify)g (attributes)g(with)f(`)p Fq(__)p Fy(')i(preceding)e(and)h(follo)m(wing) f(eac)m(h)j(k)m(eyw)m(ord.)54 b(This)150 2553 y(allo)m(ws)33 b(y)m(ou)g(to)h(use)f(them)g(in)f(header)i(\014les)e(without)g(b)s (eing)g(concerned)h(ab)s(out)g(a)h(p)s(ossible)d(macro)j(of)150 2663 y(the)d(same)f(name.)41 b(F)-8 b(or)31 b(example,)g(y)m(ou)f(ma)m (y)h(use)f Fq(__noreturn__)d Fy(instead)j(of)h Fq(noreturn)p Fy(.)275 2813 y(See)j(Section)f(5.27)i([A)m(ttribute)f(Syn)m(tax],)i (page)e(179,)i(for)e(details)e(of)i(the)g(exact)i(syn)m(tax)e(for)f (using)150 2923 y(attributes.)150 3180 y Fq(noreturn)96 b Fy(A)25 b(few)g(standard)f(library)f(functions,)i(suc)m(h)f(as)i Fq(abort)d Fy(and)i Fq(exit)p Fy(,)g(cannot)g(return.)38 b(GCC)630 3289 y(kno)m(ws)25 b(this)g(automatically)-8 b(.)39 b(Some)26 b(programs)f(de\014ne)g(their)g(o)m(wn)g(functions)f (that)j(nev)m(er)630 3399 y(return.)74 b(Y)-8 b(ou)42 b(can)g(declare)g(them)g Fq(noreturn)d Fy(to)k(tell)d(the)i(compiler)f (this)f(fact.)76 b(F)-8 b(or)630 3509 y(example,)870 3645 y Fq(void)47 b(fatal)f(\(\))h(__attribute__)d(\(\(noreturn\)\);) 870 3853 y(void)870 3957 y(fatal)i(\(...)o(\))870 4060 y({)965 4164 y(...)h(/*)h Fy(Prin)m(t)29 b(error)h(message.)49 b Fq(*/)e(...)965 4268 y(exit)g(\(1\);)870 4372 y(})630 4507 y Fy(The)28 b Fq(noreturn)f Fy(k)m(eyw)m(ord)i(tells)f(the)h (compiler)e(to)i(assume)g(that)g Fq(fatal)e Fy(cannot)j(return.)630 4617 y(It)35 b(can)h(then)f(optimize)f(without)g(regard)h(to)h(what)f (w)m(ould)f(happ)s(en)g(if)g Fq(fatal)g Fy(ev)m(er)i(did)630 4726 y(return.)82 b(This)43 b(mak)m(es)j(sligh)m(tly)c(b)s(etter)j(co)s (de.)84 b(More)45 b(imp)s(ortan)m(tly)-8 b(,)47 b(it)d(helps)f(a)m(v)m (oid)630 4836 y(spurious)28 b(w)m(arnings)h(of)h(uninitialized)d(v)-5 b(ariables.)630 4978 y(Do)33 b(not)g(assume)f(that)i(registers)e(sa)m (v)m(ed)h(b)m(y)g(the)g(calling)e(function)g(are)i(restored)f(b)s (efore)630 5088 y(calling)d(the)h Fq(noreturn)f Fy(function.)630 5230 y(It)39 b(do)s(es)f(not)h(mak)m(e)g(sense)g(for)f(a)h Fq(noreturn)d Fy(function)i(to)h(ha)m(v)m(e)h(a)e(return)g(t)m(yp)s(e)h (other)630 5340 y(than)30 b Fq(void)p Fy(.)p eop %%Page: 173 183 173 182 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(173)630 299 y(The)33 b(attribute)g Fq(noreturn)d Fy(is)j(not)g(implemen)m(ted)f (in)f(GCC)i(v)m(ersions)g(earlier)f(than)h(2.5.)630 408 y(An)e(alternativ)m(e)i(w)m(a)m(y)f(to)h(declare)f(that)g(a)g(function) f(do)s(es)g(not)i(return,)e(whic)m(h)f(w)m(orks)i(in)630 518 y(the)f(curren)m(t)f(v)m(ersion)g(and)f(in)g(some)i(older)f(v)m (ersions,)g(is)f(as)i(follo)m(ws:)870 641 y Fq(typedef)46 b(void)g(voidfn)h(\(\);)870 849 y(volatile)f(voidfn)g(fatal;)150 997 y(noinline)96 b Fy(This)29 b(function)g(attribute)h(prev)m(en)m(ts) h(a)f(function)f(from)h(b)s(eing)f(considered)g(for)i(inlining.)150 1146 y Fq(always_inline)630 1255 y Fy(Generally)-8 b(,)33 b(functions)f(are)h(not)g(inlined)d(unless)h(optimization)h(is)g(sp)s (eci\014ed.)47 b(F)-8 b(or)34 b(func-)630 1365 y(tions)29 b(declared)g(inline,)e(this)i(attribute)g(inlines)e(the)i(function)g (ev)m(en)h(if)f(no)g(optimization)630 1475 y(lev)m(el)h(w)m(as)h(sp)s (eci\014ed.)150 1623 y Fq(pure)288 b Fy(Man)m(y)33 b(functions)f(ha)m (v)m(e)i(no)f(e\013ects)h(except)g(the)f(return)e(v)-5 b(alue)33 b(and)f(their)g(return)f(v)-5 b(alue)630 1733 y(dep)s(ends)32 b(only)h(on)g(the)h(parameters)h(and/or)e(global)g(v)-5 b(ariables.)50 b(Suc)m(h)33 b(a)h(function)f(can)630 1842 y(b)s(e)28 b(sub)5 b(ject)29 b(to)h(common)f(sub)s(expression)d (elimination)g(and)i(lo)s(op)h(optimization)e(just)i(as)630 1952 y(an)i(arithmetic)f(op)s(erator)g(w)m(ould)g(b)s(e.)41 b(These)30 b(functions)g(should)e(b)s(e)i(declared)g(with)g(the)630 2061 y(attribute)g Fq(pure)p Fy(.)40 b(F)-8 b(or)31 b(example,)870 2185 y Fq(int)47 b(square)f(\(int\))g(__attribute__)f(\(\(pure\)\);)630 2314 y Fy(sa)m(ys)32 b(that)f(the)h(h)m(yp)s(othetical)e(function)g Fq(square)g Fy(is)g(safe)h(to)h(call)f(few)m(er)g(times)g(than)g(the) 630 2423 y(program)f(sa)m(ys.)630 2552 y(Some)43 b(of)g(common)g (examples)f(of)h(pure)f(functions)f(are)i Fq(strlen)e Fy(or)i Fq(memcmp)p Fy(.)77 b(In)m(ter-)630 2662 y(esting)33 b(non-pure)f(functions)g(are)i(functions)e(with)g(in\014nite)g(lo)s (ops)g(or)h(those)h(dep)s(ending)630 2771 y(on)40 b(v)m(olatile)f (memory)h(or)g(other)g(system)g(resource,)j(that)e(ma)m(y)f(c)m(hange)h (b)s(et)m(w)m(een)g(t)m(w)m(o)630 2881 y(consecutiv)m(e)31 b(calls)f(\(suc)m(h)g(as)h Fq(feof)e Fy(in)g(a)i(m)m(ultithreading)d (en)m(vironmen)m(t\).)630 3010 y(The)i(attribute)g Fq(pure)f Fy(is)h(not)g(implemen)m(ted)f(in)g(GCC)h(v)m(ersions)g(earlier)f(than) h(2.96.)150 3159 y Fq(const)240 b Fy(Man)m(y)36 b(functions)f(do)g(not) h(examine)g(an)m(y)g(v)-5 b(alues)35 b(except)h(their)f(argumen)m(ts,)j (and)d(ha)m(v)m(e)630 3268 y(no)40 b(e\013ects)i(except)f(the)g(return) e(v)-5 b(alue.)70 b(Basically)40 b(this)f(is)g(just)h(sligh)m(tly)f (more)h(strict)630 3378 y(class)26 b(than)g(the)g Fq(pure)f Fy(attribute)g(ab)s(o)m(v)m(e,)k(since)c(function)g(is)g(not)h(allo)m (w)m(ed)g(to)h(read)f(global)630 3487 y(memory)-8 b(.)630 3616 y(Note)26 b(that)e(a)h(function)e(that)i(has)f(p)s(oin)m(ter)f (argumen)m(ts)h(and)g(examines)g(the)g(data)h(p)s(oin)m(ted)630 3726 y(to)39 b(m)m(ust)g Fr(not)48 b Fy(b)s(e)38 b(declared)g Fq(const)p Fy(.)64 b(Lik)m(ewise,)39 b(a)g(function)f(that)h(calls)f(a) h(non-)p Fq(const)630 3836 y Fy(function)21 b(usually)f(m)m(ust)i(not)h (b)s(e)e Fq(const)p Fy(.)37 b(It)22 b(do)s(es)g(not)h(mak)m(e)g(sense)g (for)f(a)g Fq(const)f Fy(function)630 3945 y(to)31 b(return)e Fq(void)p Fy(.)630 4074 y(The)i(attribute)g Fq(const)f Fy(is)g(not)i(implemen)m(ted)e(in)g(GCC)h(v)m(ersions)g(earlier)f(than) h(2.5.)45 b(An)630 4184 y(alternativ)m(e)36 b(w)m(a)m(y)g(to)g(declare) g(that)g(a)g(function)e(has)h(no)g(side)f(e\013ects,)39 b(whic)m(h)34 b(w)m(orks)h(in)630 4293 y(the)c(curren)m(t)f(v)m(ersion) g(and)f(in)g(some)i(older)f(v)m(ersions,)g(is)f(as)i(follo)m(ws:)870 4417 y Fq(typedef)46 b(int)h(intfn)f(\(\);)870 4624 y(extern)g(const)g (intfn)h(square;)630 4753 y Fy(This)35 b(approac)m(h)i(do)s(es)f(not)i (w)m(ork)e(in)g(GNU)h(C)p Fq(++)f Fy(from)g(2.6.0)j(on,)f(since)f(the)g (language)630 4863 y(sp)s(eci\014es)29 b(that)i(the)g(`)p Fq(const)p Fy(')e(m)m(ust)h(b)s(e)g(attac)m(hed)i(to)f(the)g(return)e (v)-5 b(alue.)150 5011 y Fq(format)29 b(\()p Fn(arc)m(het)m(yp)s(e)p Fq(,)i Fn(string-index)p Fq(,)d Fn(\014rst-to-c)m(hec)m(k)6 b Fq(\))630 5121 y Fy(The)30 b Fq(format)f Fy(attribute)h(sp)s (eci\014es)f(that)i(a)g(function)e(tak)m(es)j Fq(printf)p Fy(,)d Fq(scanf)p Fy(,)g Fq(strftime)630 5230 y Fy(or)43 b Fq(strfmon)e Fy(st)m(yle)i(argumen)m(ts)g(whic)m(h)e(should)g(b)s(e)h (t)m(yp)s(e-c)m(hec)m(k)m(ed)j(against)e(a)h(format)630 5340 y(string.)c(F)-8 b(or)31 b(example,)f(the)h(declaration:)p eop %%Page: 174 184 174 183 bop 150 -116 a Fy(174)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))870 299 y Fq(extern)46 b(int)870 403 y(my_printf)f(\(void)i(*my_object,)d(const)j(char)f(*my_format,)f (...\))1156 506 y(__attribute__)g(\(\(format)g(\(printf,)h(2,)h (3\)\)\);)630 647 y Fy(causes)22 b(the)g(compiler)e(to)i(c)m(hec)m(k)h (the)f(argumen)m(ts)g(in)e(calls)g(to)j Fq(my_printf)c Fy(for)i(consistency)630 757 y(with)29 b(the)i Fq(printf)d Fy(st)m(yle)j(format)g(string)e(argumen)m(t)i Fq(my_format)p Fy(.)630 897 y(The)e(parameter)g Fn(arc)m(het)m(yp)s(e)35 b Fy(determines)29 b(ho)m(w)g(the)g(format)g(string)f(is)h(in)m (terpreted,)g(and)630 1007 y(should)e(b)s(e)i Fq(printf)p Fy(,)f Fq(scanf)p Fy(,)h Fq(strftime)e Fy(or)i Fq(strfmon)p Fy(.)39 b(\(Y)-8 b(ou)30 b(can)g(also)f(use)g Fq(__printf_)630 1116 y(_)p Fy(,)43 b Fq(__scanf__)p Fy(,)e Fq(__strftime__)c Fy(or)j Fq(__strfmon__)p Fy(.\))69 b(The)40 b(parameter)h Fn(string-index)630 1226 y Fy(sp)s(eci\014es)25 b(whic)m(h)h(argumen)m (t)h(is)e(the)i(format)g(string)f(argumen)m(t)h(\(starting)f(from)h (1\),)h(while)630 1336 y Fn(\014rst-to-c)m(hec)m(k)42 b Fy(is)33 b(the)i(n)m(um)m(b)s(er)d(of)j(the)f(\014rst)g(argumen)m(t)g (to)h(c)m(hec)m(k)h(against)e(the)h(format)630 1445 y(string.)j(F)-8 b(or)26 b(functions)e(where)h(the)h(argumen)m(ts)f(are)h(not)g(a)m(v)-5 b(ailable)25 b(to)h(b)s(e)f(c)m(hec)m(k)m(ed)i(\(suc)m(h)630 1555 y(as)41 b Fq(vprintf)p Fy(\),)h(sp)s(ecify)d(the)i(third)d (parameter)j(as)g(zero.)73 b(In)39 b(this)h(case)i(the)e(compiler)630 1664 y(only)29 b(c)m(hec)m(ks)j(the)e(format)h(string)e(for)h (consistency)-8 b(.)41 b(F)-8 b(or)31 b Fq(strftime)d Fy(formats,)i(the)h(third)630 1774 y(parameter)g(is)e(required)g(to)i (b)s(e)f(zero.)630 1915 y(In)k(the)h(example)g(ab)s(o)m(v)m(e,)j(the)d (format)g(string)f(\()p Fq(my_format)p Fy(\))f(is)h(the)h(second)g (argumen)m(t)630 2024 y(of)43 b(the)h(function)d Fq(my_print)p Fy(,)k(and)d(the)h(argumen)m(ts)h(to)f(c)m(hec)m(k)i(start)f(with)e (the)h(third)630 2134 y(argumen)m(t,)31 b(so)g(the)f(correct)i (parameters)e(for)h(the)f(format)h(attribute)f(are)h(2)g(and)e(3.)630 2274 y(The)e Fq(format)e Fy(attribute)i(allo)m(ws)g(y)m(ou)h(to)g(iden) m(tify)d(y)m(our)j(o)m(wn)f(functions)f(whic)m(h)g(tak)m(e)j(for-)630 2384 y(mat)24 b(strings)e(as)h(argumen)m(ts,)j(so)d(that)h(GCC)f(can)h (c)m(hec)m(k)h(the)e(calls)g(to)h(these)f(functions)f(for)630 2494 y(errors.)43 b(The)31 b(compiler)e(alw)m(a)m(ys)j(\(unless)e(`)p Fq(-ffreestanding)p Fy(')e(is)i(used\))h(c)m(hec)m(ks)i(formats)630 2603 y(for)g(the)h(standard)e(library)f(functions)h Fq(printf)p Fy(,)h Fq(fprintf)p Fy(,)f Fq(sprintf)p Fy(,)g Fq(scanf)p Fy(,)h Fq(fscanf)p Fy(,)630 2713 y Fq(sscanf)p Fy(,)28 b Fq(strftime)p Fy(,)g Fq(vprintf)p Fy(,)g Fq(vfprintf)f Fy(and)i Fq(vsprintf)f Fy(whenev)m(er)h(suc)m(h)g(w)m(arnings)630 2822 y(are)i(requested)g(\(using)f(`)p Fq(-Wformat)p Fy('\),)g(so)h(there)g(is)f(no)h(need)g(to)h(mo)s(dify)d(the)i(header)g (\014le)630 2932 y(`)p Fq(stdio.h)p Fy('.)37 b(In)23 b(C99)i(mo)s(de,)g(the)f(functions)f Fq(snprintf)p Fy(,)g Fq(vsnprintf)p Fy(,)g Fq(vscanf)p Fy(,)h Fq(vfscanf)630 3042 y Fy(and)f Fq(vsscanf)e Fy(are)j(also)f(c)m(hec)m(k)m(ed.)41 b(Except)24 b(in)e(strictly)g(conforming)h(C)g(standard)f(mo)s(des,)630 3151 y(the)43 b(X/Op)s(en)e(function)h Fq(strfmon)e Fy(is)i(also)g(c)m (hec)m(k)m(ed)j(as)d(are)h Fq(printf_unlocked)c Fy(and)630 3261 y Fq(fprintf_unlocked)p Fy(.)d(See)31 b(Section)f(3.4)i([Options)d (Con)m(trolling)f(C)i(Dialect],)i(page)f(19.)150 3432 y Fq(format_arg)d(\()p Fn(string-index)6 b Fq(\))630 3542 y Fy(The)38 b Fq(format_arg)e Fy(attribute)i(sp)s(eci\014es)f (that)i(a)g(function)e(tak)m(es)j(a)f(format)g(string)e(for)630 3652 y(a)c Fq(printf)p Fy(,)g Fq(scanf)p Fy(,)f Fq(strftime)f Fy(or)i Fq(strfmon)e Fy(st)m(yle)j(function)e(and)g(mo)s(di\014es)f(it) i(\(for)g(ex-)630 3761 y(ample,)40 b(to)f(translate)f(it)g(in)m(to)g (another)h(language\),)i(so)e(the)f(result)f(can)i(b)s(e)e(passed)h(to) 630 3871 y(a)32 b Fq(printf)p Fy(,)f Fq(scanf)p Fy(,)g Fq(strftime)f Fy(or)h Fq(strfmon)f Fy(st)m(yle)i(function)f(\(with)g (the)h(remaining)e(ar-)630 3980 y(gumen)m(ts)45 b(to)g(the)g(format)g (function)e(the)h(same)h(as)g(they)g(w)m(ould)e(ha)m(v)m(e)j(b)s(een)d (for)i(the)630 4090 y(unmo)s(di\014ed)27 b(string\).)40 b(F)-8 b(or)31 b(example,)g(the)f(declaration:)870 4225 y Fq(extern)46 b(char)h(*)870 4328 y(my_dgettext)e(\(char)h (*my_domain,)f(const)h(char)h(*my_format\))1156 4432 y(__attribute__)e(\(\(format_arg)f(\(2\)\)\);)630 4573 y Fy(causes)52 b(the)g(compiler)e(to)i(c)m(hec)m(k)h(the)f(argumen)m (ts)g(in)e(calls)h(to)h(a)g Fq(printf)p Fy(,)j Fq(scanf)p Fy(,)630 4682 y Fq(strftime)g Fy(or)j Fq(strfmon)e Fy(t)m(yp)s(e)i (function,)63 b(whose)58 b(format)g(string)f(argumen)m(t)h(is)f(a)630 4792 y(call)c(to)i(the)g Fq(my_dgettext)c Fy(function,)59 b(for)54 b(consistency)g(with)f(the)h(format)h(string)630 4902 y(argumen)m(t)34 b Fq(my_format)p Fy(.)47 b(If)33 b(the)h Fq(format_arg)d Fy(attribute)i(had)g(not)h(b)s(een)e(sp)s (eci\014ed,)h(all)630 5011 y(the)44 b(compiler)e(could)g(tell)h(in)f (suc)m(h)i(calls)e(to)i(format)g(functions)e(w)m(ould)h(b)s(e)g(that)h (the)630 5121 y(format)38 b(string)e(argumen)m(t)h(is)g(not)g(constan)m (t;)42 b(this)36 b(w)m(ould)h(generate)h(a)g(w)m(arning)e(when)630 5230 y(`)p Fq(-Wformat-nonliteral)p Fy(')h(is)j(used,)k(but)c(the)i (calls)f(could)f(not)i(b)s(e)f(c)m(hec)m(k)m(ed)i(without)630 5340 y(the)31 b(attribute.)p eop %%Page: 175 185 175 184 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(175)630 299 y(The)36 b(parameter)g Fn(string-index)k Fy(sp)s(eci\014es)35 b(whic)m(h)g(argumen)m(t)h(is)f(the)h(format)h(string)e(ar-)630 408 y(gumen)m(t)c(\(starting)f(from)g(1\).)630 544 y(The)44 b Fq(format-arg)d Fy(attribute)j(allo)m(ws)g(y)m(ou)g(to)h(iden)m(tify) e(y)m(our)h(o)m(wn)g(functions)f(whic)m(h)630 654 y(mo)s(dify)f(format) i(strings,)j(so)d(that)h(GCC)e(can)i(c)m(hec)m(k)g(the)f(calls)f(to)i Fq(printf)p Fy(,)h Fq(scanf)p Fy(,)630 763 y Fq(strftime)33 b Fy(or)i Fq(strfmon)f Fy(t)m(yp)s(e)h(function)f(whose)h(op)s(erands)f (are)i(a)f(call)g(to)h(one)g(of)f(y)m(our)630 873 y(o)m(wn)30 b(function.)40 b(The)30 b(compiler)f(alw)m(a)m(ys)i(treats)g Fq(gettext)p Fy(,)e Fq(dgettext)p Fy(,)g(and)g Fq(dcgettext)630 983 y Fy(in)37 b(this)g(manner)h(except)h(when)f(strict)g(ISO)g(C)g (supp)s(ort)e(is)i(requested)g(b)m(y)g(`)p Fq(-ansi)p Fy(')g(or)630 1092 y(an)j(appropriate)f(`)p Fq(-std)p Fy(')h(option,)j(or)d(`)p Fq(-ffreestanding)p Fy(')d(is)i(used.)72 b(See)42 b(Section)f(3.4)630 1202 y([Options)29 b(Con)m(trolling)g(C)h (Dialect],)h(page)g(19.)150 1364 y Fq(no_instrument_function)630 1473 y Fy(If)24 b(`)p Fq(-finstrument-functions)p Fy(')19 b(is)k(giv)m(en,)j(pro\014ling)c(function)h(calls)g(will)f(b)s(e)i (generated)630 1583 y(at)g(en)m(try)g(and)g(exit)f(of)h(most)g (user-compiled)e(functions.)37 b(F)-8 b(unctions)23 b(with)g(this)f (attribute)630 1692 y(will)28 b(not)i(b)s(e)g(so)h(instrumen)m(ted.)150 1854 y Fq(section)d(\(")p Fn(section-name)5 b Fq("\))630 1964 y Fy(Normally)-8 b(,)29 b(the)g(compiler)f(places)h(the)h(co)s(de) f(it)g(generates)i(in)d(the)h Fq(text)f Fy(section.)41 b(Some-)630 2073 y(times,)i(ho)m(w)m(ev)m(er,)i(y)m(ou)c(need)g (additional)e(sections,)k(or)e(y)m(ou)g(need)g(certain)g(particular)630 2183 y(functions)30 b(to)i(app)s(ear)e(in)g(sp)s(ecial)g(sections.)42 b(The)31 b Fq(section)e Fy(attribute)i(sp)s(eci\014es)f(that)i(a)630 2293 y(function)d(liv)m(es)h(in)f(a)h(particular)f(section.)41 b(F)-8 b(or)31 b(example,)f(the)h(declaration:)870 2422 y Fq(extern)46 b(void)h(foobar)f(\(void\))g(__attribute__)e (\(\(section)h(\("bar"\)\)\);)630 2558 y Fy(puts)30 b(the)g(function)f Fq(foobar)g Fy(in)g(the)h Fq(bar)g Fy(section.)630 2694 y(Some)36 b(\014le)f(formats)h(do)g(not)h(supp)s(ort)d(arbitrary)h (sections)h(so)g(the)g Fq(section)e Fy(attribute)630 2803 y(is)h(not)h(a)m(v)-5 b(ailable)35 b(on)g(all)g(platforms.)55 b(If)36 b(y)m(ou)g(need)f(to)i(map)e(the)h(en)m(tire)f(con)m(ten)m(ts)j (of)e(a)630 2913 y(mo)s(dule)23 b(to)j(a)g(particular)d(section,)k (consider)c(using)h(the)h(facilities)f(of)h(the)g(link)m(er)e(instead.) 150 3075 y Fq(constructor)150 3184 y(destructor)630 3294 y Fy(The)31 b Fq(constructor)e Fy(attribute)i(causes)h(the)g(function)e (to)j(b)s(e)e(called)g(automatically)g(b)s(e-)630 3404 y(fore)i(execution)g(en)m(ters)h Fq(main)29 b(\(\))p Fy(.)47 b(Similarly)-8 b(,)31 b(the)i Fq(destructor)d Fy(attribute)i(causes)i(the)630 3513 y(function)24 b(to)j(b)s(e)e (called)g(automatically)h(after)g Fq(main)j(\(\))d Fy(has)f(completed)h (or)g Fq(exit)j(\(\))c Fy(has)630 3623 y(b)s(een)h(called.)39 b(F)-8 b(unctions)26 b(with)f(these)i(attributes)g(are)g(useful)e(for)h (initializing)d(data)k(that)630 3732 y(will)h(b)s(e)h(used)h (implicitly)d(during)h(the)i(execution)h(of)f(the)h(program.)630 3868 y(These)f(attributes)g(are)h(not)f(curren)m(tly)g(implemen)m(ted)f (for)h(Ob)5 b(jectiv)m(e-C.)150 4030 y Fq(unused)192 b Fy(This)29 b(attribute,)i(attac)m(hed)h(to)g(a)f(function,)f(means)g (that)h(the)g(function)f(is)g(mean)m(t)h(to)h(b)s(e)630 4140 y(p)s(ossibly)26 b(un)m(used.)39 b(GCC)29 b(will)e(not)i(pro)s (duce)f(a)i(w)m(arning)e(for)h(this)f(function.)39 b(GNU)30 b(C)p Fq(++)630 4249 y Fy(do)s(es)e(not)h(curren)m(tly)f(supp)s(ort)f (this)h(attribute)g(as)h(de\014nitions)e(without)g(parameters)j(are)630 4359 y(v)-5 b(alid)29 b(in)g(C)p Fq(++)p Fy(.)150 4521 y Fq(used)288 b Fy(This)23 b(attribute,)j(attac)m(hed)h(to)e(a)h (function,)f(means)g(that)g(co)s(de)g(m)m(ust)g(b)s(e)f(emitted)h(for)g (the)630 4630 y(function)33 b(ev)m(en)i(if)f(it)g(app)s(ears)f(that)i (the)g(function)e(is)h(not)g(referenced.)53 b(This)33 b(is)g(useful,)630 4740 y(for)d(example,)g(when)g(the)g(function)f(is)h (referenced)g(only)g(in)f(inline)e(assem)m(bly)-8 b(.)150 4902 y Fq(deprecated)630 5011 y Fy(The)26 b Fq(deprecated)e Fy(attribute)i(results)g(in)f(a)i(w)m(arning)f(if)f(the)i(function)e (is)h(used)g(an)m(ywhere)630 5121 y(in)33 b(the)i(source)g(\014le.)52 b(This)33 b(is)h(useful)e(when)i(iden)m(tifying)e(functions)h(that)j (are)f(exp)s(ected)630 5230 y(to)c(b)s(e)e(remo)m(v)m(ed)i(in)d(a)i (future)f(v)m(ersion)h(of)g(a)g(program.)40 b(The)30 b(w)m(arning)e(also)i(includes)e(the)630 5340 y(lo)s(cation)h(of)h(the) f(declaration)g(of)h(the)f(deprecated)h(function,)f(to)h(enable)f (users)g(to)h(easily)p eop %%Page: 176 186 176 185 bop 150 -116 a Fy(176)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(\014nd)36 b(further)h(information)f(ab) s(out)i(wh)m(y)g(the)g(function)e(is)h(deprecated,)k(or)d(what)g(they) 630 408 y(should)28 b(do)j(instead.)40 b(Note)31 b(that)g(the)g(w)m (arnings)e(only)g(o)s(ccurs)h(for)h(uses:)870 533 y Fq(int)47 b(old_fn)f(\(\))h(__attribute__)d(\(\(deprecated\)\);)870 637 y(int)j(old_fn)f(\(\);)870 741 y(int)h(\(*fn_ptr\)\(\))e(=)i (old_fn;)630 872 y Fy(results)29 b(in)g(a)i(w)m(arning)e(on)h(line)f(3) i(but)f(not)g(line)f(2.)630 1003 y(The)37 b Fq(deprecated)d Fy(attribute)k(can)f(also)g(b)s(e)g(used)g(for)g(v)-5 b(ariables)36 b(and)h(t)m(yp)s(es)g(\(see)h(Sec-)630 1112 y(tion)g(5.33)i([V)-8 b(ariable)38 b(A)m(ttributes],)j(page)e (184,)j(see)d(Section)f(5.34)i([T)m(yp)s(e)f(A)m(ttributes],)630 1222 y(page)31 b(188.\))150 1374 y Fq(weak)288 b Fy(The)43 b Fq(weak)g Fy(attribute)g(causes)h(the)g(declaration)f(to)h(b)s(e)f (emitted)h(as)g(a)g(w)m(eak)g(sym)m(b)s(ol)630 1484 y(rather)24 b(than)g(a)h(global.)38 b(This)23 b(is)g(primarily)e(useful)i(in)g (de\014ning)f(library)g(functions)h(whic)m(h)630 1593 y(can)35 b(b)s(e)f(o)m(v)m(erridden)g(in)g(user)g(co)s(de,)j(though)d (it)h(can)g(also)g(b)s(e)f(used)g(with)f(non-function)630 1703 y(declarations.)46 b(W)-8 b(eak)34 b(sym)m(b)s(ols)d(are)i(supp)s (orted)d(for)i(ELF)g(targets,)j(and)d(also)g(for)g(a.out)630 1812 y(targets)g(when)d(using)g(the)i(GNU)g(assem)m(bler)e(and)h(link)m (er.)150 1964 y Fq(malloc)192 b Fy(The)23 b Fq(malloc)f Fy(attribute)i(is)f(used)g(to)h(tell)f(the)h(compiler)e(that)j(a)f (function)e(ma)m(y)j(b)s(e)e(treated)630 2074 y(as)38 b(if)f(it)g(w)m(ere)h(the)g(mallo)s(c)e(function.)62 b(The)37 b(compiler)f(assumes)h(that)i(calls)d(to)j(mallo)s(c)630 2184 y(result)c(in)f(a)j(p)s(oin)m(ters)d(that)j(cannot)f(alias)f(an)m (ything.)57 b(This)34 b(will)f(often)j(impro)m(v)m(e)g(opti-)630 2293 y(mization.)150 2445 y Fq(alias)29 b(\(")p Fn(target)r Fq("\))630 2555 y Fy(The)24 b Fq(alias)e Fy(attribute)i(causes)h(the)f (declaration)g(to)h(b)s(e)e(emitted)h(as)g(an)h(alias)e(for)h(another) 630 2664 y(sym)m(b)s(ol,)29 b(whic)m(h)g(m)m(ust)i(b)s(e)e(sp)s (eci\014ed.)39 b(F)-8 b(or)32 b(instance,)870 2789 y Fq(void)47 b(__f)g(\(\))g({)g(/*)g(do)h(something)d(*/;)i(})870 2893 y(void)g(f)g(\(\))g(__attribute__)d(\(\(weak,)i(alias)h (\("__f"\)\)\);)630 3024 y Fy(declares)39 b(`)p Fq(f)p Fy(')g(to)g(b)s(e)f(a)h(w)m(eak)h(alias)e(for)h(`)p Fq(__f)p Fy('.)65 b(In)38 b(C)p Fq(++)p Fy(,)i(the)f(mangled)f(name)h(for)g(the) 630 3134 y(target)32 b(m)m(ust)e(b)s(e)g(used.)630 3264 y(Not)h(all)f(target)h(mac)m(hines)f(supp)s(ort)f(this)g(attribute.)150 3417 y Fq(regparm)f(\()p Fn(n)m(um)m(b)s(er)7 b Fq(\))630 3526 y Fy(On)43 b(the)h(In)m(tel)f(386,)49 b(the)44 b Fq(regparm)e Fy(attribute)h(causes)h(the)g(compiler)f(to)h(pass)f(up)g (to)630 3636 y Fn(n)m(um)m(b)s(er)35 b Fy(in)m(teger)30 b(argumen)m(ts)h(in)d(registers)i(EAX,)g(ED)m(X,)h(and)e(ECX)h(instead) f(of)h(on)g(the)630 3745 y(stac)m(k.)44 b(F)-8 b(unctions)30 b(that)i(tak)m(e)g(a)g(v)-5 b(ariable)29 b(n)m(um)m(b)s(er)h(of)h (argumen)m(ts)g(will)e(con)m(tin)m(ue)i(to)h(b)s(e)630 3855 y(passed)e(all)f(of)i(their)e(argumen)m(ts)i(on)f(the)h(stac)m(k.) 150 4007 y Fq(stdcall)144 b Fy(On)26 b(the)g(In)m(tel)g(386,)j(the)e Fq(stdcall)d Fy(attribute)j(causes)g(the)f(compiler)f(to)i(assume)g (that)g(the)630 4117 y(called)36 b(function)f(will)f(p)s(op)h(o\013)i (the)f(stac)m(k)i(space)f(used)f(to)h(pass)f(argumen)m(ts,)j(unless)34 b(it)630 4226 y(tak)m(es)e(a)f(v)-5 b(ariable)29 b(n)m(um)m(b)s(er)g (of)h(argumen)m(ts.)630 4357 y(The)44 b(P)m(o)m(w)m(erPC)g(compiler)f (for)h(Windo)m(ws)f(NT)h(curren)m(tly)f(ignores)h(the)g Fq(stdcall)e Fy(at-)630 4467 y(tribute.)150 4619 y Fq(cdecl)240 b Fy(On)33 b(the)h(In)m(tel)g(386,)i(the)e Fq(cdecl)e Fy(attribute)i(causes)g(the)g(compiler)e(to)j(assume)e(that)i(the)630 4728 y(calling)h(function)f(will)g(p)s(op)h(o\013)h(the)h(stac)m(k)g (space)g(used)e(to)i(pass)e(argumen)m(ts.)62 b(This)35 b(is)630 4838 y(useful)29 b(to)i(o)m(v)m(erride)f(the)h(e\013ects)h(of) e(the)h(`)p Fq(-mrtd)p Fy(')e(switc)m(h.)630 4969 y(The)d(P)m(o)m(w)m (erPC)i(compiler)d(for)i(Windo)m(ws)f(NT)g(curren)m(tly)g(ignores)h (the)g Fq(cdecl)e Fy(attribute.)150 5121 y Fq(longcall)96 b Fy(On)29 b(the)i(RS/6000)g(and)f(P)m(o)m(w)m(erPC,)h(the)g Fq(longcall)d Fy(attribute)i(causes)g(the)g(compiler)f(to)630 5230 y(alw)m(a)m(ys)38 b(call)g(the)g(function)e(via)i(a)g(p)s(oin)m (ter,)h(so)f(that)g(functions)f(whic)m(h)f(reside)h(further)630 5340 y(than)30 b(64)h(megab)m(ytes)h(\(67,108,864)j(b)m(ytes\))c(from)f (the)h(curren)m(t)f(lo)s(cation)g(can)h(b)s(e)e(called.)p eop %%Page: 177 187 177 186 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(177)150 299 y Fq(long_call/short_call)630 408 y Fy(This)42 b(attribute)h(allo)m (ws)g(to)h(sp)s(ecify)e(ho)m(w)h(to)i(call)d(a)i(particular)e(function) g(on)h(ARM.)630 518 y(Both)22 b(attributes)e(o)m(v)m(erride)i(the)f(`)p Fq(-mlong-calls)p Fy(')d(\(see)k(Section)f(3.17.7)i([ARM)f(Options],) 630 628 y(page)35 b(89\))g(command)f(line)e(switc)m(h)i(and)f Fq(#pragma)c(long_calls)i Fy(settings.)52 b(The)33 b Fq(long_)630 737 y(call)e Fy(attribute)i(causes)g(the)g(compiler)e(to)i (alw)m(a)m(ys)h(call)d(the)i(function)f(b)m(y)g(\014rst)g(loading)630 847 y(its)38 b(address)h(in)m(to)g(a)g(register)g(and)g(then)f(using)g (the)h(con)m(ten)m(ts)i(of)e(that)h(register.)66 b(The)630 956 y Fq(short_call)25 b Fy(attribute)j(alw)m(a)m(ys)h(places)f(the)g (o\013set)h(to)g(the)g(function)e(from)g(the)i(call)e(site)630 1066 y(in)m(to)j(the)h(`)p Fq(BL)p Fy(')f(instruction)f(directly)-8 b(.)150 1223 y Fq(dllimport)630 1332 y Fy(On)38 b(the)h(P)m(o)m(w)m (erPC)h(running)c(Windo)m(ws)i(NT,)h(the)g Fq(dllimport)d Fy(attribute)i(causes)i(the)630 1442 y(compiler)26 b(to)i(call)f(the)h (function)e(via)h(a)h(global)f(p)s(oin)m(ter)f(to)i(the)g(function)e(p) s(oin)m(ter)h(that)h(is)630 1551 y(set)22 b(up)e(b)m(y)h(the)g(Windo)m (ws)g(NT)g(dll)e(library)-8 b(.)35 b(The)21 b(p)s(oin)m(ter)f(name)h (is)g(formed)f(b)m(y)h(com)m(bining)630 1661 y Fq(__imp_)29 b Fy(and)g(the)i(function)e(name.)150 1817 y Fq(dllexport)630 1927 y Fy(On)38 b(the)h(P)m(o)m(w)m(erPC)h(running)c(Windo)m(ws)i(NT,)h (the)g Fq(dllexport)d Fy(attribute)i(causes)i(the)630 2037 y(compiler)32 b(to)h(pro)m(vide)f(a)i(global)e(p)s(oin)m(ter)g(to) i(the)f(function)f(p)s(oin)m(ter,)h(so)g(that)h(it)e(can)i(b)s(e)630 2146 y(called)24 b(with)g(the)i Fq(dllimport)c Fy(attribute.)39 b(The)25 b(p)s(oin)m(ter)f(name)h(is)g(formed)f(b)m(y)h(com)m(bining) 630 2256 y Fq(__imp_)k Fy(and)g(the)i(function)e(name.)150 2412 y Fq(exception)f(\()p Fn(except-func)36 b Fq([,)30 b Fn(except-arg)8 b Fq(]\))630 2522 y Fy(On)38 b(the)h(P)m(o)m(w)m (erPC)h(running)c(Windo)m(ws)i(NT,)h(the)g Fq(exception)d Fy(attribute)i(causes)i(the)630 2632 y(compiler)21 b(to)j(mo)s(dify)d (the)h(structured)g(exception)h(table)g(en)m(try)g(it)f(emits)g(for)h (the)f(declared)630 2741 y(function.)39 b(The)27 b(string)g(or)g(iden)m (ti\014er)f Fn(except-func)34 b Fy(is)27 b(placed)g(in)g(the)h(third)e (en)m(try)i(of)g(the)630 2851 y(structured)42 b(exception)h(table.)78 b(It)43 b(represen)m(ts)g(a)g(function,)i(whic)m(h)c(is)h(called)g(b)m (y)h(the)630 2960 y(exception)35 b(handling)e(mec)m(hanism)i(if)f(an)h (exception)g(o)s(ccurs.)56 b(If)34 b(it)h(w)m(as)h(sp)s(eci\014ed,)f (the)630 3070 y(string)j(or)g(iden)m(ti\014er)f Fn(except-arg)48 b Fy(is)38 b(placed)g(in)f(the)i(fourth)f(en)m(try)g(of)h(the)g (structured)630 3180 y(exception)31 b(table.)150 3336 y Fq(function_vector)630 3446 y Fy(Use)45 b(this)f(attribute)g(on)g (the)h(H8/300)i(and)d(H8/300H)k(to)d(indicate)f(that)h(the)g(sp)s(eci-) 630 3555 y(\014ed)33 b(function)f(should)g(b)s(e)h(called)g(through)g (the)h(function)e(v)m(ector.)53 b(Calling)31 b(a)j(function)630 3665 y(through)29 b(the)h(function)f(v)m(ector)i(will)c(reduce)j(co)s (de)g(size,)g(ho)m(w)m(ev)m(er;)i(the)e(function)e(v)m(ector)630 3774 y(has)33 b(a)g(limited)d(size)j(\(maxim)m(um)f(128)i(en)m(tries)f (on)f(the)h(H8/300)j(and)c(64)h(en)m(tries)g(on)g(the)630 3884 y(H8/300H\))g(and)d(shares)g(space)h(with)e(the)i(in)m(terrupt)d (v)m(ector.)630 4017 y(Y)-8 b(ou)37 b(m)m(ust)f(use)g(GAS)g(and)f(GLD)i (from)f(GNU)h(bin)m(utils)c(v)m(ersion)i(2.7)j(or)e(later)g(for)g(this) 630 4127 y(attribute)30 b(to)h(w)m(ork)g(correctly)-8 b(.)150 4283 y Fq(interrupt)630 4393 y Fy(Use)22 b(this)e(attribute)h (on)h(the)f(ARM,)h(A)-10 b(VR,)22 b(M32R/D)h(and)e(Xstorm)m(y16)i(p)s (orts)e(to)h(indicate)630 4502 y(that)32 b(the)g(sp)s(eci\014ed)d (function)i(is)f(an)h(in)m(terrupt)f(handler.)43 b(The)31 b(compiler)f(will)e(generate)630 4612 y(function)e(en)m(try)i(and)f (exit)h(sequences)g(suitable)e(for)i(use)f(in)f(an)i(in)m(terrupt)e (handler)g(when)630 4722 y(this)j(attribute)h(is)g(presen)m(t.)630 4855 y(Note,)39 b(in)m(terrupt)34 b(handlers)g(for)i(the)g(H8/300,)k (H8/300H)e(and)e(SH)f(pro)s(cessors)g(can)i(b)s(e)630 4964 y(sp)s(eci\014ed)29 b(via)h(the)g Fq(interrupt_handler)c Fy(attribute.)630 5097 y(Note,)32 b(on)e(the)h(A)-10 b(VR)30 b(in)m(terrupts)f(will)f(b)s(e)h(enabled)h(inside)e(the)i (function.)630 5230 y(Note,)46 b(for)c(the)g(ARM)h(y)m(ou)f(can)g(sp)s (ecify)f(the)h(kind)e(of)i(in)m(terrupt)f(to)i(b)s(e)e(handled)f(b)m(y) 630 5340 y(adding)29 b(an)h(optional)g(parameter)h(to)g(the)f(in)m (terrupt)f(attribute)h(lik)m(e)g(this:)p eop %%Page: 178 188 178 187 bop 150 -116 a Fy(178)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))870 299 y Fq(void)47 b(f)g(\(\))g(__attribute__)d (\(\(interrupt)h(\("IRQ"\)\)\);)630 438 y Fy(P)m(ermissible)32 b(v)-5 b(alues)35 b(for)f(this)g(parameter)i(are:)50 b(IR)m(Q,)35 b(FIQ,)g(SWI,)g(ABOR)-8 b(T)35 b(and)f(UN-)630 548 y(DEF.)150 717 y Fq(interrupt_handler)630 827 y Fy(Use)22 b(this)e(attribute)h(on)h(the)f(H8/300,)26 b(H8/300H)e(and)d(SH)g(to)h (indicate)f(that)h(the)g(sp)s(eci\014ed)630 936 y(function)k(is)f(an)i (in)m(terrupt)f(handler.)37 b(The)27 b(compiler)e(will)f(generate)29 b(function)c(en)m(try)j(and)630 1046 y(exit)37 b(sequences)h(suitable)e (for)h(use)h(in)e(an)h(in)m(terrupt)f(handler)g(when)g(this)h (attribute)g(is)630 1155 y(presen)m(t.)150 1324 y Fq(sp_switch)630 1434 y Fy(Use)23 b(this)f(attribute)g(on)h(the)g(SH)f(to)h(indicate)f (an)h Fq(interrupt_handler)18 b Fy(function)j(should)630 1544 y(switc)m(h)30 b(to)h(an)f(alternate)h(stac)m(k.)42 b(It)30 b(exp)s(ects)h(a)f(string)f(argumen)m(t)i(that)g(names)f(a)h (global)630 1653 y(v)-5 b(ariable)29 b(holding)f(the)j(address)e(of)i (the)g(alternate)g(stac)m(k.)870 1787 y Fq(void)47 b(*alt_stack;)870 1890 y(void)g(f)g(\(\))g(__attribute__)d(\(\(interrupt_handler,)2111 1994 y(sp_switch)h(\("alt_stack"\)\)\);)150 2163 y(trap_exit)630 2273 y Fy(Use)33 b(this)e(attribute)i(on)f(the)h(SH)f(for)h(an)f Fq(interrupt_handle)c Fy(to)34 b(return)d(using)g Fq(trapa)630 2383 y Fy(instead)f(of)g Fq(rte)p Fy(.)40 b(This)28 b(attribute)i(exp)s (ects)h(an)f(in)m(teger)h(argumen)m(t)f(sp)s(ecifying)f(the)h(trap)630 2492 y(n)m(um)m(b)s(er)f(to)i(b)s(e)f(used.)150 2661 y Fq(eightbit_data)630 2771 y Fy(Use)36 b(this)e(attribute)h(on)g(the)h (H8/300)i(and)d(H8/300H)j(to)e(indicate)e(that)i(the)g(sp)s(eci\014ed) 630 2880 y(v)-5 b(ariable)39 b(should)f(b)s(e)h(placed)g(in)m(to)h(the) g(eigh)m(t)h(bit)e(data)h(section.)70 b(The)39 b(compiler)g(will)630 2990 y(generate)29 b(more)e(e\016cien)m(t)h(co)s(de)f(for)g(certain)g (op)s(erations)g(on)g(data)h(in)e(the)h(eigh)m(t)h(bit)e(data)630 3100 y(area.)42 b(Note)31 b(the)g(eigh)m(t)g(bit)e(data)i(area)g(is)f (limited)e(to)j(256)h(b)m(ytes)e(of)h(data.)630 3239 y(Y)-8 b(ou)37 b(m)m(ust)f(use)g(GAS)g(and)f(GLD)i(from)f(GNU)h(bin)m (utils)c(v)m(ersion)i(2.7)j(or)e(later)g(for)g(this)630 3348 y(attribute)30 b(to)h(w)m(ork)g(correctly)-8 b(.)150 3518 y Fq(tiny_data)630 3627 y Fy(Use)25 b(this)f(attribute)g(on)h(the) g(H8/300H)i(to)f(indicate)e(that)h(the)g(sp)s(eci\014ed)e(v)-5 b(ariable)24 b(should)630 3737 y(b)s(e)31 b(placed)g(in)m(to)g(the)h (tin)m(y)f(data)h(section.)44 b(The)31 b(compiler)f(will)f(generate)k (more)e(e\016cien)m(t)630 3846 y(co)s(de)i(for)f(loads)g(and)f(stores)i (on)f(data)i(in)d(the)h(tin)m(y)g(data)h(section.)47 b(Note)34 b(the)e(tin)m(y)g(data)630 3956 y(area)f(is)f(limited)e(to)j (sligh)m(tly)e(under)f(32kb)m(ytes)k(of)f(data.)150 4125 y Fq(signal)192 b Fy(Use)24 b(this)e(attribute)h(on)g(the)h(A)-10 b(VR)23 b(to)h(indicate)f(that)g(the)h(sp)s(eci\014ed)e(function)g(is)g (an)h(signal)630 4235 y(handler.)39 b(The)29 b(compiler)f(will)f (generate)k(function)e(en)m(try)h(and)f(exit)g(sequences)h(suitable)630 4344 y(for)35 b(use)f(in)g(an)h(signal)e(handler)g(when)h(this)g (attribute)g(is)g(presen)m(t.)55 b(In)m(terrupts)33 b(will)g(b)s(e)630 4454 y(disabled)28 b(inside)g(function.)150 4623 y Fq(naked)240 b Fy(Use)41 b(this)f(attribute)h(on)g(the)g(ARM)g(or)g(A)-10 b(VR)41 b(p)s(orts)f(to)i(indicate)e(that)h(the)h(sp)s(eci\014ed)630 4733 y(function)35 b(do)h(not)g(need)g(prologue/epilogue)g(sequences)g (generated)i(b)m(y)e(the)g(compiler.)630 4842 y(It)30 b(is)g(up)f(to)i(the)g(programmer)f(to)h(pro)m(vide)e(these)i (sequences.)150 5011 y Fq(model)e(\()p Fn(mo)s(del-name)5 b Fq(\))630 5121 y Fy(Use)35 b(this)e(attribute)h(on)g(the)g(M32R/D)j (to)e(set)f(the)h(addressabilit)m(y)d(of)i(an)g(ob)5 b(ject,)37 b(and)630 5230 y(the)32 b(co)s(de)g(generated)h(for)f(a)g (function.)44 b(The)32 b(iden)m(ti\014er)e Fn(mo)s(del-name)36 b Fy(is)31 b(one)h(of)g Fq(small)p Fy(,)630 5340 y Fq(medium)p Fy(,)d(or)h Fq(large)p Fy(,)f(represen)m(ting)h(eac)m(h)i(of)e(the)h (co)s(de)f(mo)s(dels.)p eop %%Page: 179 189 179 188 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(179)630 299 y(Small)26 b(mo)s(del)g(ob)5 b(jects)28 b(liv)m(e)f(in)g(the)g(lo)m (w)m(er)h(16MB)h(of)f(memory)g(\(so)g(that)g(their)f(addresses)630 408 y(can)j(b)s(e)e(loaded)h(with)f(the)h Fq(ld24)g Fy(instruction\),)f (and)g(are)i(callable)e(with)g(the)i Fq(bl)e Fy(instruc-)630 518 y(tion.)630 657 y(Medium)44 b(mo)s(del)f(ob)5 b(jects)46 b(ma)m(y)g(liv)m(e)e(an)m(ywhere)h(in)e(the)j(32-bit)f(address)f(space) h(\(the)630 767 y(compiler)26 b(will)f(generate)30 b Fq(seth/add3)25 b Fy(instructions)g(to)k(load)e(their)g(addresses\),)h (and)g(are)630 877 y(callable)h(with)g(the)i Fq(bl)f Fy(instruction.)630 1016 y(Large)22 b(mo)s(del)e(ob)5 b(jects)23 b(ma)m(y)f(liv)m(e)f(an)m(ywhere)g(in)f(the)i(32-bit)g (address)e(space)i(\(the)g(compiler)630 1126 y(will)29 b(generate)k Fq(seth/add3)c Fy(instructions)g(to)j(load)g(their)e (addresses\),)i(and)f(ma)m(y)h(not)g(b)s(e)630 1235 y(reac)m(hable)h (with)f(the)i Fq(bl)e Fy(instruction)f(\(the)j(compiler)d(will)g (generate)j(the)g(m)m(uc)m(h)f(slo)m(w)m(er)630 1345 y Fq(seth/add3/jl)27 b Fy(instruction)h(sequence\).)275 1519 y(Y)-8 b(ou)43 b(can)g(sp)s(ecify)e(m)m(ultiple)g(attributes)h(in) g(a)h(declaration)f(b)m(y)h(separating)g(them)g(b)m(y)f(commas)150 1629 y(within)35 b(the)j(double)f(paren)m(theses)h(or)g(b)m(y)g (immediately)e(follo)m(wing)g(an)i(attribute)g(declaration)f(with)150 1738 y(another)31 b(attribute)f(declaration.)275 1882 y(Some)40 b(p)s(eople)f(ob)5 b(ject)41 b(to)g(the)f Fq(__attribute__)d Fy(feature,)43 b(suggesting)d(that)h(ISO)e(C's)h Fq(#pragma)150 1992 y Fy(should)29 b(b)s(e)i(used)f(instead.)43 b(A)m(t)32 b(the)f(time)g Fq(__attribute__)d Fy(w)m(as)k(designed,)e(there)i(w)m (ere)f(t)m(w)m(o)i(reasons)150 2102 y(for)d(not)h(doing)e(this.)199 2246 y(1.)61 b(It)30 b(is)g(imp)s(ossible)d(to)k(generate)h Fq(#pragma)c Fy(commands)i(from)g(a)h(macro.)199 2385 y(2.)61 b(There)30 b(is)f(no)i(telling)d(what)j(the)f(same)h Fq(#pragma)d Fy(migh)m(t)i(mean)h(in)e(another)i(compiler.)275 2560 y(These)d(t)m(w)m(o)i(reasons)f(applied)e(to)i(almost)g(an)m(y)g (application)f(that)h(migh)m(t)f(ha)m(v)m(e)j(b)s(een)d(prop)s(osed)f (for)150 2669 y Fq(#pragma)p Fy(.)39 b(It)30 b(w)m(as)h(basically)e(a)h (mistak)m(e)h(to)g(use)f Fq(#pragma)f Fy(for)h Fr(anything)p Fy(.)275 2813 y(The)37 b(ISO)g(C99)i(standard)e(includes)f Fq(_Pragma)p Fy(,)j(whic)m(h)e(no)m(w)h(allo)m(ws)f(pragmas)h(to)h(b)s (e)f(generated)150 2923 y(from)32 b(macros.)48 b(In)32 b(addition,)g(a)h Fq(#pragma)28 b(GCC)k Fy(namespace)i(is)d(no)m(w)i (in)e(use)i(for)f(GCC-sp)s(eci\014c)g(prag-)150 3033 y(mas.)61 b(Ho)m(w)m(ev)m(er,)41 b(it)c(has)g(b)s(een)f(found)g(con)m (v)m(enien)m(t)j(to)e(use)g Fq(__attribute__)d Fy(to)k(ac)m(hiev)m(e)g (a)g(natural)150 3142 y(attac)m(hmen)m(t)28 b(of)e(attributes)f(to)i (their)d(corresp)s(onding)g(declarations,)i(whereas)g Fq(#pragma)i(GCC)d Fy(is)f(of)i(use)150 3252 y(for)k(constructs)g(that) h(do)f(not)g(naturally)f(form)h(part)g(of)g(the)g(grammar.)41 b(See)30 b(section)h(\\Miscellaneous)150 3361 y(Prepro)s(cessing)e (Directiv)m(es")i(in)e Fn(The)h(C)g(Prepro)s(cessor)7 b Fy(.)150 3643 y Fs(5.27)68 b(A)l(ttribute)46 b(Syn)l(tax)275 3846 y Fy(This)41 b(section)i(describ)s(es)e(the)i(syn)m(tax)h(with)e (whic)m(h)f Fq(__attribute__)f Fy(ma)m(y)j(b)s(e)g(used,)i(and)e(the) 150 3955 y(constructs)36 b(to)h(whic)m(h)d(attribute)i(sp)s(eci\014ers) e(bind,)h(for)h(the)g(C)f(language.)58 b(Some)36 b(details)f(ma)m(y)h (v)-5 b(ary)150 4065 y(for)29 b(C)p Fq(++)f Fy(and)h(Ob)5 b(jectiv)m(e-C.)41 b(Because)30 b(of)g(infelicities)c(in)i(the)h (grammar)h(for)f(attributes,)g(some)h(forms)150 4175 y(describ)s(ed)e(here)i(ma)m(y)h(not)g(b)s(e)f(successfully)e(parsed)i (in)f(all)g(cases.)275 4319 y(There)34 b(are)h(some)g(problems)d(with)i (the)g(seman)m(tics)h(of)g(attributes)f(in)f(C)p Fq(++)p Fy(.)53 b(F)-8 b(or)35 b(example,)h(there)150 4429 y(are)41 b(no)g(manglings)f(for)g(attributes,)k(although)c(they)h(ma)m(y)h (a\013ect)g(co)s(de)f(generation,)j(so)e(problems)150 4538 y(ma)m(y)e(arise)f(when)g(attributed)f(t)m(yp)s(es)i(are)g(used)e (in)h(conjunction)f(with)g(templates)i(or)f(o)m(v)m(erloading.)150 4648 y(Similarly)-8 b(,)26 b Fq(typeid)g Fy(do)s(es)i(not)h (distinguish)24 b(b)s(et)m(w)m(een)29 b(t)m(yp)s(es)g(with)e (di\013eren)m(t)g(attributes.)40 b(Supp)s(ort)26 b(for)150 4757 y(attributes)i(in)g(C)p Fq(++)g Fy(ma)m(y)h(b)s(e)f(restricted)g (in)g(future)g(to)h(attributes)f(on)h(declarations)f(only)-8 b(,)29 b(but)f(not)h(on)150 4867 y(nested)h(declarators.)275 5011 y(See)23 b(Section)g(5.26)i([F)-8 b(unction)23 b(A)m(ttributes],)i (page)f(172,)i(for)d(details)g(of)g(the)g(seman)m(tics)h(of)f (attributes)150 5121 y(applying)34 b(to)i(functions.)55 b(See)36 b(Section)g(5.33)h([V)-8 b(ariable)35 b(A)m(ttributes],)j (page)e(184,)j(for)c(details)g(of)h(the)150 5230 y(seman)m(tics)28 b(of)g(attributes)g(applying)e(to)i(v)-5 b(ariables.)39 b(See)28 b(Section)g(5.34)h([T)m(yp)s(e)f(A)m(ttributes],)h(page)f (188,)150 5340 y(for)c(details)f(of)i(the)f(seman)m(tics)h(of)f (attributes)g(applying)e(to)j(structure,)g(union)d(and)i(en)m(umerated) h(t)m(yp)s(es.)p eop %%Page: 180 190 180 189 bop 150 -116 a Fy(180)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))275 299 y(An)24 b Fn(attribute)g(sp)s(eci\014er) 30 b Fy(is)24 b(of)h(the)g(form)f Fq(__attribute__)j(\(\()p Fn(attribute-list)r Fq(\)\))p Fy(.)36 b(An)25 b Fn(attribute)f(list)150 408 y Fy(is)j(a)i(p)s(ossibly)d(empt)m(y)i(comma-separated)i(sequence)f (of)g Fn(attributes)p Fy(,)f(where)g(eac)m(h)i(attribute)e(is)f(one)i (of)150 518 y(the)i(follo)m(wing:)225 656 y Fx(\017)60 b Fy(Empt)m(y)-8 b(.)41 b(Empt)m(y)30 b(attributes)g(are)h(ignored.)225 792 y Fx(\017)60 b Fy(A)26 b(w)m(ord)g(\(whic)m(h)f(ma)m(y)i(b)s(e)e (an)h(iden)m(ti\014er)e(suc)m(h)i(as)g Fq(unused)p Fy(,)f(or)i(a)f (reserv)m(ed)g(w)m(ord)g(suc)m(h)f(as)i Fq(const)p Fy(\).)225 928 y Fx(\017)60 b Fy(A)35 b(w)m(ord,)i(follo)m(w)m(ed)e(b)m(y)-8 b(,)37 b(in)d(paren)m(theses,)j(parameters)e(for)g(the)h(attribute.)55 b(These)35 b(parameters)330 1038 y(tak)m(e)d(one)f(of)f(the)h(follo)m (wing)e(forms:)405 1174 y Fx(\017)60 b Fy(An)30 b(iden)m(ti\014er.)39 b(F)-8 b(or)31 b(example,)f Fq(mode)g Fy(attributes)g(use)g(this)f (form.)405 1310 y Fx(\017)60 b Fy(An)33 b(iden)m(ti\014er)f(follo)m(w)m (ed)h(b)m(y)h(a)g(comma)g(and)f(a)h(non-empt)m(y)g(comma-separated)h (list)e(of)g(ex-)510 1420 y(pressions.)39 b(F)-8 b(or)31 b(example,)f Fq(format)f Fy(attributes)h(use)g(this)f(form.)405 1556 y Fx(\017)60 b Fy(A)31 b(p)s(ossibly)d(empt)m(y)j(comma-separated) h(list)e(of)h(expressions.)40 b(F)-8 b(or)32 b(example,)f Fq(format_arg)510 1665 y Fy(attributes)37 b(use)g(this)f(form)g(with)g (the)h(list)f(b)s(eing)g(a)h(single)f(in)m(teger)i(constan)m(t)g (expression,)510 1775 y(and)30 b Fq(alias)f Fy(attributes)h(use)g(this) f(form)h(with)f(the)i(list)e(b)s(eing)g(a)h(single)f(string)h(constan)m (t.)275 1939 y(An)c Fn(attribute)g(sp)s(eci\014er)f(list)i Fy(is)e(a)i(sequence)g(of)f(one)h(or)f(more)h(attribute)f(sp)s (eci\014ers,)g(not)g(separated)150 2049 y(b)m(y)k(an)m(y)h(other)g(tok) m(ens.)275 2187 y(An)39 b(attribute)g(sp)s(eci\014er)f(list)h(ma)m(y)h (app)s(ear)f(after)h(the)g(colon)g(follo)m(wing)e(a)i(lab)s(el,)g (other)g(than)g(a)150 2296 y Fq(case)35 b Fy(or)h Fq(default)d Fy(lab)s(el.)56 b(The)35 b(only)g(attribute)h(it)f(mak)m(es)i(sense)f (to)g(use)g(after)g(a)g(lab)s(el)f(is)f Fq(unused)p Fy(.)150 2406 y(This)27 b(feature)i(is)e(in)m(tended)h(for)g(co)s(de)h (generated)h(b)m(y)e(programs)g(whic)m(h)g(con)m(tains)g(lab)s(els)f (that)i(ma)m(y)h(b)s(e)150 2516 y(un)m(used)d(but)g(whic)m(h)g(is)g (compiled)f(with)h(`)p Fq(-Wall)p Fy('.)39 b(It)28 b(w)m(ould)e(not)j (normally)d(b)s(e)h(appropriate)g(to)i(use)e(in)150 2625 y(it)g(h)m(uman-written)g(co)s(de,)i(though)e(it)h(could)f(b)s(e)g (useful)f(in)h(cases)i(where)e(the)h(co)s(de)g(that)h(jumps)d(to)j(the) 150 2735 y(lab)s(el)g(is)g(con)m(tained)i(within)d(an)i Fq(#ifdef)e Fy(conditional.)275 2873 y(An)33 b(attribute)g(sp)s (eci\014er)f(list)g(ma)m(y)i(app)s(ear)f(as)h(part)f(of)h(a)g Fq(struct)p Fy(,)e Fq(union)g Fy(or)i Fq(enum)e Fy(sp)s(eci\014er.)49 b(It)150 2982 y(ma)m(y)35 b(go)g(either)f(immediately)e(after)j(the)f Fq(struct)p Fy(,)g Fq(union)f Fy(or)h Fq(enum)f Fy(k)m(eyw)m(ord,)j(or) f(after)f(the)h(closing)150 3092 y(brace.)40 b(It)29 b(is)f(ignored)g(if)f(the)i(con)m(ten)m(t)h(of)f(the)g(structure,)g (union)d(or)j(en)m(umerated)g(t)m(yp)s(e)g(is)e(not)i(de\014ned)150 3201 y(in)23 b(the)i(sp)s(eci\014er)e(in)g(whic)m(h)h(the)h(attribute)f (sp)s(eci\014er)f(list)g(is)h(used|that)g(is,)h(in)e(usages)j(suc)m(h)e (as)h Fq(struct)150 3311 y(__attribute__\(\(foo\)\))g(bar)37 b Fy(with)f(no)i(follo)m(wing)e(op)s(ening)g(brace.)63 b(Where)38 b(attribute)g(sp)s(eci\014ers)150 3421 y(follo)m(w)25 b(the)h(closing)f(brace,)j(they)e(are)g(considered)f(to)i(relate)f(to)h (the)f(structure,)h(union)d(or)i(en)m(umerated)150 3530 y(t)m(yp)s(e)35 b(de\014ned,)g(not)g(to)h(an)m(y)f(enclosing)f (declaration)g(the)h(t)m(yp)s(e)g(sp)s(eci\014er)e(app)s(ears)i(in,)f (and)h(the)g(t)m(yp)s(e)150 3640 y(de\014ned)29 b(is)h(not)g(complete)h (un)m(til)e(after)i(the)f(attribute)g(sp)s(eci\014ers.)275 3777 y(Otherwise,)e(an)i(attribute)f(sp)s(eci\014er)f(app)s(ears)h(as)g (part)h(of)g(a)g(declaration,)f(coun)m(ting)g(declarations)150 3887 y(of)39 b(unnamed)f(parameters)i(and)e(t)m(yp)s(e)i(names,)i(and)c (relates)i(to)g(that)g(declaration)e(\(whic)m(h)h(ma)m(y)h(b)s(e)150 3997 y(nested)d(in)e(another)j(declaration,)g(for)f(example)f(in)g(the) h(case)h(of)f(a)g(parameter)h(declaration\),)g(or)f(to)150 4106 y(a)g(particular)e(declarator)i(within)d(a)i(declaration.)59 b(Where)37 b(an)f(attribute)h(sp)s(eci\014er)d(is)i(applied)e(to)k(a) 150 4216 y(parameter)26 b(declared)f(as)h(a)g(function)e(or)i(an)f (arra)m(y)-8 b(,)28 b(it)d(should)f(apply)g(to)i(the)g(function)e(or)i (arra)m(y)g(rather)150 4325 y(than)f(the)h(p)s(oin)m(ter)e(to)i(whic)m (h)e(the)i(parameter)f(is)g(implicitly)c(con)m(v)m(erted,)28 b(but)d(this)f(is)h(not)g(y)m(et)i(correctly)150 4435 y(implemen)m(ted.)275 4573 y(An)m(y)35 b(list)f(of)h(sp)s(eci\014ers)e (and)i(quali\014ers)e(at)j(the)f(start)h(of)g(a)f(declaration)g(ma)m(y) h(con)m(tain)f(attribute)150 4682 y(sp)s(eci\014ers,)h(whether)f(or)h (not)g(suc)m(h)g(a)g(list)f(ma)m(y)h(in)f(that)h(con)m(text)i(con)m (tain)e(storage)i(class)d(sp)s(eci\014ers.)150 4792 y(\(Some)29 b(attributes,)f(ho)m(w)m(ev)m(er,)j(are)e(essen)m(tially)e(in)g(the)i (nature)f(of)h(storage)h(class)e(sp)s(eci\014ers,)f(and)h(only)150 4902 y(mak)m(e)g(sense)e(where)g(storage)i(class)f(sp)s(eci\014ers)e (ma)m(y)i(b)s(e)f(used;)h(for)g(example,)g Fq(section)p Fy(.\))38 b(There)26 b(is)g(one)150 5011 y(necessary)34 b(limitation)e(to)i(this)e(syn)m(tax:)48 b(the)34 b(\014rst)f(old-st)m (yle)g(parameter)i(declaration)e(in)f(a)i(function)150 5121 y(de\014nition)25 b(cannot)k(b)s(egin)d(with)g(an)i(attribute)f (sp)s(eci\014er,)g(b)s(ecause)h(suc)m(h)f(an)h(attribute)f(applies)f (to)j(the)150 5230 y(function)d(instead)h(b)m(y)g(syn)m(tax)h(describ)s (ed)e(b)s(elo)m(w)g(\(whic)m(h,)i(ho)m(w)m(ev)m(er,)h(is)e(not)g(y)m (et)i(implemen)m(ted)d(in)g(this)150 5340 y(case\).)45 b(In)31 b(some)h(other)f(cases,)i(attribute)e(sp)s(eci\014ers)f(are)i (p)s(ermitted)e(b)m(y)h(this)f(grammar)h(but)g(not)h(y)m(et)p eop %%Page: 181 191 181 190 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(181)150 299 y(supp)s(orted)27 b(b)m(y)h(the)h(compiler.)39 b(All)27 b(attribute)i(sp)s(eci\014ers)e(in)g(this)g(place)i(relate)g(to)h(the)e (declaration)h(as)150 408 y(a)37 b(whole.)57 b(In)35 b(the)i(obsolescen)m(t)g(usage)g(where)e(a)i(t)m(yp)s(e)f(of)h Fq(int)e Fy(is)g(implied)e(b)m(y)j(the)h(absence)f(of)h(t)m(yp)s(e)150 518 y(sp)s(eci\014ers,)d(suc)m(h)g(a)h(list)e(of)h(sp)s(eci\014ers)f (and)h(quali\014ers)e(ma)m(y)j(b)s(e)f(an)g(attribute)g(sp)s(eci\014er) f(list)g(with)g(no)150 628 y(other)e(sp)s(eci\014ers)d(or)j (quali\014ers.)275 759 y(An)h(attribute)h(sp)s(eci\014er)f(list)g(ma)m (y)h(app)s(ear)g(immediately)e(b)s(efore)i(a)h(declarator)f(\(other)h (than)f(the)150 869 y(\014rst\))g(in)e(a)j(comma-separated)h(list)c(of) j(declarators)f(in)f(a)h(declaration)g(of)g(more)h(than)e(one)i(iden)m (ti\014er)150 978 y(using)i(a)i(single)e(list)g(of)h(sp)s(eci\014ers)f (and)h(quali\014ers.)59 b(Suc)m(h)37 b(attribute)g(sp)s(eci\014ers)f (apply)g(only)h(to)h(the)150 1088 y(iden)m(ti\014er)29 b(b)s(efore)h(whose)g(declarator)h(they)f(app)s(ear.)40 b(F)-8 b(or)31 b(example,)g(in)390 1214 y Fq (__attribute__\(\(noreturn\))o(\))42 b(void)47 b(d0)g(\(void\),)581 1318 y(__attribute__\(\(format\(pr)o(intf)o(,)42 b(1,)47 b(2\)\)\))g(d1)g(\(const)f(char)g(*,)i(...\),)629 1421 y(d2)f(\(void\))150 1553 y Fy(the)42 b Fq(noreturn)e Fy(attribute)i(applies)e(to)j(all)e(the)i(functions)d(declared;)48 b(the)42 b Fq(format)f Fy(attribute)h(only)150 1663 y(applies)29 b(to)i Fq(d1)p Fy(.)275 1794 y(An)36 b(attribute)h(sp)s(eci\014er)e (list)h(ma)m(y)i(app)s(ear)e(immediately)f(b)s(efore)i(the)g(comma,)j Fq(=)d Fy(or)g(semicolon)150 1904 y(terminating)g(the)h(declaration)f (of)h(an)f(iden)m(ti\014er)f(other)i(than)g(a)g(function)e (de\014nition.)61 b(A)m(t)39 b(presen)m(t,)150 2013 y(suc)m(h)c (attribute)f(sp)s(eci\014ers)f(apply)h(to)h(the)h(declared)e(ob)5 b(ject)36 b(or)f(function,)g(but)f(in)f(future)h(they)h(ma)m(y)150 2123 y(attac)m(h)c(to)f(the)f(outermost)h(adjacen)m(t)h(declarator.)41 b(In)28 b(simple)f(cases)j(there)g(is)e(no)h(di\013erence,)g(but,)g (for)150 2233 y(example,)h(in)390 2358 y Fq(void)47 b (\(****f\)\(void\))d(__attribute__\(\(noreturn\))o(\);)150 2490 y Fy(at)c(presen)m(t)f(the)g Fq(noreturn)e Fy(attribute)i(applies) e(to)j Fq(f)p Fy(,)h(whic)m(h)d(causes)h(a)h(w)m(arning)e(since)g Fq(f)h Fy(is)f(not)i(a)150 2600 y(function,)30 b(but)g(in)g(future)g (it)h(ma)m(y)g(apply)f(to)i(the)f(function)f Fq(****f)p Fy(.)41 b(The)30 b(precise)h(seman)m(tics)g(of)g(what)150 2709 y(attributes)i(in)g(suc)m(h)h(cases)g(will)e(apply)g(to)j(are)f (not)g(y)m(et)h(sp)s(eci\014ed.)50 b(Where)34 b(an)g(assem)m(bler)f (name)h(for)150 2819 y(an)d(ob)5 b(ject)32 b(or)g(function)e(is)g(sp)s (eci\014ed)g(\(see)i(Section)f(5.38)i([Asm)e(Lab)s(els],)g(page)h (210\),)h(at)f(presen)m(t)g(the)150 2928 y(attribute)25 b(m)m(ust)g(follo)m(w)g(the)g Fq(asm)g Fy(sp)s(eci\014cation;)h(in)e (future,)h(attributes)g(b)s(efore)g(the)h Fq(asm)e Fy(sp)s (eci\014cation)150 3038 y(ma)m(y)30 b(apply)e(to)h(the)h(adjacen)m(t)g (declarator,)g(and)f(those)h(after)f(it)g(to)h(the)f(declared)g(ob)5 b(ject)30 b(or)f(function.)275 3170 y(An)g(attribute)g(sp)s(eci\014er)f (list)g(ma)m(y)-8 b(,)31 b(in)d(future,)h(b)s(e)g(p)s(ermitted)f(to)i (app)s(ear)f(after)h(the)f(declarator)h(in)150 3279 y(a)h(function)e (de\014nition)f(\(b)s(efore)i(an)m(y)h(old-st)m(yle)f(parameter)h (declarations)f(or)g(the)h(function)e(b)s(o)s(dy\).)275 3411 y(A)m(ttribute)44 b(sp)s(eci\014ers)f(ma)m(y)i(b)s(e)e(mixed)h (with)f(t)m(yp)s(e)h(quali\014ers)e(app)s(earing)h(inside)g(the)h Fq([])g Fy(of)h(a)150 3520 y(parameter)26 b(arra)m(y)h(declarator,)g (in)e(the)h(C99)g(construct)g(b)m(y)g(whic)m(h)e(suc)m(h)i (quali\014ers)d(are)k(applied)c(to)k(the)150 3630 y(p)s(oin)m(ter)36 b(to)h(whic)m(h)f(the)h(arra)m(y)g(is)f(implicitly)d(con)m(v)m(erted.) 62 b(Suc)m(h)36 b(attribute)h(sp)s(eci\014ers)e(apply)g(to)j(the)150 3740 y(p)s(oin)m(ter,)30 b(not)g(to)h(the)g(arra)m(y)-8 b(,)31 b(but)f(at)h(presen)m(t)g(this)e(is)g(not)i(implemen)m(ted)e (and)h(they)g(are)h(ignored.)275 3871 y(An)k(attribute)g(sp)s (eci\014er)f(list)h(ma)m(y)h(app)s(ear)f(at)h(the)g(start)g(of)g(a)g (nested)g(declarator.)57 b(A)m(t)37 b(presen)m(t,)150 3981 y(there)f(are)f(some)h(limitations)d(in)h(this)h(usage:)51 b(the)36 b(attributes)f(correctly)g(apply)g(to)h(the)f(declarator,)150 4090 y(but)e(for)h(most)g(individual)29 b(attributes)k(the)h(seman)m (tics)h(this)d(implies)f(are)k(not)f(implemen)m(ted.)49 b(When)150 4200 y(attribute)32 b(sp)s(eci\014ers)f(follo)m(w)h(the)h Fq(*)f Fy(of)h(a)g(p)s(oin)m(ter)f(declarator,)i(they)f(ma)m(y)g(b)s(e) f(mixed)f(with)h(an)m(y)h(t)m(yp)s(e)150 4310 y(quali\014ers)25 b(presen)m(t.)40 b(The)26 b(follo)m(wing)g(describ)s(es)g(the)h(formal) g(seman)m(tics)g(of)h(this)e(syn)m(tax.)40 b(It)27 b(will)e(mak)m(e)150 4419 y(the)30 b(most)h(sense)f(if)f(y)m(ou)h(are)h(familiar)c(with)i (the)h(formal)g(sp)s(eci\014cation)f(of)h(declarators)g(in)f(the)h(ISO) f(C)150 4529 y(standard.)275 4660 y(Consider)i(\(as)k(in)d(C99)i(sub)s (clause)e(6.7.5)j(paragraph)f(4\))g(a)g(declaration)f Fq(T)d(D1)p Fy(,)k(where)f Fq(T)h Fy(con)m(tains)150 4770 y(declaration)i(sp)s(eci\014ers)g(that)h(sp)s(ecify)e(a)j(t)m(yp)s (e)f Fn(T)m(yp)s(e)k Fy(\(suc)m(h)c(as)g Fq(int)p Fy(\))f(and)h Fq(D1)f Fy(is)g(a)h(declarator)g(that)150 4880 y(con)m(tains)29 b(an)f(iden)m(ti\014er)f Fn(iden)m(t)p Fy(.)39 b(The)28 b(t)m(yp)s(e)g(sp)s(eci\014ed)f(for)h Fn(iden)m(t)i Fy(for)e(deriv)m (ed)g(declarators)h(whose)f(t)m(yp)s(e)150 4989 y(do)s(es)i(not)h (include)d(an)i(attribute)g(sp)s(eci\014er)f(is)g(as)i(in)e(the)i(ISO)e (C)h(standard.)275 5121 y(If)42 b Fq(D1)g Fy(has)g(the)h(form)f Fq(\()30 b Fn(attribute-sp)s(eci\014er-list)g Fq(D)g(\))p Fy(,)46 b(and)c(the)h(declaration)f Fq(T)30 b(D)42 b Fy(sp)s(eci\014es)g(the)150 5230 y(t)m(yp)s(e)c(\\)p Fn(deriv)m(ed-declarator-t)m(yp)s(e-list)i(T)m(yp)s(e)5 b Fy(")37 b(for)h Fn(iden)m(t)p Fy(,)h(then)f Fq(T)30 b(D1)37 b Fy(sp)s(eci\014es)f(the)i(t)m(yp)s(e)g(\\)p Fn(deriv)m(ed-)150 5340 y(declarator-t)m(yp)s(e-list)32 b(attribute-sp)s(eci\014er-list)e(T)m(yp)s(e)5 b Fy(")31 b(for)f Fn(iden)m(t)p Fy(.)p eop %%Page: 182 192 182 191 bop 150 -116 a Fy(182)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))275 299 y(If)f Fq(D1)f Fy(has)i(the)f(form)g Fq(*)i Fn(t)m(yp)s(e-quali\014er-and-attribute-sp)s(eci\014er-list)d Fq(D)p Fy(,)i(and)e(the)i(declaration)f Fq(T)h(D)150 408 y Fy(sp)s(eci\014es)25 b(the)i(t)m(yp)s(e)g(\\)p Fn(deriv)m(ed-declarator-t)m(yp)s(e-list)i(T)m(yp)s(e)5 b Fy(")27 b(for)f Fn(iden)m(t)p Fy(,)i(then)e Fq(T)k(D1)c Fy(sp)s(eci\014es)g(the)h(t)m(yp)s(e)150 518 y(\\)p Fn(deriv)m (ed-declarator-t)m(yp)s(e-list)32 b(t)m(yp)s (e-quali\014er-and-attribute-sp)s(eci\014er-list)d(T)m(yp)s(e)5 b Fy(")30 b(for)g Fn(iden)m(t)p Fy(.)275 666 y(F)-8 b(or)31 b(example,)390 809 y Fq(void)47 b(\(__attribute__\(\(noretur)o(n\)\))41 b(****f\))46 b(\(void\);)150 957 y Fy(sp)s(eci\014es)24 b(the)h(t)m(yp)s(e)h(\\p)s(oin)m(ter)e(to)i(p)s(oin)m(ter)e(to)i(p)s (oin)m(ter)f(to)h(p)s(oin)m(ter)e(to)i(non-returning)d(function)h (return-)150 1066 y(ing)30 b Fq(void)p Fy(".)40 b(As)30 b(another)g(example,)390 1209 y Fq(char)47 b(*__attribute__\(\(aligned) o(\(8\)\))o(\))42 b(*f;)150 1357 y Fy(sp)s(eci\014es)24 b(the)h(t)m(yp)s(e)g(\\p)s(oin)m(ter)f(to)i(8-b)m(yte-aligned)f(p)s (oin)m(ter)f(to)i Fq(char)p Fy(".)38 b(Note)26 b(again)f(that)g(this)f (do)s(es)h(not)150 1466 y(w)m(ork)33 b(with)e(most)i(attributes;)h(for) f(example,)g(the)g(usage)g(of)g(`)p Fq(aligned)p Fy(')e(and)h(`)p Fq(noreturn)p Fy(')f(attributes)150 1576 y(giv)m(en)f(ab)s(o)m(v)m(e)i (is)d(not)i(y)m(et)g(supp)s(orted.)275 1724 y(F)-8 b(or)22 b(compatibilit)m(y)f(with)f(existing)i(co)s(de)g(written)f(for)h (compiler)f(v)m(ersions)g(that)i(did)d(not)i(implemen)m(t)150 1834 y(attributes)34 b(on)g(nested)g(declarators,)h(some)g(laxit)m(y)f (is)f(allo)m(w)m(ed)h(in)e(the)j(placing)e(of)h(attributes.)51 b(If)34 b(an)150 1943 y(attribute)25 b(that)h(only)e(applies)g(to)i(t)m (yp)s(es)f(is)g(applied)e(to)j(a)g(declaration,)g(it)f(will)d(b)s(e)j (treated)i(as)e(applying)150 2053 y(to)33 b(the)f(t)m(yp)s(e)g(of)g (that)g(declaration.)45 b(If)31 b(an)h(attribute)f(that)i(only)d (applies)g(to)j(declarations)e(is)g(applied)150 2163 y(to)40 b(the)g(t)m(yp)s(e)g(of)g(a)g(declaration,)h(it)e(will)e(b)s(e) i(treated)i(as)f(applying)d(to)j(that)h(declaration;)j(and,)d(for)150 2272 y(compatibilit)m(y)34 b(with)h(co)s(de)h(placing)f(the)h (attributes)f(immediately)f(b)s(efore)i(the)g(iden)m(ti\014er)e (declared,)150 2382 y(suc)m(h)44 b(an)h(attribute)f(applied)e(to)j(a)g (function)e(return)h(t)m(yp)s(e)g(will)e(b)s(e)i(treated)h(as)g (applying)e(to)i(the)150 2491 y(function)35 b(t)m(yp)s(e,)k(and)e(suc)m (h)f(an)h(attribute)f(applied)f(to)i(an)g(arra)m(y)g(elemen)m(t)h(t)m (yp)s(e)f(will)d(b)s(e)i(treated)i(as)150 2601 y(applying)27 b(to)j(the)g(arra)m(y)g(t)m(yp)s(e.)40 b(If)29 b(an)g(attribute)g(that) h(only)f(applies)e(to)j(function)e(t)m(yp)s(es)i(is)e(applied)f(to)150 2711 y(a)j(p)s(oin)m(ter-to-function)g(t)m(yp)s(e,)g(it)g(will)d(b)s(e) i(treated)i(as)f(applying)e(to)j(the)f(p)s(oin)m(ter)f(target)j(t)m(yp) s(e;)e(if)f(suc)m(h)150 2820 y(an)34 b(attribute)g(is)f(applied)f(to)j (a)f(function)f(return)g(t)m(yp)s(e)i(that)f(is)g(not)g(a)h(p)s(oin)m (ter-to-function)e(t)m(yp)s(e,)i(it)150 2930 y(will)28 b(b)s(e)h(treated)j(as)e(applying)f(to)i(the)f(function)f(t)m(yp)s(e.) 150 3221 y Fs(5.28)68 b(Protot)l(yp)t(es)46 b(and)f(Old-St)l(yle)h(F) -11 b(unction)44 b(De\014nitions)275 3428 y Fy(GNU)34 b(C)f(extends)h(ISO)e(C)h(to)i(allo)m(w)e(a)h(function)e(protot)m(yp)s (e)i(to)h(o)m(v)m(erride)e(a)h(later)g(old-st)m(yle)f(non-)150 3537 y(protot)m(yp)s(e)e(de\014nition.)38 b(Consider)29 b(the)h(follo)m(wing)f(example:)390 3680 y Fq(/*)47 b Fy(Use)31 b(protot)m(yp)s(es)g(unless)d(the)j(compiler)e(is)g (old-fashioned.)94 b Fq(*/)390 3783 y(#ifdef)46 b(__STDC__)390 3887 y(#define)g(P\(x\))g(x)390 3991 y(#else)390 4095 y(#define)g(P\(x\))g(\(\))390 4198 y(#endif)390 4406 y(/*)h Fy(Protot)m(yp)s(e)31 b(function)f(declaration.)95 b Fq(*/)390 4510 y(int)47 b(isroot)f(P\(\(uid_t\)\);)390 4717 y(/*)h Fy(Old-st)m(yle)30 b(function)f(de\014nition.)93 b Fq(*/)390 4821 y(int)390 4925 y(isroot)46 b(\(x\))142 b(/*)48 b(???)f(lossage)e(here)i(???)g(*/)629 5029 y(uid_t)f(x;)390 5132 y({)485 5236 y(return)h(x)g(==)g(0;)390 5340 y(})p eop %%Page: 183 193 183 192 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(183)275 299 y(Supp)s(ose)40 b(the)i(t)m(yp)s(e)g Fq(uid_t)e Fy(happ)s(ens)g(to) i(b)s(e)g Fq(short)p Fy(.)73 b(ISO)41 b(C)g(do)s(es)h(not)g(allo)m(w)f (this)g(example,)150 408 y(b)s(ecause)28 b(sub)m(w)m(ord)f(argumen)m (ts)h(in)f(old-st)m(yle)g(non-protot)m(yp)s(e)i(de\014nitions)c(are)j (promoted.)40 b(Therefore)150 518 y(in)32 b(this)g(example)g(the)i (function)d(de\014nition's)g(argumen)m(t)i(is)g(really)e(an)i Fq(int)p Fy(,)g(whic)m(h)f(do)s(es)h(not)g(matc)m(h)150 628 y(the)e(protot)m(yp)s(e)f(argumen)m(t)h(t)m(yp)s(e)g(of)f Fq(short)p Fy(.)275 757 y(This)h(restriction)h(of)h(ISO)f(C)h(mak)m(es) h(it)e(hard)g(to)i(write)e(co)s(de)h(that)h(is)e(p)s(ortable)g(to)i (traditional)d(C)150 866 y(compilers,)g(b)s(ecause)h(the)h(programmer)f (do)s(es)f(not)i(kno)m(w)f(whether)f(the)i Fq(uid_t)e Fy(t)m(yp)s(e)h(is)f Fq(short)p Fy(,)h Fq(int)p Fy(,)150 976 y(or)i Fq(long)p Fy(.)50 b(Therefore,)35 b(in)e(cases)i(lik)m(e)e (these)i(GNU)f(C)g(allo)m(ws)f(a)i(protot)m(yp)s(e)f(to)h(o)m(v)m (erride)f(a)g(later)g(old-)150 1086 y(st)m(yle)g(de\014nition.)48 b(More)34 b(precisely)-8 b(,)34 b(in)e(GNU)i(C,)g(a)g(function)e (protot)m(yp)s(e)i(argumen)m(t)g(t)m(yp)s(e)g(o)m(v)m(errides)150 1195 y(the)c(argumen)m(t)g(t)m(yp)s(e)g(sp)s(eci\014ed)e(b)m(y)i(a)g (later)g(old-st)m(yle)f(de\014nition)f(if)h(the)g(former)h(t)m(yp)s(e)g (is)f(the)h(same)g(as)150 1305 y(the)j(latter)g(t)m(yp)s(e)g(b)s(efore) g(promotion.)47 b(Th)m(us)32 b(in)f(GNU)j(C)e(the)h(ab)s(o)m(v)m(e)h (example)f(is)f(equiv)-5 b(alen)m(t)32 b(to)i(the)150 1414 y(follo)m(wing:)390 1538 y Fq(int)47 b(isroot)f(\(uid_t\);)390 1745 y(int)390 1849 y(isroot)g(\(uid_t)g(x\))390 1953 y({)485 2057 y(return)h(x)g(==)g(0;)390 2160 y(})150 2290 y Fy(GNU)31 b(C)p Fq(++)e Fy(do)s(es)h(not)h(supp)s(ort)e(old-st)m (yle)h(function)f(de\014nitions,)f(so)j(this)e(extension)h(is)f (irrelev)-5 b(an)m(t.)150 2531 y Fs(5.29)68 b(C)p Ft(++)44 b Fs(St)l(yle)i(Commen)l(ts)275 2719 y Fy(In)21 b(GNU)j(C,)e(y)m(ou)h (ma)m(y)g(use)g(C)p Fq(++)e Fy(st)m(yle)i(commen)m(ts,)j(whic)m(h)21 b(start)i(with)e(`)p Fq(//)p Fy(')i(and)f(con)m(tin)m(ue)h(un)m(til)e (the)150 2828 y(end)26 b(of)g(the)g(line.)38 b(Man)m(y)27 b(other)f(C)g(implemen)m(tations)f(allo)m(w)h(suc)m(h)g(commen)m(ts,)i (and)d(they)i(are)f(lik)m(ely)f(to)150 2938 y(b)s(e)30 b(in)g(a)h(future)e(C)i(standard.)41 b(Ho)m(w)m(ev)m(er,)33 b(C)p Fq(++)d Fy(st)m(yle)h(commen)m(ts)g(are)g(not)g(recognized)h(if)d (y)m(ou)i(sp)s(ecify)150 3047 y(`)p Fq(-ansi)p Fy(')o(,)e(a)f(`)p Fq(-std)p Fy(')f(option)h(sp)s(ecifying)d(a)k(v)m(ersion)e(of)h(ISO)f (C)g(b)s(efore)h(C99,)h(or)f(`)p Fq(-traditional)p Fy(')m(,)h(since)150 3157 y(they)i(are)f(incompatible)f(with)g(traditional)g(constructs)h (lik)m(e)g Fq(dividend//*comment*/divi)o(sor)o Fy(.)150 3399 y Fs(5.30)68 b(Dollar)47 b(Signs)d(in)h(Iden)l(ti\014er)h(Names) 275 3586 y Fy(In)26 b(GNU)j(C,)e(y)m(ou)h(ma)m(y)g(normally)e(use)h (dollar)f(signs)h(in)f(iden)m(ti\014er)g(names.)40 b(This)26 b(is)g(b)s(ecause)i(man)m(y)150 3695 y(traditional)d(C)h(implemen)m (tations)e(allo)m(w)i(suc)m(h)g(iden)m(ti\014ers.)38 b(Ho)m(w)m(ev)m(er,)29 b(dollar)c(signs)g(in)g(iden)m(ti\014ers)g(are) 150 3805 y(not)37 b(supp)s(orted)d(on)i(a)h(few)f(target)i(mac)m (hines,)f(t)m(ypically)e(b)s(ecause)i(the)f(target)i(assem)m(bler)e(do) s(es)g(not)150 3915 y(allo)m(w)30 b(them.)150 4156 y Fs(5.31)68 b(The)45 b(Character)1362 4153 y Fp(h)p 1386 4100 139 4 v 1386 4156 a Fo(ESC)p 1386 4172 V 1520 4153 a Fp(i)1594 4156 y Fs(in)g(Constan)l(ts)275 4344 y Fy(Y)-8 b(ou)32 b(can)h(use)f(the)h(sequence)g(`)p Fq(\\e)p Fy(')f(in)f(a)i (string)e(or)i(c)m(haracter)h(constan)m(t)f(to)h(stand)e(for)g(the)g (ASCI)s(I)150 4453 y(c)m(haracter)547 4450 y Fp(h)p 571 4397 V 571 4453 a Fo(ESC)p 571 4468 V 705 4450 a Fp(i)735 4453 y Fy(.)150 4695 y Fs(5.32)68 b(Inquiring)45 b(on)g(Alignmen)l(t)h (of)f(T)l(yp)t(es)g(or)g(V)-11 b(ariables)275 4882 y Fy(The)29 b(k)m(eyw)m(ord)i Fq(__alignof__)c Fy(allo)m(ws)i(y)m(ou)i (to)g(inquire)c(ab)s(out)j(ho)m(w)g(an)g(ob)5 b(ject)31 b(is)e(aligned,)h(or)g(the)150 4992 y(minim)m(um)e(alignmen)m(t)h (usually)f(required)h(b)m(y)h(a)h(t)m(yp)s(e.)41 b(Its)30 b(syn)m(tax)h(is)f(just)f(lik)m(e)h Fq(sizeof)p Fy(.)275 5121 y(F)-8 b(or)34 b(example,)g(if)f(the)h(target)h(mac)m(hine)e (requires)g(a)h Fq(double)e Fy(v)-5 b(alue)33 b(to)h(b)s(e)f(aligned)f (on)i(an)g(8-b)m(yte)150 5230 y(b)s(oundary)-8 b(,)40 b(then)e Fq(__alignof__)27 b(\(double\))37 b Fy(is)h(8.)66 b(This)37 b(is)h(true)g(on)h(man)m(y)g(RISC)e(mac)m(hines.)66 b(On)150 5340 y(more)31 b(traditional)d(mac)m(hine)i(designs,)g Fq(__alignof__)d(\(double\))h Fy(is)i(4)g(or)h(ev)m(en)g(2.)p eop %%Page: 184 194 184 193 bop 150 -116 a Fy(184)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))275 299 y(Some)h(mac)m(hines)g(nev)m(er)h (actually)f(require)f(alignmen)m(t;)i(they)g(allo)m(w)f(reference)g(to) i(an)m(y)f(data)g(t)m(yp)s(e)150 408 y(ev)m(en)44 b(at)h(an)f(o)s(dd)e (addresses.)81 b(F)-8 b(or)44 b(these)g(mac)m(hines,)j Fq(__alignof__)41 b Fy(rep)s(orts)i(the)h Fr(r)-5 b(e)g(c)g(ommende)g (d)150 518 y Fy(alignmen)m(t)30 b(of)g(a)h(t)m(yp)s(e.)275 649 y(If)f(the)i(op)s(erand)e(of)h Fq(__alignof__)d Fy(is)i(an)i(lv)-5 b(alue)29 b(rather)j(than)e(a)i(t)m(yp)s(e,)g(its)e(v)-5 b(alue)31 b(is)f(the)i(required)150 759 y(alignmen)m(t)h(for)h(its)g(t) m(yp)s(e,)h(taking)f(in)m(to)g(accoun)m(t)h(an)m(y)g(minim)m(um)c (alignmen)m(t)i(sp)s(eci\014ed)g(with)f(GCC's)150 869 y Fq(__attribute__)c Fy(extension)j(\(see)i(Section)f(5.33)h([V)-8 b(ariable)31 b(A)m(ttributes],)i(page)f(184\).)47 b(F)-8 b(or)32 b(example,)150 978 y(after)f(this)e(declaration:)390 1104 y Fq(struct)46 b(foo)h({)g(int)g(x;)h(char)e(y;)h(})h(foo1;)150 1235 y Fy(the)29 b(v)-5 b(alue)28 b(of)h Fq(__alignof__)f(\(foo1.y\))e Fy(is)i(1,)i(ev)m(en)g(though)e(its)g(actual)i(alignmen)m(t)e(is)g (probably)f(2)i(or)150 1344 y(4,)i(the)g(same)f(as)h Fq(__alignof__)c(\(int\))p Fy(.)275 1476 y(It)j(is)f(an)i(error)f(to)h (ask)f(for)h(the)f(alignmen)m(t)g(of)g(an)h(incomplete)e(t)m(yp)s(e.) 150 1724 y Fs(5.33)68 b(Sp)t(ecifying)45 b(A)l(ttributes)h(of)f(V)-11 b(ariables)275 1913 y Fy(The)20 b(k)m(eyw)m(ord)i Fq(__attribute__)17 b Fy(allo)m(ws)k(y)m(ou)g(to)h(sp)s(ecify)e(sp)s(ecial)f(attributes)i (of)g(v)-5 b(ariables)20 b(or)h(struc-)150 2023 y(ture)34 b(\014elds.)49 b(This)32 b(k)m(eyw)m(ord)j(is)d(follo)m(w)m(ed)i(b)m(y) g(an)f(attribute)h(sp)s(eci\014cation)f(inside)e(double)h(paren)m(the-) 150 2132 y(ses.)47 b(T)-8 b(en)33 b(attributes)f(are)h(curren)m(tly)e (de\014ned)h(for)g(v)-5 b(ariables:)44 b Fq(aligned)p Fy(,)31 b Fq(mode)p Fy(,)h Fq(nocommon)p Fy(,)f Fq(packed)p Fy(,)150 2242 y Fq(section)p Fy(,)e Fq(transparent_union)p Fy(,)e Fq(unused)p Fy(,)i Fq(deprecated)p Fy(,)g Fq(vector_size)p Fy(,)f(and)i Fq(weak)p Fy(.)41 b(Some)31 b(other)150 2351 y(attributes)c(are)h(de\014ned)e(for)h(v)-5 b(ariables)26 b(on)h(particular)f(target)j(systems.)39 b(Other)27 b(attributes)g(are) h(a)m(v)-5 b(ail-)150 2461 y(able)42 b(for)h(functions)f(\(see)h (Section)g(5.26)i([F)-8 b(unction)42 b(A)m(ttributes],)47 b(page)c(172\))i(and)d(for)h(t)m(yp)s(es)g(\(see)150 2571 y(Section)34 b(5.34)i([T)m(yp)s(e)e(A)m(ttributes],)i(page)f (188\).)54 b(Other)34 b(fron)m(t)h(ends)e(migh)m(t)h(de\014ne)g(more)g (attributes)150 2680 y(\(see)d(Chapter)f(6)h([Extensions)e(to)j(the)e (C)p Fq(++)g Fy(Language],)h(page)h(249\).)275 2811 y(Y)-8 b(ou)35 b(ma)m(y)g(also)f(sp)s(ecify)g(attributes)g(with)f(`)p Fq(__)p Fy(')i(preceding)e(and)h(follo)m(wing)f(eac)m(h)j(k)m(eyw)m (ord.)54 b(This)150 2921 y(allo)m(ws)33 b(y)m(ou)g(to)h(use)f(them)g (in)f(header)i(\014les)e(without)g(b)s(eing)g(concerned)h(ab)s(out)g(a) h(p)s(ossible)d(macro)j(of)150 3031 y(the)d(same)f(name.)41 b(F)-8 b(or)31 b(example,)g(y)m(ou)f(ma)m(y)h(use)f Fq(__aligned__)e Fy(instead)h(of)i Fq(aligned)p Fy(.)275 3162 y(See)j(Section)f(5.27)i ([A)m(ttribute)f(Syn)m(tax],)i(page)e(179,)i(for)e(details)e(of)i(the)g (exact)i(syn)m(tax)e(for)f(using)150 3271 y(attributes.)150 3468 y Fq(aligned)28 b(\()p Fn(alignmen)m(t)r Fq(\))630 3578 y Fy(This)23 b(attribute)i(sp)s(eci\014es)f(a)h(minim)m(um)e (alignmen)m(t)h(for)h(the)g(v)-5 b(ariable)24 b(or)h(structure)g (\014eld,)630 3687 y(measured)30 b(in)f(b)m(ytes.)41 b(F)-8 b(or)31 b(example,)g(the)f(declaration:)870 3813 y Fq(int)47 b(x)g(__attribute__)e(\(\(aligned)g(\(16\)\)\))h(=)h(0;)630 3944 y Fy(causes)26 b(the)g(compiler)e(to)j(allo)s(cate)f(the)f(global) g(v)-5 b(ariable)25 b Fq(x)g Fy(on)h(a)g(16-b)m(yte)h(b)s(oundary)-8 b(.)38 b(On)630 4053 y(a)28 b(68040,)i(this)d(could)g(b)s(e)f(used)h (in)f(conjunction)h(with)f(an)i Fq(asm)e Fy(expression)h(to)h(access)h (the)630 4163 y Fq(move16)g Fy(instruction)f(whic)m(h)h(requires)g (16-b)m(yte)j(aligned)d(op)s(erands.)630 4294 y(Y)-8 b(ou)29 b(can)f(also)h(sp)s(ecify)d(the)j(alignmen)m(t)e(of)i (structure)f(\014elds.)38 b(F)-8 b(or)29 b(example,)g(to)g(create)h(a) 630 4404 y(double-w)m(ord)f(aligned)g Fq(int)h Fy(pair,)f(y)m(ou)i (could)e(write:)870 4529 y Fq(struct)46 b(foo)h({)g(int)g(x[2])g (__attribute__)d(\(\(aligned)h(\(8\)\)\);)i(};)630 4661 y Fy(This)35 b(is)g(an)i(alternativ)m(e)g(to)g(creating)g(a)g(union)e (with)g(a)i Fq(double)e Fy(mem)m(b)s(er)h(that)h(forces)630 4770 y(the)31 b(union)d(to)j(b)s(e)f(double-w)m(ord)f(aligned.)630 4902 y(As)22 b(in)f(the)h(preceding)f(examples,)i(y)m(ou)f(can)h (explicitly)c(sp)s(ecify)i(the)h(alignmen)m(t)f(\(in)g(b)m(ytes\))630 5011 y(that)30 b(y)m(ou)g(wish)e(the)h(compiler)f(to)i(use)g(for)f(a)h (giv)m(en)f(v)-5 b(ariable)28 b(or)i(structure)f(\014eld.)39 b(Alter-)630 5121 y(nativ)m(ely)-8 b(,)37 b(y)m(ou)f(can)g(lea)m(v)m(e) h(out)f(the)g(alignmen)m(t)f(factor)i(and)e(just)g(ask)h(the)g (compiler)e(to)630 5230 y(align)22 b(a)i(v)-5 b(ariable)22 b(or)h(\014eld)f(to)j(the)e(maxim)m(um)f(useful)g(alignmen)m(t)h(for)g (the)g(target)i(mac)m(hine)630 5340 y(y)m(ou)31 b(are)f(compiling)f (for.)40 b(F)-8 b(or)31 b(example,)g(y)m(ou)f(could)g(write:)p eop %%Page: 185 195 185 194 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(185)870 299 y Fq(short)46 b(array[3])g(__attribute__)e(\(\(aligned\)\);)630 432 y Fy(Whenev)m(er)27 b(y)m(ou)f(lea)m(v)m(e)i(out)e(the)h(alignmen)m (t)e(factor)i(in)e(an)h Fq(aligned)e Fy(attribute)i(sp)s(eci\014ca-)630 542 y(tion,)i(the)h(compiler)d(automatically)j(sets)f(the)g(alignmen)m (t)g(for)g(the)g(declared)g(v)-5 b(ariable)27 b(or)630 652 y(\014eld)e(to)j(the)f(largest)g(alignmen)m(t)f(whic)m(h)f(is)h(ev) m(er)i(used)e(for)g(an)m(y)h(data)h(t)m(yp)s(e)f(on)f(the)h(target)630 761 y(mac)m(hine)c(y)m(ou)h(are)g(compiling)d(for.)38 b(Doing)24 b(this)e(can)i(often)g(mak)m(e)h(cop)m(y)f(op)s(erations)f (more)630 871 y(e\016cien)m(t,)36 b(b)s(ecause)e(the)h(compiler)e(can)i (use)f(whatev)m(er)h(instructions)d(cop)m(y)j(the)g(biggest)630 980 y(c)m(h)m(unks)k(of)h(memory)f(when)f(p)s(erforming)g(copies)h(to)h (or)f(from)g(the)h(v)-5 b(ariables)38 b(or)h(\014elds)630 1090 y(that)31 b(y)m(ou)g(ha)m(v)m(e)g(aligned)e(this)h(w)m(a)m(y)-8 b(.)630 1223 y(The)33 b Fq(aligned)f Fy(attribute)h(can)h(only)e (increase)i(the)g(alignmen)m(t;)g(but)f(y)m(ou)h(can)g(decrease)630 1333 y(it)c(b)m(y)g(sp)s(ecifying)e Fq(packed)h Fy(as)i(w)m(ell.)39 b(See)31 b(b)s(elo)m(w.)630 1466 y(Note)38 b(that)e(the)h(e\013ectiv)m (eness)g(of)g Fq(aligned)d Fy(attributes)i(ma)m(y)g(b)s(e)g(limited)e (b)m(y)i(inheren)m(t)630 1576 y(limitations)28 b(in)h(y)m(our)h(link)m (er.)40 b(On)29 b(man)m(y)i(systems,)f(the)h(link)m(er)e(is)g(only)g (able)h(to)i(arrange)630 1686 y(for)41 b(v)-5 b(ariables)41 b(to)h(b)s(e)f(aligned)f(up)h(to)h(a)g(certain)g(maxim)m(um)e(alignmen) m(t.)74 b(\(F)-8 b(or)43 b(some)630 1795 y(link)m(ers,)36 b(the)h(maxim)m(um)e(supp)s(orted)g(alignmen)m(t)g(ma)m(y)i(b)s(e)f(v)m (ery)h(v)m(ery)g(small.\))57 b(If)36 b(y)m(our)630 1905 y(link)m(er)24 b(is)g(only)h(able)g(to)h(align)e(v)-5 b(ariables)24 b(up)h(to)h(a)g(maxim)m(um)e(of)h(8)h(b)m(yte)g(alignmen) m(t,)g(then)630 2014 y(sp)s(ecifying)32 b Fq(aligned\(16\))f Fy(in)i(an)h Fq(__attribute__)d Fy(will)h(still)g(only)h(pro)m(vide)h (y)m(ou)g(with)630 2124 y(8)d(b)m(yte)g(alignmen)m(t.)40 b(See)30 b(y)m(our)h(link)m(er)e(do)s(cumen)m(tation)h(for)g(further)f (information.)150 2281 y Fq(mode)g(\()p Fn(mo)s(de)5 b Fq(\))630 2391 y Fy(This)29 b(attribute)h(sp)s(eci\014es)g(the)h (data)g(t)m(yp)s(e)g(for)g(the)f(declaration|whic)m(hev)m(er)g(t)m(yp)s (e)h(cor-)630 2500 y(resp)s(onds)21 b(to)j(the)g(mo)s(de)e Fn(mo)s(de)p Fy(.)38 b(This)22 b(in)g(e\013ect)i(lets)f(y)m(ou)h (request)f(an)g(in)m(teger)h(or)f(\015oating)630 2610 y(p)s(oin)m(t)29 b(t)m(yp)s(e)i(according)f(to)h(its)f(width.)630 2743 y(Y)-8 b(ou)43 b(ma)m(y)g(also)f(sp)s(ecify)g(a)g(mo)s(de)g(of)h (`)p Fq(byte)p Fy(')f(or)g(`)p Fq(__byte__)p Fy(')f(to)i(indicate)f (the)g(mo)s(de)630 2853 y(corresp)s(onding)22 b(to)j(a)g(one-b)m(yte)g (in)m(teger,)i(`)p Fq(word)p Fy(')c(or)h(`)p Fq(__word__)p Fy(')f(for)h(the)g(mo)s(de)g(of)h(a)f(one-)630 2963 y(w)m(ord)33 b(in)m(teger,)j(and)d(`)p Fq(pointer)p Fy(')f(or)i(`)p Fq(__pointer__)p Fy(')d(for)j(the)g(mo)s(de)f(used)g(to)i(represen)m(t) 630 3072 y(p)s(oin)m(ters.)150 3229 y Fq(nocommon)96 b Fy(This)36 b(attribute)h(sp)s(eci\014es)f(requests)h(GCC)g(not)h(to)g (place)g(a)g(v)-5 b(ariable)36 b(\\common")j(but)630 3339 y(instead)32 b(to)i(allo)s(cate)f(space)h(for)e(it)h(directly)-8 b(.)47 b(If)32 b(y)m(ou)h(sp)s(ecify)f(the)h(`)p Fq(-fno-common)p Fy(')d(\015ag,)630 3449 y(GCC)g(will)e(do)i(this)f(for)h(all)g(v)-5 b(ariables.)630 3582 y(Sp)s(ecifying)36 b(the)j Fq(nocommon)e Fy(attribute)i(for)f(a)i(v)-5 b(ariable)37 b(pro)m(vides)h(an)h (initialization)d(of)630 3692 y(zeros.)41 b(A)31 b(v)-5 b(ariable)29 b(ma)m(y)i(only)e(b)s(e)h(initialized)d(in)i(one)i(source) g(\014le.)150 3849 y Fq(packed)192 b Fy(The)25 b Fq(packed)f Fy(attribute)i(sp)s(eci\014es)e(that)i(a)g(v)-5 b(ariable)25 b(or)h(structure)f(\014eld)f(should)g(ha)m(v)m(e)j(the)630 3959 y(smallest)38 b(p)s(ossible)e(alignmen)m(t|one)j(b)m(yte)h(for)e (a)i(v)-5 b(ariable,)40 b(and)e(one)h(bit)f(for)h(a)g(\014eld,)630 4068 y(unless)29 b(y)m(ou)h(sp)s(ecify)f(a)i(larger)f(v)-5 b(alue)30 b(with)f(the)i Fq(aligned)d Fy(attribute.)630 4202 y(Here)f(is)f(a)h(structure)g(in)e(whic)m(h)h(the)h(\014eld)e Fq(x)i Fy(is)f(pac)m(k)m(ed,)j(so)e(that)g(it)g(immediately)e(follo)m (ws)630 4311 y Fq(a)p Fy(:)870 4439 y Fq(struct)46 b(foo)870 4543 y({)965 4646 y(char)h(a;)965 4750 y(int)g(x[2])g(__attribute__)d (\(\(packed\)\);)870 4854 y(};)150 5011 y(section)28 b(\(")p Fn(section-name)5 b Fq("\))630 5121 y Fy(Normally)-8 b(,)28 b(the)g(compiler)f(places)g(the)h(ob)5 b(jects)29 b(it)f(generates)h(in)e(sections)h(lik)m(e)f Fq(data)g Fy(and)630 5230 y Fq(bss)p Fy(.)66 b(Sometimes,)41 b(ho)m(w)m(ev)m(er,) i(y)m(ou)c(need)g(additional)e(sections,)42 b(or)d(y)m(ou)g(need)g (certain)630 5340 y(particular)25 b(v)-5 b(ariables)26 b(to)i(app)s(ear)e(in)g(sp)s(ecial)f(sections,)j(for)f(example)f(to)i (map)f(to)g(sp)s(ecial)p eop %%Page: 186 196 186 195 bop 150 -116 a Fy(186)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(hardw)m(are.)59 b(The)37 b Fq(section)d Fy(attribute)j(sp)s(eci\014es)e(that)i(a)g(v)-5 b(ariable)36 b(\(or)h(function\))f(liv)m(es)630 408 y(in)f(a)i (particular)d(section.)59 b(F)-8 b(or)37 b(example,)h(this)d(small)g (program)h(uses)f(sev)m(eral)i(sp)s(eci\014c)630 518 y(section)31 b(names:)870 641 y Fq(struct)46 b(duart)g(a)i (__attribute__)c(\(\(section)h(\("DUART_A"\)\)\))g(=)i({)g(0)h(};)870 744 y(struct)e(duart)g(b)i(__attribute__)c(\(\(section)h (\("DUART_B"\)\)\))g(=)i({)g(0)h(};)870 848 y(char)f(stack[10000])d (__attribute__)g(\(\(section)i(\("STACK"\)\)\))e(=)k({)f(0)h(};)870 952 y(int)f(init_data)e(__attribute__)f(\(\(section)i (\("INITDATA"\)\)\))e(=)j(0;)870 1160 y(main\(\))870 1263 y({)965 1367 y(/*)h(Initialize)d(stack)h(pointer)g(*/)965 1471 y(init_sp)g(\(stack)g(+)i(sizeof)e(\(stack\)\);)965 1678 y(/*)i(Initialize)d(initialized)f(data)j(*/)965 1782 y(memcpy)g(\(&init_data,)d(&data,)i(&edata)g(-)i(&data\);)965 1990 y(/*)g(Turn)e(on)h(the)g(serial)f(ports)h(*/)965 2094 y(init_duart)e(\(&a\);)965 2197 y(init_duart)g(\(&b\);)870 2301 y(})630 2430 y Fy(Use)40 b(the)h Fq(section)d Fy(attribute)h(with) g(an)h Fr(initialize)-5 b(d)51 b Fy(de\014nition)38 b(of)i(a)g Fr(glob)-5 b(al)51 b Fy(v)-5 b(ariable,)630 2539 y(as)42 b(sho)m(wn)e(in)g(the)i(example.)73 b(GCC)41 b(issues)f(a)h(w)m(arning) g(and)f(otherwise)h(ignores)g(the)630 2649 y Fq(section)28 b Fy(attribute)i(in)g(uninitialized)c(v)-5 b(ariable)29 b(declarations.)630 2777 y(Y)-8 b(ou)25 b(ma)m(y)f(only)f(use)h(the)g Fq(section)e Fy(attribute)i(with)f(a)h(fully)e(initialized)f(global)i (de\014nition)630 2887 y(b)s(ecause)f(of)f(the)h(w)m(a)m(y)h(link)m (ers)d(w)m(ork.)38 b(The)21 b(link)m(er)f(requires)g(eac)m(h)j(ob)5 b(ject)23 b(b)s(e)e(de\014ned)f(once,)630 2996 y(with)28 b(the)h(exception)g(that)g(uninitialized)c(v)-5 b(ariables)28 b(ten)m(tativ)m(ely)i(go)g(in)d(the)i Fq(common)f Fy(\(or)630 3106 y Fq(bss)p Fy(\))39 b(section)h(and)g(can)g(b)s(e)f(m)m(ultiply)e (\\de\014ned".)69 b(Y)-8 b(ou)40 b(can)h(force)f(a)g(v)-5 b(ariable)39 b(to)i(b)s(e)630 3216 y(initialized)27 b(with)i(the)i(`)p Fq(-fno-common)p Fy(')d(\015ag)i(or)h(the)f Fq(nocommon)e Fy(attribute.)630 3344 y(Some)36 b(\014le)f(formats)h(do)g(not)h(supp)s (ort)d(arbitrary)h(sections)h(so)g(the)g Fq(section)e Fy(attribute)630 3454 y(is)h(not)h(a)m(v)-5 b(ailable)35 b(on)g(all)g(platforms.)55 b(If)36 b(y)m(ou)g(need)f(to)i(map)e(the)h (en)m(tire)f(con)m(ten)m(ts)j(of)e(a)630 3563 y(mo)s(dule)23 b(to)j(a)g(particular)d(section,)k(consider)c(using)h(the)h(facilities) f(of)h(the)g(link)m(er)e(instead.)150 3711 y Fq(shared)192 b Fy(On)24 b(Windo)m(ws)g(NT,)g(in)g(addition)e(to)k(putting)d(v)-5 b(ariable)24 b(de\014nitions)e(in)h(a)i(named)g(section,)630 3820 y(the)d(section)f(can)h(also)g(b)s(e)f(shared)f(among)i(all)f (running)e(copies)i(of)h(an)f(executable)h(or)g(DLL.)630 3930 y(F)-8 b(or)32 b(example,)g(this)f(small)f(program)i(de\014nes)e (shared)h(data)i(b)m(y)e(putting)g(it)g(in)f(a)i(named)630 4039 y(section)f Fq(shared)d Fy(and)i(marking)f(the)i(section)f (shareable:)870 4162 y Fq(int)47 b(foo)g(__attribute__\(\(section)42 b(\("shared"\),)i(shared\)\))i(=)h(0;)870 4370 y(int)870 4473 y(main\(\))870 4577 y({)965 4681 y(/*)h(Read)e(and)h(write)g(foo.) 94 b(All)47 b(running)1109 4785 y(copies)f(see)h(the)g(same)f(value.)94 b(*/)965 4889 y(return)47 b(0;)870 4992 y(})630 5121 y Fy(Y)-8 b(ou)37 b(ma)m(y)g(only)e(use)h(the)h Fq(shared)e Fy(attribute)h(along)g(with)f Fq(section)f Fy(attribute)i(with)g(a)630 5230 y(fully)28 b(initialized)f(global)j(de\014nition)e(b)s(ecause)i (of)g(the)h(w)m(a)m(y)g(link)m(ers)e(w)m(ork.)40 b(See)31 b Fq(section)630 5340 y Fy(attribute)f(for)g(more)h(information.)p eop %%Page: 187 197 187 196 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(187)630 299 y(The)30 b Fq(shared)f Fy(attribute)h(is)f(only)h(a)m(v)-5 b(ailable)29 b(on)i(Windo)m(ws)e(NT.)150 481 y Fq(transparent_union)630 591 y Fy(This)g(attribute,)i(attac)m(hed)h(to)g(a)f(function)e (parameter)i(whic)m(h)f(is)f(a)j(union,)d(means)h(that)630 701 y(the)h(corresp)s(onding)f(argumen)m(t)h(ma)m(y)h(ha)m(v)m(e)g(the) g(t)m(yp)s(e)f(of)g(an)m(y)h(union)d(mem)m(b)s(er,)i(but)g(the)630 810 y(argumen)m(t)d(is)e(passed)h(as)g(if)f(its)h(t)m(yp)s(e)g(w)m(ere) h(that)g(of)f(the)h(\014rst)e(union)g(mem)m(b)s(er.)39 b(F)-8 b(or)28 b(more)630 920 y(details)i(see)h(See)h(Section)e(5.34)j ([T)m(yp)s(e)d(A)m(ttributes],)i(page)f(188.)44 b(Y)-8 b(ou)31 b(can)h(also)e(use)h(this)630 1029 y(attribute)37 b(on)g(a)h Fq(typedef)d Fy(for)i(a)h(union)d(data)j(t)m(yp)s(e;)k(then) 37 b(it)g(applies)e(to)j(all)e(function)630 1139 y(parameters)31 b(with)e(that)i(t)m(yp)s(e.)150 1321 y Fq(unused)192 b Fy(This)31 b(attribute,)j(attac)m(hed)g(to)g(a)f(v)-5 b(ariable,)33 b(means)g(that)g(the)g(v)-5 b(ariable)32 b(is)g(mean)m(t)i(to)g(b)s(e)630 1431 y(p)s(ossibly)27 b(un)m(used.)40 b(GCC)30 b(will)e(not)i(pro)s(duce)f(a)i(w)m(arning)e (for)i(this)e(v)-5 b(ariable.)150 1613 y Fq(deprecated)630 1723 y Fy(The)27 b Fq(deprecated)e Fy(attribute)j(results)f(in)f(a)j(w) m(arning)d(if)h(the)h(v)-5 b(ariable)27 b(is)g(used)g(an)m(ywhere)630 1833 y(in)34 b(the)i(source)g(\014le.)56 b(This)33 b(is)i(useful)f (when)h(iden)m(tifying)e(v)-5 b(ariables)34 b(that)i(are)h(exp)s(ected) 630 1942 y(to)31 b(b)s(e)e(remo)m(v)m(ed)i(in)d(a)i(future)f(v)m (ersion)h(of)g(a)g(program.)40 b(The)30 b(w)m(arning)e(also)i(includes) e(the)630 2052 y(lo)s(cation)i(of)h(the)g(declaration)f(of)h(the)g (deprecated)g(v)-5 b(ariable,)30 b(to)h(enable)g(users)e(to)j(easily) 630 2161 y(\014nd)38 b(further)g(information)f(ab)s(out)i(wh)m(y)g(the) h(v)-5 b(ariable)38 b(is)g(deprecated,)k(or)e(what)f(they)630 2271 y(should)28 b(do)j(instead.)40 b(Note)31 b(that)g(the)g(w)m (arnings)e(only)g(o)s(ccurs)h(for)h(uses:)870 2411 y Fq(extern)46 b(int)h(old_var)f(__attribute__)e(\(\(deprecated\)\);)870 2515 y(extern)i(int)h(old_var;)870 2619 y(int)g(new_fn)f(\(\))h({)h (return)e(old_var;)f(})630 2765 y Fy(results)29 b(in)g(a)i(w)m(arning)e (on)h(line)f(3)i(but)f(not)g(line)f(2.)630 2911 y(The)36 b Fq(deprecated)d Fy(attribute)j(can)g(also)g(b)s(e)g(used)f(for)h (functions)f(and)g(t)m(yp)s(es)h(\(see)h(Sec-)630 3020 y(tion)f(5.26)i([F)-8 b(unction)36 b(A)m(ttributes],)j(page)e(172,)i (see)e(Section)f(5.34)i([T)m(yp)s(e)f(A)m(ttributes],)630 3130 y(page)31 b(188.\))150 3312 y Fq(vector_size)c(\()p Fn(b)m(ytes)t Fq(\))630 3422 y Fy(This)h(attribute)i(sp)s(eci\014es)e (the)j(v)m(ector)g(size)f(for)g(the)g(v)-5 b(ariable,)29 b(measured)g(in)g(b)m(ytes.)41 b(F)-8 b(or)630 3532 y(example,)30 b(the)h(declaration:)870 3672 y Fq(int)47 b(foo)g(__attribute__)d (\(\(vector_size)g(\(16\)\)\);)630 3818 y Fy(causes)34 b(the)h(compiler)d(to)j(set)f(the)h(mo)s(de)e(for)h Fq(foo)p Fy(,)g(to)h(b)s(e)e(16)i(b)m(ytes,)h(divided)31 b(in)m(to)j Fq(int)630 3927 y Fy(sized)h(units.)54 b(Assuming)33 b(a)j(32-bit)g(in)m(t)f(\(a)h(v)m(ector)h(of)e(4)h(units)e(of)h(4)h(b)m (ytes\),)i(the)d(corre-)630 4037 y(sp)s(onding)28 b(mo)s(de)i(of)g Fq(foo)g Fy(will)e(b)s(e)h(V4SI.)630 4183 y(This)h(attribute)h(is)g (only)g(applicable)f(to)i(in)m(tegral)f(and)h(\015oat)g(scalars,)g (although)f(arra)m(ys,)630 4293 y(p)s(oin)m(ters,)j(and)f(function)g (return)f(v)-5 b(alues)34 b(are)g(allo)m(w)m(ed)g(in)e(conjunction)h (with)g(this)f(con-)630 4402 y(struct.)630 4548 y(Aggregates)j(with)c (this)g(attribute)h(are)g(in)m(v)-5 b(alid,)31 b(ev)m(en)h(if)g(they)g (are)g(of)h(the)f(same)h(size)f(as)630 4658 y(a)f(corresp)s(onding)d (scalar.)41 b(F)-8 b(or)31 b(example,)f(the)h(declaration:)870 4798 y Fq(struct)46 b(S)i({)f(int)g(a;)g(};)870 4902 y(struct)f(S)95 b(__attribute__)44 b(\(\(vector_size)h(\(16\)\)\))h (foo;)630 5048 y Fy(is)29 b(in)m(v)-5 b(alid)28 b(ev)m(en)j(if)f(the)g (size)h(of)f(the)h(structure)f(is)f(the)i(same)f(as)h(the)f(size)h(of)f (the)h Fq(int)p Fy(.)150 5230 y Fq(weak)288 b Fy(The)49 b Fq(weak)f Fy(attribute)h(is)g(describ)s(ed)e(in)h(See)i(Section)f (5.26)i([F)-8 b(unction)50 b(A)m(ttributes],)630 5340 y(page)31 b(172.)p eop %%Page: 188 198 188 197 bop 150 -116 a Fy(188)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fq(model)f(\()p Fn(mo)s(del-name)5 b Fq(\))630 408 y Fy(Use)33 b(this)e(attribute)h(on)h(the)f(M32R/D)j (to)e(set)g(the)g(addressabilit)m(y)d(of)i(an)h(ob)5 b(ject.)47 b(The)630 518 y(iden)m(ti\014er)31 b Fn(mo)s(del-name)37 b Fy(is)31 b(one)i(of)g Fq(small)p Fy(,)f Fq(medium)p Fy(,)g(or)g Fq(large)p Fy(,)g(represen)m(ting)g(eac)m(h)i(of)630 628 y(the)d(co)s(de)f(mo)s(dels.)630 760 y(Small)c(mo)s(del)g(ob)5 b(jects)28 b(liv)m(e)f(in)g(the)g(lo)m(w)m(er)h(16MB)h(of)f(memory)g (\(so)g(that)g(their)f(addresses)630 869 y(can)k(b)s(e)e(loaded)h(with) f(the)i Fq(ld24)e Fy(instruction\).)630 1002 y(Medium)c(and)h(large)h (mo)s(del)e(ob)5 b(jects)27 b(ma)m(y)g(liv)m(e)f(an)m(ywhere)g(in)f (the)i(32-bit)g(address)e(space)630 1111 y(\(the)31 b(compiler)e(will)f (generate)j Fq(seth/add3)d Fy(instructions)h(to)i(load)f(their)f (addresses\).)275 1266 y(T)-8 b(o)26 b(sp)s(ecify)f(m)m(ultiple)f (attributes,)j(separate)h(them)e(b)m(y)g(commas)h(within)d(the)j (double)d(paren)m(theses:)150 1375 y(for)30 b(example,)g(`)p Fq(__attribute__)d(\(\(aligned)h(\(16\),)h(packed\)\))p Fy('.)150 1626 y Fs(5.34)68 b(Sp)t(ecifying)45 b(A)l(ttributes)h(of)f (T)l(yp)t(es)275 1816 y Fy(The)d(k)m(eyw)m(ord)i Fq(__attribute__)c Fy(allo)m(ws)i(y)m(ou)i(to)g(sp)s(ecify)e(sp)s(ecial)g(attributes)h(of) g Fq(struct)f Fy(and)150 1925 y Fq(union)30 b Fy(t)m(yp)s(es)h(when)g (y)m(ou)h(de\014ne)e(suc)m(h)h(t)m(yp)s(es.)44 b(This)30 b(k)m(eyw)m(ord)i(is)e(follo)m(w)m(ed)h(b)m(y)h(an)f(attribute)g(sp)s (eci\014-)150 2035 y(cation)g(inside)d(double)h(paren)m(theses.)42 b(Fiv)m(e)31 b(attributes)f(are)h(curren)m(tly)f(de\014ned)f(for)h(t)m (yp)s(es:)42 b Fq(aligned)p Fy(,)150 2145 y Fq(packed)p Fy(,)37 b Fq(transparent_union)p Fy(,)c Fq(unused)p Fy(,)k(and)f Fq(deprecated)p Fy(.)57 b(Other)36 b(attributes)g(are)h(de\014ned)e (for)150 2254 y(functions)43 b(\(see)i(Section)f(5.26)h([F)-8 b(unction)44 b(A)m(ttributes],)k(page)d(172\))h(and)e(for)f(v)-5 b(ariables)43 b(\(see)i(Sec-)150 2364 y(tion)30 b(5.33)i([V)-8 b(ariable)30 b(A)m(ttributes],)h(page)g(184\).)275 2496 y(Y)-8 b(ou)35 b(ma)m(y)g(also)g(sp)s(ecify)f(an)m(y)h(one)g(of)h (these)f(attributes)f(with)g(`)p Fq(__)p Fy(')h(preceding)f(and)g (follo)m(wing)g(its)150 2606 y(k)m(eyw)m(ord.)56 b(This)34 b(allo)m(ws)h(y)m(ou)g(to)i(use)e(these)h(attributes)f(in)f(header)h (\014les)f(without)h(b)s(eing)f(concerned)150 2715 y(ab)s(out)28 b(a)h(p)s(ossible)d(macro)j(of)g(the)f(same)h(name.)40 b(F)-8 b(or)30 b(example,)e(y)m(ou)h(ma)m(y)g(use)f Fq(__aligned__)e Fy(instead)150 2825 y(of)31 b Fq(aligned)p Fy(.)275 2957 y(Y)-8 b(ou)36 b(ma)m(y)g(sp)s(ecify)e(the)i Fq(aligned)d Fy(and)i Fq(transparent_union)c Fy(attributes)36 b(either)f(in)f(a)i Fq(typedef)150 3066 y Fy(declaration)f(or)h(just)f(past)g(the)h (closing)f(curly)f(brace)i(of)f(a)h(complete)g(en)m(um,)h(struct)f(or)f (union)f(t)m(yp)s(e)150 3176 y Fr(de\014nition)k Fy(and)30 b(the)h Fq(packed)d Fy(attribute)i(only)g(past)g(the)h(closing)e(brace) i(of)g(a)f(de\014nition.)275 3308 y(Y)-8 b(ou)29 b(ma)m(y)g(also)g(sp)s (ecify)f(attributes)g(b)s(et)m(w)m(een)i(the)f(en)m(um,)g(struct)g(or)f (union)f(tag)k(and)d(the)h(name)g(of)150 3418 y(the)i(t)m(yp)s(e)f (rather)g(than)g(after)h(the)g(closing)e(brace.)275 3550 y(See)34 b(Section)f(5.27)i([A)m(ttribute)f(Syn)m(tax],)i(page)e(179,)i (for)e(details)e(of)i(the)g(exact)i(syn)m(tax)e(for)f(using)150 3660 y(attributes.)150 3859 y Fq(aligned)28 b(\()p Fn(alignmen)m(t)r Fq(\))630 3969 y Fy(This)39 b(attribute)h(sp)s(eci\014es)f(a)i(minim)m (um)d(alignmen)m(t)i(\(in)f(b)m(ytes\))j(for)e(v)-5 b(ariables)39 b(of)i(the)630 4078 y(sp)s(eci\014ed)29 b(t)m(yp)s(e.)41 b(F)-8 b(or)31 b(example,)f(the)h(declarations:)870 4205 y Fq(struct)46 b(S)i({)f(short)f(f[3];)h(})g(__attribute__)d (\(\(aligned)i(\(8\)\)\);)870 4309 y(typedef)g(int)h(more_aligned_int)c (__attribute__)h(\(\(aligned)i(\(8\)\)\);)630 4441 y Fy(force)39 b(the)h(compiler)d(to)j(insure)d(\(as)i(far)g(as)g(it)f (can\))i(that)f(eac)m(h)h(v)-5 b(ariable)38 b(whose)h(t)m(yp)s(e)630 4550 y(is)c Fq(struct)28 b(S)36 b Fy(or)f Fq(more_aligned_int)c Fy(will)i(b)s(e)i(allo)s(cated)h(and)f(aligned)g Fr(at)j(le)-5 b(ast)45 b Fy(on)36 b(a)630 4660 y(8-b)m(yte)c(b)s(oundary)-8 b(.)41 b(On)30 b(a)h(Sparc,)g(ha)m(ving)f(all)g(v)-5 b(ariables)29 b(of)i(t)m(yp)s(e)g Fq(struct)e(S)i Fy(aligned)e(to)630 4769 y(8-b)m(yte)e(b)s(oundaries)c(allo)m(ws)j(the)g(compiler)e(to)i (use)g(the)g Fq(ldd)f Fy(and)g Fq(std)g Fy(\(doublew)m(ord)f(load)630 4879 y(and)j(store\))h(instructions)e(when)g(cop)m(ying)h(one)h(v)-5 b(ariable)26 b(of)i(t)m(yp)s(e)g Fq(struct)g(S)f Fy(to)h(another,)630 4989 y(th)m(us)i(impro)m(ving)f(run-time)g(e\016ciency)-8 b(.)630 5121 y(Note)32 b(that)g(the)f(alignmen)m(t)g(of)g(an)m(y)h(giv) m(en)f Fq(struct)e Fy(or)i Fq(union)f Fy(t)m(yp)s(e)h(is)f(required)g (b)m(y)h(the)630 5230 y(ISO)25 b(C)h(standard)g(to)h(b)s(e)f(at)h (least)f(a)h(p)s(erfect)f(m)m(ultiple)e(of)j(the)f(lo)m(w)m(est)i (common)e(m)m(ultiple)630 5340 y(of)d(the)g(alignmen)m(ts)f(of)h(all)e (of)i(the)g(mem)m(b)s(ers)f(of)h(the)g Fq(struct)e Fy(or)i Fq(union)e Fy(in)g(question.)38 b(This)p eop %%Page: 189 199 189 198 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(189)630 299 y(means)28 b(that)h(y)m(ou)g Fr(c)-5 b(an)35 b Fy(e\013ectiv)m(ely) 30 b(adjust)d(the)i(alignmen)m(t)e(of)i(a)f Fq(struct)f Fy(or)h Fq(union)f Fy(t)m(yp)s(e)630 408 y(b)m(y)33 b(attac)m(hing)h (an)f Fq(aligned)f Fy(attribute)h(to)h(an)m(y)f(one)h(of)f(the)g(mem)m (b)s(ers)g(of)g(suc)m(h)g(a)h(t)m(yp)s(e,)630 518 y(but)d(the)h (notation)g(illustrated)e(in)g(the)i(example)f(ab)s(o)m(v)m(e)i(is)e(a) h(more)g(ob)m(vious,)g(in)m(tuitiv)m(e,)630 628 y(and)f(readable)h(w)m (a)m(y)h(to)g(request)f(the)g(compiler)f(to)i(adjust)e(the)h(alignmen)m (t)g(of)g(an)g(en)m(tire)630 737 y Fq(struct)d Fy(or)h Fq(union)f Fy(t)m(yp)s(e.)630 880 y(As)c(in)f(the)h(preceding)f (example,)i(y)m(ou)f(can)g(explicitly)e(sp)s(ecify)h(the)h(alignmen)m (t)f(\(in)g(b)m(ytes\))630 990 y(that)33 b(y)m(ou)f(wish)f(the)h (compiler)f(to)i(use)f(for)g(a)h(giv)m(en)f Fq(struct)e Fy(or)j Fq(union)d Fy(t)m(yp)s(e.)47 b(Alterna-)630 1099 y(tiv)m(ely)-8 b(,)46 b(y)m(ou)e(can)f(lea)m(v)m(e)h(out)f(the)h (alignmen)m(t)e(factor)i(and)e(just)g(ask)i(the)f(compiler)e(to)630 1209 y(align)32 b(a)h(t)m(yp)s(e)g(to)g(the)g(maxim)m(um)e(useful)g (alignmen)m(t)h(for)h(the)g(target)h(mac)m(hine)e(y)m(ou)i(are)630 1319 y(compiling)28 b(for.)41 b(F)-8 b(or)31 b(example,)f(y)m(ou)h (could)e(write:)870 1456 y Fq(struct)46 b(S)i({)f(short)f(f[3];)h(})g (__attribute__)d(\(\(aligned\)\);)630 1599 y Fy(Whenev)m(er)27 b(y)m(ou)f(lea)m(v)m(e)i(out)e(the)h(alignmen)m(t)e(factor)i(in)e(an)h Fq(aligned)e Fy(attribute)i(sp)s(eci\014ca-)630 1709 y(tion,)32 b(the)h(compiler)d(automatically)i(sets)h(the)f(alignmen)m (t)g(for)g(the)g(t)m(yp)s(e)g(to)h(the)g(largest)630 1818 y(alignmen)m(t)e(whic)m(h)g(is)g(ev)m(er)i(used)f(for)g(an)m(y)g (data)h(t)m(yp)s(e)f(on)g(the)h(target)g(mac)m(hine)f(y)m(ou)h(are)630 1928 y(compiling)i(for.)60 b(Doing)37 b(this)f(can)h(often)g(mak)m(e)h (cop)m(y)g(op)s(erations)e(more)h(e\016cien)m(t,)i(b)s(e-)630 2037 y(cause)g(the)g(compiler)e(can)i(use)g(whatev)m(er)g(instructions) d(cop)m(y)k(the)f(biggest)f(c)m(h)m(unks)h(of)630 2147 y(memory)26 b(when)f(p)s(erforming)f(copies)i(to)h(or)g(from)e(the)i(v) -5 b(ariables)25 b(whic)m(h)g(ha)m(v)m(e)i(t)m(yp)s(es)f(that)630 2256 y(y)m(ou)31 b(ha)m(v)m(e)g(aligned)e(this)h(w)m(a)m(y)-8 b(.)630 2400 y(In)31 b(the)h(example)g(ab)s(o)m(v)m(e,)h(if)e(the)h (size)g(of)g(eac)m(h)h Fq(short)d Fy(is)h(2)h(b)m(ytes,)h(then)f(the)g (size)g(of)g(the)630 2509 y(en)m(tire)38 b Fq(struct)29 b(S)38 b Fy(t)m(yp)s(e)g(is)f(6)i(b)m(ytes.)65 b(The)38 b(smallest)f(p)s(o)m(w)m(er)h(of)h(t)m(w)m(o)g(whic)m(h)e(is)h(greater) 630 2619 y(than)h(or)h(equal)f(to)i(that)f(is)f(8,)k(so)c(the)h (compiler)f(sets)h(the)g(alignmen)m(t)f(for)g(the)h(en)m(tire)630 2728 y Fq(struct)29 b(S)h Fy(t)m(yp)s(e)g(to)h(8)g(b)m(ytes.)630 2871 y(Note)26 b(that)f(although)f(y)m(ou)h(can)g(ask)g(the)g(compiler) f(to)h(select)g(a)g(time-e\016cien)m(t)h(alignmen)m(t)630 2981 y(for)37 b(a)g(giv)m(en)g(t)m(yp)s(e)g(and)f(then)h(declare)g (only)f(individual)c(stand-alone)37 b(ob)5 b(jects)37 b(of)g(that)630 3090 y(t)m(yp)s(e,)24 b(the)d(compiler's)f(abilit)m(y)g (to)i(select)g(a)g(time-e\016cien)m(t)g(alignmen)m(t)e(is)h(primarily)d (useful)630 3200 y(only)27 b(when)g(y)m(ou)h(plan)e(to)j(create)g(arra) m(ys)f(of)g(v)-5 b(ariables)26 b(ha)m(ving)i(the)g(relev)-5 b(an)m(t)28 b(\(e\016cien)m(tly)630 3310 y(aligned\))j(t)m(yp)s(e.)44 b(If)31 b(y)m(ou)h(declare)f(or)h(use)f(arra)m(ys)h(of)g(v)-5 b(ariables)30 b(of)i(an)f(e\016cien)m(tly-aligned)630 3419 y(t)m(yp)s(e,)25 b(then)e(it)f(is)g(lik)m(ely)g(that)h(y)m(our)g (program)g(will)d(also)j(b)s(e)f(doing)g(p)s(oin)m(ter)g(arithmetic)h (\(or)630 3529 y(subscripting,)e(whic)m(h)g(amoun)m(ts)h(to)h(the)f (same)h(thing\))e(on)h(p)s(oin)m(ters)f(to)i(the)f(relev)-5 b(an)m(t)23 b(t)m(yp)s(e,)630 3638 y(and)f(the)h(co)s(de)g(that)h(the)f (compiler)e(generates)k(for)d(these)i(p)s(oin)m(ter)d(arithmetic)i(op)s (erations)630 3748 y(will)28 b(often)j(b)s(e)e(more)i(e\016cien)m(t)g (for)f(e\016cien)m(tly-aligned)f(t)m(yp)s(es)h(than)h(for)f(other)g(t)m (yp)s(es.)630 3891 y(The)j Fq(aligned)f Fy(attribute)h(can)h(only)e (increase)i(the)g(alignmen)m(t;)g(but)f(y)m(ou)h(can)g(decrease)630 4001 y(it)c(b)m(y)g(sp)s(ecifying)e Fq(packed)h Fy(as)i(w)m(ell.)39 b(See)31 b(b)s(elo)m(w.)630 4144 y(Note)38 b(that)e(the)h(e\013ectiv)m (eness)g(of)g Fq(aligned)d Fy(attributes)i(ma)m(y)g(b)s(e)g(limited)e (b)m(y)i(inheren)m(t)630 4253 y(limitations)28 b(in)h(y)m(our)h(link)m (er.)40 b(On)29 b(man)m(y)i(systems,)f(the)h(link)m(er)e(is)g(only)g (able)h(to)i(arrange)630 4363 y(for)41 b(v)-5 b(ariables)41 b(to)h(b)s(e)f(aligned)f(up)h(to)h(a)g(certain)g(maxim)m(um)e(alignmen) m(t.)74 b(\(F)-8 b(or)43 b(some)630 4472 y(link)m(ers,)36 b(the)h(maxim)m(um)e(supp)s(orted)g(alignmen)m(t)g(ma)m(y)i(b)s(e)f(v)m (ery)h(v)m(ery)g(small.\))57 b(If)36 b(y)m(our)630 4582 y(link)m(er)24 b(is)g(only)h(able)g(to)h(align)e(v)-5 b(ariables)24 b(up)h(to)h(a)g(maxim)m(um)e(of)h(8)h(b)m(yte)g(alignmen) m(t,)g(then)630 4692 y(sp)s(ecifying)32 b Fq(aligned\(16\))f Fy(in)i(an)h Fq(__attribute__)d Fy(will)h(still)g(only)h(pro)m(vide)h (y)m(ou)g(with)630 4801 y(8)d(b)m(yte)g(alignmen)m(t.)40 b(See)30 b(y)m(our)h(link)m(er)e(do)s(cumen)m(tation)h(for)g(further)f (information.)150 4978 y Fq(packed)192 b Fy(This)24 b(attribute,)j (attac)m(hed)h(to)f(an)f Fq(enum)p Fy(,)g Fq(struct)p Fy(,)f(or)h Fq(union)f Fy(t)m(yp)s(e)h(de\014nition,)f(sp)s(eci\014ed) 630 5087 y(that)31 b(the)g(minim)m(um)c(required)i(memory)h(b)s(e)g (used)f(to)i(represen)m(t)g(the)f(t)m(yp)s(e.)630 5230 y(Sp)s(ecifying)24 b(this)h(attribute)h(for)f Fq(struct)g Fy(and)g Fq(union)g Fy(t)m(yp)s(es)h(is)g(equiv)-5 b(alen)m(t)25 b(to)i(sp)s(ecifying)630 5340 y(the)38 b Fq(packed)d Fy(attribute)i(on)h(eac)m(h)g(of)g(the)f(structure)g(or)h(union)d(mem)m (b)s(ers.)61 b(Sp)s(ecifying)p eop %%Page: 190 200 190 199 bop 150 -116 a Fy(190)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(the)43 b(`)p Fq(-fshort-enums)p Fy(')d(\015ag)j(on)f(the)h(line)e(is)h(equiv)-5 b(alen)m(t)43 b(to)g(sp)s(ecifying)e(the)i Fq(packed)630 408 y Fy(attribute)30 b(on)g(all)g Fq(enum)f Fy(de\014nitions.)630 555 y(Y)-8 b(ou)44 b(ma)m(y)g(only)e(sp)s(ecify)g(this)h(attribute)g(after)h(a)f (closing)g(curly)f(brace)i(on)f(an)g Fq(enum)630 664 y Fy(de\014nition,)33 b(not)i(in)e(a)i Fq(typedef)e Fy(declaration,)i (unless)e(that)i(declaration)f(also)h(con)m(tains)630 774 y(the)c(de\014nition)d(of)i(the)h Fq(enum)p Fy(.)150 957 y Fq(transparent_union)630 1067 y Fy(This)26 b(attribute,)i(attac)m (hed)h(to)f(a)g Fq(union)e Fy(t)m(yp)s(e)h(de\014nition,)f(indicates)h (that)g(an)m(y)h(function)630 1176 y(parameter)g(ha)m(ving)g(that)h (union)d(t)m(yp)s(e)i(causes)g(calls)f(to)i(that)g(function)d(to)j(b)s (e)e(treated)i(in)630 1286 y(a)i(sp)s(ecial)e(w)m(a)m(y)-8 b(.)630 1432 y(First,)36 b(the)f(argumen)m(t)h(corresp)s(onding)d(to)j (a)f(transparen)m(t)g(union)e(t)m(yp)s(e)j(can)f(b)s(e)f(of)i(an)m(y) 630 1542 y(t)m(yp)s(e)24 b(in)f(the)h(union;)g(no)g(cast)h(is)e (required.)36 b(Also,)25 b(if)e(the)h(union)e(con)m(tains)i(a)h(p)s (oin)m(ter)e(t)m(yp)s(e,)630 1651 y(the)37 b(corresp)s(onding)e (argumen)m(t)j(can)f(b)s(e)f(a)i(n)m(ull)d(p)s(oin)m(ter)h(constan)m(t) i(or)f(a)g(v)m(oid)g(p)s(oin)m(ter)630 1761 y(expression;)43 b(and)38 b(if)h(the)g(union)e(con)m(tains)j(a)g(v)m(oid)e(p)s(oin)m (ter)h(t)m(yp)s(e,)j(the)d(corresp)s(onding)630 1871 y(argumen)m(t)26 b(can)f(b)s(e)g(an)m(y)g(p)s(oin)m(ter)f(expression.) 38 b(If)25 b(the)g(union)e(mem)m(b)s(er)i(t)m(yp)s(e)g(is)f(a)i(p)s (oin)m(ter,)630 1980 y(quali\014ers)39 b(lik)m(e)h Fq(const)g Fy(on)h(the)h(referenced)f(t)m(yp)s(e)g(m)m(ust)g(b)s(e)g(resp)s (ected,)j(just)d(as)g(with)630 2090 y(normal)29 b(p)s(oin)m(ter)h(con)m (v)m(ersions.)630 2236 y(Second,)f(the)f(argumen)m(t)g(is)g(passed)f (to)i(the)f(function)f(using)g(the)h(calling)f(con)m(v)m(en)m(tions)i (of)630 2346 y(\014rst)f(mem)m(b)s(er)g(of)g(the)h(transparen)m(t)g (union,)e(not)i(the)g(calling)e(con)m(v)m(en)m(tions)i(of)g(the)g (union)630 2455 y(itself.)52 b(All)33 b(mem)m(b)s(ers)h(of)g(the)h (union)e(m)m(ust)h(ha)m(v)m(e)i(the)f(same)f(mac)m(hine)h(represen)m (tation;)630 2565 y(this)29 b(is)h(necessary)g(for)h(this)e(argumen)m (t)i(passing)e(to)i(w)m(ork)f(prop)s(erly)-8 b(.)630 2711 y(T)g(ransparen)m(t)30 b(unions)d(are)k(designed)d(for)i(library)e (functions)g(that)i(ha)m(v)m(e)i(m)m(ultiple)27 b(in)m(ter-)630 2821 y(faces)34 b(for)f(compatibilit)m(y)f(reasons.)49 b(F)-8 b(or)34 b(example,)g(supp)s(ose)e(the)h Fq(wait)f Fy(function)g(m)m(ust)630 2930 y(accept)39 b(either)e(a)g(v)-5 b(alue)37 b(of)h(t)m(yp)s(e)f Fq(int)30 b(*)37 b Fy(to)h(comply)e(with) g(P)m(osix,)j(or)f(a)f(v)-5 b(alue)37 b(of)h(t)m(yp)s(e)630 3040 y Fq(union)29 b(wait)g(*)k Fy(to)i(comply)e(with)f(the)i(4.1BSD)h (in)m(terface.)51 b(If)33 b Fq(wait)p Fy('s)f(parameter)i(w)m(ere)630 3150 y Fq(void)29 b(*)p Fy(,)35 b Fq(wait)d Fy(w)m(ould)h(accept)i(b)s (oth)e(kinds)f(of)i(argumen)m(ts,)h(but)e(it)g(w)m(ould)g(also)g (accept)630 3259 y(an)m(y)25 b(other)h(p)s(oin)m(ter)e(t)m(yp)s(e)h (and)f(this)g(w)m(ould)g(mak)m(e)i(argumen)m(t)f(t)m(yp)s(e)g(c)m(hec)m (king)h(less)e(useful.)630 3369 y(Instead,)30 b Fq()d Fy(migh)m(t)k(de\014ne)e(the)i(in)m(terface)g(as)f(follo)m(ws:)870 3509 y Fq(typedef)46 b(union)965 3613 y({)1061 3717 y(int)h(*__ip;)1061 3821 y(union)f(wait)h(*__up;)965 3924 y(})h(wait_status_ptr_t)43 b(__attribute__)h(\(\(__transparent_union__\)\))o(;)870 4132 y(pid_t)i(wait)h(\(wait_status_ptr_t\);)630 4278 y Fy(This)41 b(in)m(terface)i(allo)m(ws)f(either)g Fq(int)30 b(*)42 b Fy(or)g Fq(union)29 b(wait)h(*)42 b Fy(argumen)m(ts)h(to)g(b)s (e)f(passed,)630 4388 y(using)26 b(the)i Fq(int)h(*)f Fy(calling)e(con)m(v)m(en)m(tion.)41 b(The)27 b(program)g(can)h(call)f Fq(wait)f Fy(with)h(argumen)m(ts)630 4497 y(of)k(either)e(t)m(yp)s(e:) 870 4638 y Fq(int)47 b(w1)g(\(\))g({)h(int)f(w;)g(return)f(wait)h (\(&w\);)f(})870 4742 y(int)h(w2)g(\(\))g({)h(union)e(wait)h(w;)g (return)f(wait)h(\(&w\);)f(})630 4888 y Fy(With)30 b(this)f(in)m (terface,)i Fq(wait)p Fy('s)f(implemen)m(tation)f(migh)m(t)h(lo)s(ok)g (lik)m(e)f(this:)870 5029 y Fq(pid_t)46 b(wait)h(\(wait_status_ptr_t)c (p\))870 5132 y({)965 5236 y(return)k(waitpid)e(\(-1,)i(p.__ip,)f(0\);) 870 5340 y(})p eop %%Page: 191 201 191 200 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(191)150 299 y Fq(unused)192 b Fy(When)26 b(attac)m(hed)i(to)e(a)h(t)m(yp)s(e)f (\(including)d(a)j Fq(union)f Fy(or)h(a)h Fq(struct)p Fy(\),)e(this)g(attribute)h(means)630 408 y(that)j(v)-5 b(ariables)27 b(of)h(that)h(t)m(yp)s(e)g(are)g(mean)m(t)g(to)g(app)s (ear)f(p)s(ossibly)d(un)m(used.)39 b(GCC)28 b(will)e(not)630 518 y(pro)s(duce)e(a)i(w)m(arning)e(for)g(an)m(y)i(v)-5 b(ariables)24 b(of)h(that)h(t)m(yp)s(e,)h(ev)m(en)e(if)f(the)i(v)-5 b(ariable)24 b(app)s(ears)g(to)630 628 y(do)i(nothing.)38 b(This)25 b(is)g(often)h(the)h(case)g(with)e(lo)s(c)m(k)h(or)g(thread)g (classes,)h(whic)m(h)e(are)h(usually)630 737 y(de\014ned)i(and)g(then)g (not)i(referenced,)f(but)f(con)m(tain)h(constructors)g(and)g (destructors)f(that)630 847 y(ha)m(v)m(e)k(non)m(trivial)c(b)s(o)s(okk) m(eeping)i(functions.)150 1007 y Fq(deprecated)630 1117 y Fy(The)g Fq(deprecated)e Fy(attribute)i(results)f(in)g(a)i(w)m (arning)e(if)h(the)g(t)m(yp)s(e)h(is)e(used)h(an)m(ywhere)g(in)630 1226 y(the)36 b(source)g(\014le.)56 b(This)34 b(is)h(useful)f(when)h (iden)m(tifying)e(t)m(yp)s(es)j(that)h(are)f(exp)s(ected)g(to)h(b)s(e) 630 1336 y(remo)m(v)m(ed)28 b(in)d(a)j(future)d(v)m(ersion)i(of)g(a)g (program.)39 b(If)27 b(p)s(ossible,)e(the)i(w)m(arning)f(also)g (includes)630 1446 y(the)j(lo)s(cation)g(of)g(the)h(declaration)e(of)i (the)f(deprecated)g(t)m(yp)s(e,)h(to)g(enable)f(users)f(to)i(easily)630 1555 y(\014nd)24 b(further)h(information)f(ab)s(out)i(wh)m(y)g(the)g(t) m(yp)s(e)g(is)f(deprecated,)j(or)e(what)g(they)g(should)630 1665 y(do)e(instead.)38 b(Note)26 b(that)f(the)g(w)m(arnings)e(only)h (o)s(ccur)g(for)g(uses)g(and)g(then)g(only)g(if)f(the)i(t)m(yp)s(e)630 1774 y(is)k(b)s(eing)g(applied)g(to)i(an)f(iden)m(ti\014er)e(that)j (itself)f(is)f(not)i(b)s(eing)e(declared)g(as)i(deprecated.)870 1904 y Fq(typedef)46 b(int)h(T1)g(__attribute__)d(\(\(deprecated\)\);) 870 2007 y(T1)j(x;)870 2111 y(typedef)f(T1)h(T2;)870 2215 y(T2)g(y;)870 2319 y(typedef)f(T1)h(T3)g(__attribute__)d (\(\(deprecated\)\);)870 2422 y(T3)j(z)h(__attribute__)c (\(\(deprecated\)\);)630 2557 y Fy(results)37 b(in)g(a)i(w)m(arning)e (on)i(line)d(2)j(and)f(3)h(but)f(not)g(lines)f(4,)k(5,)g(or)d(6.)66 b(No)39 b(w)m(arning)e(is)630 2667 y(issued)26 b(for)h(line)f(4)i(b)s (ecause)f(T2)h(is)e(not)i(explicitly)d(deprecated.)40 b(Line)27 b(5)g(has)h(no)f(w)m(arning)630 2777 y(b)s(ecause)j(T3)h(is)e (explicitly)f(deprecated.)41 b(Similarly)27 b(for)j(line)f(6.)630 2912 y(The)24 b Fq(deprecated)e Fy(attribute)j(can)g(also)f(b)s(e)g (used)g(for)h(functions)e(and)h(v)-5 b(ariables)24 b(\(see)h(Sec-)630 3021 y(tion)f(5.26)h([F)-8 b(unction)24 b(A)m(ttributes],)i(page)f (172,)i(see)d(Section)g(5.33)i([V)-8 b(ariable)24 b(A)m(ttributes],)630 3131 y(page)31 b(184.\))275 3292 y(T)-8 b(o)26 b(sp)s(ecify)f(m)m (ultiple)f(attributes,)j(separate)h(them)e(b)m(y)g(commas)h(within)d (the)j(double)d(paren)m(theses:)150 3401 y(for)30 b(example,)g(`)p Fq(__attribute__)d(\(\(aligned)h(\(16\),)h(packed\)\))p Fy('.)150 3661 y Fs(5.35)68 b(An)44 b(Inline)i(F)-11 b(unction)44 b(is)h(As)g(F)-11 b(ast)44 b(As)h(a)g(Macro)275 3855 y Fy(By)34 b(declaring)g(a)g(function)g Fq(inline)p Fy(,)g(y)m(ou)h(can)f(direct)g(GCC)g(to)i(in)m(tegrate)f(that)g (function's)f(co)s(de)150 3965 y(in)m(to)i(the)g(co)s(de)g(for)f(its)h (callers.)56 b(This)34 b(mak)m(es)i(execution)g(faster)h(b)m(y)e (eliminating)f(the)i(function-call)150 4074 y(o)m(v)m(erhead;)29 b(in)c(addition,)h(if)g(an)m(y)g(of)h(the)g(actual)g(argumen)m(t)g(v)-5 b(alues)25 b(are)i(constan)m(t,)i(their)d(kno)m(wn)g(v)-5 b(alues)150 4184 y(ma)m(y)25 b(p)s(ermit)e(simpli\014cations)e(at)k (compile)e(time)h(so)h(that)g(not)g(all)e(of)h(the)h(inline)d (function's)h(co)s(de)h(needs)150 4293 y(to)38 b(b)s(e)f(included.)60 b(The)37 b(e\013ect)i(on)e(co)s(de)h(size)f(is)g(less)g(predictable;)j (ob)5 b(ject)38 b(co)s(de)g(ma)m(y)g(b)s(e)f(larger)g(or)150 4403 y(smaller)28 b(with)f(function)h(inlining,)d(dep)s(ending)i(on)i (the)g(particular)e(case.)42 b(Inlining)25 b(of)k(functions)f(is)g(an) 150 4512 y(optimization)e(and)h(it)g(really)g(\\w)m(orks")h(only)f(in)f (optimizing)g(compilation.)38 b(If)27 b(y)m(ou)h(don't)g(use)f(`)p Fq(-O)p Fy(',)h(no)150 4622 y(function)h(is)g(really)h(inline.)275 4758 y(Inline)20 b(functions)h(are)i(included)d(in)h(the)i(ISO)f(C99)h (standard,)h(but)e(there)g(are)h(curren)m(tly)f(substan)m(tial)150 4867 y(di\013erences)30 b(b)s(et)m(w)m(een)h(what)f(GCC)g(implemen)m (ts)f(and)h(what)g(the)g(ISO)g(C99)h(standard)e(requires.)275 5003 y(T)-8 b(o)30 b(declare)h(a)f(function)g(inline,)d(use)j(the)h Fq(inline)e Fy(k)m(eyw)m(ord)h(in)f(its)h(declaration,)g(lik)m(e)g (this:)390 5132 y Fq(inline)46 b(int)390 5236 y(inc)h(\(int)g(*a\))390 5340 y({)p eop %%Page: 192 202 192 201 bop 150 -116 a Fy(192)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))485 299 y Fq(\(*a\)++;)390 403 y(})275 535 y Fy(\(If)35 b(y)m(ou)h(are)f(writing)f(a)i(header)f (\014le)f(to)j(b)s(e)d(included)f(in)h(ISO)h(C)g(programs,)h(write)f Fq(__inline__)150 644 y Fy(instead)e(of)i Fq(inline)p Fy(.)50 b(See)34 b(Section)g(5.40)i([Alternate)e(Keyw)m(ords],)i(page)e (213.\))54 b(Y)-8 b(ou)35 b(can)f(also)g(mak)m(e)150 754 y(all)29 b(\\simple)g(enough")i(functions)e(inline)e(with)i(the)i (option)e(`)p Fq(-finline-functions)p Fy('.)275 886 y(Note)34 b(that)g(certain)f(usages)h(in)e(a)i(function)e(de\014nition)f(can)i (mak)m(e)i(it)e(unsuitable)d(for)j(inline)e(sub-)150 996 y(stitution.)44 b(Among)32 b(these)g(usages)g(are:)44 b(use)32 b(of)g(v)-5 b(arargs,)32 b(use)g(of)g(allo)s(ca,)g(use)g(of)g (v)-5 b(ariable)30 b(sized)h(data)150 1105 y(t)m(yp)s(es)e(\(see)i (Section)e(5.14)i([V)-8 b(ariable)29 b(Length],)h(page)g(165\),)h(use)e (of)g(computed)h(goto)g(\(see)h(Section)e(5.3)150 1215 y([Lab)s(els)35 b(as)h(V)-8 b(alues],)38 b(page)e(157\),)j(use)d(of)g (nonlo)s(cal)e(goto,)39 b(and)c(nested)h(functions)e(\(see)j(Section)f (5.4)150 1324 y([Nested)28 b(F)-8 b(unctions],)28 b(page)g(158\).)41 b(Using)26 b(`)p Fq(-Winline)p Fy(')g(will)e(w)m(arn)j(when)f(a)i (function)d(mark)m(ed)j Fq(inline)150 1434 y Fy(could)h(not)i(b)s(e)f (substituted,)f(and)h(will)d(giv)m(e)k(the)g(reason)f(for)g(the)h (failure.)275 1566 y(Note)38 b(that)f(in)f(C)g(and)h(Ob)5 b(jectiv)m(e-C,)37 b(unlik)m(e)e(C)p Fq(++)p Fy(,)j(the)f Fq(inline)e Fy(k)m(eyw)m(ord)j(do)s(es)e(not)h(a\013ect)i(the)150 1676 y(link)-5 b(age)30 b(of)g(the)h(function.)275 1808 y(GCC)46 b(automatically)h(inlines)e(mem)m(b)s(er)h(functions)g (de\014ned)g(within)f(the)i(class)g(b)s(o)s(dy)f(of)h(C)p Fq(++)150 1917 y Fy(programs)c(ev)m(en)h(if)f(they)h(are)g(not)f (explicitly)e(declared)i Fq(inline)p Fy(.)79 b(\(Y)-8 b(ou)44 b(can)g(o)m(v)m(erride)g(this)e(with)150 2027 y(`)p Fq(-fno-default-inline)p Fy(';)26 b(see)31 b(Section)f(3.5)h ([Options)f(Con)m(trolling)e(C)p Fq(++)i Fy(Dialect],)h(page)g(24.\)) 275 2159 y(When)37 b(a)i(function)d(is)i(b)s(oth)f(inline)e(and)i Fq(static)p Fy(,)i(if)e(all)g(calls)g(to)i(the)f(function)f(are)h(in)m (tegrated)150 2269 y(in)m(to)30 b(the)g(caller,)g(and)g(the)g (function's)f(address)g(is)g(nev)m(er)i(used,)e(then)h(the)g (function's)f(o)m(wn)h(assem)m(bler)150 2378 y(co)s(de)37 b(is)f(nev)m(er)h(referenced.)60 b(In)36 b(this)g(case,)k(GCC)c(do)s (es)h(not)g(actually)f(output)h(assem)m(bler)f(co)s(de)h(for)150 2488 y(the)26 b(function,)f(unless)f(y)m(ou)h(sp)s(ecify)g(the)g (option)g(`)p Fq(-fkeep-inline-functions)p Fy('.)33 b(Some)26 b(calls)e(cannot)150 2597 y(b)s(e)31 b(in)m(tegrated)h(for)f(v)-5 b(arious)30 b(reasons)i(\(in)e(particular,)g(calls)h(that)h(precede)g (the)f(function's)f(de\014nition)150 2707 y(cannot)38 b(b)s(e)f(in)m(tegrated,)j(and)c(neither)g(can)i(recursiv)m(e)f(calls)f (within)f(the)i(de\014nition\).)60 b(If)37 b(there)g(is)g(a)150 2817 y(nonin)m(tegrated)31 b(call,)f(then)g(the)h(function)e(is)h (compiled)f(to)i(assem)m(bler)g(co)s(de)f(as)h(usual.)40 b(The)30 b(function)150 2926 y(m)m(ust)j(also)g(b)s(e)f(compiled)g(as)h (usual)f(if)g(the)h(program)g(refers)g(to)g(its)g(address,)g(b)s (ecause)g(that)h(can't)g(b)s(e)150 3036 y(inlined.)275 3168 y(When)22 b(an)i(inline)c(function)i(is)g(not)h Fq(static)p Fy(,)h(then)e(the)i(compiler)e(m)m(ust)h(assume)g(that)g (there)h(ma)m(y)g(b)s(e)150 3277 y(calls)h(from)h(other)h(source)f (\014les;)h(since)e(a)i(global)e(sym)m(b)s(ol)g(can)i(b)s(e)e (de\014ned)g(only)h(once)g(in)f(an)m(y)i(program,)150 3387 y(the)37 b(function)f(m)m(ust)h(not)g(b)s(e)f(de\014ned)g(in)f (the)j(other)f(source)g(\014les,)h(so)f(the)g(calls)f(therein)g(cannot) i(b)s(e)150 3497 y(in)m(tegrated.)57 b(Therefore,)38 b(a)e(non-)p Fq(static)d Fy(inline)g(function)i(is)f(alw)m(a)m(ys)j (compiled)d(on)h(its)h(o)m(wn)f(in)g(the)150 3606 y(usual)29 b(fashion.)275 3738 y(If)h(y)m(ou)i(sp)s(ecify)d(b)s(oth)i Fq(inline)e Fy(and)i Fq(extern)e Fy(in)h(the)h(function)f (de\014nition,)f(then)i(the)g(de\014nition)e(is)150 3848 y(used)h(only)f(for)h(inlining.)37 b(In)29 b(no)h(case)i(is)d(the)i (function)e(compiled)f(on)i(its)g(o)m(wn,)h(not)f(ev)m(en)h(if)f(y)m (ou)g(refer)150 3957 y(to)g(its)f(address)g(explicitly)-8 b(.)38 b(Suc)m(h)29 b(an)g(address)g(b)s(ecomes)g(an)h(external)f (reference,)h(as)g(if)e(y)m(ou)i(had)f(only)150 4067 y(declared)h(the)g(function,)g(and)f(had)h(not)h(de\014ned)e(it.)275 4199 y(This)i(com)m(bination)h(of)h Fq(inline)f Fy(and)g Fq(extern)f Fy(has)i(almost)g(the)g(e\013ect)i(of)e(a)g(macro.)50 b(The)32 b(w)m(a)m(y)i(to)150 4309 y(use)d(it)g(is)g(to)h(put)f(a)h (function)e(de\014nition)f(in)h(a)i(header)f(\014le)g(with)f(these)i(k) m(eyw)m(ords,)g(and)f(put)g(another)150 4418 y(cop)m(y)j(of)g(the)f (de\014nition)f(\(lac)m(king)h Fq(inline)f Fy(and)h Fq(extern)p Fy(\))f(in)g(a)i(library)d(\014le.)49 b(The)33 b(de\014nition)e(in)h (the)150 4528 y(header)j(\014le)f(will)e(cause)k(most)f(calls)f(to)i (the)f(function)f(to)h(b)s(e)g(inlined.)51 b(If)34 b(an)m(y)h(uses)g (of)g(the)g(function)150 4637 y(remain,)30 b(they)g(will)e(refer)i(to)h (the)g(single)e(cop)m(y)i(in)e(the)h(library)-8 b(.)275 4770 y(F)g(or)27 b(future)f(compatibilit)m(y)f(with)g(when)h(GCC)g (implemen)m(ts)f(ISO)h(C99)h(seman)m(tics)g(for)g(inline)d(func-)150 4879 y(tions,)35 b(it)e(is)g(b)s(est)h(to)h(use)f Fq(static)28 b(inline)33 b Fy(only)-8 b(.)51 b(\(The)34 b(existing)f(seman)m(tics)h (will)e(remain)h(a)m(v)-5 b(ailable)150 4989 y(when)34 b(`)p Fq(-std=gnu89)p Fy(')f(is)i(sp)s(eci\014ed,)g(but)g(ev)m(en)m (tually)g(the)h(default)e(will)f(b)s(e)i(`)p Fq(-std=gnu99)p Fy(')e(and)h(that)150 5098 y(will)28 b(implemen)m(t)h(the)h(C99)h (seman)m(tics,)g(though)f(it)g(do)s(es)g(not)h(do)f(so)h(y)m(et.\))275 5230 y(GCC)59 b(do)s(es)g(not)g(inline)e(an)m(y)j(functions)e(when)g (not)i(optimizing)d(unless)h(y)m(ou)i(sp)s(ecify)e(the)150 5340 y(`)p Fq(always_inline)p Fy(')27 b(attribute)j(for)g(the)h (function,)e(lik)m(e)h(this:)p eop %%Page: 193 203 193 202 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(193)390 299 y Fq(/*)47 b(Prototype.)93 b(*/)390 403 y(inline)46 b(void)h(foo)g(\(const)f(char\))g(__attribute__\(\(always_inl)o(ine)o (\)\);)150 653 y Fs(5.36)68 b(Assem)l(bler)46 b(Instructions)f(with)g (C)g(Expression)h(Op)t(erands)275 843 y Fy(In)33 b(an)h(assem)m(bler)g (instruction)f(using)f Fq(asm)p Fy(,)j(y)m(ou)g(can)f(sp)s(ecify)f(the) i(op)s(erands)e(of)h(the)h(instruction)150 952 y(using)d(C)i (expressions.)50 b(This)32 b(means)i(y)m(ou)g(need)g(not)g(guess)g (whic)m(h)e(registers)i(or)g(memory)f(lo)s(cations)150 1062 y(will)28 b(con)m(tain)i(the)h(data)g(y)m(ou)g(w)m(an)m(t)g(to)g (use.)275 1194 y(Y)-8 b(ou)23 b(m)m(ust)g(sp)s(ecify)e(an)i(assem)m (bler)g(instruction)e(template)i(m)m(uc)m(h)g(lik)m(e)f(what)h(app)s (ears)f(in)g(a)h(mac)m(hine)150 1303 y(description,)29 b(plus)f(an)i(op)s(erand)g(constrain)m(t)g(string)f(for)i(eac)m(h)g(op) s(erand.)275 1435 y(F)-8 b(or)31 b(example,)f(here)g(is)g(ho)m(w)g(to)h (use)f(the)h(68881's)h Fq(fsinx)d Fy(instruction:)390 1562 y Fq(asm)47 b(\("fsinx)f(\0451,\0450")g(:)h("=f")g(\(result\))e(:) j("f")f(\(angle\)\);)150 1694 y Fy(Here)36 b Fq(angle)d Fy(is)h(the)h(C)g(expression)f(for)h(the)g(input)e(op)s(erand)h(while)f Fq(result)g Fy(is)h(that)i(of)f(the)g(output)150 1803 y(op)s(erand.)69 b(Eac)m(h)41 b(has)e(`)p Fq("f")p Fy(')h(as)g(its)g (op)s(erand)f(constrain)m(t,)k(sa)m(ying)d(that)g(a)h(\015oating)f(p)s (oin)m(t)f(register)150 1913 y(is)34 b(required.)54 b(The)35 b(`)p Fq(=)p Fy(')h(in)e(`)p Fq(=f)p Fy(')h(indicates)f(that)i(the)g (op)s(erand)e(is)h(an)g(output;)j(all)c(output)h(op)s(erands')150 2022 y(constrain)m(ts)45 b(m)m(ust)h(use)f(`)p Fq(=)p Fy('.)85 b(The)45 b(constrain)m(ts)g(use)g(the)h(same)g(language)f (used)g(in)f(the)h(mac)m(hine)150 2132 y(description)28 b(\(see)k(Section)e(5.37)i([Constrain)m(ts],)e(page)h(198\).)275 2264 y(Eac)m(h)e(op)s(erand)e(is)h(describ)s(ed)e(b)m(y)i(an)h(op)s (erand-constrain)m(t)f(string)f(follo)m(w)m(ed)h(b)m(y)g(the)h(C)f (expression)150 2374 y(in)c(paren)m(theses.)39 b(A)25 b(colon)h(separates)g(the)f(assem)m(bler)g(template)g(from)g(the)g (\014rst)g(output)f(op)s(erand)h(and)150 2483 y(another)36 b(separates)g(the)g(last)g(output)f(op)s(erand)f(from)i(the)f(\014rst)g (input,)h(if)e(an)m(y)-8 b(.)57 b(Commas)36 b(separate)150 2593 y(the)d(op)s(erands)e(within)f(eac)m(h)k(group.)46 b(The)32 b(total)h(n)m(um)m(b)s(er)e(of)i(op)s(erands)e(is)h(curren)m (tly)f(limited)g(to)i(30;)150 2702 y(this)c(limitation)f(ma)m(y)j(b)s (e)f(lifted)f(in)g(some)i(future)e(v)m(ersion)h(of)h(GCC.)275 2834 y(If)44 b(there)i(are)f(no)h(output)f(op)s(erands)f(but)g(there)i (are)f(input)f(op)s(erands,)k(y)m(ou)d(m)m(ust)g(place)h(t)m(w)m(o)150 2944 y(consecutiv)m(e)31 b(colons)g(surrounding)c(the)j(place)g(where)g (the)h(output)f(op)s(erands)f(w)m(ould)g(go.)275 3076 y(As)36 b(of)h(GCC)f(v)m(ersion)g(3.1,)j(it)d(is)g(also)g(p)s(ossible)e (to)j(sp)s(ecify)f(input)e(and)i(output)g(op)s(erands)f(using)150 3186 y(sym)m(b)s(olic)43 b(names)i(whic)m(h)e(can)j(b)s(e)e(referenced) g(within)f(the)i(assem)m(bler)f(co)s(de.)84 b(These)45 b(names)g(are)150 3295 y(sp)s(eci\014ed)23 b(inside)f(square)i(brac)m (k)m(ets)h(preceding)f(the)g(constrain)m(t)g(string,)h(and)f(can)g(b)s (e)g(referenced)g(inside)150 3405 y(the)38 b(assem)m(bler)g(co)s(de)h (using)d Fq(\045[)p Fn(name)5 b Fq(])38 b Fy(instead)g(of)g(a)h(p)s (ercen)m(tage)g(sign)f(follo)m(w)m(ed)f(b)m(y)i(the)f(op)s(erand)150 3514 y(n)m(um)m(b)s(er.)h(Using)30 b(named)g(op)s(erands)f(the)i(ab)s (o)m(v)m(e)g(example)f(could)g(lo)s(ok)g(lik)m(e:)390 3641 y Fq(asm)47 b(\("fsinx)f(\045[angle],\045[output]")629 3744 y(:)h([output])f("=f")g(\(result\))629 3848 y(:)h([angle])f("f")h (\(angle\)\);)150 3980 y Fy(Note)33 b(that)g(the)f(sym)m(b)s(olic)e(op) s(erand)h(names)h(ha)m(v)m(e)h(no)f(relation)g(whatso)s(ev)m(er)g(to)h (other)f(C)g(iden)m(ti\014ers.)150 4090 y(Y)-8 b(ou)28 b(ma)m(y)h(use)f(an)m(y)g(name)g(y)m(ou)g(lik)m(e,)g(ev)m(en)h(those)f (of)g(existing)f(C)h(sym)m(b)s(ols,)f(but)g(m)m(ust)h(ensure)f(that)i (no)150 4199 y(t)m(w)m(o)j(op)s(erands)d(within)f(the)i(same)h(assem)m (bler)f(construct)h(use)f(the)g(same)h(sym)m(b)s(olic)e(name.)275 4331 y(Output)36 b(op)s(erand)h(expressions)f(m)m(ust)i(b)s(e)f(lv)-5 b(alues;)41 b(the)d(compiler)e(can)i(c)m(hec)m(k)i(this.)62 b(The)37 b(input)150 4441 y(op)s(erands)30 b(need)g(not)h(b)s(e)f(lv)-5 b(alues.)41 b(The)30 b(compiler)g(cannot)h(c)m(hec)m(k)h(whether)f(the) g(op)s(erands)e(ha)m(v)m(e)j(data)150 4550 y(t)m(yp)s(es)24 b(that)g(are)g(reasonable)g(for)f(the)h(instruction)d(b)s(eing)i (executed.)39 b(It)24 b(do)s(es)f(not)h(parse)g(the)f(assem)m(bler)150 4660 y(instruction)h(template)i(and)f(do)s(es)h(not)g(kno)m(w)g(what)f (it)h(means)g(or)f(ev)m(en)i(whether)e(it)g(is)g(v)-5 b(alid)24 b(assem)m(bler)150 4770 y(input.)45 b(The)32 b(extended)h Fq(asm)e Fy(feature)i(is)f(most)g(often)h(used)f(for)g (mac)m(hine)g(instructions)f(the)h(compiler)150 4879 y(itself)26 b(do)s(es)h(not)h(kno)m(w)f(exist.)39 b(If)27 b(the)h(output)f(expression)f(cannot)i(b)s(e)e(directly)g(addressed)h (\(for)g(exam-)150 4989 y(ple,)k(it)g(is)g(a)h(bit-\014eld\),)f(y)m (our)g(constrain)m(t)h(m)m(ust)f(allo)m(w)h(a)g(register.)44 b(In)31 b(that)h(case,)h(GCC)e(will)e(use)j(the)150 5098 y(register)e(as)h(the)f(output)g(of)h(the)g Fq(asm)p Fy(,)e(and)h(then)g(store)h(that)g(register)f(in)m(to)h(the)f(output.) 275 5230 y(The)g(ordinary)g(output)h(op)s(erands)f(m)m(ust)h(b)s(e)f (write-only;)h(GCC)g(will)d(assume)j(that)h(the)g(v)-5 b(alues)30 b(in)150 5340 y(these)j(op)s(erands)e(b)s(efore)h(the)h (instruction)e(are)i(dead)f(and)g(need)g(not)h(b)s(e)f(generated.)48 b(Extended)32 b(asm)p eop %%Page: 194 204 194 203 bop 150 -116 a Fy(194)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y(supp)s(orts)f(input-output)g(or)j (read-write)e(op)s(erands.)42 b(Use)31 b(the)h(constrain)m(t)f(c)m (haracter)i(`)p Fq(+)p Fy(')e(to)h(indicate)150 408 y(suc)m(h)e(an)g (op)s(erand)g(and)f(list)g(it)h(with)f(the)i(output)f(op)s(erands.)275 541 y(When)f(the)g(constrain)m(ts)h(for)f(the)h(read-write)f(op)s (erand)f(\(or)i(the)g(op)s(erand)e(in)g(whic)m(h)g(only)h(some)h(of)150 650 y(the)j(bits)e(are)i(to)h(b)s(e)e(c)m(hanged\))h(allo)m(ws)f(a)h (register,)h(y)m(ou)f(ma)m(y)-8 b(,)34 b(as)f(an)g(alternativ)m(e,)g (logically)f(split)f(its)150 760 y(function)24 b(in)m(to)h(t)m(w)m(o)h (separate)g(op)s(erands,)f(one)g(input)e(op)s(erand)h(and)g(one)i (write-only)d(output)i(op)s(erand.)150 869 y(The)k(connection)g(b)s(et) m(w)m(een)h(them)g(is)e(expressed)h(b)m(y)g(constrain)m(ts)h(whic)m(h)e (sa)m(y)i(they)g(need)f(to)h(b)s(e)f(in)f(the)150 979 y(same)k(lo)s(cation)g(when)e(the)i(instruction)e(executes.)46 b(Y)-8 b(ou)33 b(can)f(use)f(the)h(same)g(C)g(expression)e(for)i(b)s (oth)150 1089 y(op)s(erands,)40 b(or)f(di\013eren)m(t)f(expressions.)65 b(F)-8 b(or)39 b(example,)i(here)e(w)m(e)g(write)f(the)h (\(\014ctitious\))f(`)p Fq(combine)p Fy(')150 1198 y(instruction)28 b(with)h Fq(bar)h Fy(as)h(its)e(read-only)h(source)h(op)s(erand)e(and)h Fq(foo)f Fy(as)i(its)e(read-write)h(destination:)390 1325 y Fq(asm)47 b(\("combine)e(\0452,\0450")h(:)i("=r")e(\(foo\))h(:)g ("0")g(\(foo\),)f("g")h(\(bar\)\);)150 1457 y Fy(The)25 b(constrain)m(t)g(`)p Fq("0")p Fy(')g(for)h(op)s(erand)e(1)i(sa)m(ys)f (that)h(it)f(m)m(ust)h(o)s(ccup)m(y)f(the)h(same)f(lo)s(cation)g(as)h (op)s(erand)e(0.)150 1566 y(A)30 b(n)m(um)m(b)s(er)e(in)h(constrain)m (t)g(is)g(allo)m(w)m(ed)h(only)f(in)f(an)i(input)d(op)s(erand)i(and)g (it)g(m)m(ust)h(refer)f(to)i(an)e(output)150 1676 y(op)s(erand.)275 1808 y(Only)35 b(a)i(n)m(um)m(b)s(er)f(in)g(the)h(constrain)m(t)g(can)g (guaran)m(tee)i(that)f(one)f(op)s(erand)f(will)e(b)s(e)j(in)e(the)j (same)150 1918 y(place)d(as)h(another.)55 b(The)35 b(mere)g(fact)i (that)f Fq(foo)e Fy(is)g(the)i(v)-5 b(alue)34 b(of)i(b)s(oth)e(op)s (erands)g(is)h(not)g(enough)g(to)150 2027 y(guaran)m(tee)24 b(that)f(they)g(will)d(b)s(e)i(in)f(the)i(same)g(place)f(in)g(the)g (generated)i(assem)m(bler)e(co)s(de.)38 b(The)22 b(follo)m(wing)150 2137 y(w)m(ould)29 b(not)i(w)m(ork)f(reliably:)390 2263 y Fq(asm)47 b(\("combine)e(\0452,\0450")h(:)i("=r")e(\(foo\))h(:)g("r") g(\(foo\),)f("g")h(\(bar\)\);)275 2396 y Fy(V)-8 b(arious)31 b(optimizations)g(or)h(reloading)f(could)g(cause)h(op)s(erands)f(0)h (and)g(1)g(to)h(b)s(e)e(in)g(di\013eren)m(t)g(reg-)150 2505 y(isters;)f(GCC)g(kno)m(ws)g(no)h(reason)f(not)h(to)g(do)f(so.)42 b(F)-8 b(or)31 b(example,)f(the)h(compiler)e(migh)m(t)h(\014nd)f(a)i (cop)m(y)g(of)150 2615 y(the)g(v)-5 b(alue)31 b(of)g Fq(foo)f Fy(in)g(one)h(register)g(and)g(use)g(it)f(for)h(op)s(erand)f (1,)i(but)e(generate)j(the)e(output)g(op)s(erand)150 2724 y(0)k(in)f(a)h(di\013eren)m(t)g(register)f(\(cop)m(ying)i(it)e (afterw)m(ard)h(to)h Fq(foo)p Fy('s)e(o)m(wn)h(address\).)54 b(Of)34 b(course,)i(since)f(the)150 2834 y(register)26 b(for)g(op)s(erand)g(1)g(is)g(not)g(ev)m(en)h(men)m(tioned)f(in)f(the)i (assem)m(bler)f(co)s(de,)h(the)g(result)e(will)f(not)j(w)m(ork,)150 2944 y(but)j(GCC)g(can't)h(tell)e(that.)275 3076 y(As)39 b(of)h(GCC)g(v)m(ersion)f(3.1,)44 b(one)c(ma)m(y)g(write)f Fq([)p Fn(name)5 b Fq(])40 b Fy(instead)f(of)h(the)g(op)s(erand)e(n)m (um)m(b)s(er)h(for)h(a)150 3185 y(matc)m(hing)30 b(constrain)m(t.)41 b(F)-8 b(or)31 b(example:)390 3312 y Fq(asm)47 b(\("cmoveq)e (\0451,\0452,\045[result]")629 3416 y(:)i([result])f("=r"\(result\))629 3519 y(:)h("r")g(\(test\),)f("r"\(new\),)f("[result]"\(old\)\);)275 3652 y Fy(Some)34 b(instructions)f(clobb)s(er)g(sp)s(eci\014c)g(hard)h (registers.)53 b(T)-8 b(o)35 b(describ)s(e)e(this,)i(write)f(a)h(third) e(colon)150 3761 y(after)i(the)g(input)e(op)s(erands,)i(follo)m(w)m(ed) g(b)m(y)f(the)h(names)g(of)g(the)g(clobb)s(ered)e(hard)h(registers)h (\(giv)m(en)g(as)150 3871 y(strings\).)40 b(Here)31 b(is)e(a)i (realistic)e(example)h(for)g(the)h(V)-10 b(AX:)390 3997 y Fq(asm)47 b(volatile)e(\("movc3)h(\0450,\0451,\0452")1058 4101 y(:)i(/*)f(no)g(outputs)f(*/)1058 4205 y(:)i("g")f(\(from\),)e ("g")i(\(to\),)g("g")g(\(count\))1058 4308 y(:)h("r0",)e("r1",)g("r2",) h("r3",)f("r4",)g("r5"\);)275 4441 y Fy(Y)-8 b(ou)28 b(ma)m(y)h(not)g(write)e(a)i(clobb)s(er)d(description)h(in)g(a)h(w)m(a) m(y)h(that)g(o)m(v)m(erlaps)g(with)e(an)h(input)e(or)i(output)150 4550 y(op)s(erand.)52 b(F)-8 b(or)35 b(example,)g(y)m(ou)g(ma)m(y)g (not)f(ha)m(v)m(e)i(an)e(op)s(erand)f(describing)f(a)j(register)f (class)h(with)e(one)150 4660 y(mem)m(b)s(er)c(if)h(y)m(ou)g(men)m(tion) g(that)g(register)g(in)f(the)h(clobb)s(er)f(list.)39 b(There)30 b(is)f(no)h(w)m(a)m(y)h(for)f(y)m(ou)g(to)h(sp)s(ecify)150 4769 y(that)36 b(an)f(input)e(op)s(erand)h(is)g(mo)s(di\014ed)f (without)h(also)h(sp)s(ecifying)e(it)h(as)h(an)g(output)g(op)s(erand.) 54 b(Note)150 4879 y(that)26 b(if)f(all)f(the)i(output)f(op)s(erands)g (y)m(ou)h(sp)s(ecify)e(are)i(for)f(this)g(purp)s(ose)f(\(and)h(hence)h (un)m(used\),)g(y)m(ou)g(will)150 4989 y(then)35 b(also)h(need)f(to)i (sp)s(ecify)d Fq(volatile)f Fy(for)j(the)g Fq(asm)e Fy(construct,)k(as) e(describ)s(ed)d(b)s(elo)m(w,)k(to)f(prev)m(en)m(t)150 5098 y(GCC)30 b(from)g(deleting)f(the)i Fq(asm)e Fy(statemen)m(t)k(as)d (un)m(used.)275 5230 y(If)d(y)m(ou)h(refer)f(to)h(a)g(particular)e (hardw)m(are)h(register)g(from)h(the)f(assem)m(bler)g(co)s(de,)i(y)m (ou)f(will)d(probably)150 5340 y(ha)m(v)m(e)43 b(to)f(list)e(the)i (register)f(after)i(the)e(third)f(colon)i(to)g(tell)f(the)g(compiler)g (the)g(register's)h(v)-5 b(alue)41 b(is)p eop %%Page: 195 205 195 204 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(195)150 299 y(mo)s(di\014ed.)43 b(In)32 b(some)g(assem)m(blers,)g(the)g (register)g(names)g(b)s(egin)e(with)h(`)p Fq(\045)p Fy(';)i(to)g(pro)s (duce)e(one)h(`)p Fq(\045)p Fy(')g(in)f(the)150 408 y(assem)m(bler)f (co)s(de,)h(y)m(ou)f(m)m(ust)h(write)e(`)p Fq(\045\045)p Fy(')i(in)e(the)h(input.)275 543 y(If)k(y)m(our)h(assem)m(bler)g (instruction)e(can)i(alter)h(the)f(condition)f(co)s(de)h(register,)i (add)d(`)p Fq(cc)p Fy(')h(to)h(the)f(list)150 653 y(of)c(clobb)s(ered)e (registers.)42 b(GCC)31 b(on)g(some)g(mac)m(hines)f(represen)m(ts)h (the)g(condition)f(co)s(des)h(as)g(a)g(sp)s(eci\014c)150 762 y(hardw)m(are)d(register;)i(`)p Fq(cc)p Fy(')f(serv)m(es)g(to)h (name)e(this)g(register.)40 b(On)28 b(other)h(mac)m(hines,)g(the)g (condition)f(co)s(de)150 872 y(is)i(handled)g(di\013eren)m(tly)-8 b(,)30 b(and)h(sp)s(ecifying)e(`)p Fq(cc)p Fy(')i(has)g(no)g(e\013ect.) 45 b(But)32 b(it)e(is)h(v)-5 b(alid)29 b(no)i(matter)i(what)e(the)150 982 y(mac)m(hine.)275 1116 y(If)24 b(y)m(our)h(assem)m(bler)g (instruction)e(mo)s(di\014es)g(memory)i(in)f(an)h(unpredictable)e (fashion,)i(add)f(`)p Fq(memory)p Fy(')150 1226 y(to)j(the)g(list)e(of) i(clobb)s(ered)e(registers.)39 b(This)25 b(will)f(cause)j(GCC)f(to)h (not)g(k)m(eep)g(memory)g(v)-5 b(alues)26 b(cac)m(hed)h(in)150 1336 y(registers)g(across)g(the)g(assem)m(bler)g(instruction.)37 b(Y)-8 b(ou)28 b(will)c(also)j(w)m(an)m(t)h(to)f(add)g(the)g Fq(volatile)d Fy(k)m(eyw)m(ord)150 1445 y(if)37 b(the)h(memory)f (a\013ected)i(is)e(not)h(listed)f(in)f(the)i(inputs)e(or)h(outputs)g (of)h(the)g Fq(asm)p Fy(,)h(as)f(the)g(`)p Fq(memory)p Fy(')150 1555 y(clobb)s(er)29 b(do)s(es)h(not)h(coun)m(t)g(as)f(a)h (side-e\013ect)g(of)g(the)f Fq(asm)p Fy(.)275 1690 y(Y)-8 b(ou)25 b(can)h(put)e(m)m(ultiple)f(assem)m(bler)i(instructions)e (together)k(in)d(a)h(single)f Fq(asm)h Fy(template,)h(separated)150 1799 y(b)m(y)e(the)h(c)m(haracters)h(normally)d(used)g(in)g(assem)m (bly)h(co)s(de)h(for)f(the)h(system.)39 b(A)24 b(com)m(bination)g(that) h(w)m(orks)150 1909 y(in)32 b(most)h(places)g(is)f(a)h(newline)e(to)j (break)f(the)g(line,)g(plus)e(a)i(tab)g(c)m(haracter)i(to)f(mo)m(v)m(e) g(to)g(the)f(instruc-)150 2018 y(tion)j(\014eld)e(\(written)i(as)g(`)p Fq(\\n\\t)p Fy('\).)57 b(Sometimes)36 b(semicolons)f(can)i(b)s(e)e (used,)i(if)e(the)h(assem)m(bler)g(allo)m(ws)150 2128 y(semicolons)31 b(as)i(a)f(line-breaking)e(c)m(haracter.)48 b(Note)33 b(that)g(some)g(assem)m(bler)e(dialects)h(use)g(semicolons) 150 2238 y(to)k(start)h(a)f(commen)m(t.)57 b(The)35 b(input)f(op)s (erands)g(are)i(guaran)m(teed)h(not)f(to)g(use)g(an)m(y)g(of)g(the)f (clobb)s(ered)150 2347 y(registers,)i(and)e(neither)g(will)e(the)j (output)f(op)s(erands')g(addresses,)h(so)g(y)m(ou)g(can)g(read)g(and)f (write)g(the)150 2457 y(clobb)s(ered)c(registers)g(as)i(man)m(y)f (times)f(as)i(y)m(ou)f(lik)m(e.)45 b(Here)32 b(is)g(an)f(example)h(of)g (m)m(ultiple)e(instructions)150 2566 y(in)f(a)i(template;)g(it)f (assumes)g(the)g(subroutine)f Fq(_foo)g Fy(accepts)i(argumen)m(ts)g(in) e(registers)h(9)h(and)f(10:)390 2695 y Fq(asm)47 b(\("movl)f (\0450,r9\\n\\tmovl)e(\0451,r10\\n\\tcall)g(_foo")629 2799 y(:)j(/*)g(no)g(outputs)f(*/)629 2903 y(:)h("g")g(\(from\),)f("g") h(\(to\))629 3007 y(:)g("r9",)f("r10"\);)275 3141 y Fy(Unless)34 b(an)h(output)g(op)s(erand)f(has)g(the)i(`)p Fq(&)p Fy(')f(constrain)m (t)g(mo)s(di\014er,)g(GCC)g(ma)m(y)h(allo)s(cate)f(it)g(in)f(the)150 3251 y(same)g(register)g(as)g(an)g(unrelated)f(input)f(op)s(erand,)i (on)g(the)g(assumption)e(the)i(inputs)e(are)j(consumed)150 3361 y(b)s(efore)44 b(the)g(outputs)g(are)g(pro)s(duced.)81 b(This)42 b(assumption)h(ma)m(y)h(b)s(e)g(false)g(if)f(the)h(assem)m (bler)g(co)s(de)150 3470 y(actually)e(consists)g(of)g(more)g(than)g (one)h(instruction.)74 b(In)42 b(suc)m(h)f(a)i(case,)k(use)42 b(`)p Fq(&)p Fy(')g(for)g(eac)m(h)h(output)150 3580 y(op)s(erand)29 b(that)i(ma)m(y)g(not)g(o)m(v)m(erlap)g(an)f(input.)39 b(See)30 b(Section)h(5.37.3)h([Mo)s(di\014ers],)e(page)h(201.)275 3715 y(If)g(y)m(ou)h(w)m(an)m(t)h(to)g(test)g(the)f(condition)e(co)s (de)j(pro)s(duced)d(b)m(y)i(an)g(assem)m(bler)f(instruction,)g(y)m(ou)h (m)m(ust)150 3824 y(include)c(a)j(branc)m(h)f(and)f(a)i(lab)s(el)e(in)g (the)h Fq(asm)g Fy(construct,)h(as)g(follo)m(ws:)390 3953 y Fq(asm)47 b(\("clr)f(\0450\\n\\tfrob)f(\0451\\n\\tbeq)h (0f\\n\\tmov)f(#1,\0450\\n0:")629 4057 y(:)i("g")g(\(result\))629 4161 y(:)g("g")g(\(input\)\);)150 4295 y Fy(This)32 b(assumes)h(y)m (our)h(assem)m(bler)f(supp)s(orts)f(lo)s(cal)h(lab)s(els,)g(as)h(the)f (GNU)i(assem)m(bler)e(and)g(most)h(Unix)150 4405 y(assem)m(blers)c(do.) 275 4540 y(Sp)s(eaking)j(of)i(lab)s(els,)f(jumps)g(from)g(one)h Fq(asm)f Fy(to)i(another)f(are)g(not)g(supp)s(orted.)53 b(The)34 b(compiler's)150 4649 y(optimizers)25 b(do)i(not)f(kno)m(w)h (ab)s(out)f(these)h(jumps,)f(and)g(therefore)h(they)f(cannot)h(tak)m(e) h(accoun)m(t)g(of)f(them)150 4759 y(when)i(deciding)g(ho)m(w)h(to)h (optimize.)275 4894 y(Usually)26 b(the)h(most)h(con)m(v)m(enien)m(t)h (w)m(a)m(y)g(to)f(use)g(these)g Fq(asm)e Fy(instructions)g(is)h(to)h (encapsulate)g(them)f(in)150 5003 y(macros)k(that)g(lo)s(ok)f(lik)m(e)f (functions.)40 b(F)-8 b(or)31 b(example,)390 5132 y Fq(#define)46 b(sin\(x\))332 b(\\)390 5236 y(\({)47 b(double)f(__value,)g(__arg)g(=)i (\(x\);)142 b(\\)533 5340 y(asm)47 b(\("fsinx)f(\0451,\0450":)g("=f")g (\(__value\):)f("f")i(\(__arg\)\);)93 b(\\)p eop %%Page: 196 206 196 205 bop 150 -116 a Fy(196)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))533 299 y Fq(__value;)46 b(}\))150 439 y Fy(Here)40 b(the)g(v)-5 b(ariable)39 b Fq(__arg)f Fy(is)h(used)g(to)h(mak)m(e)h(sure)e(that)h(the)g(instruction)e(op)s (erates)i(on)f(a)h(prop)s(er)150 549 y Fq(double)30 b Fy(v)-5 b(alue,)31 b(and)g(to)i(accept)g(only)d(those)i(argumen)m(ts)g Fq(x)g Fy(whic)m(h)e(can)i(con)m(v)m(ert)h(automatically)e(to)i(a)150 658 y Fq(double)p Fy(.)275 799 y(Another)j(w)m(a)m(y)h(to)g(mak)m(e)g (sure)f(the)g(instruction)e(op)s(erates)j(on)f(the)g(correct)i(data)f (t)m(yp)s(e)f(is)f(to)i(use)150 908 y(a)g(cast)h(in)d(the)i Fq(asm)p Fy(.)59 b(This)35 b(is)h(di\013eren)m(t)g(from)g(using)g(a)h (v)-5 b(ariable)35 b Fq(__arg)h Fy(in)f(that)i(it)g(con)m(v)m(erts)h (more)150 1018 y(di\013eren)m(t)g(t)m(yp)s(es.)65 b(F)-8 b(or)39 b(example,)h(if)e(the)g(desired)f(t)m(yp)s(e)i(w)m(ere)g Fq(int)p Fy(,)h(casting)e(the)h(argumen)m(t)g(to)g Fq(int)150 1128 y Fy(w)m(ould)27 b(accept)j(a)e(p)s(oin)m(ter)f(with)g(no)h (complain)m(t,)h(while)d(assigning)h(the)h(argumen)m(t)h(to)g(an)f Fq(int)f Fy(v)-5 b(ariable)150 1237 y(named)30 b Fq(__arg)f Fy(w)m(ould)g(w)m(arn)h(ab)s(out)g(using)f(a)i(p)s(oin)m(ter)e(unless)g (the)h(caller)g(explicitly)e(casts)j(it.)275 1378 y(If)e(an)h Fq(asm)f Fy(has)h(output)g(op)s(erands,)f(GCC)g(assumes)h(for)g (optimization)f(purp)s(oses)f(the)i(instruction)150 1487 y(has)g(no)g(side)f(e\013ects)j(except)f(to)g(c)m(hange)g(the)f(output) g(op)s(erands.)39 b(This)29 b(do)s(es)h(not)g(mean)g(instructions)150 1597 y(with)42 b(a)i(side)f(e\013ect)i(cannot)f(b)s(e)f(used,)j(but)d (y)m(ou)g(m)m(ust)h(b)s(e)f(careful,)j(b)s(ecause)e(the)f(compiler)f (ma)m(y)150 1706 y(eliminate)33 b(them)h(if)f(the)h(output)g(op)s (erands)f(aren't)i(used,)g(or)f(mo)m(v)m(e)h(them)g(out)f(of)g(lo)s (ops,)h(or)f(replace)150 1816 y(t)m(w)m(o)40 b(with)e(one)i(if)e(they)h (constitute)h(a)f(common)h(sub)s(expression.)64 b(Also,)41 b(if)d(y)m(our)h(instruction)e(do)s(es)150 1925 y(ha)m(v)m(e)d(a)f (side)f(e\013ect)i(on)e(a)h(v)-5 b(ariable)32 b(that)h(otherwise)f(app) s(ears)g(not)h(to)g(c)m(hange,)i(the)e(old)f(v)-5 b(alue)32 b(of)h(the)150 2035 y(v)-5 b(ariable)29 b(ma)m(y)i(b)s(e)f(reused)f (later)i(if)e(it)h(happ)s(ens)f(to)i(b)s(e)e(found)h(in)f(a)h (register.)275 2175 y(Y)-8 b(ou)23 b(can)h(prev)m(en)m(t)f(an)g Fq(asm)g Fy(instruction)e(from)h(b)s(eing)g(deleted,)j(mo)m(v)m(ed)f (signi\014can)m(tly)-8 b(,)23 b(or)g(com)m(bined,)150 2285 y(b)m(y)30 b(writing)f(the)h(k)m(eyw)m(ord)h Fq(volatile)d Fy(after)j(the)g Fq(asm)p Fy(.)39 b(F)-8 b(or)32 b(example:)390 2420 y Fq(#define)46 b(get_and_set_priority\(new)o(\))662 b(\\)390 2523 y(\({)47 b(int)g(__old;)1621 b(\\)533 2627 y(asm)47 b(volatile)f(\("get_and_set_priority)41 b(\0450,)47 b(\0451")g(\\)1201 2731 y(:)h("=g")e(\(__old\))g(:)i("g")f(\(new\)\);) 93 b(\\)533 2835 y(__old;)46 b(}\))150 2975 y Fy(If)33 b(y)m(ou)h(write)f(an)g Fq(asm)g Fy(instruction)f(with)g(no)h(outputs,) h(GCC)g(will)c(kno)m(w)k(the)g(instruction)d(has)j(side-)150 3085 y(e\013ects)e(and)e(will)d(not)k(delete)f(the)h(instruction)d(or)j (mo)m(v)m(e)h(it)e(outside)f(of)i(lo)s(ops.)275 3225 y(The)h Fq(volatile)g Fy(k)m(eyw)m(ord)i(indicates)e(that)i(the)g (instruction)d(has)i(imp)s(ortan)m(t)g(side-e\013ects.)50 b(GCC)150 3335 y(will)27 b(not)i(delete)h(a)g(v)m(olatile)f Fq(asm)g Fy(if)f(it)h(is)f(reac)m(hable.)41 b(\(The)30 b(instruction)d(can)j(still)d(b)s(e)i(deleted)g(if)f(GCC)150 3444 y(can)36 b(pro)m(v)m(e)h(that)f(con)m(trol-\015o)m(w)h(will)c(nev) m(er)j(reac)m(h)g(the)g(lo)s(cation)f(of)h(the)g(instruction.\))55 b(In)35 b(addition,)150 3554 y(GCC)30 b(will)e(not)i(resc)m(hedule)g (instructions)e(across)j(a)g(v)m(olatile)f Fq(asm)f Fy(instruction.)39 b(F)-8 b(or)31 b(example:)390 3688 y Fq(*\(volatile)45 b(int)i(*\)addr)f(=)h(foo;)390 3792 y(asm)g(volatile)e(\("eieio")h(:)h (:)h(\);)150 3933 y Fy(Assume)40 b Fq(addr)f Fy(con)m(tains)h(the)g (address)g(of)g(a)h(memory)f(mapp)s(ed)e(device)i(register.)70 b(The)40 b(P)m(o)m(w)m(erPC)150 4042 y Fq(eieio)27 b Fy(instruction)e(\(Enforce)k(In-order)e(Execution)g(of)h(I/O\))h(tells) e(the)h(CPU)f(to)i(mak)m(e)g(sure)e(that)i(the)150 4152 y(store)i(to)g(that)g(device)f(register)h(happ)s(ens)d(b)s(efore)i(it)g (issues)f(an)m(y)i(other)f(I/O.)275 4292 y(Note)d(that)h(ev)m(en)f(a)g (v)m(olatile)f Fq(asm)g Fy(instruction)e(can)j(b)s(e)f(mo)m(v)m(ed)i (in)d(w)m(a)m(ys)i(that)g(app)s(ear)f(insigni\014can)m(t)150 4402 y(to)34 b(the)f(compiler,)f(suc)m(h)g(as)i(across)f(jump)e (instructions.)46 b(Y)-8 b(ou)34 b(can't)f(exp)s(ect)h(a)f(sequence)g (of)g(v)m(olatile)150 4511 y Fq(asm)39 b Fy(instructions)e(to)k(remain) d(p)s(erfectly)h(consecutiv)m(e.)70 b(If)39 b(y)m(ou)h(w)m(an)m(t)h (consecutiv)m(e)f(output,)i(use)e(a)150 4621 y(single)34 b Fq(asm)p Fy(.)56 b(Also,)36 b(GCC)f(will)e(p)s(erform)h(some)i (optimizations)f(across)h(a)g(v)m(olatile)f Fq(asm)g Fy(instruction;)150 4730 y(GCC)h(do)s(es)h(not)g(\\forget)h(ev)m (erything")f(when)f(it)g(encoun)m(ters)h(a)g(v)m(olatile)g Fq(asm)e Fy(instruction)g(the)i(w)m(a)m(y)150 4840 y(some)31 b(other)f(compilers)f(do.)275 4980 y(An)24 b Fq(asm)g Fy(instruction)f(without)h(an)m(y)h(op)s(erands)f(or)h(clobb)s(ers)e (\(an)i(\\old)f(st)m(yle")i Fq(asm)p Fy(\))e(will)f(b)s(e)h(treated)150 5090 y(iden)m(tically)k(to)k(a)e(v)m(olatile)g Fq(asm)g Fy(instruction.)275 5230 y(It)37 b(is)g(a)h(natural)f(idea)g(to)h(lo)s (ok)f(for)h(a)g(w)m(a)m(y)g(to)h(giv)m(e)f(access)h(to)f(the)g (condition)e(co)s(de)i(left)f(b)m(y)h(the)150 5340 y(assem)m(bler)c (instruction.)51 b(Ho)m(w)m(ev)m(er,)38 b(when)33 b(w)m(e)i(attempted)h (to)f(implemen)m(t)e(this,)i(w)m(e)f(found)g(no)g(w)m(a)m(y)p eop %%Page: 197 207 197 206 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(197)150 299 y(to)45 b(mak)m(e)g(it)f(w)m(ork)h(reliably)-8 b(.)80 b(The)44 b(problem)f(is)g(that)i(output)f(op)s(erands)f(migh)m(t)h (need)g(reloading,)150 408 y(whic)m(h)34 b(w)m(ould)g(result)g(in)g (additional)f(follo)m(wing)g(\\store")k(instructions.)53 b(On)34 b(most)h(mac)m(hines,)h(these)150 518 y(instructions)30 b(w)m(ould)h(alter)h(the)g(condition)f(co)s(de)h(b)s(efore)g(there)g(w) m(as)h(time)f(to)h(test)g(it.)45 b(This)31 b(problem)150 628 y(do)s(esn't)i(arise)h(for)f(ordinary)f(\\test")k(and)d(\\compare") i(instructions)c(b)s(ecause)j(they)g(don't)g(ha)m(v)m(e)h(an)m(y)150 737 y(output)30 b(op)s(erands.)275 871 y(F)-8 b(or)42 b(reasons)h(similar)c(to)k(those)g(describ)s(ed)d(ab)s(o)m(v)m(e,)46 b(it)c(is)f(not)h(p)s(ossible)e(to)j(giv)m(e)f(an)g(assem)m(bler)150 981 y(instruction)28 b(access)k(to)f(the)g(condition)e(co)s(de)h(left)g (b)m(y)h(previous)e(instructions.)275 1115 y(If)41 b(y)m(ou)h(are)g (writing)e(a)i(header)g(\014le)f(that)h(should)e(b)s(e)i(includable)c (in)j(ISO)g(C)g(programs,)k(write)150 1224 y Fq(__asm__)28 b Fy(instead)i(of)h Fq(asm)p Fy(.)39 b(See)31 b(Section)f(5.40)i ([Alternate)f(Keyw)m(ords],)g(page)g(213.)150 1447 y Fg(5.36.1)63 b(i386)42 b(\015oating)g(p)s(oin)m(t)f(asm)f(op)s(erands) 275 1639 y Fy(There)24 b(are)h(sev)m(eral)g(rules)e(on)i(the)g(usage)g (of)g(stac)m(k-lik)m(e)h(regs)f(in)f(asm)p 2634 1639 28 4 v 33 w(op)s(erands)f(insns.)37 b(These)24 b(rules)150 1748 y(apply)29 b(only)g(to)j(the)e(op)s(erands)f(that)i(are)g(stac)m (k-lik)m(e)h(regs:)199 1882 y(1.)61 b(Giv)m(en)34 b(a)h(set)g(of)f (input)f(regs)h(that)h(die)f(in)f(an)h(asm)p 2122 1882 V 33 w(op)s(erands,)g(it)g(is)f(necessary)i(to)g(kno)m(w)f(whic)m(h)330 1992 y(are)d(implicitly)26 b(p)s(opp)s(ed)j(b)m(y)h(the)g(asm,)h(and)f (whic)m(h)f(m)m(ust)h(b)s(e)g(explicitly)e(p)s(opp)s(ed)g(b)m(y)i(gcc.) 330 2125 y(An)e(input)e(reg)j(that)f(is)g(implicitly)c(p)s(opp)s(ed)i (b)m(y)i(the)h(asm)f(m)m(ust)g(b)s(e)f(explicitly)f(clobb)s(ered,)i (unless)330 2235 y(it)i(is)f(constrained)h(to)h(matc)m(h)g(an)g(output) f(op)s(erand.)199 2369 y(2.)61 b(F)-8 b(or)31 b(an)m(y)g(input)e(reg)i (that)g(is)f(implicitly)d(p)s(opp)s(ed)h(b)m(y)i(an)h(asm,)g(it)f(is)g (necessary)h(to)g(kno)m(w)g(ho)m(w)f(to)330 2479 y(adjust)j(the)h(stac) m(k)h(to)f(comp)s(ensate)g(for)f(the)h(p)s(op.)49 b(If)33 b(an)m(y)h(non-p)s(opp)s(ed)d(input)h(is)g(closer)h(to)i(the)330 2588 y(top)e(of)g(the)g(reg-stac)m(k)i(than)d(the)h(implicitly)c(p)s (opp)s(ed)i(reg,)j(it)e(w)m(ould)g(not)h(b)s(e)f(p)s(ossible)e(to)k (kno)m(w)330 2698 y(what)c(the)h(stac)m(k)h(lo)s(ok)m(ed)e(lik)m (e|it's)f(not)i(clear)f(ho)m(w)h(the)f(rest)h(of)f(the)h(stac)m(k)h (\\slides)d(up".)330 2832 y(All)34 b(implicitly)e(p)s(opp)s(ed)i(input) g(regs)i(m)m(ust)g(b)s(e)f(closer)h(to)g(the)g(top)g(of)g(the)g (reg-stac)m(k)i(than)e(an)m(y)330 2941 y(input)28 b(that)j(is)f(not)g (implicitly)d(p)s(opp)s(ed.)330 3075 y(It)38 b(is)e(p)s(ossible)f(that) j(if)f(an)g(input)f(dies)g(in)h(an)g(insn,)h(reload)f(migh)m(t)g(use)g (the)h(input)e(reg)i(for)f(an)330 3185 y(output)30 b(reload.)40 b(Consider)29 b(this)g(example:)570 3313 y Fq(asm)47 b(\("foo")f(:)h("=t")g(\(a\))g(:)g("f")g(\(b\)\);)330 3447 y Fy(This)24 b(asm)i(sa)m(ys)g(that)g(input)e(B)i(is)e(not)i(p)s (opp)s(ed)e(b)m(y)h(the)h(asm,)h(and)e(that)h(the)g(asm)g(pushes)e(a)i (result)330 3556 y(on)m(to)33 b(the)e(reg-stac)m(k,)j(i.e.,)e(the)g (stac)m(k)h(is)d(one)i(deep)s(er)e(after)i(the)g(asm)f(than)g(it)g(w)m (as)h(b)s(efore.)43 b(But,)330 3666 y(it)28 b(is)g(p)s(ossible)e(that)j (reload)f(will)e(think)h(that)i(it)f(can)h(use)f(the)h(same)g(reg)g (for)f(b)s(oth)g(the)h(input)e(and)330 3775 y(the)k(output,)f(if)f (input)g(B)h(dies)g(in)f(this)g(insn.)330 3909 y(If)34 b(an)m(y)g(input)e(op)s(erand)h(uses)h(the)g Fq(f)g Fy(constrain)m(t,)i (all)d(output)g(reg)i(constrain)m(ts)f(m)m(ust)g(use)g(the)g Fq(&)330 4019 y Fy(earlyclobb)s(er.)330 4153 y(The)c(asm)g(ab)s(o)m(v)m (e)i(w)m(ould)d(b)s(e)h(written)f(as)570 4281 y Fq(asm)47 b(\("foo")f(:)h("=&t")g(\(a\))g(:)g("f")g(\(b\)\);)199 4415 y Fy(3.)61 b(Some)26 b(op)s(erands)e(need)i(to)h(b)s(e)e(in)f (particular)g(places)i(on)g(the)g(stac)m(k.)40 b(All)25 b(output)g(op)s(erands)g(fall)f(in)330 4524 y(this)30 b(category|there)k(is)c(no)h(other)g(w)m(a)m(y)i(to)e(kno)m(w)h(whic)m (h)e(regs)h(the)g(outputs)g(app)s(ear)g(in)f(unless)330 4634 y(the)h(user)e(indicates)h(this)f(in)g(the)h(constrain)m(ts.)330 4768 y(Output)37 b(op)s(erands)g(m)m(ust)g(sp)s(eci\014cally)f (indicate)h(whic)m(h)g(reg)h(an)g(output)g(app)s(ears)f(in)g(after)h (an)330 4877 y(asm.)j Fq(=f)29 b Fy(is)h(not)h(allo)m(w)m(ed:)40 b(the)31 b(op)s(erand)e(constrain)m(ts)h(m)m(ust)h(select)g(a)f(class)g (with)g(a)g(single)f(reg.)199 5011 y(4.)61 b(Output)29 b(op)s(erands)f(ma)m(y)i(not)h(b)s(e)e(\\inserted")g(b)s(et)m(w)m(een)i (existing)d(stac)m(k)j(regs.)41 b(Since)29 b(no)h(387)h(op-)330 5121 y(co)s(de)25 b(uses)f(a)h(read/write)g(op)s(erand,)g(all)e(output) i(op)s(erands)e(are)i(dead)g(b)s(efore)f(the)h(asm)p 3340 5121 V 33 w(op)s(erands,)330 5230 y(and)j(are)g(pushed)f(b)m(y)h (the)g(asm)p 1401 5230 V 33 w(op)s(erands.)39 b(It)28 b(mak)m(es)h(no)f(sense)g(to)h(push)e(an)m(ywhere)h(but)f(the)i(top)330 5340 y(of)i(the)f(reg-stac)m(k.)p eop %%Page: 198 208 198 207 bop 150 -116 a Fy(198)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))330 299 y(Output)40 b(op)s(erands)f(m)m(ust)h (start)i(at)f(the)g(top)g(of)f(the)h(reg-stac)m(k:)64 b(output)40 b(op)s(erands)f(ma)m(y)j(not)330 408 y(\\skip")30 b(a)h(reg.)199 538 y(5.)61 b(Some)35 b(asm)g(statemen)m(ts)h(ma)m(y)g (need)e(extra)i(stac)m(k)g(space)f(for)g(in)m(ternal)e(calculations.)54 b(This)33 b(can)330 648 y(b)s(e)d(guaran)m(teed)h(b)m(y)f(clobb)s (ering)f(stac)m(k)i(registers)g(unrelated)e(to)i(the)f(inputs)f(and)h (outputs.)275 797 y(Here)f(are)g(a)g(couple)f(of)h(reasonable)f(asms)h (to)g(w)m(an)m(t)h(to)f(write.)39 b(This)27 b(asm)i(tak)m(es)h(one)f (input,)e(whic)m(h)150 907 y(is)i(in)m(ternally)g(p)s(opp)s(ed,)f(and)i (pro)s(duces)f(t)m(w)m(o)j(outputs.)390 1031 y Fq(asm)47 b(\("fsincos")e(:)i("=t")g(\(cos\),)f("=u")h(\(sin\))f(:)i("0")e (\(inp\)\);)275 1160 y Fy(This)40 b(asm)j(tak)m(es)h(t)m(w)m(o)g (inputs,)g(whic)m(h)e(are)h(p)s(opp)s(ed)d(b)m(y)j(the)g Fq(fyl2xp1)d Fy(op)s(co)s(de,)46 b(and)c(replaces)150 1270 y(them)30 b(with)f(one)h(output.)40 b(The)30 b(user)f(m)m(ust)h (co)s(de)g(the)h Fq(st\(1\))d Fy(clobb)s(er)h(for)h(reg-stac)m(k.c)j (to)d(kno)m(w)g(that)150 1379 y Fq(fyl2xp1)e Fy(p)s(ops)i(b)s(oth)f (inputs.)390 1503 y Fq(asm)47 b(\("fyl2xp1")e(:)i("=t")g(\(result\))f (:)h("0")g(\(x\),)g("u")f(\(y\))h(:)h("st\(1\)"\);)150 1746 y Fs(5.37)68 b(Constrain)l(ts)47 b(for)e Ft(asm)e Fs(Op)t(erands)275 1934 y Fy(Here)i(are)g(sp)s(eci\014c)e(details)h(on) h(what)f(constrain)m(t)h(letters)g(y)m(ou)g(can)g(use)g(with)e Fq(asm)h Fy(op)s(erands.)150 2043 y(Constrain)m(ts)30 b(can)i(sa)m(y)f(whether)g(an)f(op)s(erand)g(ma)m(y)i(b)s(e)e(in)g(a)h (register,)h(and)e(whic)m(h)g(kinds)f(of)i(register;)150 2153 y(whether)g(the)g(op)s(erand)f(can)i(b)s(e)f(a)g(memory)g (reference,)i(and)d(whic)m(h)g(kinds)g(of)h(address;)g(whether)g(the) 150 2262 y(op)s(erand)23 b(ma)m(y)i(b)s(e)e(an)h(immediate)g(constan)m (t,)j(and)c(whic)m(h)g(p)s(ossible)f(v)-5 b(alues)23 b(it)h(ma)m(y)h(ha)m(v)m(e.)40 b(Constrain)m(ts)150 2372 y(can)31 b(also)f(require)f(t)m(w)m(o)j(op)s(erands)d(to)i(matc)m(h.) 150 2581 y Fg(5.37.1)63 b(Simple)41 b(Constrain)m(ts)275 2769 y Fy(The)c(simplest)f(kind)g(of)i(constrain)m(t)g(is)f(a)h(string) f(full)f(of)i(letters,)i(eac)m(h)f(of)f(whic)m(h)f(describ)s(es)f(one) 150 2879 y(kind)29 b(of)h(op)s(erand)f(that)i(is)f(p)s(ermitted.)39 b(Here)31 b(are)g(the)f(letters)h(that)g(are)g(allo)m(w)m(ed:)150 3028 y(whitespace)630 3138 y(Whitespace)i(c)m(haracters)i(are)e (ignored)f(and)h(can)g(b)s(e)f(inserted)g(at)i(an)m(y)f(p)s(osition)e (except)630 3247 y(the)41 b(\014rst.)70 b(This)39 b(enables)g(eac)m(h)j (alternativ)m(e)f(for)f(di\013eren)m(t)g(op)s(erands)f(to)j(b)s(e)d (visually)630 3357 y(aligned)34 b(in)g(the)h(mac)m(hine)g(description)e (ev)m(en)j(if)f(they)g(ha)m(v)m(e)h(di\013eren)m(t)f(n)m(um)m(b)s(er)f (of)h(con-)630 3467 y(strain)m(ts)30 b(and)g(mo)s(di\014ers.)150 3616 y(`)p Fq(m)p Fy(')382 b(A)30 b(memory)f(op)s(erand)g(is)g(allo)m (w)m(ed,)h(with)e(an)m(y)i(kind)e(of)i(address)e(that)j(the)e(mac)m (hine)h(sup-)630 3726 y(p)s(orts)g(in)f(general.)150 3875 y(`)p Fq(o)p Fy(')382 b(A)45 b(memory)g(op)s(erand)f(is)g(allo)m (w)m(ed,)k(but)c(only)g(if)g(the)h(address)f(is)g Fn(o\013settable)p Fy(.)86 b(This)630 3985 y(means)28 b(that)g(adding)f(a)h(small)f(in)m (teger)h(\(actually)-8 b(,)29 b(the)f(width)e(in)h(b)m(ytes)i(of)f(the) g(op)s(erand,)630 4094 y(as)c(determined)e(b)m(y)i(its)f(mac)m(hine)h (mo)s(de\))f(ma)m(y)i(b)s(e)e(added)g(to)h(the)g(address)f(and)g(the)h (result)630 4204 y(is)29 b(also)i(a)f(v)-5 b(alid)29 b(memory)h(address.)630 4334 y(F)-8 b(or)33 b(example,)h(an)e(address)g (whic)m(h)g(is)f(constan)m(t)j(is)e(o\013settable;)j(so)e(is)f(an)h (address)e(that)630 4443 y(is)37 b(the)h(sum)f(of)h(a)g(register)g(and) f(a)h(constan)m(t)i(\(as)e(long)g(as)g(a)g(sligh)m(tly)e(larger)i (constan)m(t)630 4553 y(is)d(also)g(within)e(the)j(range)g(of)g (address-o\013sets)g(supp)s(orted)d(b)m(y)j(the)g(mac)m(hine\);)i(but)d (an)630 4662 y(autoincremen)m(t)f(or)g(auto)s(decremen)m(t)h(address)d (is)h(not)h(o\013settable.)52 b(More)34 b(complicated)630 4772 y(indirect/indexed)39 b(addresses)j(ma)m(y)g(or)h(ma)m(y)f(not)h (b)s(e)e(o\013settable)i(dep)s(ending)d(on)i(the)630 4882 y(other)31 b(addressing)d(mo)s(des)i(that)h(the)g(mac)m(hine)f (supp)s(orts.)630 5011 y(Note)40 b(that)f(in)e(an)i(output)f(op)s (erand)g(whic)m(h)f(can)i(b)s(e)f(matc)m(hed)h(b)m(y)g(another)g(op)s (erand,)630 5121 y(the)k(constrain)m(t)g(letter)g(`)p Fq(o)p Fy(')g(is)f(v)-5 b(alid)41 b(only)h(when)g(accompanied)h(b)m(y)g (b)s(oth)f(`)p Fq(<)p Fy(')h(\(if)f(the)630 5230 y(target)28 b(mac)m(hine)d(has)h(predecremen)m(t)h(addressing\))d(and)i(`)p Fq(>)p Fy(')g(\(if)f(the)i(target)g(mac)m(hine)f(has)630 5340 y(preincremen)m(t)j(addressing\).)p eop %%Page: 199 209 199 208 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(199)150 299 y(`)p Fq(V)p Fy(')382 b(A)26 b(memory)f(op)s(erand)g(that)h(is)f (not)h(o\013settable.)40 b(In)25 b(other)h(w)m(ords,)h(an)m(ything)e (that)h(w)m(ould)630 408 y(\014t)k(the)h(`)p Fq(m)p Fy(')f(constrain)m (t)h(but)e(not)i(the)g(`)p Fq(o)p Fy(')f(constrain)m(t.)150 565 y(`)p Fq(<)p Fy(')382 b(A)44 b(memory)h(op)s(erand)e(with)g(auto)s (decremen)m(t)i(addressing)e(\(either)h(predecremen)m(t)h(or)630 675 y(p)s(ostdecremen)m(t\))31 b(is)f(allo)m(w)m(ed.)150 831 y(`)p Fq(>)p Fy(')382 b(A)49 b(memory)f(op)s(erand)f(with)g (autoincremen)m(t)i(addressing)e(\(either)h(preincremen)m(t)g(or)630 941 y(p)s(ostincremen)m(t\))30 b(is)f(allo)m(w)m(ed.)150 1097 y(`)p Fq(r)p Fy(')382 b(A)30 b(register)h(op)s(erand)e(is)g(allo)m (w)m(ed)i(pro)m(vided)e(that)i(it)f(is)f(in)g(a)i(general)f(register.) 150 1254 y(`)p Fq(i)p Fy(')382 b(An)35 b(immediate)f(in)m(teger)i(op)s (erand)e(\(one)i(with)f(constan)m(t)h(v)-5 b(alue\))35 b(is)g(allo)m(w)m(ed.)55 b(This)34 b(in-)630 1363 y(cludes)29 b(sym)m(b)s(olic)g(constan)m(ts)j(whose)e(v)-5 b(alues)29 b(will)f(b)s(e)i(kno)m(wn)g(only)f(at)i(assem)m(bly)f(time.)150 1520 y(`)p Fq(n)p Fy(')382 b(An)34 b(immediate)f(in)m(teger)h(op)s (erand)f(with)g(a)h(kno)m(wn)g(n)m(umeric)f(v)-5 b(alue)33 b(is)h(allo)m(w)m(ed.)51 b(Man)m(y)630 1630 y(systems)28 b(cannot)h(supp)s(ort)d(assem)m(bly-time)i(constan)m(ts)h(for)f(op)s (erands)f(less)g(than)h(a)g(w)m(ord)630 1739 y(wide.)39 b(Constrain)m(ts)30 b(for)g(these)h(op)s(erands)e(should)g(use)h(`)p Fq(n)p Fy(')g(rather)g(than)h(`)p Fq(i)p Fy('.)150 1896 y(`)p Fq(I)p Fy(',)g(`)p Fq(J)p Fy(',)g(`)p Fq(K)p Fy(',)36 b(.)22 b(.)g(.)42 b(`)p Fq(P)p Fy(')630 2005 y(Other)21 b(letters)h(in)e(the)i(range)g(`)p Fq(I)p Fy(')g(through)f(`)p Fq(P)p Fy(')h(ma)m(y)g(b)s(e)f(de\014ned)f(in)h(a)h(mac)m(hine-dep)s (enden)m(t)630 2115 y(fashion)39 b(to)h(p)s(ermit)e(immediate)h(in)m (teger)i(op)s(erands)d(with)h(explicit)f(in)m(teger)i(v)-5 b(alues)39 b(in)630 2225 y(sp)s(eci\014ed)g(ranges.)74 b(F)-8 b(or)42 b(example,)h(on)e(the)h(68000,)k(`)p Fq(I)p Fy(')41 b(is)f(de\014ned)g(to)i(stand)f(for)g(the)630 2334 y(range)30 b(of)h(v)-5 b(alues)29 b(1)i(to)f(8.)41 b(This)29 b(is)g(the)h(range)g(p)s(ermitted)f(as)h(a)h(shift)e(coun)m (t)h(in)f(the)h(shift)630 2444 y(instructions.)150 2600 y(`)p Fq(E)p Fy(')382 b(An)24 b(immediate)g(\015oating)g(op)s(erand)g (\(expression)g(co)s(de)g Fq(const_double)p Fy(\))e(is)i(allo)m(w)m (ed,)i(but)630 2710 y(only)i(if)h(the)g(target)i(\015oating)e(p)s(oin)m (t)f(format)i(is)e(the)i(same)g(as)f(that)h(of)f(the)h(host)f(mac)m (hine)630 2819 y(\(on)i(whic)m(h)e(the)h(compiler)f(is)h(running\).)150 2976 y(`)p Fq(F)p Fy(')382 b(An)30 b(immediate)f(\015oating)i(op)s (erand)e(\(expression)g(co)s(de)i Fq(const_double)p Fy(\))c(is)j(allo)m (w)m(ed.)150 3133 y(`)p Fq(G)p Fy(',)d(`)p Fq(H)p Fy(')228 b(`)p Fq(G)p Fy(')27 b(and)e(`)p Fq(H)p Fy(')h(ma)m(y)g(b)s(e)g (de\014ned)e(in)h(a)h(mac)m(hine-dep)s(enden)m(t)f(fashion)g(to)i(p)s (ermit)d(immediate)630 3242 y(\015oating)30 b(op)s(erands)f(in)g (particular)g(ranges)i(of)f(v)-5 b(alues.)150 3399 y(`)p Fq(s)p Fy(')382 b(An)27 b(immediate)f(in)m(teger)h(op)s(erand)g(whose)f (v)-5 b(alue)27 b(is)f(not)i(an)f(explicit)e(in)m(teger)j(is)e(allo)m (w)m(ed.)630 3532 y(This)33 b(migh)m(t)h(app)s(ear)f(strange;)k(if)d (an)g(insn)e(allo)m(ws)i(a)h(constan)m(t)g(op)s(erand)f(with)f(a)h(v)-5 b(alue)630 3641 y(not)34 b(kno)m(wn)f(at)h(compile)f(time,)h(it)f (certainly)g(m)m(ust)g(allo)m(w)g(an)m(y)h(kno)m(wn)f(v)-5 b(alue.)50 b(So)33 b(wh)m(y)630 3751 y(use)d(`)p Fq(s)p Fy(')h(instead)e(of)i(`)p Fq(i)p Fy('?)40 b(Sometimes)30 b(it)g(allo)m(ws)g(b)s(etter)g(co)s(de)h(to)g(b)s(e)f(generated.)630 3884 y(F)-8 b(or)42 b(example,)h(on)e(the)g(68000)i(in)d(a)h(fullw)m (ord)e(instruction)g(it)h(is)g(p)s(ossible)f(to)i(use)g(an)630 3994 y(immediate)23 b(op)s(erand;)i(but)e(if)g(the)h(immediate)f(v)-5 b(alue)23 b(is)g(b)s(et)m(w)m(een)h Fx(\000)p Fy(128)h(and)e(127,)k(b)s (etter)630 4103 y(co)s(de)k(results)e(from)i(loading)e(the)i(v)-5 b(alue)30 b(in)m(to)h(a)g(register)f(and)g(using)f(the)i(register.)42 b(This)630 4213 y(is)25 b(b)s(ecause)h(the)g(load)g(in)m(to)g(the)g (register)g(can)g(b)s(e)g(done)f(with)g(a)h(`)p Fq(moveq)p Fy(')f(instruction.)38 b(W)-8 b(e)630 4322 y(arrange)23 b(for)f(this)g(to)h(happ)s(en)e(b)m(y)h(de\014ning)f(the)i(letter)g(`)p Fq(K)p Fy(')f(to)i(mean)e(\\an)m(y)i(in)m(teger)f(outside)630 4432 y(the)31 b(range)f Fx(\000)p Fy(128)i(to)f(127",)h(and)e(then)g (sp)s(ecifying)e(`)p Fq(Ks)p Fy(')i(in)g(the)g(op)s(erand)f(constrain)m (ts.)150 4589 y(`)p Fq(g)p Fy(')382 b(An)m(y)31 b(register,)f(memory)g (or)h(immediate)e(in)m(teger)i(op)s(erand)f(is)f(allo)m(w)m(ed,)i (except)g(for)f(reg-)630 4698 y(isters)g(that)h(are)f(not)h(general)f (registers.)150 4855 y(`)p Fq(X)p Fy(')382 b(An)m(y)30 b(op)s(erand)g(whatso)s(ev)m(er)h(is)e(allo)m(w)m(ed.)150 5011 y(`)p Fq(0)p Fy(',)i(`)p Fq(1)p Fy(',)g(`)p Fq(2)p Fy(',)36 b(.)22 b(.)g(.)42 b(`)p Fq(9)p Fy(')630 5121 y(An)35 b(op)s(erand)f(that)i(matc)m(hes)g(the)f(sp)s(eci\014ed)f(op)s (erand)g(n)m(um)m(b)s(er)g(is)g(allo)m(w)m(ed.)55 b(If)35 b(a)g(digit)630 5230 y(is)27 b(used)g(together)i(with)e(letters)h (within)d(the)j(same)g(alternativ)m(e,)h(the)g(digit)d(should)g(come) 630 5340 y(last.)p eop %%Page: 200 210 200 209 bop 150 -116 a Fy(200)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(This)35 b(n)m(um)m(b)s(er)g(is)h(allo)m (w)m(ed)g(to)i(b)s(e)d(more)i(than)g(a)g(single)e(digit.)58 b(If)36 b(m)m(ultiple)e(digits)i(are)630 408 y(encoun)m(tered)45 b(consecuta)m(v)m(ely)-8 b(,)50 b(they)45 b(are)g(in)m(terpreted)e(as)i (a)g(single)e(decimal)g(in)m(teger.)630 518 y(There)34 b(is)g(scan)m(t)i(c)m(hance)g(for)f(am)m(biguit)m(y)-8 b(,)36 b(since)e(to-date)j(it)e(has)f(nev)m(er)i(b)s(een)e(desirable) 630 628 y(that)k(`)p Fq(10)p Fy(')g(b)s(e)f(in)m(terpreted)g(as)h(matc) m(hing)g(either)f(op)s(erand)f(1)i Fr(or)49 b Fy(op)s(erand)36 b(0.)63 b(Should)630 737 y(this)29 b(b)s(e)h(desired,)f(one)i(can)f (use)h(m)m(ultiple)d(alternativ)m(es)i(instead.)630 866 y(This)24 b(is)g(called)g(a)i Fn(matc)m(hing)g(constrain)m(t)h Fy(and)e(what)g(it)g(really)f(means)h(is)g(that)h(the)f(assem-)630 976 y(bler)30 b(has)g(only)g(a)i(single)d(op)s(erand)h(that)i(\014lls)d (t)m(w)m(o)j(roles)e(whic)m(h)g Fq(asm)g Fy(distinguishes.)39 b(F)-8 b(or)630 1085 y(example,)34 b(an)f(add)g(instruction)f(uses)g(t) m(w)m(o)j(input)d(op)s(erands)g(and)h(an)g(output)g(op)s(erand,)630 1195 y(but)g(on)g(most)h(CISC)e(mac)m(hines)i(an)f(add)g(instruction)f (really)g(has)h(only)g(t)m(w)m(o)i(op)s(erands,)630 1304 y(one)c(of)f(them)h(an)f(input-output)e(op)s(erand:)870 1427 y Fq(addl)47 b(#35,r12)630 1556 y Fy(Matc)m(hing)32 b(constrain)m(ts)g(are)g(used)e(in)h(these)h(circumstances.)44 b(More)32 b(precisely)-8 b(,)31 b(the)h(t)m(w)m(o)630 1666 y(op)s(erands)24 b(that)i(matc)m(h)h(m)m(ust)e(include)f(one)h (input-only)f(op)s(erand)g(and)h(one)h(output-only)630 1775 y(op)s(erand.)60 b(Moreo)m(v)m(er,)41 b(the)d(digit)e(m)m(ust)h(b) s(e)f(a)i(smaller)e(n)m(um)m(b)s(er)g(than)g(the)i(n)m(um)m(b)s(er)e (of)630 1885 y(the)31 b(op)s(erand)e(that)i(uses)f(it)g(in)f(the)h (constrain)m(t.)150 2033 y(`)p Fq(p)p Fy(')382 b(An)22 b(op)s(erand)f(that)h(is)g(a)g(v)-5 b(alid)21 b(memory)h(address)f(is)g (allo)m(w)m(ed.)38 b(This)20 b(is)h(for)h(\\load)g(address")630 2143 y(and)30 b(\\push)f(address")h(instructions.)630 2271 y(`)p Fq(p)p Fy(')22 b(in)f(the)h(constrain)m(t)g(m)m(ust)g(b)s(e) f(accompanied)h(b)m(y)g Fq(address_operand)c Fy(as)k(the)g(predicate) 630 2381 y(in)42 b(the)i Fq(match_operand)p Fy(.)76 b(This)41 b(predicate)j(in)m(terprets)e(the)i(mo)s(de)f(sp)s(eci\014ed)f(in)g (the)630 2491 y Fq(match_operand)37 b Fy(as)k(the)g(mo)s(de)f(of)h(the) g(memory)f(reference)h(for)g(whic)m(h)e(the)i(address)630 2600 y(w)m(ould)29 b(b)s(e)h(v)-5 b(alid.)150 2748 y Fn(other-letters)630 2858 y Fy(Other)39 b(letters)h(can)g(b)s(e)f (de\014ned)f(in)h(mac)m(hine-dep)s(enden)m(t)g(fashion)f(to)i(stand)g (for)f(par-)630 2967 y(ticular)h(classes)i(of)f(registers)h(or)f(other) h(arbitrary)e(op)s(erand)g(t)m(yp)s(es.)75 b(`)p Fq(d)p Fy(',)44 b(`)p Fq(a)p Fy(')e(and)f(`)p Fq(f)p Fy(')630 3077 y(are)c(de\014ned)e(on)h(the)h(68000/68020)42 b(to)37 b(stand)f(for)g(data,)j(address)d(and)g(\015oating)g(p)s(oin)m(t)630 3187 y(registers.)150 3394 y Fg(5.37.2)63 b(Multiple)42 b(Alternativ)m(e)d(Constrain)m(ts)275 3581 y Fy(Sometimes)d(a)h(single) e(instruction)f(has)j(m)m(ultiple)d(alternativ)m(e)j(sets)g(of)f(p)s (ossible)e(op)s(erands.)58 b(F)-8 b(or)150 3690 y(example,)30 b(on)f(the)h(68000,)i(a)e(logical-or)f(instruction)f(can)h(com)m(bine)h (register)f(or)g(an)h(immediate)e(v)-5 b(alue)150 3800 y(in)m(to)30 b(memory)-8 b(,)31 b(or)g(it)e(can)i(com)m(bine)f(an)m(y)h (kind)d(of)j(op)s(erand)e(in)m(to)i(a)f(register;)h(but)e(it)h(cannot)h (com)m(bine)150 3910 y(one)g(memory)f(lo)s(cation)g(in)m(to)g(another.) 275 4038 y(These)38 b(constrain)m(ts)g(are)h(represen)m(ted)f(as)h(m)m (ultiple)d(alternativ)m(es.)65 b(An)38 b(alternativ)m(e)h(can)g(b)s(e)f (de-)150 4148 y(scrib)s(ed)f(b)m(y)i(a)g(series)g(of)g(letters)g(for)g (eac)m(h)h(op)s(erand.)66 b(The)39 b(o)m(v)m(erall)g(constrain)m(t)g (for)g(an)g(op)s(erand)f(is)150 4258 y(made)33 b(from)g(the)g(letters)g (for)g(this)f(op)s(erand)g(from)h(the)g(\014rst)g(alternativ)m(e,)h(a)g (comma,)h(the)e(letters)g(for)150 4367 y(this)c(op)s(erand)h(from)f (the)i(second)f(alternativ)m(e,)h(a)g(comma,)h(and)d(so)i(on)f(un)m (til)f(the)h(last)h(alternativ)m(e.)275 4496 y(If)h(all)h(the)g(op)s (erands)f(\014t)h(an)m(y)h(one)f(alternativ)m(e,)i(the)e(instruction)f (is)g(v)-5 b(alid.)48 b(Otherwise,)33 b(for)g(eac)m(h)150 4606 y(alternativ)m(e,)26 b(the)f(compiler)e(coun)m(ts)h(ho)m(w)h(man)m (y)f(instructions)e(m)m(ust)i(b)s(e)g(added)g(to)h(cop)m(y)g(the)f(op)s (erands)150 4715 y(so)36 b(that)g(that)h(alternativ)m(e)f(applies.)55 b(The)35 b(alternativ)m(e)h(requiring)e(the)h(least)h(cop)m(ying)g(is)f (c)m(hosen.)57 b(If)150 4825 y(t)m(w)m(o)26 b(alternativ)m(es)f(need)g (the)g(same)g(amoun)m(t)g(of)g(cop)m(ying,)i(the)e(one)g(that)g(comes)h (\014rst)e(is)g(c)m(hosen.)39 b(These)150 4934 y(c)m(hoices)31 b(can)g(b)s(e)e(altered)i(with)e(the)h(`)p Fq(?)p Fy(')h(and)f(`)p Fq(!)p Fy(')g(c)m(haracters:)150 5121 y Fq(?)432 b Fy(Disparage)33 b(sligh)m(tly)d(the)j(alternativ)m(e)f(that)h(the)g(`)p Fq(?)p Fy(')f(app)s(ears)g(in,)f(as)i(a)g(c)m(hoice)g(when)e(no)630 5230 y(alternativ)m(e)37 b(applies)e(exactly)-8 b(.)60 b(The)36 b(compiler)f(regards)h(this)g(alternativ)m(e)h(as)g(one)f (unit)630 5340 y(more)31 b(costly)f(for)g(eac)m(h)i(`)p Fq(?)p Fy(')e(that)h(app)s(ears)f(in)f(it.)p eop %%Page: 201 211 201 210 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(201)150 299 y Fq(!)432 b Fy(Disparage)29 b(sev)m(erely)g(the)g(alternativ)m(e)h (that)f(the)g(`)p Fq(!)p Fy(')g(app)s(ears)f(in.)39 b(This)27 b(alternativ)m(e)j(can)630 408 y(still)g(b)s(e)i(used)f(if)h(it)g (\014ts)g(without)f(reloading,)h(but)f(if)h(reloading)f(is)g(needed,)i (some)g(other)630 518 y(alternativ)m(e)e(will)d(b)s(e)h(used.)150 757 y Fg(5.37.3)63 b(Constrain)m(t)41 b(Mo)s(di\014er)h(Characters)275 956 y Fy(Here)30 b(are)h(constrain)m(t)g(mo)s(di\014er)d(c)m (haracters.)150 1187 y(`)p Fq(=)p Fy(')382 b(Means)35 b(that)g(this)f(op)s(erand)f(is)h(write-only)f(for)h(this)g (instruction:)47 b(the)34 b(previous)f(v)-5 b(alue)630 1297 y(is)29 b(discarded)g(and)h(replaced)g(b)m(y)g(output)g(data.)150 1463 y(`)p Fq(+)p Fy(')382 b(Means)31 b(that)g(this)e(op)s(erand)g(is)h (b)s(oth)f(read)i(and)e(written)h(b)m(y)g(the)h(instruction.)630 1601 y(When)38 b(the)h(compiler)e(\014xes)i(up)e(the)i(op)s(erands)e (to)i(satisfy)g(the)f(constrain)m(ts,)j(it)d(needs)630 1711 y(to)f(kno)m(w)g(whic)m(h)e(op)s(erands)g(are)i(inputs)e(to)i(the) g(instruction)d(and)i(whic)m(h)g(are)g(outputs)630 1820 y(from)25 b(it.)39 b(`)p Fq(=)p Fy(')26 b(iden)m(ti\014es)e(an)i (output;)h(`)p Fq(+)p Fy(')e(iden)m(ti\014es)g(an)g(op)s(erand)g(that)h (is)f(b)s(oth)g(input)f(and)630 1930 y(output;)30 b(all)f(other)i(op)s (erands)e(are)i(assumed)f(to)h(b)s(e)f(input)e(only)-8 b(.)630 2068 y(If)33 b(y)m(ou)g(sp)s(ecify)f(`)p Fq(=)p Fy(')h(or)g(`)p Fq(+)p Fy(')g(in)f(a)i(constrain)m(t,)g(y)m(ou)f(put)g (it)f(in)g(the)h(\014rst)g(c)m(haracter)h(of)g(the)630 2178 y(constrain)m(t)d(string.)150 2344 y(`)p Fq(&)p Fy(')382 b(Means)21 b(\(in)f(a)i(particular)d(alternativ)m(e\))i(that)h (this)e(op)s(erand)f(is)h(an)h Fn(earlyclobb)s(er)26 b Fy(op)s(erand,)630 2454 y(whic)m(h)35 b(is)g(mo)s(di\014ed)f(b)s (efore)i(the)g(instruction)e(is)h(\014nished)f(using)g(the)j(input)d (op)s(erands.)630 2563 y(Therefore,)23 b(this)e(op)s(erand)g(ma)m(y)h (not)g(lie)e(in)h(a)h(register)f(that)h(is)f(used)g(as)h(an)f(input)f (op)s(erand)630 2673 y(or)30 b(as)h(part)f(of)h(an)m(y)f(memory)h (address.)630 2811 y(`)p Fq(&)p Fy(')38 b(applies)e(only)h(to)h(the)g (alternativ)m(e)g(in)e(whic)m(h)h(it)g(is)g(written.)62 b(In)37 b(constrain)m(ts)g(with)630 2921 y(m)m(ultiple)j(alternativ)m (es,)45 b(sometimes)e(one)f(alternativ)m(e)h(requires)d(`)p Fq(&)p Fy(')j(while)d(others)i(do)630 3030 y(not.)f(See,)31 b(for)f(example,)g(the)h(`)p Fq(movdf)p Fy(')e(insn)g(of)h(the)h (68000.)630 3168 y(An)h(input)e(op)s(erand)h(can)h(b)s(e)g(tied)g(to)g (an)g(earlyclobb)s(er)f(op)s(erand)g(if)g(its)h(only)f(use)h(as)g(an) 630 3278 y(input)25 b(o)s(ccurs)j(b)s(efore)f(the)g(early)g(result)g (is)f(written.)39 b(Adding)26 b(alternativ)m(es)h(of)h(this)e(form)630 3387 y(often)k(allo)m(ws)f(GCC)f(to)j(pro)s(duce)d(b)s(etter)h(co)s(de) h(when)e(only)h(some)h(of)f(the)h(inputs)d(can)j(b)s(e)630 3497 y(a\013ected)i(b)m(y)e(the)h(earlyclobb)s(er.)39 b(See,)31 b(for)f(example,)g(the)h(`)p Fq(mulsi3)p Fy(')e(insn)f(of)j (the)f(ARM.)630 3635 y(`)p Fq(&)p Fy(')h(do)s(es)f(not)g(ob)m(viate)h (the)g(need)f(to)h(write)f(`)p Fq(=)p Fy('.)150 3802 y(`)p Fq(\045)p Fy(')382 b(Declares)32 b(the)f(instruction)e(to)j(b)s (e)e(comm)m(utativ)m(e)j(for)e(this)f(op)s(erand)g(and)g(the)h(follo)m (wing)630 3911 y(op)s(erand.)57 b(This)34 b(means)i(that)h(the)f (compiler)f(ma)m(y)i(in)m(terc)m(hange)f(the)h(t)m(w)m(o)g(op)s(erands) e(if)630 4021 y(that)c(is)e(the)i(c)m(heap)s(est)g(w)m(a)m(y)g(to)h (mak)m(e)f(all)e(op)s(erands)g(\014t)i(the)f(constrain)m(ts.)150 4187 y(`)p Fq(#)p Fy(')382 b(Sa)m(ys)32 b(that)f(all)g(follo)m(wing)e (c)m(haracters,)34 b(up)c(to)i(the)g(next)f(comma,)i(are)e(to)i(b)s(e)d (ignored)h(as)630 4297 y(a)g(constrain)m(t.)41 b(They)29 b(are)i(signi\014can)m(t)f(only)f(for)h(c)m(ho)s(osing)g(register)h (preferences.)150 4463 y(`)p Fq(*)p Fy(')382 b(Sa)m(ys)45 b(that)g(the)g(follo)m(wing)e(c)m(haracter)j(should)c(b)s(e)i(ignored)g (when)g(c)m(ho)s(osing)g(register)630 4573 y(preferences.)g(`)p Fq(*)p Fy(')31 b(has)g(no)h(e\013ect)h(on)e(the)h(meaning)e(of)i(the)f (constrain)m(t)h(as)g(a)g(constrain)m(t,)630 4683 y(and)e(no)g (e\013ect)i(on)e(reloading.)150 4921 y Fg(5.37.4)63 b(Constrain)m(ts)41 b(for)g(P)m(articular)e(Mac)m(hines)275 5121 y Fy(Whenev)m(er)d(p)s (ossible,)f(y)m(ou)h(should)d(use)j(the)g(general-purp)s(ose)e (constrain)m(t)i(letters)g(in)e Fq(asm)h Fy(argu-)150 5230 y(men)m(ts,)i(since)e(they)h(will)d(con)m(v)m(ey)k(meaning)e(more) h(readily)e(to)i(p)s(eople)e(reading)h(y)m(our)h(co)s(de.)56 b(F)-8 b(ailing)150 5340 y(that,)27 b(use)e(the)h(constrain)m(t)f (letters)g(that)h(usually)d(ha)m(v)m(e)k(v)m(ery)e(similar)e(meanings)h (across)i(arc)m(hitectures.)p eop %%Page: 202 212 202 211 bop 150 -116 a Fy(202)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y(The)f(most)h(commonly)f(used)f (constrain)m(ts)i(are)f(`)p Fq(m)p Fy(')h(and)f(`)p Fq(r)p Fy(')g(\(for)h(memory)f(and)g(general-purp)s(ose)f(reg-)150 408 y(isters)33 b(resp)s(ectiv)m(ely;)i(see)f(Section)f(5.37.1)j ([Simple)c(Constrain)m(ts],)i(page)g(198\),)j(and)c(`)p Fq(I)p Fy(',)h(usually)e(the)150 518 y(letter)f(indicating)d(the)i (most)h(common)g(immediate-constan)m(t)g(format.)275 651 y(F)-8 b(or)32 b(eac)m(h)g(mac)m(hine)f(arc)m(hitecture,)i(the)e(`) p Fq(config/)p Fn(mac)m(hine)5 b Fq(/)p Fn(mac)m(hine)p Fq(.h)p Fy(')29 b(\014le)i(de\014nes)f(additional)150 760 y(constrain)m(ts.)41 b(These)29 b(constrain)m(ts)h(are)g(used)f(b)m (y)g(the)h(compiler)f(itself)f(for)i(instruction)d(generation,)k(as)150 870 y(w)m(ell)23 b(as)i(for)f Fq(asm)g Fy(statemen)m(ts;)k(therefore,)f (some)d(of)h(the)g(constrain)m(ts)f(are)h(not)g(particularly)d(in)m (teresting)150 980 y(for)30 b Fq(asm)p Fy(.)40 b(The)30 b(constrain)m(ts)g(are)h(de\014ned)e(through)h(these)h(macros:)150 1136 y Fq(REG_CLASS_FROM_LETTER)630 1245 y Fy(Register)g(class)f (constrain)m(ts)g(\(usually)f(lo)m(w)m(er)h(case\).)150 1401 y Fq(CONST_OK_FOR_LETTER_P)630 1511 y Fy(Immediate)36 b(constan)m(t)i(constrain)m(ts,)h(for)d(non-\015oating)h(p)s(oin)m(t)e (constan)m(ts)j(of)f(w)m(ord)f(size)630 1621 y(or)30 b(smaller)f(precision)g(\(usually)f(upp)s(er)h(case\).)150 1777 y Fq(CONST_DOUBLE_OK_FOR_LETT)o(ER_P)630 1886 y Fy(Immediate)39 b(constan)m(t)j(constrain)m(ts,)g(for)d(all)g (\015oating)h(p)s(oin)m(t)f(constan)m(ts)i(and)e(for)g(con-)630 1996 y(stan)m(ts)31 b(of)g(greater)g(than)f(w)m(ord)g(size)h(precision) d(\(usually)h(upp)s(er)f(case\).)150 2152 y Fq(EXTRA_CONSTRAINT)630 2262 y Fy(Sp)s(ecial)33 b(cases)k(of)e(registers)g(or)g(memory)-8 b(.)56 b(This)33 b(macro)j(is)e(not)i(required,)f(and)g(is)f(only)630 2371 y(de\014ned)29 b(for)h(some)h(mac)m(hines.)275 2527 y(Insp)s(ecting)i(these)j(macro)g(de\014nitions)d(in)h(the)i(compiler)d (source)j(for)f(y)m(our)g(mac)m(hine)g(is)g(the)g(b)s(est)150 2637 y(w)m(a)m(y)45 b(to)g(b)s(e)f(certain)g(y)m(ou)g(ha)m(v)m(e)i(the) e(righ)m(t)g(constrain)m(ts.)82 b(Ho)m(w)m(ev)m(er,)50 b(here)44 b(is)f(a)h(summary)f(of)i(the)150 2746 y(mac)m(hine-dep)s (enden)m(t)29 b(constrain)m(ts)i(a)m(v)-5 b(ailable)30 b(on)g(some)h(particular)d(mac)m(hines.)150 2902 y Fr(ARM)k(family|`)p Fq(arm.h)p Fr(')630 3012 y Fq(f)432 b Fy(Floating-p)s(oin)m(t)30 b(register)630 3168 y Fq(F)432 b Fy(One)26 b(of)h(the)g(\015oating-p)s (oin)m(t)g(constan)m(ts)h(0.0,)g(0.5,)h(1.0,)g(2.0,)g(3.0,)g(4.0,)g (5.0)f(or)1110 3278 y(10.0)630 3434 y Fq(G)432 b Fy(Floating-p)s(oin)m (t)38 b(constan)m(t)h(that)g(w)m(ould)e(satisfy)h(the)g(constrain)m(t)h (`)p Fq(F)p Fy(')f(if)f(it)1110 3543 y(w)m(ere)31 b(negated)630 3699 y Fq(I)432 b Fy(In)m(teger)31 b(that)f(is)f(v)-5 b(alid)28 b(as)i(an)g(immediate)e(op)s(erand)h(in)g(a)h(data)g(pro)s (cessing)1110 3809 y(instruction.)43 b(That)31 b(is,)g(an)h(in)m(teger) g(in)e(the)i(range)g(0)g(to)g(255)h(rotated)g(b)m(y)f(a)1110 3919 y(m)m(ultiple)c(of)j(2)630 4075 y Fq(J)432 b Fy(In)m(teger)31 b(in)e(the)i(range)g Fx(\000)p Fy(4095)h(to)f(4095)630 4231 y Fq(K)432 b Fy(In)m(teger)45 b(that)g(satis\014es)e(constrain)m (t)h(`)p Fq(I)p Fy(')g(when)f(in)m(v)m(erted)h(\(ones)h(comple-)1110 4340 y(men)m(t\))630 4496 y Fq(L)432 b Fy(In)m(teger)46 b(that)g(satis\014es)e(constrain)m(t)h(`)p Fq(I)p Fy(')g(when)f (negated)i(\(t)m(w)m(os)h(comple-)1110 4606 y(men)m(t\))630 4762 y Fq(M)432 b Fy(In)m(teger)31 b(in)e(the)i(range)g(0)f(to)i(32)630 4918 y Fq(Q)432 b Fy(A)31 b(memory)g(reference)g(where)f(the)h(exact)h (address)e(is)g(in)f(a)j(single)d(register)1110 5028 y(\(\\)p Fq(m)p Fy('')i(is)f(preferable)f(for)h Fq(asm)g Fy(statemen)m(ts\))630 5184 y Fq(R)432 b Fy(An)30 b(item)g(in)f(the)i (constan)m(t)g(p)s(o)s(ol)630 5340 y Fq(S)432 b Fy(A)30 b(sym)m(b)s(ol)g(in)f(the)h(text)i(segmen)m(t)f(of)g(the)f(curren)m(t)g (\014le)p eop %%Page: 203 213 203 212 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(203)150 299 y Fr(AMD)31 b(29000)k(family|`)p Fq(a29k.h)p Fr(')630 408 y Fq(l)432 b Fy(Lo)s(cal)30 b(register)g(0)630 565 y Fq(b)432 b Fy(Byte)31 b(P)m(oin)m(ter)g(\(`)p Fq(BP)p Fy('\))g(register)630 722 y Fq(q)432 b Fy(`)p Fq(Q)p Fy(')31 b(register)630 878 y Fq(h)432 b Fy(Sp)s(ecial)29 b(purp)s(ose)f(register)630 1035 y Fq(A)432 b Fy(First)30 b(accum)m(ulator)h(register)630 1191 y Fq(a)432 b Fy(Other)30 b(accum)m(ulator)h(register)630 1348 y Fq(f)432 b Fy(Floating)30 b(p)s(oin)m(t)g(register)630 1504 y Fq(I)432 b Fy(Constan)m(t)31 b(greater)h(than)e(0,)h(less)e(than)h(0x100)630 1661 y Fq(J)432 b Fy(Constan)m(t)31 b(greater)h(than)e(0,)h(less)e(than)h (0x10000)630 1817 y Fq(K)432 b Fy(Constan)m(t)31 b(whose)f(high)f(24)i (bits)f(are)g(on)h(\(1\))630 1974 y Fq(L)432 b Fy(16-bit)31 b(constan)m(t)g(whose)f(high)f(8)i(bits)f(are)g(on)h(\(1\))630 2131 y Fq(M)432 b Fy(32-bit)31 b(constan)m(t)g(whose)f(high)f(16)j (bits)d(are)i(on)f(\(1\))630 2287 y Fq(N)432 b Fy(32-bit)31 b(negativ)m(e)g(constan)m(t)h(that)f(\014ts)f(in)f(8)i(bits)630 2444 y Fq(O)432 b Fy(The)43 b(constan)m(t)i(0x80000000)j(or,)f(on)c (the)h(29050,)50 b(an)m(y)44 b(32-bit)g(constan)m(t)1110 2553 y(whose)30 b(lo)m(w)g(16)i(bits)d(are)i(0.)630 2710 y Fq(P)432 b Fy(16-bit)31 b(negativ)m(e)g(constan)m(t)h(that)f(\014ts)f (in)f(8)i(bits)630 2866 y Fq(G)630 2976 y(H)432 b Fy(A)34 b(\015oating)g(p)s(oin)m(t)e(constan)m(t)k(\(in)c Fq(asm)h Fy(statemen)m(ts,)k(use)c(the)h(mac)m(hine)g(in-)1110 3086 y(dep)s(enden)m(t)29 b(`)p Fq(E)p Fy(')i(or)f(`)p Fq(F)p Fy(')h(instead\))150 3242 y Fr(A)-9 b(VR)32 b(family|`)p Fq(avr.h)p Fr(')630 3352 y Fq(l)432 b Fy(Registers)30 b(from)g(r0)h(to)g(r15)630 3508 y Fq(a)432 b Fy(Registers)30 b(from)g(r16)h(to)g(r23)630 3665 y Fq(d)432 b Fy(Registers)30 b(from)g(r16)h(to)g(r31)630 3821 y Fq(w)432 b Fy(Registers)38 b(from)g(r24)h(to)h(r31.)65 b(These)38 b(registers)g(can)h(b)s(e)f (used)f(in)h(`)p Fq(adiw)p Fy(')1110 3931 y(command)630 4088 y Fq(e)432 b Fy(P)m(oin)m(ter)31 b(register)f(\(r26{r31\))630 4244 y Fq(b)432 b Fy(Base)31 b(p)s(oin)m(ter)f(register)g(\(r28{r31\)) 630 4401 y Fq(q)432 b Fy(Stac)m(k)31 b(p)s(oin)m(ter)f(register)g (\(SPH:SPL\))630 4557 y Fq(t)432 b Fy(T)-8 b(emp)s(orary)30 b(register)g(r0)630 4714 y Fq(x)432 b Fy(Register)31 b(pair)e(X)h(\(r27:r26\))630 4870 y Fq(y)432 b Fy(Register)31 b(pair)e(Y)h(\(r29:r28\))630 5027 y Fq(z)432 b Fy(Register)31 b(pair)e(Z)h(\(r31:r30\))630 5183 y Fq(I)432 b Fy(Constan)m(t)31 b(greater)h(than)e Fx(\000)p Fy(1,)g(less)g(than)g(64)630 5340 y Fq(J)432 b Fy(Constan)m(t)31 b(greater)h(than)e Fx(\000)p Fy(64,)h(less)e(than)i(1)p eop %%Page: 204 214 204 213 bop 150 -116 a Fy(204)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y Fq(K)432 b Fy(Constan)m(t)31 b(in)m(teger)g(2)630 458 y Fq(L)432 b Fy(Constan)m(t)31 b(in)m(teger)g(0)630 616 y Fq(M)432 b Fy(Constan)m(t)31 b(that)g(\014ts)f(in)f(8)i(bits)630 775 y Fq(N)432 b Fy(Constan)m(t)31 b(in)m(teger)g Fx(\000)p Fy(1)630 934 y Fq(O)432 b Fy(Constan)m(t)31 b(in)m(teger)g(8,)g(16,)g(or)g(24)630 1092 y Fq(P)432 b Fy(Constan)m(t)31 b(in)m(teger)g(1)630 1251 y Fq(G)432 b Fy(A)30 b(\015oating)h(p)s(oin)m(t)e(constan)m(t)j (0.0)150 1410 y Fr(IBM)g(RS6000|`)p Fq(rs6000.h)p Fr(')630 1519 y Fq(b)432 b Fy(Address)29 b(base)i(register)630 1678 y Fq(f)432 b Fy(Floating)30 b(p)s(oin)m(t)g(register)630 1837 y Fq(h)432 b Fy(`)p Fq(MQ)p Fy(',)31 b(`)p Fq(CTR)p Fy(',)f(or)g(`)p Fq(LINK)p Fy(')g(register)630 1996 y Fq(q)432 b Fy(`)p Fq(MQ)p Fy(')30 b(register)630 2154 y Fq(c)432 b Fy(`)p Fq(CTR)p Fy(')30 b(register)630 2313 y Fq(l)432 b Fy(`)p Fq(LINK)p Fy(')30 b(register)630 2472 y Fq(x)432 b Fy(`)p Fq(CR)p Fy(')30 b(register)h(\(condition)e (register\))h(n)m(um)m(b)s(er)g(0)630 2630 y Fq(y)432 b Fy(`)p Fq(CR)p Fy(')30 b(register)h(\(condition)e(register\))630 2789 y Fq(z)432 b Fy(`)p Fq(FPMEM)p Fy(')29 b(stac)m(k)j(memory)f(for)f (FPR-GPR)h(transfers)630 2948 y Fq(I)432 b Fy(Signed)29 b(16-bit)i(constan)m(t)630 3107 y Fq(J)432 b Fy(Unsigned)41 b(16-bit)h(constan)m(t)h(shifted)e(left)h(16)h(bits)e(\(use)h(`)p Fq(L)p Fy(')g(instead)f(for)1110 3216 y Fq(SImode)29 b Fy(constan)m(ts\))630 3375 y Fq(K)432 b Fy(Unsigned)29 b(16-bit)i(constan)m(t)630 3534 y Fq(L)432 b Fy(Signed)29 b(16-bit)i(constan)m(t)g(shifted)e(left)h(16)h(bits)630 3692 y Fq(M)432 b Fy(Constan)m(t)31 b(larger)f(than)g(31)630 3851 y Fq(N)432 b Fy(Exact)31 b(p)s(o)m(w)m(er)g(of)f(2)630 4010 y Fq(O)432 b Fy(Zero)630 4169 y Fq(P)g Fy(Constan)m(t)31 b(whose)f(negation)h(is)e(a)i(signed)e(16-bit)i(constan)m(t)630 4327 y Fq(G)432 b Fy(Floating)28 b(p)s(oin)m(t)e(constan)m(t)j(that)g (can)f(b)s(e)f(loaded)g(in)m(to)h(a)g(register)f(with)g(one)1110 4437 y(instruction)h(p)s(er)i(w)m(ord)630 4596 y Fq(Q)432 b Fy(Memory)32 b(op)s(erand)e(that)j(is)d(an)i(o\013set)g(from)f(a)h (register)f(\(`)p Fq(m)p Fy(')i(is)d(preferable)1110 4705 y(for)g Fq(asm)g Fy(statemen)m(ts\))630 4864 y Fq(R)432 b Fy(AIX)30 b(TOC)g(en)m(try)630 5023 y Fq(S)432 b Fy(Constan)m(t)31 b(suitable)e(as)h(a)h(64-bit)g(mask)f(op)s(erand)630 5181 y Fq(T)432 b Fy(Constan)m(t)31 b(suitable)e(as)h(a)h(32-bit)g (mask)f(op)s(erand)630 5340 y Fq(U)432 b Fy(System)30 b(V)h(Release)g(4)f(small)f(data)i(area)h(reference)p eop %%Page: 205 215 205 214 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(205)150 299 y Fr(Intel)33 b(386|`)p Fq(i386.h)p Fr(')630 408 y Fq(q)432 b Fy(`)p Fq(a)p Fy(',)29 b Fq(b)p Fy(,)f Fq(c)p Fy(,)g(or)g Fq(d)g Fy(register)g(for)f(the)h(i386.)41 b(F)-8 b(or)28 b(x86-64)i(it)e(is)f(equiv)-5 b(alen)m(t)27 b(to)i(`)p Fq(r)p Fy(')1110 518 y(class.)40 b(\(for)31 b(8-bit)f(instructions)e(that)j(do)g(not)f(use)g(upp)s(er)f(halv)m (es\))630 680 y Fq(Q)432 b Fy(`)p Fq(a)p Fy(',)40 b Fq(b)p Fy(,)f Fq(c)p Fy(,)g(or)f Fq(d)f Fy(register.)62 b(\(for)37 b(8-bit)h(instructions,)f(that)h(do)g(use)f(upp)s(er)1110 790 y(halv)m(es\))630 952 y Fq(R)432 b Fy(Legacy)32 b(register|equiv)-5 b(alen)m(t)29 b(to)i Fq(r)f Fy(class)f(in)g(i386)i(mo)s(de.)40 b(\(for)30 b(non-8-bit)1110 1061 y(registers)i(used)f(together)j(with)c (8-bit)i(upp)s(er)e(halv)m(es)i(in)f(a)h(single)f(instruc-)1110 1171 y(tion\))630 1333 y Fq(A)432 b Fy(Sp)s(eci\014es)31 b(the)h(`)p Fq(a)p Fy(')h(or)f(`)p Fq(d)p Fy(')g(registers.)46 b(This)31 b(is)g(primarily)e(useful)i(for)h(64-bit)1110 1442 y(in)m(teger)e(v)-5 b(alues)29 b(\(when)h(in)e(32-bit)i(mo)s(de\)) g(in)m(tended)f(to)h(b)s(e)g(returned)e(with)1110 1552 y(the)f(`)p Fq(d)p Fy(')g(register)g(holding)e(the)i(most)h (signi\014can)m(t)d(bits)h(and)h(the)g(`)p Fq(a)p Fy(')g(register)1110 1662 y(holding)h(the)j(least)f(signi\014can)m(t)g(bits.)630 1824 y Fq(f)432 b Fy(Floating)30 b(p)s(oin)m(t)g(register)630 1986 y Fq(t)432 b Fy(First)30 b(\(top)h(of)f(stac)m(k\))i(\015oating)f (p)s(oin)m(t)e(register)630 2148 y Fq(u)432 b Fy(Second)30 b(\015oating)g(p)s(oin)m(t)g(register)630 2310 y Fq(a)432 b Fy(`)p Fq(a)p Fy(')31 b(register)630 2472 y Fq(b)432 b Fy(`)p Fq(b)p Fy(')31 b(register)630 2634 y Fq(c)432 b Fy(`)p Fq(c)p Fy(')31 b(register)630 2796 y Fq(d)432 b Fy(`)p Fq(d)p Fy(')31 b(register)630 2958 y Fq(D)432 b Fy(`)p Fq(di)p Fy(')30 b(register)630 3120 y Fq(S)432 b Fy(`)p Fq(si)p Fy(')30 b(register)630 3282 y Fq(x)432 b Fy(`)p Fq(xmm)p Fy(')30 b(SSE)f(register)630 3444 y Fq(y)432 b Fy(MMX)31 b(register)630 3606 y Fq(I)432 b Fy(Constan)m(t)31 b(in)e(range)i(0)f(to)i(31)f(\(for)f(32-bit)h (shifts\))630 3768 y Fq(J)432 b Fy(Constan)m(t)31 b(in)e(range)i(0)f (to)i(63)f(\(for)f(64-bit)h(shifts\))630 3930 y Fq(K)432 b Fy(`)p Fq(0xff)p Fy(')630 4092 y Fq(L)g Fy(`)p Fq(0xffff)p Fy(')630 4254 y Fq(M)g Fy(0,)31 b(1,)g(2,)g(or)f(3)h(\(shifts)e(for)i Fq(lea)e Fy(instruction\))630 4416 y Fq(N)432 b Fy(Constan)m(t)31 b(in)e(range)i(0)f(to)i(255)f(\(for)g Fq(out)e Fy(instruction\))630 4578 y Fq(Z)432 b Fy(Constan)m(t)27 b(in)e(range)i(0)g(to)g Fq(0xffffffff)d Fy(or)i(sym)m(b)s(olic)f(reference)i(kno)m(wn)f(to)1110 4687 y(\014t)33 b(sp)s(eci\014ed)f(range.)50 b(\(for)34 b(using)e(immediates)g(in)h(zero)h(extending)f(32-bit)1110 4797 y(to)e(64-bit)g(x86-64)h(instructions\))630 4959 y Fq(e)432 b Fy(Constan)m(t)36 b(in)f(range)h Fx(\000)p Fy(2147483648)41 b(to)36 b(2147483647)41 b(or)36 b(sym)m(b)s(olic)e (refer-)1110 5068 y(ence)h(kno)m(wn)e(to)i(\014t)e(sp)s(eci\014ed)f (range.)52 b(\(for)34 b(using)e(immediates)h(in)g(64-bit)1110 5178 y(x86-64)f(instructions\))630 5340 y Fq(G)432 b Fy(Standard)29 b(80387)k(\015oating)d(p)s(oin)m(t)f(constan)m(t)p eop %%Page: 206 216 206 215 bop 150 -116 a Fy(206)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fr(Intel)j(960|`)p Fq(i960.h)p Fr(')630 408 y Fq(f)432 b Fy(Floating)30 b(p)s(oin)m(t)g(register)g(\() p Fq(fp0)g Fy(to)h Fq(fp3)p Fy(\))630 571 y Fq(l)432 b Fy(Lo)s(cal)30 b(register)g(\()p Fq(r0)h Fy(to)g Fq(r15)p Fy(\))630 733 y Fq(b)432 b Fy(Global)30 b(register)g(\()p Fq(g0)g Fy(to)h Fq(g15)p Fy(\))630 896 y Fq(d)432 b Fy(An)m(y)30 b(lo)s(cal)g(or)g(global)g(register)630 1058 y Fq(I)432 b Fy(In)m(tegers)31 b(from)f(0)h(to)g(31)630 1220 y Fq(J)432 b Fy(0)630 1383 y Fq(K)g Fy(In)m(tegers)31 b(from)f Fx(\000)p Fy(31)h(to)g(0)630 1545 y Fq(G)432 b Fy(Floating)30 b(p)s(oin)m(t)g(0) 630 1707 y Fq(H)432 b Fy(Floating)30 b(p)s(oin)m(t)g(1)150 1870 y Fr(MIPS|`)p Fq(mips.h)p Fr(')630 1979 y Fq(d)432 b Fy(General-purp)s(ose)29 b(in)m(teger)i(register)630 2142 y Fq(f)432 b Fy(Floating-p)s(oin)m(t)30 b(register)g(\(if)g(a)m(v) -5 b(ailable\))630 2304 y Fq(h)432 b Fy(`)p Fq(Hi)p Fy(')30 b(register)630 2466 y Fq(l)432 b Fy(`)p Fq(Lo)p Fy(')30 b(register)630 2629 y Fq(x)432 b Fy(`)p Fq(Hi)p Fy(')30 b(or)h(`)p Fq(Lo)p Fy(')f(register)630 2791 y Fq(y)432 b Fy(General-purp)s(ose)29 b(in)m(teger)i(register)630 2953 y Fq(z)432 b Fy(Floating-p)s(oin)m(t)30 b(status)g(register)630 3116 y Fq(I)432 b Fy(Signed)29 b(16-bit)i(constan)m(t)g(\(for)g (arithmetic)e(instructions\))630 3278 y Fq(J)432 b Fy(Zero)630 3440 y Fq(K)g Fy(Zero-extended)31 b(16-bit)f(constan)m(t)i(\(for)e (logic)h(instructions\))630 3603 y Fq(L)432 b Fy(Constan)m(t)31 b(with)e(lo)m(w)h(16)h(bits)f(zero)h(\(can)g(b)s(e)f(loaded)f(with)h Fq(lui)p Fy(\))630 3765 y Fq(M)432 b Fy(32-bit)29 b(constan)m(t)h(whic) m(h)d(requires)h(t)m(w)m(o)i(instructions)c(to)k(load)e(\(a)i(constan)m (t)1110 3875 y(whic)m(h)f(is)h(not)g(`)p Fq(I)p Fy(',)h(`)p Fq(K)p Fy(',)g(or)f(`)p Fq(L)p Fy('\))630 4037 y Fq(N)432 b Fy(Negativ)m(e)32 b(16-bit)f(constan)m(t)630 4199 y Fq(O)432 b Fy(Exact)31 b(p)s(o)m(w)m(er)g(of)f(t)m(w)m(o)630 4362 y Fq(P)432 b Fy(P)m(ositiv)m(e)31 b(16-bit)f(constan)m(t)630 4524 y Fq(G)432 b Fy(Floating)30 b(p)s(oin)m(t)g(zero)630 4686 y Fq(Q)432 b Fy(Memory)32 b(reference)f(that)h(can)f(b)s(e)f (loaded)h(with)f(more)h(than)g(one)g(instruc-)1110 4796 y(tion)f(\(`)p Fq(m)p Fy(')h(is)e(preferable)g(for)i Fq(asm)e Fy(statemen)m(ts\))630 4958 y Fq(R)432 b Fy(Memory)37 b(reference)h(that)f(can)g(b)s(e)g(loaded)f(with)f(one)j(instruction)d (\(`)p Fq(m)p Fy(')i(is)1110 5068 y(preferable)29 b(for)h Fq(asm)g Fy(statemen)m(ts\))630 5230 y Fq(S)432 b Fy(Memory)34 b(reference)f(in)f(external)i(OSF/rose)f(PIC)g(format)g(\(`)p Fq(m)p Fy(')h(is)e(prefer-)1110 5340 y(able)e(for)g Fq(asm)g Fy(statemen)m(ts\))p eop %%Page: 207 217 207 216 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(207)150 299 y Fr(Motor)-5 b(ola)35 b(680x0|`)p Fq(m68k.h)p Fr(')630 408 y Fq(a)432 b Fy(Address)29 b(register)630 566 y Fq(d)432 b Fy(Data)32 b(register)630 723 y Fq(f)432 b Fy(68881)33 b(\015oating-p)s(oin)m(t)c(register,)i(if)e(a)m(v)-5 b(ailable)630 880 y Fq(x)432 b Fy(Sun)29 b(FP)-8 b(A)31 b(\(\015oating-p)s(oin)m(t\))f(register,)h(if)e(a)m(v)-5 b(ailable)630 1037 y Fq(y)432 b Fy(First)30 b(16)h(Sun)e(FP)-8 b(A)31 b(registers,)f(if)g(a)m(v)-5 b(ailable)630 1195 y Fq(I)432 b Fy(In)m(teger)31 b(in)e(the)i(range)g(1)f(to)i(8)630 1352 y Fq(J)432 b Fy(16-bit)31 b(signed)e(n)m(um)m(b)s(er)630 1509 y Fq(K)432 b Fy(Signed)29 b(n)m(um)m(b)s(er)g(whose)h(magnitude)g (is)f(greater)j(than)e(0x80)630 1667 y Fq(L)432 b Fy(In)m(teger)31 b(in)e(the)i(range)g Fx(\000)p Fy(8)f(to)h Fx(\000)p Fy(1)630 1824 y Fq(M)432 b Fy(Signed)29 b(n)m(um)m(b)s(er)g(whose)h (magnitude)g(is)f(greater)j(than)e(0x100)630 1981 y Fq(G)432 b Fy(Floating)30 b(p)s(oin)m(t)g(constan)m(t)h(that)g(is)f(not)g(a)h (68881)i(constan)m(t)630 2138 y Fq(H)432 b Fy(Floating)30 b(p)s(oin)m(t)g(constan)m(t)h(that)g(can)g(b)s(e)f(used)f(b)m(y)i(Sun)d (FP)-8 b(A)150 2296 y Fr(Motor)j(ola)35 b(68HC11)f(&)e(68HC12)i (families|`)p Fq(m68hc11.h)p Fr(')630 2405 y Fq(a)432 b Fy(Register)31 b('a')630 2562 y Fq(b)432 b Fy(Register)31 b('b')630 2720 y Fq(d)432 b Fy(Register)31 b('d')630 2877 y Fq(q)432 b Fy(An)30 b(8-bit)g(register)630 3034 y Fq(t)432 b Fy(T)-8 b(emp)s(orary)30 b(soft)g(register)p 2082 3034 28 4 v 63 w(.tmp)630 3191 y Fq(u)432 b Fy(A)30 b(soft)h(register)p 1713 3191 V 63 w(.d1)g(to)p 2008 3191 V 64 w(.d31)630 3349 y Fq(w)432 b Fy(Stac)m(k)31 b(p)s(oin)m(ter)f(register)630 3506 y Fq(x)432 b Fy(Register)31 b('x')630 3663 y Fq(y)432 b Fy(Register)31 b('y')630 3820 y Fq(z)432 b Fy(Pseudo)30 b(register)g('z')h(\(replaced)g(b)m(y)f ('x')h(or)f('y')h(at)g(the)f(end\))630 3978 y Fq(A)432 b Fy(An)30 b(address)f(register:)41 b(x,)31 b(y)f(or)g(z)630 4135 y Fq(B)432 b Fy(An)30 b(address)f(register:)41 b(x)30 b(or)h(y)630 4292 y Fq(D)432 b Fy(Register)31 b(pair)e(\(x:d\))h(to)i (form)d(a)i(32-bit)g(v)-5 b(alue)630 4449 y Fq(L)432 b Fy(Constan)m(ts)31 b(in)e(the)h(range)h Fx(\000)p Fy(65536)h(to)g (65535)630 4607 y Fq(M)432 b Fy(Constan)m(ts)31 b(whose)f(16-bit)h(lo)m (w)f(part)g(is)f(zero)630 4764 y Fq(N)432 b Fy(Constan)m(t)31 b(in)m(teger)g(1)f(or)h Fx(\000)p Fy(1)630 4921 y Fq(O)432 b Fy(Constan)m(t)31 b(in)m(teger)g(16)630 5078 y Fq(P)432 b Fy(Constan)m(ts)31 b(in)e(the)h(range)h Fx(\000)p Fy(8)g(to)g(2)150 5230 y Fr(SP)-7 b(AR)n(C|`)p Fq(sparc.h)p Fr(')630 5340 y Fq(f)432 b Fy(Floating-p)s(oin)m(t)30 b(register)g(that)h(can)g(hold) e(32-)i(or)g(64-bit)f(v)-5 b(alues.)p eop %%Page: 208 218 208 217 bop 150 -116 a Fy(208)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y Fq(e)432 b Fy(Floating-p)s(oin)m(t)30 b(register)g(that)h(can)g(hold)e(64-)i(or)g(128-bit)g(v)-5 b(alues.)630 457 y Fq(I)432 b Fy(Signed)29 b(13-bit)i(constan)m(t)630 615 y Fq(J)432 b Fy(Zero)630 774 y Fq(K)g Fy(32-bit)33 b(constan)m(t)i(with)c(the)j(lo)m(w)e(12)i(bits)e(clear)h(\(a)h (constan)m(t)h(that)e(can)h(b)s(e)1110 883 y(loaded)c(with)f(the)i Fq(sethi)d Fy(instruction\))630 1042 y Fq(L)432 b Fy(A)30 b(constan)m(t)i(in)d(the)i(range)g(supp)s(orted)d(b)m(y)i Fq(movcc)f Fy(instructions)630 1200 y Fq(M)432 b Fy(A)30 b(constan)m(t)i(in)d(the)i(range)g(supp)s(orted)d(b)m(y)i Fq(movrcc)f Fy(instructions)630 1358 y Fq(N)432 b Fy(Same)41 b(as)g(`)p Fq(K)p Fy(',)j(except)e(that)f(it)f(v)m(eri\014es)g(that)i (bits)e(that)h(are)g(not)g(in)f(the)1110 1468 y(lo)m(w)m(er)i(32-bit)h (range)f(are)h(all)e(zero.)77 b(Must)42 b(b)s(e)g(used)f(instead)g(of)i (`)p Fq(K)p Fy(')f(for)1110 1577 y(mo)s(des)30 b(wider)f(than)h Fq(SImode)630 1736 y(G)432 b Fy(Floating-p)s(oin)m(t)30 b(zero)630 1894 y Fq(H)432 b Fy(Signed)29 b(13-bit)i(constan)m(t,)g (sign-extended)f(to)h(32)h(or)e(64)h(bits)630 2052 y Fq(Q)432 b Fy(Floating-p)s(oin)m(t)20 b(constan)m(t)j(whose)e(in)m (tegral)f(represen)m(tation)h(can)h(b)s(e)e(mo)m(v)m(ed)1110 2162 y(in)m(to)30 b(an)h(in)m(teger)f(register)h(using)d(a)j(single)e (sethi)h(instruction)630 2320 y Fq(R)432 b Fy(Floating-p)s(oin)m(t)20 b(constan)m(t)j(whose)e(in)m(tegral)f(represen)m(tation)h(can)h(b)s(e)e (mo)m(v)m(ed)1110 2430 y(in)m(to)30 b(an)h(in)m(teger)f(register)h (using)d(a)j(single)e(mo)m(v)i(instruction)630 2588 y Fq(S)432 b Fy(Floating-p)s(oin)m(t)20 b(constan)m(t)j(whose)e(in)m (tegral)f(represen)m(tation)h(can)h(b)s(e)e(mo)m(v)m(ed)1110 2698 y(in)m(to)30 b(an)h(in)m(teger)f(register)h(using)d(a)j(high/lo)p 2653 2698 28 4 v 32 w(sum)e(instruction)g(sequence)630 2856 y Fq(T)432 b Fy(Memory)31 b(address)e(aligned)g(to)j(an)e(8-b)m (yte)i(b)s(oundary)630 3014 y Fq(U)432 b Fy(Ev)m(en)31 b(register)630 3173 y Fq(W)432 b Fy(Memory)31 b(address)e(for)h(`)p Fq(e)p Fy(')h(constrain)m(t)g(registers.)150 3331 y Fr(TMS320C3x/C4x|`) p Fq(c4x.h)p Fr(')630 3440 y Fq(a)432 b Fy(Auxiliary)28 b(\(address\))i(register)g(\(ar0-ar7\))630 3599 y Fq(b)432 b Fy(Stac)m(k)31 b(p)s(oin)m(ter)f(register)g(\(sp\))630 3757 y Fq(c)432 b Fy(Standard)29 b(\(32-bit\))j(precision)c(in)m(teger) j(register)630 3915 y Fq(f)432 b Fy(Extended)30 b(\(40-bit\))h (precision)e(register)h(\(r0-r11\))630 4074 y Fq(k)432 b Fy(Blo)s(c)m(k)31 b(coun)m(t)g(register)f(\(bk\))630 4232 y Fq(q)432 b Fy(Extended)30 b(\(40-bit\))h(precision)e(lo)m(w)h (register)g(\(r0-r7\))630 4390 y Fq(t)432 b Fy(Extended)30 b(\(40-bit\))h(precision)e(register)h(\(r0-r1\))630 4548 y Fq(u)432 b Fy(Extended)30 b(\(40-bit\))h(precision)e(register)h (\(r2-r3\))630 4707 y Fq(v)432 b Fy(Rep)s(eat)31 b(coun)m(t)g(register) f(\(rc\))630 4865 y Fq(x)432 b Fy(Index)30 b(register)g(\(ir0-ir1\))630 5023 y Fq(y)432 b Fy(Status)30 b(\(condition)g(co)s(de\))h(register)f (\(st\))630 5182 y Fq(z)432 b Fy(Data)32 b(page)f(register)f(\(dp\))630 5340 y Fq(G)432 b Fy(Floating-p)s(oin)m(t)30 b(zero)p eop %%Page: 209 219 209 218 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(209)630 299 y Fq(H)432 b Fy(Immediate)30 b(16-bit)h(\015oating-p)s(oin)m(t)e (constan)m(t)630 456 y Fq(I)432 b Fy(Signed)29 b(16-bit)i(constan)m(t) 630 613 y Fq(J)432 b Fy(Signed)29 b(8-bit)h(constan)m(t)630 770 y Fq(K)432 b Fy(Signed)29 b(5-bit)h(constan)m(t)630 927 y Fq(L)432 b Fy(Unsigned)29 b(16-bit)i(constan)m(t)630 1084 y Fq(M)432 b Fy(Unsigned)29 b(8-bit)h(constan)m(t)630 1241 y Fq(N)432 b Fy(Ones)30 b(complemen)m(t)g(of)h(unsigned)d(16-bit)j (constan)m(t)630 1398 y Fq(O)432 b Fy(High)30 b(16-bit)g(constan)m(t)i (\(32-bit)f(constan)m(t)h(with)d(16)i(LSBs)f(zero\))630 1556 y Fq(Q)432 b Fy(Indirect)34 b(memory)g(reference)i(with)d(signed)h (8-bit)h(or)g(index)e(register)i(dis-)1110 1665 y(placemen)m(t)630 1822 y Fq(R)432 b Fy(Indirect)29 b(memory)h(reference)h(with)e (unsigned)g(5-bit)h(displacemen)m(t)630 1979 y Fq(S)432 b Fy(Indirect)23 b(memory)i(reference)g(with)e(1)i(bit)f(or)g(index)f (register)i(displacemen)m(t)630 2136 y Fq(T)432 b Fy(Direct)31 b(memory)f(reference)630 2293 y Fq(U)432 b Fy(Sym)m(b)s(olic)28 b(address)150 2450 y Fr(S/390)34 b(and)g(zSeries|`)p Fq(s390.h)p Fr(')630 2560 y Fq(a)432 b Fy(Address)29 b(register)h(\(general)h(purp)s(ose)e(register)h(except)h(r0\))630 2717 y Fq(d)432 b Fy(Data)32 b(register)e(\(arbitrary)g(general)g(purp) s(ose)f(register\))630 2874 y Fq(f)432 b Fy(Floating-p)s(oin)m(t)30 b(register)630 3031 y Fq(I)432 b Fy(Unsigned)29 b(8-bit)h(constan)m(t)i (\(0{255\))630 3188 y Fq(J)432 b Fy(Unsigned)29 b(12-bit)i(constan)m(t) g(\(0{4095\))630 3345 y Fq(K)432 b Fy(Signed)29 b(16-bit)i(constan)m(t) g(\()p Fx(\000)p Fy(32768{32767\))630 3503 y Fq(L)432 b Fy(Unsigned)29 b(16-bit)i(constan)m(t)g(\(0{65535\))630 3660 y Fq(Q)432 b Fy(Memory)31 b(reference)g(without)e(index)g (register)630 3817 y Fq(S)432 b Fy(Sym)m(b)s(olic)28 b(constan)m(t)k(suitable)d(for)h(use)g(with)f(the)i Fq(larl)e Fy(instruction)150 3974 y Fr(Xstormy16|`)p Fq(stormy16.h)p Fr(')630 4083 y Fq(a)432 b Fy(Register)31 b(r0.)630 4240 y Fq(b)432 b Fy(Register)31 b(r1.)630 4398 y Fq(c)432 b Fy(Register)31 b(r2.)630 4555 y Fq(d)432 b Fy(Register)31 b(r8.)630 4712 y Fq(e)432 b Fy(Registers)30 b(r0)h(through)e(r7.)630 4869 y Fq(t)432 b Fy(Registers)30 b(r0)h(and)f(r1.)630 5026 y Fq(y)432 b Fy(The)30 b(carry)g(register.)630 5183 y Fq(z)432 b Fy(Registers)30 b(r8)h(and)f(r9.)630 5340 y Fq(I)432 b Fy(A)30 b(constan)m(t)i(b)s(et)m(w)m(een)f(0)g(and)f(3)g (inclusiv)m(e.)p eop %%Page: 210 220 210 219 bop 150 -116 a Fy(210)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y Fq(J)432 b Fy(A)30 b(constan)m(t)i (that)f(has)f(exactly)h(one)g(bit)e(set.)630 447 y Fq(K)432 b Fy(A)30 b(constan)m(t)i(that)f(has)f(exactly)h(one)g(bit)e(clear.)630 595 y Fq(L)432 b Fy(A)30 b(constan)m(t)i(b)s(et)m(w)m(een)f(0)g(and)f (255)h(inclusiv)m(e.)630 742 y Fq(M)432 b Fy(A)30 b(constan)m(t)i(b)s (et)m(w)m(een)f Fx(\000)p Fy(255)h(and)d(0)i(inclusiv)m(e.)630 890 y Fq(N)432 b Fy(A)30 b(constan)m(t)i(b)s(et)m(w)m(een)f Fx(\000)p Fy(3)g(and)e(0)i(inclusiv)m(e.)630 1038 y Fq(O)432 b Fy(A)30 b(constan)m(t)i(b)s(et)m(w)m(een)f(1)g(and)f(4)g(inclusiv)m (e.)630 1186 y Fq(P)432 b Fy(A)30 b(constan)m(t)i(b)s(et)m(w)m(een)f Fx(\000)p Fy(4)g(and)e Fx(\000)p Fy(1)i(inclusiv)m(e.)630 1334 y Fq(Q)432 b Fy(A)30 b(memory)h(reference)g(that)g(is)e(a)i(stac)m (k)h(push.)630 1482 y Fq(R)432 b Fy(A)30 b(memory)h(reference)g(that)g (is)e(a)i(stac)m(k)h(p)s(op.)630 1630 y Fq(S)432 b Fy(A)38 b(memory)g(reference)g(that)h(refers)e(to)i(an)f(constan)m(t)h(address) e(of)h(kno)m(wn)1110 1739 y(v)-5 b(alue.)630 1887 y Fq(T)432 b Fy(The)30 b(register)g(indicated)f(b)m(y)h(Rx)h(\(not)f(implemen)m (ted)f(y)m(et\).)630 2035 y Fq(U)432 b Fy(A)30 b(constan)m(t)i(that)f (is)f(not)g(b)s(et)m(w)m(een)h(2)g(and)f(15)h(inclusiv)m(e.)150 2183 y Fr(Xtensa|`)p Fq(xtensa.h)p Fr(')630 2292 y Fq(a)432 b Fy(General-purp)s(ose)29 b(32-bit)i(register)630 2440 y Fq(b)432 b Fy(One-bit)29 b(b)s(o)s(olean)h(register)630 2588 y Fq(A)432 b Fy(MA)m(C16)32 b(40-bit)e(accum)m(ulator)h(register) 630 2736 y Fq(I)432 b Fy(Signed)29 b(12-bit)i(in)m(teger)f(constan)m (t,)i(for)e(use)g(in)g(MO)m(VI)g(instructions)630 2884 y Fq(J)432 b Fy(Signed)29 b(8-bit)h(in)m(teger)h(constan)m(t,)h(for)e (use)g(in)f(ADDI)i(instructions)630 3032 y Fq(K)432 b Fy(In)m(teger)31 b(constan)m(t)h(v)-5 b(alid)29 b(for)h(BccI)h (instructions)630 3179 y Fq(L)432 b Fy(Unsigned)29 b(constan)m(t)j(v)-5 b(alid)28 b(for)i(BccUI)i(instructions)150 3419 y Fs(5.38)68 b(Con)l(trolling)47 b(Names)f(Used)f(in)g(Assem)l(bler)h(Co)t(de)275 3606 y Fy(Y)-8 b(ou)31 b(can)g(sp)s(ecify)e(the)i(name)g(to)g(b)s(e)f (used)g(in)f(the)i(assem)m(bler)f(co)s(de)h(for)g(a)g(C)f(function)f (or)i(v)-5 b(ariable)150 3716 y(b)m(y)30 b(writing)f(the)h Fq(asm)g Fy(\(or)g Fq(__asm__)p Fy(\))f(k)m(eyw)m(ord)i(after)g(the)f (declarator)h(as)g(follo)m(ws:)390 3839 y Fq(int)47 b(foo)g(asm)g (\("myfoo"\))e(=)i(2;)150 3968 y Fy(This)32 b(sp)s(eci\014es)g(that)i (the)f(name)h(to)g(b)s(e)f(used)f(for)h(the)h(v)-5 b(ariable)32 b Fq(foo)h Fy(in)f(the)h(assem)m(bler)g(co)s(de)h(should)150 4077 y(b)s(e)c(`)p Fq(myfoo)p Fy(')f(rather)h(than)h(the)f(usual)f(`)p Fq(_foo)p Fy('.)275 4206 y(On)g(systems)i(where)f(an)h(underscore)f(is) f(normally)g(prep)s(ended)g(to)i(the)g(name)f(of)h(a)g(C)g(function)e (or)150 4315 y(v)-5 b(ariable,)37 b(this)f(feature)h(allo)m(ws)f(y)m (ou)h(to)g(de\014ne)f(names)h(for)f(the)h(link)m(er)e(that)i(do)g(not)g (start)g(with)e(an)150 4425 y(underscore.)275 4554 y(It)k(do)s(es)f (not)h(mak)m(e)h(sense)f(to)g(use)g(this)f(feature)h(with)f(a)h (non-static)g(lo)s(cal)f(v)-5 b(ariable)38 b(since)g(suc)m(h)150 4663 y(v)-5 b(ariables)27 b(do)h(not)h(ha)m(v)m(e)g(assem)m(bler)f (names.)40 b(If)27 b(y)m(ou)i(are)g(trying)e(to)i(put)f(the)g(v)-5 b(ariable)27 b(in)g(a)i(particular)150 4773 y(register,)34 b(see)g(Section)f(5.39)i([Explicit)c(Reg)j(V)-8 b(ars],)35 b(page)f(211.)51 b(GCC)33 b(presen)m(tly)f(accepts)j(suc)m(h)e(co)s(de) 150 4882 y(with)e(a)i(w)m(arning,)g(but)f(will)e(probably)h(b)s(e)h(c)m (hanged)h(to)h(issue)d(an)i(error,)g(rather)f(than)h(a)g(w)m(arning,)f (in)150 4992 y(the)f(future.)275 5121 y(Y)-8 b(ou)28 b(cannot)h(use)g Fq(asm)e Fy(in)g(this)h(w)m(a)m(y)h(in)e(a)i(function) e Fr(de\014nition)7 b Fy(;)30 b(but)e(y)m(ou)h(can)f(get)i(the)f(same)f (e\013ect)150 5230 y(b)m(y)37 b(writing)d(a)k(declaration)e(for)h(the)g (function)e(b)s(efore)h(its)h(de\014nition)d(and)i(putting)g Fq(asm)g Fy(there,)j(lik)m(e)150 5340 y(this:)p eop %%Page: 211 221 211 220 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(211)390 299 y Fq(extern)46 b(func)h(\(\))g(asm)g(\("FUNC"\);)390 506 y(func)g(\(x,)g(y\))629 610 y(int)g(x,)g(y;)390 714 y(...)275 858 y Fy(It)33 b(is)e(up)h(to)i(y)m(ou)f(to)h(mak)m(e)g(sure) e(that)h(the)g(assem)m(bler)g(names)g(y)m(ou)g(c)m(ho)s(ose)h(do)e(not) i(con\015ict)e(with)150 968 y(an)m(y)f(other)g(assem)m(bler)f(sym)m(b)s (ols.)40 b(Also,)30 b(y)m(ou)h(m)m(ust)g(not)g(use)f(a)h(register)g (name;)g(that)g(w)m(ould)e(pro)s(duce)150 1078 y(completely)38 b(in)m(v)-5 b(alid)36 b(assem)m(bler)i(co)s(de.)65 b(GCC)38 b(do)s(es)g(not)h(as)f(y)m(et)i(ha)m(v)m(e)g(the)e(abilit)m(y)f(to)i (store)g(static)150 1187 y(v)-5 b(ariables)29 b(in)g(registers.)41 b(P)m(erhaps)30 b(that)g(will)e(b)s(e)i(added.)150 1469 y Fs(5.39)68 b(V)-11 b(ariables)46 b(in)f(Sp)t(eci\014ed)f(Registers) 275 1672 y Fy(GNU)33 b(C)f(allo)m(ws)g(y)m(ou)h(to)g(put)f(a)i(few)e (global)g(v)-5 b(ariables)31 b(in)m(to)i(sp)s(eci\014ed)e(hardw)m(are)h (registers.)47 b(Y)-8 b(ou)150 1781 y(can)31 b(also)f(sp)s(ecify)f(the) i(register)f(in)f(whic)m(h)g(an)h(ordinary)f(register)h(v)-5 b(ariable)29 b(should)g(b)s(e)g(allo)s(cated.)225 1926 y Fx(\017)60 b Fy(Global)27 b(register)g(v)-5 b(ariables)27 b(reserv)m(e)h(registers)f(throughout)g(the)h(program.)40 b(This)26 b(ma)m(y)i(b)s(e)f(useful)330 2035 y(in)i(programs)h(suc)m(h) g(as)h(programming)e(language)h(in)m(terpreters)g(whic)m(h)f(ha)m(v)m (e)j(a)e(couple)g(of)h(global)330 2145 y(v)-5 b(ariables)29 b(that)i(are)g(accessed)g(v)m(ery)g(often.)225 2284 y Fx(\017)60 b Fy(Lo)s(cal)27 b(register)f(v)-5 b(ariables)26 b(in)f(sp)s(eci\014c)h(registers)g(do)h(not)g(reserv)m(e)h(the)f (registers.)39 b(The)26 b(compiler's)330 2394 y(data)35 b(\015o)m(w)g(analysis)e(is)g(capable)i(of)g(determining)d(where)i(the) h(sp)s(eci\014ed)e(registers)h(con)m(tain)h(liv)m(e)330 2504 y(v)-5 b(alues,)30 b(and)h(where)f(they)h(are)g(a)m(v)-5 b(ailable)30 b(for)h(other)g(uses.)41 b(Stores)31 b(in)m(to)g(lo)s(cal) f(register)g(v)-5 b(ariables)330 2613 y(ma)m(y)24 b(b)s(e)e(deleted)h (when)f(they)h(app)s(ear)f(to)i(b)s(e)e(dead)h(according)g(to)h (data\015o)m(w)g(analysis.)36 b(References)330 2723 y(to)31 b(lo)s(cal)f(register)g(v)-5 b(ariables)29 b(ma)m(y)i(b)s(e)f(deleted)g (or)g(mo)m(v)m(ed)i(or)e(simpli\014ed.)330 2862 y(These)i(lo)s(cal)h(v) -5 b(ariables)31 b(are)i(sometimes)g(con)m(v)m(enien)m(t)h(for)e(use)h (with)e(the)i(extended)g Fq(asm)e Fy(feature)330 2972 y(\(see)36 b(Section)g(5.36)h([Extended)e(Asm],)i(page)f(193\),)j(if)34 b(y)m(ou)i(w)m(an)m(t)g(to)h(write)d(one)i(output)f(of)h(the)330 3081 y(assem)m(bler)d(instruction)e(directly)h(in)m(to)i(a)f (particular)f(register.)50 b(\(This)32 b(will)e(w)m(ork)k(pro)m(vided)e (the)330 3191 y(register)e(y)m(ou)h(sp)s(ecify)e(\014ts)h(the)h (constrain)m(ts)f(sp)s(eci\014ed)f(for)h(that)h(op)s(erand)e(in)g(the)i Fq(asm)p Fy(.\))150 3435 y Fg(5.39.1)63 b(De\014ning)42 b(Global)g(Register)f(V)-10 b(ariables)275 3637 y Fy(Y)i(ou)30 b(can)h(de\014ne)f(a)g(global)g(register)g(v)-5 b(ariable)30 b(in)f(GNU)i(C)f(lik)m(e)f(this:)390 3776 y Fq(register)46 b(int)g(*foo)h(asm)g(\("a5"\);)150 3920 y Fy(Here)d Fq(a5)e Fy(is)h(the)g(name)h(of)f(the)g(register)h(whic)m(h)e(should)f(b)s(e)h (used.)79 b(Cho)s(ose)43 b(a)h(register)f(whic)m(h)f(is)150 4030 y(normally)25 b(sa)m(v)m(ed)j(and)e(restored)h(b)m(y)g(function)f (calls)g(on)g(y)m(our)h(mac)m(hine,)h(so)f(that)g(library)e(routines)h (will)150 4140 y(not)31 b(clobb)s(er)e(it.)275 4284 y(Naturally)f(the)i (register)f(name)h(is)f(cpu-dep)s(enden)m(t,)f(so)i(y)m(ou)g(w)m(ould)e (need)i(to)g(conditionalize)e(y)m(our)150 4394 y(program)34 b(according)f(to)i(cpu)e(t)m(yp)s(e.)51 b(The)34 b(register)f Fq(a5)h Fy(w)m(ould)e(b)s(e)h(a)i(go)s(o)s(d)e(c)m(hoice)i(on)f(a)g (68000)i(for)e(a)150 4503 y(v)-5 b(ariable)30 b(of)i(p)s(oin)m(ter)e(t) m(yp)s(e.)44 b(On)30 b(mac)m(hines)h(with)f(register)h(windo)m(ws,)f(b) s(e)h(sure)g(to)h(c)m(ho)s(ose)g(a)g(\\global")150 4613 y(register)e(that)h(is)f(not)g(a\013ected)i(magically)e(b)m(y)g(the)g (function)g(call)f(mec)m(hanism.)275 4757 y(In)40 b(addition,)i(op)s (erating)e(systems)h(on)g(one)g(t)m(yp)s(e)g(of)g(cpu)f(ma)m(y)i (di\013er)d(in)h(ho)m(w)h(they)g(name)g(the)150 4867 y(registers;)29 b(then)f(y)m(ou)h(w)m(ould)f(need)g(additional)e (conditionals.)39 b(F)-8 b(or)29 b(example,)g(some)g(68000)h(op)s (erating)150 4976 y(systems)g(call)g(this)f(register)i Fq(\045a5)p Fy(.)275 5121 y(Ev)m(en)m(tually)25 b(there)h(ma)m(y)g(b)s (e)f(a)i(w)m(a)m(y)f(of)g(asking)g(the)g(compiler)e(to)j(c)m(ho)s(ose)f (a)h(register)e(automatically)-8 b(,)150 5230 y(but)36 b(\014rst)f(w)m(e)i(need)f(to)h(\014gure)e(out)i(ho)m(w)f(it)g(should)e (c)m(ho)s(ose)j(and)f(ho)m(w)g(to)h(enable)f(y)m(ou)g(to)h(guide)f(the) 150 5340 y(c)m(hoice.)42 b(No)30 b(solution)f(is)h(eviden)m(t.)p eop %%Page: 212 222 212 221 bop 150 -116 a Fy(212)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))275 299 y(De\014ning)f(a)h(global)g(register)f(v) -5 b(ariable)29 b(in)g(a)i(certain)f(register)g(reserv)m(es)g(that)h (register)f(en)m(tirely)f(for)150 408 y(this)g(use,)h(at)h(least)f (within)e(the)i(curren)m(t)g(compilation.)39 b(The)30 b(register)g(will)d(not)j(b)s(e)g(allo)s(cated)g(for)g(an)m(y)150 518 y(other)35 b(purp)s(ose)f(in)f(the)i(functions)f(in)g(the)h(curren) m(t)f(compilation.)54 b(The)34 b(register)h(will)d(not)k(b)s(e)e(sa)m (v)m(ed)150 628 y(and)40 b(restored)g(b)m(y)g(these)g(functions.)69 b(Stores)40 b(in)m(to)g(this)f(register)h(are)h(nev)m(er)f(deleted)g (ev)m(en)h(if)e(they)150 737 y(w)m(ould)29 b(app)s(ear)h(to)h(b)s(e)f (dead,)g(but)g(references)h(ma)m(y)f(b)s(e)g(deleted)g(or)h(mo)m(v)m (ed)g(or)f(simpli\014ed.)275 880 y(It)j(is)g(not)h(safe)h(to)f(access)h (the)f(global)g(register)f(v)-5 b(ariables)33 b(from)g(signal)g (handlers,)g(or)g(from)h(more)150 990 y(than)i(one)h(thread)g(of)g(con) m(trol,)h(b)s(ecause)f(the)g(system)g(library)d(routines)h(ma)m(y)j (temp)s(orarily)c(use)j(the)150 1099 y(register)30 b(for)g(other)h (things)e(\(unless)g(y)m(ou)i(recompile)e(them)i(sp)s(ecially)d(for)i (the)h(task)g(at)g(hand\).)275 1242 y(It)36 b(is)g(not)g(safe)h(for)f (one)h(function)e(that)i(uses)f(a)h(global)f(register)g(v)-5 b(ariable)36 b(to)h(call)f(another)g(suc)m(h)150 1351 y(function)29 b Fq(foo)f Fy(b)m(y)i(w)m(a)m(y)h(of)f(a)g(third)e (function)h Fq(lose)f Fy(that)j(w)m(as)f(compiled)e(without)h(kno)m (wledge)h(of)g(this)150 1461 y(v)-5 b(ariable)24 b(\(i.e.)i(in)e(a)h (di\013eren)m(t)g(source)h(\014le)e(in)g(whic)m(h)g(the)h(v)-5 b(ariable)25 b(w)m(asn't)g(declared\).)39 b(This)24 b(is)g(b)s(ecause) 150 1571 y Fq(lose)g Fy(migh)m(t)h(sa)m(v)m(e)i(the)f(register)f(and)g (put)g(some)h(other)g(v)-5 b(alue)24 b(there.)40 b(F)-8 b(or)26 b(example,)g(y)m(ou)g(can't)g(exp)s(ect)150 1680 y(a)h(global)e(register)h(v)-5 b(ariable)25 b(to)i(b)s(e)f(a)m(v)-5 b(ailable)25 b(in)g(the)i(comparison-function)d(that)j(y)m(ou)f(pass)g (to)h Fq(qsort)p Fy(,)150 1790 y(since)22 b Fq(qsort)e Fy(migh)m(t)i(ha)m(v)m(e)i(put)d(something)h(else)g(in)f(that)i (register.)38 b(\(If)22 b(y)m(ou)g(are)h(prepared)e(to)i(recompile)150 1899 y Fq(qsort)29 b Fy(with)g(the)i(same)f(global)g(register)g(v)-5 b(ariable,)30 b(y)m(ou)g(can)h(solv)m(e)g(this)e(problem.\))275 2042 y(If)40 b(y)m(ou)i(w)m(an)m(t)g(to)g(recompile)e Fq(qsort)g Fy(or)h(other)h(source)f(\014les)g(whic)m(h)f(do)h(not)g (actually)g(use)g(y)m(our)150 2152 y(global)31 b(register)h(v)-5 b(ariable,)32 b(so)g(that)g(they)g(will)e(not)i(use)g(that)g(register)g (for)g(an)m(y)g(other)g(purp)s(ose,)f(then)150 2261 y(it)c(su\016ces)f (to)i(sp)s(ecify)e(the)h(compiler)f(option)g(`)p Fq(-ffixed-)p Fn(reg)8 b Fy('.)38 b(Y)-8 b(ou)28 b(need)f(not)g(actually)g(add)f(a)i (global)150 2371 y(register)i(declaration)g(to)h(their)f(source)g(co)s (de.)275 2514 y(A)e(function)g(whic)m(h)f(can)i(alter)g(the)g(v)-5 b(alue)28 b(of)h(a)h(global)e(register)g(v)-5 b(ariable)28 b(cannot)h(safely)g(b)s(e)f(called)150 2623 y(from)d(a)h(function)f (compiled)f(without)h(this)g(v)-5 b(ariable,)25 b(b)s(ecause)h(it)f (could)g(clobb)s(er)f(the)i(v)-5 b(alue)26 b(the)g(caller)150 2733 y(exp)s(ects)35 b(to)g(\014nd)d(there)j(on)f(return.)51 b(Therefore,)36 b(the)e(function)f(whic)m(h)g(is)g(the)i(en)m(try)f(p)s (oin)m(t)f(in)m(to)i(the)150 2842 y(part)e(of)g(the)h(program)f(that)h (uses)e(the)i(global)e(register)h(v)-5 b(ariable)32 b(m)m(ust)h (explicitly)e(sa)m(v)m(e)k(and)d(restore)150 2952 y(the)f(v)-5 b(alue)29 b(whic)m(h)h(b)s(elongs)f(to)i(its)f(caller.)275 3095 y(On)d(most)i(mac)m(hines,)f Fq(longjmp)e Fy(will)g(restore)j(to)g (eac)m(h)h(global)d(register)h(v)-5 b(ariable)27 b(the)i(v)-5 b(alue)28 b(it)g(had)150 3204 y(at)i(the)f(time)g(of)g(the)h Fq(setjmp)p Fy(.)38 b(On)29 b(some)g(mac)m(hines,)h(ho)m(w)m(ev)m(er,)h Fq(longjmp)c Fy(will)f(not)k(c)m(hange)g(the)f(v)-5 b(alue)150 3314 y(of)35 b(global)f(register)h(v)-5 b(ariables.)53 b(T)-8 b(o)35 b(b)s(e)f(p)s(ortable,)i(the)f(function)e(that)j(called)e Fq(setjmp)f Fy(should)g(mak)m(e)150 3424 y(other)f(arrangemen)m(ts)h (to)f(sa)m(v)m(e)i(the)e(v)-5 b(alues)31 b(of)h(the)g(global)g (register)f(v)-5 b(ariables,)32 b(and)f(to)h(restore)h(them)150 3533 y(in)c(a)i Fq(longjmp)p Fy(.)39 b(This)28 b(w)m(a)m(y)-8 b(,)32 b(the)f(same)g(thing)e(will)f(happ)s(en)g(regardless)i(of)h (what)f Fq(longjmp)e Fy(do)s(es.)275 3676 y(All)37 b(global)h(register) h(v)-5 b(ariable)38 b(declarations)g(m)m(ust)h(precede)g(all)f (function)f(de\014nitions.)64 b(If)38 b(suc)m(h)150 3785 y(a)c(declaration)f(could)g(app)s(ear)g(after)h(function)e (de\014nitions,)g(the)i(declaration)f(w)m(ould)g(b)s(e)g(to)s(o)h(late) g(to)150 3895 y(prev)m(en)m(t)d(the)g(register)f(from)g(b)s(eing)f (used)g(for)h(other)h(purp)s(oses)e(in)g(the)h(preceding)g(functions.) 275 4038 y(Global)i(register)h(v)-5 b(ariables)32 b(ma)m(y)i(not)g(ha)m (v)m(e)h(initial)30 b(v)-5 b(alues,)34 b(b)s(ecause)f(an)g(executable)h (\014le)f(has)g(no)150 4147 y(means)d(to)h(supply)d(initial)g(con)m (ten)m(ts)k(for)e(a)h(register.)275 4290 y(On)c(the)i(Sparc,)g(there)g (are)g(rep)s(orts)f(that)h(g3)35 b(.)23 b(.)f(.)40 b(g7)29 b(are)g(suitable)f(registers,)h(but)f(certain)g(library)150 4400 y(functions,)j(suc)m(h)g(as)h Fq(getwd)p Fy(,)e(as)i(w)m(ell)f(as) h(the)g(subroutines)d(for)i(division)e(and)i(remainder,)f(mo)s(dify)g (g3)150 4509 y(and)g(g4.)41 b(g1)32 b(and)d(g2)j(are)e(lo)s(cal)g(temp) s(oraries.)275 4652 y(On)g(the)h(68000,)j(a2)k(.)22 b(.)g(.)43 b(a5)32 b(should)d(b)s(e)i(suitable,)f(as)i(should)d(d2)36 b(.)23 b(.)f(.)43 b(d7.)g(Of)30 b(course,)i(it)f(will)e(not)150 4762 y(do)h(to)h(use)f(more)h(than)f(a)h(few)f(of)h(those.)150 5002 y Fg(5.39.2)63 b(Sp)s(ecifying)41 b(Registers)h(for)f(Lo)s(cal)f (V)-10 b(ariables)275 5203 y Fy(Y)i(ou)30 b(can)h(de\014ne)f(a)g(lo)s (cal)g(register)g(v)-5 b(ariable)30 b(with)f(a)h(sp)s(eci\014ed)f (register)h(lik)m(e)g(this:)390 5340 y Fq(register)46 b(int)g(*foo)h(asm)g(\("a5"\);)p eop %%Page: 213 223 213 222 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(213)150 299 y(Here)27 b Fq(a5)g Fy(is)f(the)h(name)g(of)g(the)g(register)f (whic)m(h)g(should)f(b)s(e)h(used.)39 b(Note)28 b(that)f(this)f(is)g (the)h(same)g(syn)m(tax)150 408 y(used)i(for)h(de\014ning)e(global)h (register)h(v)-5 b(ariables,)29 b(but)g(for)h(a)g(lo)s(cal)f(v)-5 b(ariable)29 b(it)g(w)m(ould)g(app)s(ear)g(within)f(a)150 518 y(function.)275 661 y(Naturally)33 b(the)i(register)f(name)g(is)g (cpu-dep)s(enden)m(t,)g(but)g(this)f(is)h(not)g(a)h(problem,)f(since)g (sp)s(eci\014c)150 771 y(registers)j(are)g(most)h(often)f(useful)e (with)h(explicit)g(assem)m(bler)g(instructions)f(\(see)j(Section)f (5.36)i([Ex-)150 881 y(tended)25 b(Asm],)i(page)f(193\).)41 b(Both)26 b(of)g(these)g(things)f(generally)g(require)f(that)i(y)m(ou)g (conditionalize)e(y)m(our)150 990 y(program)30 b(according)g(to)i(cpu)d (t)m(yp)s(e.)275 1133 y(In)40 b(addition,)i(op)s(erating)e(systems)h (on)g(one)g(t)m(yp)s(e)g(of)g(cpu)f(ma)m(y)i(di\013er)d(in)h(ho)m(w)h (they)g(name)g(the)150 1243 y(registers;)29 b(then)f(y)m(ou)h(w)m(ould) f(need)g(additional)e(conditionals.)39 b(F)-8 b(or)29 b(example,)g(some)g(68000)h(op)s(erating)150 1353 y(systems)g(call)g (this)f(register)i Fq(\045a5)p Fy(.)275 1496 y(De\014ning)k(suc)m(h)g (a)i(register)f(v)-5 b(ariable)35 b(do)s(es)h(not)g(reserv)m(e)h(the)f (register;)j(it)d(remains)f(a)m(v)-5 b(ailable)35 b(for)150 1606 y(other)28 b(uses)g(in)e(places)i(where)f(\015o)m(w)h(con)m(trol)g (determines)f(the)h(v)-5 b(ariable's)27 b(v)-5 b(alue)27 b(is)g(not)h(liv)m(e.)40 b(Ho)m(w)m(ev)m(er,)150 1715 y(these)30 b(registers)f(are)h(made)g(una)m(v)-5 b(ailable)28 b(for)h(use)g(in)f(the)i(reload)f(pass;)h(excessiv)m(e)g(use)f(of)h (this)e(feature)150 1825 y(lea)m(v)m(es)k(the)e(compiler)f(to)s(o)i (few)f(a)m(v)-5 b(ailable)30 b(registers)g(to)h(compile)f(certain)g (functions.)275 1968 y(This)j(option)i(do)s(es)h(not)f(guaran)m(tee)j (that)e(GCC)f(will)e(generate)k(co)s(de)f(that)g(has)f(this)g(v)-5 b(ariable)34 b(in)150 2078 y(the)28 b(register)g(y)m(ou)h(sp)s(ecify)d (at)j(all)e(times.)40 b(Y)-8 b(ou)28 b(ma)m(y)h(not)f(co)s(de)g(an)g (explicit)f(reference)h(to)h(this)e(register)150 2187 y(in)i(an)h Fq(asm)g Fy(statemen)m(t)i(and)e(assume)g(it)g(will)e(alw)m (a)m(ys)i(refer)h(to)g(this)e(v)-5 b(ariable.)275 2331 y(Stores)22 b(in)m(to)h(lo)s(cal)f(register)h(v)-5 b(ariables)21 b(ma)m(y)j(b)s(e)e(deleted)h(when)e(they)i(app)s(ear)g(to)g(b)s(e)f (dead)h(according)150 2440 y(to)42 b(data\015o)m(w)f(analysis.)71 b(References)42 b(to)f(lo)s(cal)f(register)h(v)-5 b(ariables)40 b(ma)m(y)h(b)s(e)g(deleted)f(or)h(mo)m(v)m(ed)h(or)150 2550 y(simpli\014ed.)150 2829 y Fs(5.40)68 b(Alternate)46 b(Keyw)l(ords)275 3031 y Fy(The)37 b(option)h(`)p Fq(-traditional)p Fy(')e(disables)g(certain)i(k)m(eyw)m(ords;)43 b(`)p Fq(-ansi)p Fy(')38 b(and)g(the)g(v)-5 b(arious)38 b(`)p Fq(-std)p Fy(')150 3140 y(options)22 b(disable)f(certain)i(others.)38 b(This)21 b(causes)j(trouble)d(when)h(y)m(ou)h(w)m(an)m(t)h(to)g(use)e (GNU)i(C)e(extensions,)150 3250 y(or)32 b(ISO)g(C)g(features,)h(in)e(a) i(general-purp)s(ose)e(header)h(\014le)f(that)i(should)e(b)s(e)g (usable)h(b)m(y)g(all)f(programs,)150 3359 y(including)j(ISO)i(C)i (programs)f(and)g(traditional)e(ones.)63 b(The)37 b(k)m(eyw)m(ords)g Fq(asm)p Fy(,)i Fq(typeof)d Fy(and)h Fq(inline)150 3469 y Fy(cannot)25 b(b)s(e)e(used)h(since)f(they)i(w)m(on't)g(w)m(ork)f(in) f(a)i(program)f(compiled)e(with)h(`)p Fq(-ansi)p Fy(')h(\(although)g Fq(inline)150 3579 y Fy(can)j(b)s(e)f(used)g(in)f(a)i(program)f (compiled)f(with)g(`)p Fq(-std=c99)p Fy('\),)i(while)d(the)j(k)m(eyw)m (ords)g Fq(const)p Fy(,)f Fq(volatile)p Fy(,)150 3688 y Fq(signed)p Fy(,)i Fq(typeof)g Fy(and)i Fq(inline)e Fy(w)m(on't)i(w)m(ork)g(in)e(a)j(program)e(compiled)f(with)h(`)p Fq(-traditional)p Fy('.)37 b(The)150 3798 y(ISO)30 b(C99)h(k)m(eyw)m (ord)g Fq(restrict)d Fy(is)i(only)f(a)m(v)-5 b(ailable)30 b(when)g(`)p Fq(-std=gnu99)p Fy(')e(\(whic)m(h)i(will)e(ev)m(en)m (tually)j(b)s(e)150 3907 y(the)g(default\))e(or)i(`)p Fq(-std=c99)p Fy(')d(\(or)j(the)g(equiv)-5 b(alen)m(t)30 b(`)p Fq(-std=iso9899:1999)p Fy('\))c(is)j(used.)275 4051 y(The)j(w)m(a)m(y)j(to)f(solv)m(e)f(these)h(problems)d(is)i(to)h (put)e(`)p Fq(__)p Fy(')h(at)h(the)g(b)s(eginning)c(and)j(end)g(of)g (eac)m(h)i(prob-)150 4160 y(lematical)29 b(k)m(eyw)m(ord.)41 b(F)-8 b(or)31 b(example,)f(use)f Fq(__asm__)f Fy(instead)h(of)h Fq(asm)p Fy(,)g Fq(__const__)d Fy(instead)i(of)h Fq(const)p Fy(,)150 4270 y(and)g Fq(__inline__)d Fy(instead)j(of)h Fq(inline)p Fy(.)275 4413 y(Other)c(C)h(compilers)f(w)m(on't)i(accept)g (these)g(alternativ)m(e)g(k)m(eyw)m(ords;)g(if)e(y)m(ou)i(w)m(an)m(t)g (to)g(compile)e(with)150 4523 y(another)37 b(compiler,)h(y)m(ou)f(can)g (de\014ne)f(the)h(alternate)h(k)m(eyw)m(ords)f(as)g(macros)h(to)f (replace)g(them)g(with)150 4632 y(the)31 b(customary)f(k)m(eyw)m(ords.) 41 b(It)31 b(lo)s(oks)f(lik)m(e)f(this:)390 4770 y Fq(#ifndef)46 b(__GNUC__)390 4874 y(#define)g(__asm__)g(asm)390 4977 y(#endif)275 5121 y Fy(`)p Fq(-pedantic)p Fy(')20 b(and)i(other)h (options)e(cause)j(w)m(arnings)d(for)h(man)m(y)h(GNU)g(C)f(extensions.) 37 b(Y)-8 b(ou)23 b(can)g(pre-)150 5230 y(v)m(en)m(t)29 b(suc)m(h)f(w)m(arnings)e(within)g(one)i(expression)e(b)m(y)i(writing)e Fq(__extension__)e Fy(b)s(efore)k(the)g(expression.)150 5340 y Fq(__extension__)f Fy(has)j(no)g(e\013ect)i(aside)e(from)g (this.)p eop %%Page: 214 224 214 223 bop 150 -116 a Fy(214)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fs(5.41)68 b(Incomplete)46 b Ft(enum)d Fs(T)l(yp)t(es)275 496 y Fy(Y)-8 b(ou)38 b(can)g(de\014ne)f(an)h Fq(enum)f Fy(tag)i(without)e(sp)s(ecifying)f (its)h(p)s(ossible)f(v)-5 b(alues.)63 b(This)36 b(results)g(in)h(an)150 605 y(incomplete)f(t)m(yp)s(e,)i(m)m(uc)m(h)e(lik)m(e)g(what)g(y)m(ou)h (get)g(if)e(y)m(ou)i(write)e Fq(struct)29 b(foo)35 b Fy(without)h(describing)e(the)150 715 y(elemen)m(ts.)41 b(A)31 b(later)f(declaration)g(whic)m(h)f(do)s(es)h(sp)s(ecify)f(the)i (p)s(ossible)d(v)-5 b(alues)29 b(completes)i(the)f(t)m(yp)s(e.)275 854 y(Y)-8 b(ou)34 b(can't)g(allo)s(cate)g(v)-5 b(ariables)32 b(or)i(storage)h(using)d(the)i(t)m(yp)s(e)g(while)d(it)i(is)g (incomplete.)50 b(Ho)m(w)m(ev)m(er,)150 963 y(y)m(ou)31 b(can)f(w)m(ork)h(with)e(p)s(oin)m(ters)g(to)i(that)g(t)m(yp)s(e.)275 1102 y(This)21 b(extension)i(ma)m(y)g(not)h(b)s(e)e(v)m(ery)h(useful,)g (but)g(it)f(mak)m(es)i(the)g(handling)c(of)j Fq(enum)f Fy(more)i(consisten)m(t)150 1212 y(with)29 b(the)i(w)m(a)m(y)g Fq(struct)e Fy(and)g Fq(union)g Fy(are)i(handled.)275 1350 y(This)d(extension)i(is)g(not)g(supp)s(orted)f(b)m(y)h(GNU)h(C)p Fq(++)p Fy(.)150 1618 y Fs(5.42)68 b(F)-11 b(unction)44 b(Names)i(as)f(Strings)275 1815 y Fy(GCC)38 b(prede\014nes)g(t)m(w)m(o) i(magic)f(iden)m(ti\014ers)e(to)j(hold)e(the)h(name)g(of)g(the)g (curren)m(t)g(function.)65 b(The)150 1925 y(iden)m(ti\014er)34 b Fq(__FUNCTION__)f Fy(holds)h(the)j(name)f(of)g(the)g(function)f(as)h (it)f(app)s(ears)h(in)e(the)j(source.)57 b(The)150 2034 y(iden)m(ti\014er)21 b Fq(__PRETTY_FUNCTION__)d Fy(holds)j(the)i(name)g (of)g(the)g(function)e(prett)m(y)j(prin)m(ted)d(in)g(a)j(language)150 2144 y(sp)s(eci\014c)29 b(fashion.)275 2283 y(These)k(names)h(are)g (alw)m(a)m(ys)g(the)g(same)g(in)e(a)i(C)f(function,)h(but)f(in)f(a)i(C) p Fq(++)f Fy(function)f(they)i(ma)m(y)h(b)s(e)150 2392 y(di\013eren)m(t.)40 b(F)-8 b(or)31 b(example,)g(this)e(program:)390 2525 y Fq(extern)46 b("C")h({)390 2629 y(extern)f(int)h(printf)f (\(char)g(*,)i(...\);)390 2733 y(})390 2940 y(class)e(a)i({)438 3044 y(public:)485 3148 y(sub)f(\(int)g(i\))581 3252 y({)676 3355 y(printf)f(\("__FUNCTION__)e(=)k(\045s\\n",)e (__FUNCTION__\);)676 3459 y(printf)g(\("__PRETTY_FUNCTION__)c(=)48 b(\045s\\n",)e(__PRETTY_FUNCTION__\);)581 3563 y(})390 3667 y(};)390 3874 y(int)390 3978 y(main)h(\(void\))390 4082 y({)485 4186 y(a)h(ax;)485 4289 y(ax.sub)f(\(0\);)485 4393 y(return)g(0;)390 4497 y(})150 4636 y Fy(giv)m(es)31 b(this)e(output:)390 4769 y Fq(__FUNCTION__)44 b(=)k(sub)390 4872 y(__PRETTY_FUNCTION__)43 b(=)k(int)95 b(a::sub)46 b(\(int\))275 5011 y Fy(The)34 b(compiler)f(automagically)h(replaces)h (the)f(iden)m(ti\014ers)f(with)g(a)i(string)f(literal)f(con)m(taining)h (the)150 5121 y(appropriate)26 b(name.)39 b(Th)m(us,)27 b(they)g(are)g(neither)e(prepro)s(cessor)h(macros,)i(lik)m(e)e Fq(__FILE__)f Fy(and)h Fq(__LINE_)150 5230 y(_)p Fy(,)38 b(nor)d(v)-5 b(ariables.)57 b(This)35 b(means)h(that)h(they)f(catenate) i(with)d(other)i(string)e(literals,)h(and)g(that)h(they)150 5340 y(can)31 b(b)s(e)e(used)h(to)h(initialize)d(c)m(har)j(arra)m(ys.) 41 b(F)-8 b(or)31 b(example)p eop %%Page: 215 225 215 224 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(215)390 299 y Fq(char)47 b(here[])f(=)h("Function)e(")j(__FUNCTION__)c(")k(in)f (")g(__FILE__;)275 433 y Fy(On)f(the)i(other)g(hand,)j(`)p Fq(#ifdef)29 b(__FUNCTION__)p Fy(')44 b(do)s(es)j(not)h(ha)m(v)m(e)h (an)m(y)f(sp)s(ecial)e(meaning)h(in-)150 543 y(side)42 b(a)i(function,)i(since)d(the)h(prepro)s(cessor)e(do)s(es)i(not)f(do)h (an)m(ything)f(sp)s(ecial)f(with)g(the)i(iden)m(ti\014er)150 653 y Fq(__FUNCTION__)p Fy(.)275 787 y(Note)30 b(that)g(these)f(seman)m (tics)h(are)f(deprecated,)i(and)d(that)i(GCC)f(3.2)h(will)d(handle)g Fq(__FUNCTION__)150 897 y Fy(and)37 b Fq(__PRETTY_FUNCTION__)c Fy(the)38 b(same)g(w)m(a)m(y)h(as)f Fq(__func__)p Fy(.)61 b Fq(__func__)36 b Fy(is)h(de\014ned)f(b)m(y)i(the)g(ISO)150 1006 y(standard)30 b(C99:)390 1135 y(The)g(iden)m(ti\014er)e Fq(__func__)h Fy(is)g(implicitly)e(declared)i(b)m(y)i(the)f(translator) 390 1239 y(as)h(if,)e(immediately)g(follo)m(wing)g(the)h(op)s(ening)f (brace)i(of)f(eac)m(h)i(function)390 1342 y(de\014nition,)c(the)j (declaration)630 1550 y Fq(static)46 b(const)g(char)h(__func__[])e(=)j ("function-name";)390 1758 y Fy(app)s(eared,)30 b(where)g (function-name)f(is)h(the)g(name)h(of)f(the)h(lexically-enclosing)390 1861 y(function.)60 b(This)28 b(name)j(is)e(the)i(unadorned)d(name)j (of)f(the)h(function.)275 1996 y(By)i(this)f(de\014nition,)g Fq(__func__)f Fy(is)i(a)g(v)-5 b(ariable,)33 b(not)h(a)g(string)e (literal.)48 b(In)33 b(particular,)f Fq(__func__)150 2105 y Fy(do)s(es)e(not)h(catenate)h(with)d(other)i(string)e(literals.) 275 2240 y(In)36 b Fq(C++)p Fy(,)j Fq(__FUNCTION__)34 b Fy(and)i Fq(__PRETTY_FUNCTION__)c Fy(are)38 b(v)-5 b(ariables,)38 b(declared)f(in)f(the)i(same)150 2350 y(w)m(a)m(y)31 b(as)g Fq(__func__)p Fy(.)150 2607 y Fs(5.43)68 b(Getting)46 b(the)f(Return)h(or)f(F)-11 b(rame)45 b(Address)f(of)h(a)g (F)-11 b(unction)275 2800 y Fy(These)30 b(functions)f(ma)m(y)i(b)s(e)e (used)h(to)h(get)g(information)e(ab)s(out)h(the)h(callers)e(of)i(a)g (function.)3188 3034 y(Built-in)d(F)-8 b(unction)-3725 b Ff(void)54 b(*)e(__builtin_return_addre)q(ss)g Fe(\()p Fq(unsigned)28 b(int)i Fn(lev)m(el)t Fe(\))390 3143 y Fy(This)20 b(function)h(returns)g(the)i(return)e(address)g(of)i(the)f (curren)m(t)g(function,)h(or)f(of)h(one)f(of)h(its)f(callers.)390 3253 y(The)28 b Fn(lev)m(el)j Fy(argumen)m(t)d(is)f(n)m(um)m(b)s(er)g (of)h(frames)g(to)h(scan)f(up)f(the)h(call)g(stac)m(k.)41 b(A)28 b(v)-5 b(alue)28 b(of)g Fq(0)g Fy(yields)390 3362 y(the)35 b(return)e(address)h(of)g(the)h(curren)m(t)f(function,)h(a)g (v)-5 b(alue)34 b(of)g Fq(1)g Fy(yields)f(the)i(return)e(address)h(of) 390 3472 y(the)d(caller)e(of)i(the)f(curren)m(t)h(function,)e(and)h(so) g(forth.)390 3606 y(The)g Fn(lev)m(el)k Fy(argumen)m(t)c(m)m(ust)h(b)s (e)e(a)i(constan)m(t)h(in)m(teger.)390 3741 y(On)44 b(some)i(mac)m (hines)f(it)g(ma)m(y)h(b)s(e)f(imp)s(ossible)c(to)46 b(determine)f(the)g(return)g(address)f(of)i(an)m(y)390 3851 y(function)31 b(other)i(than)f(the)g(curren)m(t)g(one;)i(in)d(suc) m(h)h(cases,)i(or)f(when)e(the)i(top)f(of)h(the)f(stac)m(k)i(has)390 3960 y(b)s(een)26 b(reac)m(hed,)j(this)d(function)g(will)f(return)h Fq(0)h Fy(or)g(a)g(random)g(v)-5 b(alue.)39 b(In)26 b(addition,)h Fq(__builtin_)390 4070 y(frame_address)g Fy(ma)m(y)k(b)s(e)e(used)h(to) h(determine)f(if)f(the)i(top)f(of)h(the)f(stac)m(k)i(has)e(b)s(een)g (reac)m(hed.)390 4204 y(This)f(function)g(should)f(only)i(b)s(e)f(used) h(with)f(a)i(nonzero)f(argumen)m(t)h(for)f(debugging)g(purp)s(oses.) 3188 4438 y(Built-in)e(F)-8 b(unction)-3725 b Ff(void)54 b(*)e(__builtin_frame_addres)q(s)g Fe(\()p Fq(unsigned)28 b(int)i Fn(lev)m(el)t Fe(\))390 4548 y Fy(This)c(function)g(is)g (similar)f(to)j Fq(__builtin_return_address)p Fy(,)22 b(but)k(it)h(returns)g(the)g(address)g(of)390 4658 y(the)22 b(function)f(frame)h(rather)g(than)g(the)g(return)f(address)g(of)h(the) g(function.)37 b(Calling)20 b Fq(__builtin_)390 4767 y(frame_address)28 b Fy(with)i(a)i(v)-5 b(alue)31 b(of)g Fq(0)g Fy(yields)f(the)i(frame)f(address)f(of)i(the)g(curren)m(t)f (function,)g(a)390 4877 y(v)-5 b(alue)29 b(of)g Fq(1)g Fy(yields)f(the)h(frame)g(address)g(of)g(the)h(caller)e(of)i(the)f (curren)m(t)g(function,)g(and)g(so)g(forth.)390 5011 y(The)36 b(frame)h(is)f(the)h(area)h(on)e(the)h(stac)m(k)h(whic)m(h)e (holds)f(lo)s(cal)h(v)-5 b(ariables)36 b(and)g(sa)m(v)m(ed)i (registers.)390 5121 y(The)c(frame)g(address)g(is)f(normally)g(the)i (address)e(of)i(the)g(\014rst)e(w)m(ord)i(pushed)d(on)j(to)g(the)f (stac)m(k)390 5230 y(b)m(y)g(the)h(function.)50 b(Ho)m(w)m(ev)m(er,)38 b(the)c(exact)i(de\014nition)c(dep)s(ends)g(up)s(on)h(the)h(pro)s (cessor)g(and)g(the)390 5340 y(calling)g(con)m(v)m(en)m(tion.)56 b(If)35 b(the)g(pro)s(cessor)g(has)g(a)g(dedicated)g(frame)g(p)s(oin)m (ter)g(register,)h(and)f(the)p eop %%Page: 216 226 216 225 bop 150 -116 a Fy(216)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y(function)36 b(has)h(a)h(frame,)h(then)f Fq(__builtin_frame_address)31 b Fy(will)j(return)j(the)g(v)-5 b(alue)37 b(of)h(the)390 408 y(frame)30 b(p)s(oin)m(ter)g(register.)390 538 y(On)20 b(some)g(mac)m(hines)g(it)g(ma)m(y)i(b)s(e)d(imp)s(ossible) e(to)22 b(determine)d(the)i(frame)f(address)g(of)g(an)m(y)h(function) 390 647 y(other)41 b(than)g(the)g(curren)m(t)f(one;)47 b(in)39 b(suc)m(h)i(cases,)j(or)d(when)f(the)h(top)g(of)g(the)g(stac)m (k)h(has)f(b)s(een)390 757 y(reac)m(hed,)30 b(this)d(function)h(will)e (return)h Fq(0)h Fy(if)g(the)h(\014rst)f(frame)g(p)s(oin)m(ter)g(is)f (prop)s(erly)g(initialized)e(b)m(y)390 867 y(the)31 b(startup)f(co)s (de.)390 996 y(This)f(function)g(should)f(only)i(b)s(e)f(used)h(with)f (a)i(nonzero)f(argumen)m(t)h(for)f(debugging)g(purp)s(oses.)150 1238 y Fs(5.44)68 b(Using)46 b(v)l(ector)g(instructions)f(through)g (built-in)g(functions)275 1425 y Fy(On)29 b(some)h(targets,)i(the)f (instruction)d(set)i(con)m(tains)h(SIMD)f(v)m(ector)i(instructions)c (that)i(op)s(erate)h(on)150 1535 y(m)m(ultiple)e(v)-5 b(alues)31 b(con)m(tained)g(in)f(one)i(large)f(register)g(at)h(the)g (same)f(time.)43 b(F)-8 b(or)32 b(example,)g(on)f(the)g(i386)150 1644 y(the)g(MMX,)g(3Dno)m(w!)42 b(and)29 b(SSE)h(extensions)f(can)i(b) s(e)f(used)f(this)h(w)m(a)m(y)-8 b(.)275 1774 y(The)39 b(\014rst)g(step)g(in)g(using)f(these)i(extensions)f(is)g(to)h(pro)m (vide)f(the)h(necessary)g(data)g(t)m(yp)s(es.)69 b(This)150 1883 y(should)28 b(b)s(e)i(done)g(using)f(an)h(appropriate)g Fq(typedef)p Fy(:)390 2007 y Fq(typedef)46 b(int)h(v4si)f (__attribute__)f(\(\(mode\(V4SI\)\)\);)275 2136 y Fy(The)24 b(base)h(t)m(yp)s(e)g Fq(int)f Fy(is)g(e\013ectiv)m(ely)h(ignored)f(b)m (y)h(the)g(compiler,)g(the)g(actual)g(prop)s(erties)e(of)i(the)g(new) 150 2245 y(t)m(yp)s(e)31 b Fq(v4si)f Fy(are)h(de\014ned)f(b)m(y)h(the)g Fq(__attribute__)p Fy(.)38 b(It)31 b(de\014nes)f(the)i(mac)m(hine)e(mo) s(de)h(to)g(b)s(e)g(used;)f(for)150 2355 y(v)m(ector)36 b(t)m(yp)s(es)e(these)h(ha)m(v)m(e)g(the)f(form)g Fq(V)p Fn(nB)5 b Fy(;)36 b Fn(n)e Fy(should)e(b)s(e)i(the)g(n)m(um)m(b)s(er)f (of)h(elemen)m(ts)h(in)e(the)h(v)m(ector,)150 2465 y(and)f Fn(B)40 b Fy(should)32 b(b)s(e)h(the)h(base)g(mo)s(de)f(of)h(the)h (individual)29 b(elemen)m(ts.)51 b(The)34 b(follo)m(wing)e(can)i(b)s(e) g(used)f(as)150 2574 y(base)e(mo)s(des:)150 2723 y Fq(QI)384 b Fy(An)30 b(in)m(teger)h(that)g(is)e(as)i(wide)e(as)h(the)h(smallest)f (addressable)f(unit,)g(usually)f(8)j(bits.)150 2872 y Fq(HI)384 b Fy(An)30 b(in)m(teger,)h(t)m(wice)g(as)f(wide)g(as)g(a)h (QI)f(mo)s(de)g(in)m(teger,)h(usually)d(16)j(bits.)150 3021 y Fq(SI)384 b Fy(An)30 b(in)m(teger,)h(four)f(times)g(as)g(wide)f (as)i(a)g(QI)f(mo)s(de)f(in)m(teger,)i(usually)e(32)i(bits.)150 3170 y Fq(DI)384 b Fy(An)30 b(in)m(teger,)h(eigh)m(t)g(times)f(as)g (wide)f(as)i(a)g(QI)f(mo)s(de)g(in)m(teger,)h(usually)d(64)j(bits.)150 3319 y Fq(SF)384 b Fy(A)30 b(\015oating)h(p)s(oin)m(t)e(v)-5 b(alue,)30 b(as)h(wide)e(as)i(a)f(SI)g(mo)s(de)g(in)m(teger,)h(usually) d(32)j(bits.)150 3468 y Fq(DF)384 b Fy(A)30 b(\015oating)h(p)s(oin)m(t) e(v)-5 b(alue,)30 b(as)h(wide)e(as)i(a)f(DI)h(mo)s(de)f(in)m(teger,)h (usually)d(64)j(bits.)275 3617 y(Not)h(all)e(base)h(t)m(yp)s(es)g(or)g (com)m(binations)f(are)i(alw)m(a)m(ys)g(v)-5 b(alid;)30 b(whic)m(h)f(mo)s(des)i(can)g(b)s(e)g(used)f(is)g(deter-)150 3727 y(mined)k(b)m(y)i(the)g(target)i(mac)m(hine.)57 b(F)-8 b(or)37 b(example,)g(if)e(targetting)i(the)f(i386)h(MMX)g (extensions,)g(only)150 3836 y Fq(V8QI)p Fy(,)29 b Fq(V4HI)h Fy(and)f Fq(V2SI)h Fy(are)g(allo)m(w)m(ed)h(mo)s(des.)275 3966 y(There)38 b(are)h(no)f Fq(V1xx)g Fy(v)m(ector)i(mo)s(des)e(-)h (they)f(w)m(ould)g(b)s(e)g(iden)m(tical)f(to)i(the)g(corresp)s(onding)e (base)150 4075 y(mo)s(de.)275 4205 y(There)c(is)g(no)h(distinction)e(b) s(et)m(w)m(een)j(signed)e(and)g(unsigned)f(v)m(ector)k(mo)s(des.)51 b(This)32 b(distinction)g(is)150 4314 y(made)e(b)m(y)h(the)f(op)s (erations)g(that)h(p)s(erform)e(on)h(the)h(v)m(ectors,)h(not)e(b)m(y)h (the)f(data)h(t)m(yp)s(e.)275 4444 y(The)e(t)m(yp)s(es)h(de\014ned)e (in)h(this)f(manner)h(are)i(somewhat)f(sp)s(ecial,)f(they)g(cannot)i(b) s(e)e(used)g(with)g(most)150 4553 y(normal)34 b(C)g(op)s(erations)g (\(i.e.,)i(a)f(v)m(ector)h(addition)d(can)i Fr(not)43 b Fy(b)s(e)34 b(represen)m(ted)h(b)m(y)f(a)h(normal)f(addition)150 4663 y(of)28 b(t)m(w)m(o)h(v)m(ector)g(t)m(yp)s(e)f(v)-5 b(ariables\).)39 b(Y)-8 b(ou)28 b(can)g(declare)f(only)g(v)-5 b(ariables)26 b(and)h(use)h(them)f(in)f(function)h(calls)150 4772 y(and)g(returns,)f(as)i(w)m(ell)e(as)h(in)f(assignmen)m(ts)h(and)g (some)g(casts.)41 b(It)27 b(is)f(p)s(ossible)f(to)j(cast)g(from)f(one)g (v)m(ector)150 4882 y(t)m(yp)s(e)36 b(to)g(another,)h(pro)m(vided)e (they)g(are)h(of)g(the)g(same)g(size)f(\(in)g(fact,)j(y)m(ou)e(can)g (also)g(cast)g(v)m(ectors)h(to)150 4991 y(and)30 b(from)g(other)g (datat)m(yp)s(es)h(of)g(the)g(same)f(size\).)275 5121 y(A)j(p)s(ort)f(that)i(supp)s(orts)d(v)m(ector)k(op)s(erations)e(pro)m (vides)f(a)h(set)h(of)g(built-in)c(functions)h(that)j(can)g(b)s(e)150 5230 y(used)g(to)h(op)s(erate)g(on)g(v)m(ectors.)55 b(F)-8 b(or)35 b(example,)h(a)f(function)e(to)j(add)e(t)m(w)m(o)i(v)m(ectors)g (and)e(m)m(ultiply)e(the)150 5340 y(result)d(b)m(y)i(a)f(third)f(could) g(lo)s(ok)h(lik)m(e)g(this:)p eop %%Page: 217 227 217 226 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(217)390 299 y Fq(v4si)47 b(f)g(\(v4si)f(a,)i(v4si)e(b,)h(v4si)g(c\))390 403 y({)485 506 y(v4si)g(tmp)g(=)g(__builtin_addv4si)d(\(a,)i(b\);)485 610 y(return)h(__builtin_mulv4si)c(\(tmp,)j(c\);)390 714 y(})150 1108 y Fs(5.45)68 b(Other)46 b(built-in)f(functions)g(pro)l (vided)g(b)l(y)f(GCC)275 1314 y Fy(GCC)24 b(pro)m(vides)g(a)i(large)f (n)m(um)m(b)s(er)f(of)h(built-in)d(functions)i(other)h(than)g(the)h (ones)f(men)m(tioned)f(ab)s(o)m(v)m(e.)150 1423 y(Some)e(of)g(these)h (are)f(for)g(in)m(ternal)f(use)h(in)e(the)j(pro)s(cessing)d(of)j (exceptions)f(or)g(v)-5 b(ariable-length)20 b(argumen)m(t)150 1533 y(lists)31 b(and)h(will)e(not)j(b)s(e)f(do)s(cumen)m(ted)g(here)h (b)s(ecause)g(they)f(ma)m(y)i(c)m(hange)f(from)g(time)f(to)h(time;)h(w) m(e)f(do)150 1642 y(not)e(recommend)f(general)g(use)g(of)h(these)g (functions.)275 1790 y(The)e(remaining)g(functions)g(are)i(pro)m(vided) e(for)h(optimization)f(purp)s(oses.)275 1938 y(GCC)h(includes)e (built-in)f(v)m(ersions)j(of)h(man)m(y)g(of)g(the)g(functions)e(in)g (the)i(standard)f(C)g(library)-8 b(.)39 b(The)150 2047 y(v)m(ersions)34 b(pre\014xed)g(with)g Fq(__builtin_)e Fy(will)h(alw)m(a)m(ys)i(b)s(e)g(treated)h(as)f(ha)m(ving)g(the)g(same) g(meaning)g(as)150 2157 y(the)g(C)f(library)e(function)h(ev)m(en)i(if)f (y)m(ou)h(sp)s(ecify)e(the)h(`)p Fq(-fno-builtin)p Fy(')e(option.)53 b(\(see)35 b(Section)f(3.4)i([C)150 2266 y(Dialect)f(Options],)f(page)h (19\))g(Man)m(y)g(of)f(these)h(functions)d(are)j(only)e(optimized)g(in) g(certain)h(cases;)j(if)150 2376 y(they)31 b(are)f(not)h(optimized)e (in)g(a)i(particular)e(case,)i(a)g(call)f(to)h(the)f(library)e (function)h(will)f(b)s(e)i(emitted.)275 2524 y(The)47 b(functions)f Fq(abort)p Fy(,)51 b Fq(exit)p Fy(,)g Fq(_Exit)46 b Fy(and)h Fq(_exit)f Fy(are)i(recognized)g(and)f(presumed)f(not)i(to) 150 2633 y(return,)f(but)d(otherwise)h(are)g(not)g(built)d(in.)83 b Fq(_exit)43 b Fy(is)h(not)h(recognized)g(in)e(strict)h(ISO)g(C)g(mo)s (de)150 2743 y(\(`)p Fq(-ansi)p Fy(',)34 b(`)p Fq(-std=c89)p Fy(')e(or)h(`)p Fq(-std=c99)p Fy('\).)49 b Fq(_Exit)32 b Fy(is)h(not)h(recognized)g(in)e(strict)h(C89)h(mo)s(de)g(\(`)p Fq(-ansi)p Fy(')150 2852 y(or)c(`)p Fq(-std=c89)p Fy('\).)275 3000 y(Outside)37 b(strict)h(ISO)g(C)g(mo)s(de,)j(the)e(functions)e Fq(alloca)p Fy(,)i Fq(bcmp)p Fy(,)h Fq(bzero)p Fy(,)g Fq(index)p Fy(,)f Fq(rindex)p Fy(,)h Fq(ffs)p Fy(,)150 3110 y Fq(fputs_unlocked)p Fy(,)g Fq(printf_unlocked)e Fy(and)i Fq(fprintf_unlocked)d Fy(ma)m(y)42 b(b)s(e)f(handled)e(as)j (built-in)150 3219 y(functions.)37 b(All)23 b(these)i(functions)e(ha)m (v)m(e)i(corresp)s(onding)e(v)m(ersions)g(pre\014xed)g(with)g Fq(__builtin_)p Fy(,)g(whic)m(h)150 3329 y(ma)m(y)31 b(b)s(e)f(used)f(ev)m(en)i(in)e(strict)i(C89)f(mo)s(de.)275 3476 y(The)38 b(ISO)f(C99)j(functions)d Fq(conj)p Fy(,)j Fq(conjf)p Fy(,)g Fq(conjl)p Fy(,)f Fq(creal)p Fy(,)h Fq(crealf)p Fy(,)f Fq(creall)p Fy(,)h Fq(cimag)p Fy(,)f Fq(cimagf)p Fy(,)150 3586 y Fq(cimagl)p Fy(,)44 b Fq(llabs)c Fy(and)i Fq(imaxabs)e Fy(are)i(handled)f(as)h(built-in)d(functions)i (except)i(in)d(strict)i(ISO)f(C89)150 3696 y(mo)s(de.)f(There)28 b(are)h(also)g(built-in)d(v)m(ersions)i(of)h(the)g(ISO)f(C99)h (functions)f Fq(cosf)p Fy(,)g Fq(cosl)p Fy(,)g Fq(fabsf)p Fy(,)g Fq(fabsl)p Fy(,)150 3805 y Fq(sinf)p Fy(,)23 b Fq(sinl)p Fy(,)g Fq(sqrtf)p Fy(,)g(and)f Fq(sqrtl)p Fy(,)h(that)h(are)f (recognized)f(in)g(an)m(y)h(mo)s(de)f(since)g(ISO)f(C89)i(reserv)m(es)g (these)150 3915 y(names)i(for)h(the)f(purp)s(ose)f(to)i(whic)m(h)e(ISO) h(C99)h(puts)e(them.)39 b(All)24 b(these)i(functions)e(ha)m(v)m(e)j (corresp)s(onding)150 4024 y(v)m(ersions)j(pre\014xed)f(with)g Fq(__builtin_)p Fy(.)275 4172 y(The)c(ISO)g(C89)i(functions)e Fq(abs)p Fy(,)h Fq(cos)p Fy(,)g Fq(fabs)p Fy(,)g Fq(fprintf)p Fy(,)g Fq(fputs)p Fy(,)f Fq(labs)p Fy(,)h Fq(memcmp)p Fy(,)g Fq(memcpy)p Fy(,)f Fq(memset)p Fy(,)150 4282 y Fq(printf)p Fy(,)g Fq(sin)p Fy(,)i Fq(sqrt)p Fy(,)f Fq(strcat)p Fy(,)f Fq(strchr)p Fy(,)g Fq(strcmp)p Fy(,)h Fq(strcpy)p Fy(,)f Fq(strcspn)p Fy(,)g Fq(strlen)p Fy(,)h Fq(strncat)p Fy(,)f Fq(strncmp)p Fy(,)150 4391 y Fq(strncpy)p Fy(,)37 b Fq(strpbrk)p Fy(,)f Fq(strrchr)p Fy(,)h Fq(strspn)p Fy(,)g(and)f Fq(strstr)f Fy(are)i(all)f(recognized)h(as)g(built-in)c (functions)150 4501 y(unless)21 b(`)p Fq(-fno-builtin)p Fy(')f(is)i(sp)s(eci\014ed)g(\(or)h(`)p Fq(-fno-builtin-)p Fn(function)p Fy(')c(is)j(sp)s(eci\014ed)f(for)i(an)g(individual)150 4610 y(function\).)40 b(All)29 b(of)h(these)h(functions)e(ha)m(v)m(e)j (corresp)s(onding)c(v)m(ersions)i(pre\014xed)f(with)g Fq(__builtin_)p Fy(.)275 4758 y(GCC)35 b(pro)m(vides)f(built-in)f(v)m (ersions)h(of)i(the)g(ISO)e(C99)j(\015oating)e(p)s(oin)m(t)g (comparison)f(macros)i(that)150 4868 y(a)m(v)m(oid)f(raising)e (exceptions)h(for)g(unordered)f(op)s(erands.)51 b(They)34 b(ha)m(v)m(e)i(the)e(same)h(names)f(as)h(the)g(stan-)150 4977 y(dard)h(macros)h(\()g Fq(isgreater)p Fy(,)f Fq(isgreaterequal)p Fy(,)f Fq(isless)p Fy(,)i Fq(islessequal)p Fy(,)f Fq(islessgreater)p Fy(,)f(and)150 5087 y Fq(isunordered)p Fy(\))26 b(,)k(with)e Fq(__builtin_)e Fy(pre\014xed.)39 b(W)-8 b(e)31 b(in)m(tend)d(for)h(a)g (library)e(implemen)m(tor)h(to)i(b)s(e)e(able)150 5196 y(to)j(simply)d Fq(#define)g Fy(eac)m(h)k(standard)e(macro)g(to)i(its)d (built-in)f(equiv)-5 b(alen)m(t.)p eop %%Page: 218 228 218 227 bop 150 -116 a Fy(218)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))3188 299 y(Built-in)e(F)-8 b(unction)-3725 b Ff(int)53 b(__builtin_types_compa)q(tibl)q(e_p)f Fe(\()p Fn(t)m(yp)s(e1)p Fq(,)31 b Fn(t)m(yp)s(e2)7 b Fe(\))390 408 y Fy(Y)-8 b(ou)49 b(can)f(use)g(the)g(built-in)d(function)i Fq(__builtin_types_compati)o(ble_)o(p)42 b Fy(to)49 b(determine)390 518 y(whether)30 b(t)m(w)m(o)h(t)m(yp)s(es)g(are)g(the)f(same.)390 653 y(This)38 b(built-in)f(function)i(returns)g(1)i(if)e(the)h (unquali\014ed)d(v)m(ersions)j(of)g(the)g(t)m(yp)s(es)h Fn(t)m(yp)s(e1)48 b Fy(and)390 763 y Fn(t)m(yp)s(e2)42 b Fy(\(whic)m(h)32 b(are)i(t)m(yp)s(es,)h(not)f(expressions\))f(are)h (compatible,)g(0)g(otherwise.)50 b(The)33 b(result)g(of)390 872 y(this)c(built-in)f(function)h(can)h(b)s(e)g(used)g(in)f(in)m (teger)h(constan)m(t)i(expressions.)390 1007 y(This)d(built-in)e (function)i(ignores)h(top)h(lev)m(el)f(quali\014ers)e(\(e.g.,)33 b Fq(const)p Fy(,)c Fq(volatile)p Fy(\).)39 b(F)-8 b(or)31 b(exam-)390 1117 y(ple,)f Fq(int)f Fy(is)h(equiv)-5 b(alen)m(t)29 b(to)j Fq(const)c(int)p Fy(.)390 1252 y(The)h(t)m(yp)s(e)g Fq(int[])f Fy(and)h Fq(int[5])e Fy(are)j(compatible.)39 b(On)29 b(the)g(other)h(hand,)e Fq(int)h Fy(and)f Fq(char)i(*)f Fy(are)390 1361 y(not)j(compatible,)f(ev)m(en)i(if)e(the)g(size)h(of)g (their)f(t)m(yp)s(es,)h(on)f(the)h(particular)e(arc)m(hitecture)j(are)f (the)390 1471 y(same.)39 b(Also,)26 b(the)f(amoun)m(t)g(of)g(p)s(oin)m (ter)e(indirection)f(is)i(tak)m(en)i(in)m(to)e(accoun)m(t)i(when)e (determining)390 1580 y(similarit)m(y)-8 b(.)37 b(Consequen)m(tly)-8 b(,)28 b Fq(short)h(*)e Fy(is)f(not)h(similar)d(to)k Fq(short)h(**)p Fy(.)39 b(F)-8 b(urthermore,)28 b(t)m(w)m(o)g(t)m(yp)s (es)390 1690 y(that)d(are)f(t)m(yp)s(edefed)g(are)g(considered)f (compatible)h(if)f(their)g(underlying)e(t)m(yp)s(es)j(are)g (compatible.)390 1825 y(An)32 b Fq(enum)g Fy(t)m(yp)s(e)g(is)g (considered)f(to)j(b)s(e)e(compatible)g(with)f(another)i Fq(enum)e Fy(t)m(yp)s(e.)48 b(F)-8 b(or)33 b(example,)390 1934 y Fq(enum)c({foo,)g(bar})g Fy(is)h(similar)e(to)j Fq(enum)e({hot,)g(dog})p Fy(.)390 2069 y(Y)-8 b(ou)36 b(w)m(ould)f(t)m(ypically)g(use)h(this)f(function)f(in)h(co)s(de)h (whose)g(execution)g(v)-5 b(aries)36 b(dep)s(ending)d(on)390 2179 y(the)e(argumen)m(ts')f(t)m(yp)s(es.)41 b(F)-8 b(or)31 b(example:)630 2308 y Fq(#define)46 b(foo\(x\))2385 b(\\)725 2412 y(\({)2816 b(\\)821 2516 y(typeof)46 b(\(x\))h(tmp;)2147 b(\\)821 2619 y(if)47 b(\(__builtin_types_compatib)o(le_)o(p)42 b(\(typeof)k(\(x\),)g(long)h(double\)\))f(\\)916 2723 y(tmp)h(=)h(foo_long_double)43 b(\(tmp\);)1431 b(\\)821 2827 y(else)47 b(if)g(\(__builtin_types_compat)o(ible)o(_p)42 b(\(typeof)j(\(x\),)i(double\)\))f(\\)916 2931 y(tmp)h(=)h(foo_double)d (\(tmp\);)1669 b(\\)821 3034 y(else)47 b(if)g(\(__builtin_types_compat) o(ible)o(_p)42 b(\(typeof)j(\(x\),)i(float\)\))94 b(\\)916 3138 y(tmp)47 b(=)h(foo_float)d(\(tmp\);)1717 b(\\)821 3242 y(else)2672 b(\\)916 3346 y(abort)47 b(\(\);)2338 b(\\)821 3450 y(tmp;)2672 b(\\)725 3553 y(}\))390 3688 y Fr(Note:)46 b Fy(This)28 b(construct)j(is)e(only)h(a)m(v)-5 b(ailable)30 b(for)g(C.)3188 3924 y(Built-in)e(F)-8 b(unction)-3725 b Fn(t)m(yp)s(e)58 b Ff(__builtin_choose_expr)51 b Fe(\()p Fn(const)p 1772 3924 28 4 v 34 w(exp)p Fq(,)30 b Fn(exp1)p Fq(,)g Fn(exp2)7 b Fe(\))390 4033 y Fy(Y)-8 b(ou)30 b(can)f(use)g(the)h (built-in)c(function)i Fq(__builtin_choose_expr)23 b Fy(to)30 b(ev)-5 b(aluate)30 b(co)s(de)f(dep)s(end-)390 4143 y(ing)43 b(on)g(the)g(v)-5 b(alue)43 b(of)h(a)g(constan)m(t)g (expression.)79 b(This)42 b(built-in)e(function)i(returns)g Fn(exp1)51 b Fy(if)390 4252 y Fn(const)p 602 4252 V 33 w(exp)p Fy(,)46 b(whic)m(h)c(is)g(a)h(constan)m(t)h(expression)d(that)j (m)m(ust)f(b)s(e)f(able)g(to)i(b)s(e)e(determined)f(at)390 4362 y(compile)29 b(time,)i(is)e(nonzero.)41 b(Otherwise)29 b(it)h(returns)f(0.)390 4497 y(This)e(built-in)e(function)i(is)h (analogous)h(to)g(the)g(`)p Fq(?)h(:)p Fy(')e(op)s(erator)h(in)e(C,)i (except)g(that)g(the)g(expres-)390 4606 y(sion)k(returned)g(has)g(its)h (t)m(yp)s(e)g(unaltered)f(b)m(y)g(promotion)h(rules.)50 b(Also,)34 b(the)g(built-in)d(function)390 4716 y(do)s(es)42 b(not)h(ev)-5 b(aluate)44 b(the)f(expression)e(that)j(w)m(as)f(not)g(c) m(hosen.)78 b(F)-8 b(or)43 b(example,)j(if)c Fn(const)p 3583 4716 V 33 w(exp)390 4826 y Fy(ev)-5 b(aluates)31 b(to)g(true,)f Fn(exp2)38 b Fy(is)30 b(not)g(ev)-5 b(aluated)31 b(ev)m(en)g(if)e(it)h(has)g(side-e\013ects.)390 4961 y(This)f(built-in)e(function)i(can)i(return)e(an)h(lv)-5 b(alue)29 b(if)h(the)g(c)m(hosen)h(argumen)m(t)g(is)e(an)h(lv)-5 b(alue.)390 5095 y(If)32 b Fn(exp1)40 b Fy(is)32 b(returned,)g(the)h (return)e(t)m(yp)s(e)i(is)f(the)h(same)g(as)f Fn(exp1)7 b Fy('s)34 b(t)m(yp)s(e.)47 b(Similarly)-8 b(,)30 b(if)i Fn(exp2)40 b Fy(is)390 5205 y(returned,)29 b(its)h(return)f(t)m(yp)s(e) i(is)e(the)i(same)g(as)f Fn(exp2)p Fy(.)390 5340 y(Example:)p eop %%Page: 219 229 219 228 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(219)630 299 y Fq(#define)46 b(foo\(x\))3005 b(\\)p 4353 307 42 71 v 725 403 a(__builtin_choose_expr)42 b(\(__builtin_types_compatibl)o (e_p)f(\(typeof)46 b(\(x\),)h(double\),)93 b(\\)p 4353 423 42 84 v 821 506 a(foo_double)45 b(\(x\),)2767 b(\\)p 4353 519 42 76 v 821 610 a(__builtin_choose_expr)42 b (\(__builtin_types_compati)o(ble_)o(p)g(\(typeof)k(\(x\),)g(float\),)g (\\)p 4353 630 42 84 v 916 714 a(foo_float)g(\(x\),)2719 b(\\)p 4353 727 42 76 v 916 818 a(/*)48 b Fy(The)29 b(v)m(oid)g (expression)g(results)g(in)f(a)i(compile-time)f(error)620 b Fq(\\)1060 922 y Fy(when)19 b(assigning)g(the)h(result)f(to)i (something.)96 b Fq(*/)1001 b(\\)916 1025 y(\(void\)0\)\))390 1174 y Fr(Note:)69 b Fy(This)41 b(construct)h(is)g(only)f(a)m(v)-5 b(ailable)41 b(for)h(C.)h(F)-8 b(urthermore,)45 b(the)d(un)m(used)f (expression)390 1284 y(\()p Fn(exp1)c Fy(or)29 b Fn(exp2)36 b Fy(dep)s(ending)27 b(on)h(the)h(v)-5 b(alue)29 b(of)g Fn(const)p 2239 1284 28 4 v 33 w(exp)s Fy(\))g(ma)m(y)h(still)c (generate)31 b(syn)m(tax)e(errors.)390 1393 y(This)g(ma)m(y)i(c)m (hange)g(in)e(future)h(revisions.)3188 1671 y(Built-in)e(F)-8 b(unction)-3725 b Ff(int)53 b(__builtin_constant_p)f Fe(\()p Fn(exp)s Fe(\))390 1781 y Fy(Y)-8 b(ou)34 b(can)g(use)f(the)h (built-in)c(function)i Fq(__builtin_constant_p)c Fy(to)35 b(determine)d(if)h(a)h(v)-5 b(alue)33 b(is)390 1890 y(kno)m(wn)k(to)h (b)s(e)e(constan)m(t)j(at)f(compile-time)e(and)h(hence)g(that)h(GCC)f (can)h(p)s(erform)d(constan)m(t-)390 2000 y(folding)24 b(on)h(expressions)f(in)m(v)m(olving)g(that)j(v)-5 b(alue.)38 b(The)25 b(argumen)m(t)h(of)g(the)g(function)e(is)h(the)g(v)-5 b(alue)390 2109 y(to)30 b(test.)41 b(The)28 b(function)f(returns)h(the) h(in)m(teger)g(1)g(if)f(the)h(argumen)m(t)h(is)d(kno)m(wn)i(to)g(b)s(e) f(a)i(compile-)390 2219 y(time)i(constan)m(t)i(and)e(0)h(if)e(it)h(is)g (not)g(kno)m(wn)g(to)h(b)s(e)f(a)h(compile-time)f(constan)m(t.)48 b(A)33 b(return)e(of)i(0)390 2329 y(do)s(es)25 b(not)h(indicate)f(that) h(the)g(v)-5 b(alue)25 b(is)g Fr(not)35 b Fy(a)26 b(constan)m(t,)i(but) d(merely)g(that)i(GCC)e(cannot)h(pro)m(v)m(e)390 2438 y(it)k(is)f(a)i(constan)m(t)h(with)d(the)h(sp)s(eci\014ed)f(v)-5 b(alue)30 b(of)g(the)h(`)p Fq(-O)p Fy(')f(option.)390 2587 y(Y)-8 b(ou)27 b(w)m(ould)f(t)m(ypically)f(use)i(this)e(function)h (in)f(an)i(em)m(b)s(edded)f(application)f(where)h(memory)h(w)m(as)390 2697 y(a)41 b(critical)e(resource.)71 b(If)40 b(y)m(ou)h(ha)m(v)m(e)h (some)f(complex)f(calculation,)i(y)m(ou)f(ma)m(y)g(w)m(an)m(t)g(it)f (to)i(b)s(e)390 2806 y(folded)27 b(if)g(it)h(in)m(v)m(olv)m(es)g (constan)m(ts,)i(but)e(need)g(to)h(call)e(a)i(function)e(if)g(it)h(do)s (es)g(not.)40 b(F)-8 b(or)29 b(example:)630 2949 y Fq(#define)46 b(Scale_Value\(X\))282 b(\\)725 3053 y(\(__builtin_constant_p)42 b(\(X\))47 b(\\)725 3157 y(?)h(\(\(X\))f(*)g(SCALE)f(+)i(OFFSET\))e(:)h (Scale)f(\(X\)\))390 3306 y Fy(Y)-8 b(ou)26 b(ma)m(y)g(use)f(this)f (built-in)e(function)i(in)g(either)h(a)h(macro)g(or)f(an)g(inline)e (function.)37 b(Ho)m(w)m(ev)m(er,)29 b(if)390 3416 y(y)m(ou)24 b(use)e(it)h(in)f(an)h(inlined)d(function)i(and)g(pass)h(an)g(argumen)m (t)h(of)f(the)h(function)e(as)h(the)g(argumen)m(t)390 3525 y(to)i(the)e(built-in,)g(GCC)g(will)e(nev)m(er)j(return)f(1)h (when)f(y)m(ou)h(call)f(the)h(inline)d(function)h(with)h(a)h(string)390 3635 y(constan)m(t)36 b(or)f(comp)s(ound)f(literal)f(\(see)j(Section)e (5.21)j([Comp)s(ound)c(Literals],)i(page)h(168\))h(and)390 3744 y(will)23 b(not)j(return)f(1)h(when)f(y)m(ou)h(pass)g(a)g(constan) m(t)h(n)m(umeric)e(v)-5 b(alue)25 b(to)i(the)f(inline)d(function)i (unless)390 3854 y(y)m(ou)31 b(sp)s(ecify)e(the)h(`)p Fq(-O)p Fy(')h(option.)390 4003 y(Y)-8 b(ou)27 b(ma)m(y)h(also)f(use)f Fq(__builtin_constant_p)c Fy(in)j(initializers)f(for)j(static)g(data.) 40 b(F)-8 b(or)28 b(instance,)390 4113 y(y)m(ou)j(can)f(write)630 4256 y Fq(static)46 b(const)g(int)h(table[])f(=)i({)773 4359 y(__builtin_constant_p)42 b(\(EXPRESSION\))j(?)i(\(EXPRESSION\))e (:)i(-1,)773 4463 y(/*)g(...)g(*/)630 4567 y(};)390 4716 y Fy(This)31 b(is)i(an)g(acceptable)h(initializer)c(ev)m(en)k(if)e Fn(EXPRESSION)41 b Fy(is)33 b(not)g(a)g(constan)m(t)i(expression.)390 4826 y(GCC)27 b(m)m(ust)g(b)s(e)g(more)h(conserv)-5 b(ativ)m(e)28 b(ab)s(out)f(ev)-5 b(aluating)27 b(the)h(built-in)c(in)i(this)h(case,)i (b)s(ecause)e(it)390 4935 y(has)j(no)g(opp)s(ortunit)m(y)f(to)i(p)s (erform)e(optimization.)390 5084 y(Previous)c(v)m(ersions)g(of)h(GCC)g (did)e(not)i(accept)h(this)e(built-in)e(in)h(data)j(initializers.)36 b(The)25 b(earliest)390 5194 y(v)m(ersion)30 b(where)g(it)g(is)f (completely)h(safe)h(is)e(3.0.1.)p eop %%Page: 220 230 220 229 bop 150 -116 a Fy(220)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))3188 299 y(Built-in)e(F)-8 b(unction)-3725 b Ff(long)54 b(__builtin_expect)c Fe(\()p Fq(long)29 b Fn(exp)p Fq(,)h(long)g Fn(c)6 b Fe(\))390 408 y Fy(Y)-8 b(ou)47 b(ma)m(y)f(use)g Fq(__builtin_expect)c Fy(to)47 b(pro)m(vide)e(the)i(compiler)d(with)h(branc)m(h)h(prediction)390 518 y(information.)77 b(In)43 b(general,)k(y)m(ou)c(should)e(prefer)i (to)h(use)f(actual)g(pro\014le)f(feedbac)m(k)i(for)f(this)390 628 y(\(`)p Fq(-fprofile-arcs)p Fy('\),)j(as)f(programmers)f(are)h (notoriously)f(bad)g(at)h(predicting)e(ho)m(w)i(their)390 737 y(programs)c(actually)f(p)s(erform.)72 b(Ho)m(w)m(ev)m(er,)46 b(there)41 b(are)g(applications)f(in)f(whic)m(h)h(this)g(data)i(is)390 847 y(hard)29 b(to)i(collect.)390 984 y(The)37 b(return)g(v)-5 b(alue)37 b(is)g(the)h(v)-5 b(alue)37 b(of)h Fn(exp)p Fy(,)i(whic)m(h)c(should)g(b)s(e)h(an)g(in)m(tegral)h(expression.)61 b(The)390 1093 y(v)-5 b(alue)29 b(of)g Fn(c)36 b Fy(m)m(ust)29 b(b)s(e)g(a)h(compile-time)e(constan)m(t.)42 b(The)29 b(seman)m(tics)g(of)h(the)f(built-in)e(are)i(that)h(it)390 1203 y(is)f(exp)s(ected)i(that)g Fn(exp)i Fy(==)d Fn(c)p Fy(.)41 b(F)-8 b(or)31 b(example:)630 1334 y Fq(if)47 b(\(__builtin_expect)c(\(x,)k(0\)\))725 1437 y(foo)g(\(\);)390 1574 y Fy(w)m(ould)28 b(indicate)g(that)h(w)m(e)h(do)e(not)h(exp)s(ect) h(to)g(call)e Fq(foo)p Fy(,)g(since)h(w)m(e)g(exp)s(ect)g Fq(x)g Fy(to)h(b)s(e)e(zero.)41 b(Since)390 1684 y(y)m(ou)31 b(are)f(limited)f(to)i(in)m(tegral)f(expressions)f(for)h Fn(exp)p Fy(,)g(y)m(ou)h(should)d(use)i(constructions)g(suc)m(h)g(as) 630 1815 y Fq(if)47 b(\(__builtin_expect)c(\(ptr)k(!=)g(NULL,)f(1\)\)) 725 1918 y(error)h(\(\);)390 2055 y Fy(when)29 b(testing)i(p)s(oin)m (ter)e(or)i(\015oating-p)s(oin)m(t)e(v)-5 b(alues.)3188 2296 y(Built-in)28 b(F)-8 b(unction)-3725 b Ff(void)54 b(__builtin_prefetch)c Fe(\()p Fq(const)30 b(void)f(*)p Fn(addr)p Fq(,)g(...)p Fe(\))390 2405 y Fy(This)37 b(function)g(is)h (used)g(to)h(minimize)d(cac)m(he-miss)j(latency)g(b)m(y)g(mo)m(ving)f (data)i(in)m(to)e(a)h(cac)m(he)390 2515 y(b)s(efore)44 b(it)g(is)g(accessed.)84 b(Y)-8 b(ou)45 b(can)f(insert)g(calls)f(to)j Fq(__builtin_prefetch)39 b Fy(in)m(to)44 b(co)s(de)h(for)390 2624 y(whic)m(h)25 b(y)m(ou)i(kno)m(w)f(addresses)f(of)i(data)g(in)e (memory)h(that)h(is)e(lik)m(ely)g(to)i(b)s(e)e(accessed)j(so)s(on.)39 b(If)26 b(the)390 2734 y(target)32 b(supp)s(orts)d(them,)j(data)f (prefetc)m(h)h(instructions)c(will)h(b)s(e)h(generated.)43 b(If)31 b(the)g(prefetc)m(h)g(is)390 2844 y(done)e(early)g(enough)g(b)s (efore)g(the)h(access)g(then)f(the)h(data)g(will)d(b)s(e)h(in)g(the)i (cac)m(he)h(b)m(y)e(the)g(time)g(it)390 2953 y(is)g(accessed.)390 3090 y(The)i(v)-5 b(alue)32 b(of)g Fn(addr)38 b Fy(is)31 b(the)h(address)f(of)h(the)g(memory)g(to)h(prefetc)m(h.)46 b(There)31 b(are)h(t)m(w)m(o)i(optional)390 3199 y(argumen)m(ts,)e Fn(rw)38 b Fy(and)31 b Fn(lo)s(calit)m(y)p Fy(.)43 b(The)31 b(v)-5 b(alue)31 b(of)g Fn(rw)39 b Fy(is)30 b(a)i(compile-time)e (constan)m(t)j(one)f(or)f(zero;)390 3309 y(one)d(means)f(that)h(the)g (prefetc)m(h)g(is)e(preparing)g(for)h(a)h(write)f(to)h(the)g(memory)f (address)g(and)g(zero,)390 3419 y(the)j(default,)f(means)h(that)h(the)f (prefetc)m(h)g(is)f(preparing)f(for)i(a)g(read.)40 b(The)30 b(v)-5 b(alue)29 b Fn(lo)s(calit)m(y)37 b Fy(m)m(ust)390 3528 y(b)s(e)f(a)g(compile-time)f(constan)m(t)j(in)m(teger)f(b)s(et)m (w)m(een)f(zero)h(and)f(three.)59 b(A)36 b(v)-5 b(alue)36 b(of)g(zero)h(means)390 3638 y(that)e(the)h(data)f(has)g(no)g(temp)s (oral)f(lo)s(calit)m(y)-8 b(,)36 b(so)f(it)f(need)h(not)g(b)s(e)g(left) f(in)g(the)h(cac)m(he)h(after)g(the)390 3747 y(access.)j(A)22 b(v)-5 b(alue)21 b(of)h(three)g(means)g(that)g(the)g(data)g(has)g(a)g (high)e(degree)j(of)f(temp)s(oral)e(lo)s(calit)m(y)i(and)390 3857 y(should)h(b)s(e)i(left)g(in)f(all)h(lev)m(els)g(of)g(cac)m(he)i (p)s(ossible.)37 b(V)-8 b(alues)25 b(of)h(one)g(and)e(t)m(w)m(o)j (mean,)g(resp)s(ectiv)m(ely)-8 b(,)390 3967 y(a)31 b(lo)m(w)f(or)g(mo)s (derate)h(degree)g(of)g(temp)s(oral)e(lo)s(calit)m(y)-8 b(.)41 b(The)30 b(default)f(is)h(three.)630 4097 y Fq(for)47 b(\(i)g(=)h(0;)f(i)g(<)h(n;)f(i++\))725 4201 y({)821 4305 y(a[i])g(=)g(a[i])g(+)g(b[i];)821 4409 y(__builtin_prefetch)c (\(&a[i+j],)i(1,)i(1\);)821 4513 y(__builtin_prefetch)c(\(&b[i+j],)i (0,)i(1\);)821 4616 y(/*)g(...)g(*/)725 4720 y(})390 4857 y Fy(Data)35 b(prefetc)m(h)e(do)s(es)g(not)h(generate)g(faults)e (if)h Fn(addr)38 b Fy(is)32 b(in)m(v)-5 b(alid,)32 b(but)h(the)g (address)f(expression)390 4966 y(itself)g(m)m(ust)g(b)s(e)h(v)-5 b(alid.)46 b(F)-8 b(or)33 b(example,)h(a)f(prefetc)m(h)g(of)g Fq(p->next)e Fy(will)f(not)j(fault)f(if)g Fq(p->next)f Fy(is)390 5076 y(not)g(a)f(v)-5 b(alid)29 b(address,)h(but)f(ev)-5 b(aluation)30 b(will)e(fault)i(if)f Fq(p)h Fy(is)f(not)i(a)g(v)-5 b(alid)29 b(address.)390 5213 y(If)h(the)g(target)i(do)s(es)e(not)h (supp)s(ort)d(data)j(prefetc)m(h,)g(the)g(address)e(expression)g(is)h (ev)-5 b(aluated)30 b(if)f(it)390 5322 y(includes)21 b(side)h(e\013ects)j(but)e(no)g(other)h(co)s(de)f(is)g(generated)h(and) f(GCC)g(do)s(es)g(not)h(issue)e(a)i(w)m(arning.)p eop %%Page: 221 231 221 230 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(221)150 166 y Fs(5.46)68 b(Built-in)45 b(F)-11 b(unctions)45 b(Sp)t(eci\014c)f(to)h(P)l(articular)h(T)-11 b(arget)456 299 y(Mac)l(hines)275 499 y Fy(On)31 b(some)i(target)h(mac)m(hines,)f (GCC)f(supp)s(orts)f(man)m(y)h(built-in)e(functions)h(sp)s(eci\014c)g (to)i(those)g(ma-)150 608 y(c)m(hines.)46 b(Generally)31 b(these)i(generate)h(calls)d(to)i(sp)s(eci\014c)e(mac)m(hine)h (instructions,)f(but)h(allo)m(w)g(the)g(com-)150 718 y(piler)c(to)j(sc)m(hedule)f(those)h(calls.)150 956 y Fg(5.46.1)63 b(X86)41 b(Built-in)h(F)-10 b(unctions)275 1155 y Fy(These)33 b(built-in)e(functions)i(are)h(a)m(v)-5 b(ailable)34 b(for)g(the)g(i386)h(and)e(x86-64)j(family)d(of)h (computers,)h(de-)150 1265 y(p)s(ending)28 b(on)i(the)h(command-line)e (switc)m(hes)h(used.)275 1407 y(The)38 b(follo)m(wing)g(mac)m(hine)h (mo)s(des)g(are)g(a)m(v)-5 b(ailable)39 b(for)g(use)g(with)f(MMX)i (built-in)c(functions)i(\(see)150 1516 y(Section)31 b(5.44)i([V)-8 b(ector)34 b(Extensions],)d(page)h(216\):)45 b Fq(V2SI)30 b Fy(for)i(a)f(v)m(ector)j(of)d(t)m(w)m(o)i(32-bit)f(in)m(tegers,)g Fq(V4HI)150 1626 y Fy(for)i(a)h(v)m(ector)h(of)e(four)g(16-bit)g(in)m (tegers,)i(and)e Fq(V8QI)f Fy(for)h(a)h(v)m(ector)g(of)g(eigh)m(t)g (8-bit)f(in)m(tegers.)52 b(Some)35 b(of)150 1735 y(the)g(built-in)d (functions)h(op)s(erate)j(on)e(MMX)i(registers)f(as)g(a)g(whole)f (64-bit)h(en)m(tit)m(y)-8 b(,)38 b(these)d(use)f Fq(DI)h Fy(as)150 1845 y(their)29 b(mo)s(de.)275 1986 y(If)41 b(3Dno)m(w)h(extensions)g(are)g(enabled,)h Fq(V2SF)e Fy(is)g(used)g(as)h(a)g(mo)s(de)f(for)g(a)h(v)m(ector)i(of)e(t)m(w)m(o) h(32-bit)150 2096 y(\015oating)30 b(p)s(oin)m(t)g(v)-5 b(alues.)275 2238 y(If)39 b(SSE)f(extensions)i(are)g(enabled,)h Fq(V4SF)e Fy(is)g(used)g(for)g(a)i(v)m(ector)g(of)f(four)f(32-bit)h (\015oating)g(p)s(oin)m(t)150 2347 y(v)-5 b(alues.)39 b(Some)27 b(instructions)e(use)i(a)h(v)m(ector)g(of)g(four)e(32-bit)i (in)m(tegers,)g(these)g(use)f Fq(V4SI)p Fy(.)38 b(Finally)-8 b(,)27 b(some)150 2457 y(instructions)k(op)s(erate)i(on)g(an)g(en)m (tire)g(v)m(ector)h(register,)g(in)m(terpreting)e(it)g(as)h(a)h (128-bit)f(in)m(teger,)h(these)150 2566 y(use)c(mo)s(de)g Fq(TI)p Fy(.)275 2708 y(The)d(follo)m(wing)f(built-in)e(functions)i (are)i(made)g(a)m(v)-5 b(ailable)27 b(b)m(y)g(`)p Fq(-mmmx)p Fy('.)39 b(All)26 b(of)i(them)g(generate)h(the)150 2817 y(mac)m(hine)h(instruction)e(that)j(is)f(part)g(of)h(the)f(name.)390 2953 y Fq(v8qi)47 b(__builtin_ia32_paddb)42 b(\(v8qi,)k(v8qi\))390 3057 y(v4hi)h(__builtin_ia32_paddw)42 b(\(v4hi,)k(v4hi\))390 3161 y(v2si)h(__builtin_ia32_paddd)42 b(\(v2si,)k(v2si\))390 3264 y(v8qi)h(__builtin_ia32_psubb)42 b(\(v8qi,)k(v8qi\))390 3368 y(v4hi)h(__builtin_ia32_psubw)42 b(\(v4hi,)k(v4hi\))390 3472 y(v2si)h(__builtin_ia32_psubd)42 b(\(v2si,)k(v2si\))390 3576 y(v8qi)h(__builtin_ia32_paddsb)42 b(\(v8qi,)k(v8qi\))390 3680 y(v4hi)h(__builtin_ia32_paddsw)42 b(\(v4hi,)k(v4hi\))390 3783 y(v8qi)h(__builtin_ia32_psubsb)42 b(\(v8qi,)k(v8qi\))390 3887 y(v4hi)h(__builtin_ia32_psubsw)42 b(\(v4hi,)k(v4hi\))390 3991 y(v8qi)h(__builtin_ia32_paddusb)41 b(\(v8qi,)46 b(v8qi\))390 4095 y(v4hi)h(__builtin_ia32_paddusw)41 b(\(v4hi,)46 b(v4hi\))390 4198 y(v8qi)h(__builtin_ia32_psubusb)41 b(\(v8qi,)46 b(v8qi\))390 4302 y(v4hi)h(__builtin_ia32_psubusw)41 b(\(v4hi,)46 b(v4hi\))390 4406 y(v4hi)h(__builtin_ia32_pmullw)42 b(\(v4hi,)k(v4hi\))390 4510 y(v4hi)h(__builtin_ia32_pmulhw)42 b(\(v4hi,)k(v4hi\))390 4614 y(di)h(__builtin_ia32_pand)c(\(di,)j(di\)) 390 4717 y(di)h(__builtin_ia32_pandn)42 b(\(di,di\))390 4821 y(di)47 b(__builtin_ia32_por)c(\(di,)k(di\))390 4925 y(di)g(__builtin_ia32_pxor)c(\(di,)j(di\))390 5029 y(v8qi)h(__builtin_ia32_pcmpeqb)41 b(\(v8qi,)46 b(v8qi\))390 5132 y(v4hi)h(__builtin_ia32_pcmpeqw)41 b(\(v4hi,)46 b(v4hi\))390 5236 y(v2si)h(__builtin_ia32_pcmpeqd)41 b(\(v2si,)46 b(v2si\))390 5340 y(v8qi)h(__builtin_ia32_pcmpgtb)41 b(\(v8qi,)46 b(v8qi\))p eop %%Page: 222 232 222 231 bop 150 -116 a Fy(222)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(v4hi)47 b(__builtin_ia32_pcmpgtw)41 b(\(v4hi,)46 b(v4hi\))390 403 y(v2si)h(__builtin_ia32_pcmpgtd)41 b(\(v2si,)46 b(v2si\))390 506 y(v8qi)h(__builtin_ia32_punpckhb)o(w)42 b(\(v8qi,)k(v8qi\))390 610 y(v4hi)h(__builtin_ia32_punpckhw)o(d)42 b(\(v4hi,)k(v4hi\))390 714 y(v2si)h(__builtin_ia32_punpckhd)o(q)42 b(\(v2si,)k(v2si\))390 818 y(v8qi)h(__builtin_ia32_punpcklb)o(w)42 b(\(v8qi,)k(v8qi\))390 922 y(v4hi)h(__builtin_ia32_punpcklw)o(d)42 b(\(v4hi,)k(v4hi\))390 1025 y(v2si)h(__builtin_ia32_punpckld)o(q)42 b(\(v2si,)k(v2si\))390 1129 y(v8qi)h(__builtin_ia32_packsswb)41 b(\(v4hi,)46 b(v4hi\))390 1233 y(v4hi)h(__builtin_ia32_packssdw)41 b(\(v2si,)46 b(v2si\))390 1337 y(v8qi)h(__builtin_ia32_packuswb)41 b(\(v4hi,)46 b(v4hi\))275 1480 y Fy(The)31 b(follo)m(wing)g(built-in)e (functions)i(are)i(made)f(a)m(v)-5 b(ailable)32 b(either)g(with)f(`)p Fq(-msse)p Fy(',)h(or)g(with)f(a)i(com-)150 1589 y(bination)d(of)i(`)p Fq(-m3dnow)p Fy(')e(and)h(`)p Fq(-march=athlon)p Fy('.)42 b(All)31 b(of)h(them)f(generate)j(the)d(mac)m(hine)h(instruction)150 1699 y(that)f(is)e(part)i(of)f(the)h(name.)390 1836 y Fq(v4hi)47 b(__builtin_ia32_pmulhuw)41 b(\(v4hi,)46 b(v4hi\))390 1940 y(v8qi)h(__builtin_ia32_pavgb)42 b(\(v8qi,)k(v8qi\))390 2044 y(v4hi)h(__builtin_ia32_pavgw)42 b(\(v4hi,)k(v4hi\))390 2148 y(v4hi)h(__builtin_ia32_psadbw)42 b(\(v8qi,)k(v8qi\))390 2252 y(v8qi)h(__builtin_ia32_pmaxub)42 b(\(v8qi,)k(v8qi\))390 2355 y(v4hi)h(__builtin_ia32_pmaxsw)42 b(\(v4hi,)k(v4hi\))390 2459 y(v8qi)h(__builtin_ia32_pminub)42 b(\(v8qi,)k(v8qi\))390 2563 y(v4hi)h(__builtin_ia32_pminsw)42 b(\(v4hi,)k(v4hi\))390 2667 y(int)h(__builtin_ia32_pextrw)42 b(\(v4hi,)k(int\))390 2770 y(v4hi)h(__builtin_ia32_pinsrw)42 b(\(v4hi,)k(int,)g(int\))390 2874 y(int)h(__builtin_ia32_pmovmskb)41 b(\(v8qi\))390 2978 y(void)47 b(__builtin_ia32_maskmovq)41 b(\(v8qi,)46 b(v8qi,)h(char)f(*\))390 3082 y(void)h(__builtin_ia32_movntq)42 b(\(di)47 b(*,)g(di\))390 3186 y(void)g(__builtin_ia32_sfence)42 b(\(void\))275 3329 y Fy(The)26 b(follo)m(wing)f(built-in)e(functions)j (are)h(a)m(v)-5 b(ailable)26 b(when)f(`)p Fq(-msse)p Fy(')h(is)g(used.)39 b(All)25 b(of)i(them)f(generate)150 3438 y(the)31 b(mac)m(hine)f(instruction)e(that)j(is)e(part)i(of)f(the) h(name.)390 3576 y Fq(int)47 b(__builtin_ia32_comieq)42 b(\(v4sf,)k(v4sf\))390 3680 y(int)h(__builtin_ia32_comineq)42 b(\(v4sf,)k(v4sf\))390 3783 y(int)h(__builtin_ia32_comilt)42 b(\(v4sf,)k(v4sf\))390 3887 y(int)h(__builtin_ia32_comile)42 b(\(v4sf,)k(v4sf\))390 3991 y(int)h(__builtin_ia32_comigt)42 b(\(v4sf,)k(v4sf\))390 4095 y(int)h(__builtin_ia32_comige)42 b(\(v4sf,)k(v4sf\))390 4198 y(int)h(__builtin_ia32_ucomieq)42 b(\(v4sf,)k(v4sf\))390 4302 y(int)h(__builtin_ia32_ucomineq)41 b(\(v4sf,)46 b(v4sf\))390 4406 y(int)h(__builtin_ia32_ucomilt)42 b(\(v4sf,)k(v4sf\))390 4510 y(int)h(__builtin_ia32_ucomile)42 b(\(v4sf,)k(v4sf\))390 4614 y(int)h(__builtin_ia32_ucomigt)42 b(\(v4sf,)k(v4sf\))390 4717 y(int)h(__builtin_ia32_ucomige)42 b(\(v4sf,)k(v4sf\))390 4821 y(v4sf)h(__builtin_ia32_addps)42 b(\(v4sf,)k(v4sf\))390 4925 y(v4sf)h(__builtin_ia32_subps)42 b(\(v4sf,)k(v4sf\))390 5029 y(v4sf)h(__builtin_ia32_mulps)42 b(\(v4sf,)k(v4sf\))390 5132 y(v4sf)h(__builtin_ia32_divps)42 b(\(v4sf,)k(v4sf\))390 5236 y(v4sf)h(__builtin_ia32_addss)42 b(\(v4sf,)k(v4sf\))390 5340 y(v4sf)h(__builtin_ia32_subss)42 b(\(v4sf,)k(v4sf\))p eop %%Page: 223 233 223 232 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(223)390 299 y Fq(v4sf)47 b(__builtin_ia32_mulss)42 b(\(v4sf,)k(v4sf\))390 403 y(v4sf)h(__builtin_ia32_divss)42 b(\(v4sf,)k(v4sf\))390 506 y(v4si)h(__builtin_ia32_cmpeqps)41 b(\(v4sf,)46 b(v4sf\))390 610 y(v4si)h(__builtin_ia32_cmpltps)41 b(\(v4sf,)46 b(v4sf\))390 714 y(v4si)h(__builtin_ia32_cmpleps)41 b(\(v4sf,)46 b(v4sf\))390 818 y(v4si)h(__builtin_ia32_cmpgtps)41 b(\(v4sf,)46 b(v4sf\))390 922 y(v4si)h(__builtin_ia32_cmpgeps)41 b(\(v4sf,)46 b(v4sf\))390 1025 y(v4si)h(__builtin_ia32_cmpunord)o(ps)42 b(\(v4sf,)k(v4sf\))390 1129 y(v4si)h(__builtin_ia32_cmpneqps)41 b(\(v4sf,)46 b(v4sf\))390 1233 y(v4si)h(__builtin_ia32_cmpnltps)41 b(\(v4sf,)46 b(v4sf\))390 1337 y(v4si)h(__builtin_ia32_cmpnleps)41 b(\(v4sf,)46 b(v4sf\))390 1440 y(v4si)h(__builtin_ia32_cmpngtps)41 b(\(v4sf,)46 b(v4sf\))390 1544 y(v4si)h(__builtin_ia32_cmpngeps)41 b(\(v4sf,)46 b(v4sf\))390 1648 y(v4si)h(__builtin_ia32_cmpordps)41 b(\(v4sf,)46 b(v4sf\))390 1752 y(v4si)h(__builtin_ia32_cmpeqss)41 b(\(v4sf,)46 b(v4sf\))390 1856 y(v4si)h(__builtin_ia32_cmpltss)41 b(\(v4sf,)46 b(v4sf\))390 1959 y(v4si)h(__builtin_ia32_cmpless)41 b(\(v4sf,)46 b(v4sf\))390 2063 y(v4si)h(__builtin_ia32_cmpgtss)41 b(\(v4sf,)46 b(v4sf\))390 2167 y(v4si)h(__builtin_ia32_cmpgess)41 b(\(v4sf,)46 b(v4sf\))390 2271 y(v4si)h(__builtin_ia32_cmpunord)o(ss)42 b(\(v4sf,)k(v4sf\))390 2374 y(v4si)h(__builtin_ia32_cmpneqss)41 b(\(v4sf,)46 b(v4sf\))390 2478 y(v4si)h(__builtin_ia32_cmpnlts)41 b(\(v4sf,)46 b(v4sf\))390 2582 y(v4si)h(__builtin_ia32_cmpnless)41 b(\(v4sf,)46 b(v4sf\))390 2686 y(v4si)h(__builtin_ia32_cmpngtss)41 b(\(v4sf,)46 b(v4sf\))390 2790 y(v4si)h(__builtin_ia32_cmpngess)41 b(\(v4sf,)46 b(v4sf\))390 2893 y(v4si)h(__builtin_ia32_cmpordss)41 b(\(v4sf,)46 b(v4sf\))390 2997 y(v4sf)h(__builtin_ia32_maxps)42 b(\(v4sf,)k(v4sf\))390 3101 y(v4sf)h(__builtin_ia32_maxss)42 b(\(v4sf,)k(v4sf\))390 3205 y(v4sf)h(__builtin_ia32_minps)42 b(\(v4sf,)k(v4sf\))390 3308 y(v4sf)h(__builtin_ia32_minss)42 b(\(v4sf,)k(v4sf\))390 3412 y(v4sf)h(__builtin_ia32_andps)42 b(\(v4sf,)k(v4sf\))390 3516 y(v4sf)h(__builtin_ia32_andnps)42 b(\(v4sf,)k(v4sf\))390 3620 y(v4sf)h(__builtin_ia32_orps)42 b(\(v4sf,)k(v4sf\))390 3724 y(v4sf)h(__builtin_ia32_xorps)42 b(\(v4sf,)k(v4sf\))390 3827 y(v4sf)h(__builtin_ia32_movss)42 b(\(v4sf,)k(v4sf\))390 3931 y(v4sf)h(__builtin_ia32_movhlps)41 b(\(v4sf,)46 b(v4sf\))390 4035 y(v4sf)h(__builtin_ia32_movlhps)41 b(\(v4sf,)46 b(v4sf\))390 4139 y(v4sf)h(__builtin_ia32_unpckhps)41 b(\(v4sf,)46 b(v4sf\))390 4242 y(v4sf)h(__builtin_ia32_unpcklps)41 b(\(v4sf,)46 b(v4sf\))390 4346 y(v4sf)h(__builtin_ia32_cvtpi2ps)41 b(\(v4sf,)46 b(v2si\))390 4450 y(v4sf)h(__builtin_ia32_cvtsi2ss)41 b(\(v4sf,)46 b(int\))390 4554 y(v2si)h(__builtin_ia32_cvtps2pi)41 b(\(v4sf\))390 4658 y(int)47 b(__builtin_ia32_cvtss2si)41 b(\(v4sf\))390 4761 y(v2si)47 b(__builtin_ia32_cvttps2p)o(i)42 b(\(v4sf\))390 4865 y(int)47 b(__builtin_ia32_cvttss2si)41 b(\(v4sf\))390 4969 y(v4sf)47 b(__builtin_ia32_rcpps)42 b(\(v4sf\))390 5073 y(v4sf)47 b(__builtin_ia32_rsqrtps)41 b(\(v4sf\))390 5176 y(v4sf)47 b(__builtin_ia32_sqrtps)42 b(\(v4sf\))390 5280 y(v4sf)47 b(__builtin_ia32_rcpss)42 b(\(v4sf\))p eop %%Page: 224 234 224 233 bop 150 -116 a Fy(224)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(v4sf)47 b(__builtin_ia32_rsqrtss)41 b(\(v4sf\))390 403 y(v4sf)47 b(__builtin_ia32_sqrtss)42 b(\(v4sf\))390 506 y(v4sf)47 b(__builtin_ia32_shufps)42 b(\(v4sf,)k(v4sf,)g(int\))390 610 y(void)h(__builtin_ia32_movntps)41 b(\(float)46 b(*,)i(v4sf\))390 714 y(int)f(__builtin_ia32_movmskps)41 b(\(v4sf\))275 846 y Fy(The)29 b(follo)m(wing)g(built-in)e(functions)i (are)i(a)m(v)-5 b(ailable)30 b(when)f(`)p Fq(-msse)p Fy(')h(is)f(used.)150 1002 y Fq(v4sf)g(__builtin_ia32_loadaps)c (\(float)j(*\))630 1111 y Fy(Generates)k(the)e Fq(movaps)f Fy(mac)m(hine)h(instruction)e(as)j(a)g(load)f(from)g(memory)-8 b(.)150 1267 y Fq(void)29 b(__builtin_ia32_storeaps)24 b(\(float)29 b(*,)h(v4sf\))630 1376 y Fy(Generates)i(the)e Fq(movaps)f Fy(mac)m(hine)h(instruction)e(as)j(a)g(store)g(to)g(memory) -8 b(.)150 1532 y Fq(v4sf)29 b(__builtin_ia32_loadups)c(\(float)j(*\)) 630 1641 y Fy(Generates)k(the)e Fq(movups)f Fy(mac)m(hine)h (instruction)e(as)j(a)g(load)f(from)g(memory)-8 b(.)150 1796 y Fq(void)29 b(__builtin_ia32_storeups)24 b(\(float)29 b(*,)h(v4sf\))630 1906 y Fy(Generates)i(the)e Fq(movups)f Fy(mac)m(hine)h(instruction)e(as)j(a)g(store)g(to)g(memory)-8 b(.)150 2061 y Fq(v4sf)29 b(__builtin_ia32_loadsss)c(\(float)j(*\))630 2171 y Fy(Generates)k(the)e Fq(movss)f Fy(mac)m(hine)h(instruction)f (as)h(a)h(load)f(from)g(memory)-8 b(.)150 2326 y Fq(void)29 b(__builtin_ia32_storess)c(\(float)j(*,)i(v4sf\))630 2436 y Fy(Generates)i(the)e Fq(movss)f Fy(mac)m(hine)h(instruction)f (as)h(a)h(store)g(to)g(memory)-8 b(.)150 2591 y Fq(v4sf)29 b(__builtin_ia32_loadhps)c(\(v4sf,)j(v2si)h(*\))630 2701 y Fy(Generates)j(the)e Fq(movhps)f Fy(mac)m(hine)h(instruction)e(as)j (a)g(load)f(from)g(memory)-8 b(.)150 2856 y Fq(v4sf)29 b(__builtin_ia32_loadlps)c(\(v4sf,)j(v2si)h(*\))630 2966 y Fy(Generates)j(the)e Fq(movlps)f Fy(mac)m(hine)h(instruction)e(as)j (a)g(load)f(from)g(memory)150 3121 y Fq(void)f(__builtin_ia32_storehps) 24 b(\(v4sf,)29 b(v2si)g(*\))630 3231 y Fy(Generates)j(the)e Fq(movhps)f Fy(mac)m(hine)h(instruction)e(as)j(a)g(store)g(to)g(memory) -8 b(.)150 3386 y Fq(void)29 b(__builtin_ia32_storelps)24 b(\(v4sf,)29 b(v2si)g(*\))630 3496 y Fy(Generates)j(the)e Fq(movlps)f Fy(mac)m(hine)h(instruction)e(as)j(a)g(store)g(to)g(memory) -8 b(.)275 3651 y(The)31 b(follo)m(wing)g(built-in)e(functions)h(are)j (a)m(v)-5 b(ailable)31 b(when)g(`)p Fq(-m3dnow)p Fy(')g(is)g(used.)45 b(All)31 b(of)h(them)g(gen-)150 3760 y(erate)g(the)e(mac)m(hine)g (instruction)f(that)h(is)g(part)g(of)h(the)f(name.)390 3887 y Fq(void)47 b(__builtin_ia32_femms)42 b(\(void\))390 3991 y(v8qi)47 b(__builtin_ia32_pavgusb)41 b(\(v8qi,)46 b(v8qi\))390 4095 y(v2si)h(__builtin_ia32_pf2id)42 b(\(v2sf\))390 4198 y(v2sf)47 b(__builtin_ia32_pfacc)42 b(\(v2sf,)k(v2sf\))390 4302 y(v2sf)h(__builtin_ia32_pfadd)42 b(\(v2sf,)k(v2sf\))390 4406 y(v2si)h(__builtin_ia32_pfcmpeq)41 b(\(v2sf,)46 b(v2sf\))390 4510 y(v2si)h(__builtin_ia32_pfcmpge)41 b(\(v2sf,)46 b(v2sf\))390 4614 y(v2si)h(__builtin_ia32_pfcmpgt)41 b(\(v2sf,)46 b(v2sf\))390 4717 y(v2sf)h(__builtin_ia32_pfmax)42 b(\(v2sf,)k(v2sf\))390 4821 y(v2sf)h(__builtin_ia32_pfmin)42 b(\(v2sf,)k(v2sf\))390 4925 y(v2sf)h(__builtin_ia32_pfmul)42 b(\(v2sf,)k(v2sf\))390 5029 y(v2sf)h(__builtin_ia32_pfrcp)42 b(\(v2sf\))390 5132 y(v2sf)47 b(__builtin_ia32_pfrcpit1)41 b(\(v2sf,)46 b(v2sf\))390 5236 y(v2sf)h(__builtin_ia32_pfrcpit2)41 b(\(v2sf,)46 b(v2sf\))390 5340 y(v2sf)h(__builtin_ia32_pfrsqrt)41 b(\(v2sf\))p eop %%Page: 225 235 225 234 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(225)390 299 y Fq(v2sf)47 b(__builtin_ia32_pfrsqrti)o(t1)42 b(\(v2sf,)k(v2sf\)) 390 403 y(v2sf)h(__builtin_ia32_pfsub)42 b(\(v2sf,)k(v2sf\))390 506 y(v2sf)h(__builtin_ia32_pfsubr)42 b(\(v2sf,)k(v2sf\))390 610 y(v2sf)h(__builtin_ia32_pi2fd)42 b(\(v2si\))390 714 y(v4hi)47 b(__builtin_ia32_pmulhrw)41 b(\(v4hi,)46 b(v4hi\))275 853 y Fy(The)24 b(follo)m(wing)g(built-in)e(functions)i(are)i(a)m(v)-5 b(ailable)25 b(when)f(b)s(oth)g(`)p Fq(-m3dnow)p Fy(')g(and)h(`)p Fq(-march=athlon)p Fy(')150 963 y(are)31 b(used.)40 b(All)29 b(of)h(them)h(generate)g(the)g(mac)m(hine)f(instruction)e(that)j(is)f (part)g(of)h(the)f(name.)390 1096 y Fq(v2si)47 b(__builtin_ia32_pf2iw) 42 b(\(v2sf\))390 1200 y(v2sf)47 b(__builtin_ia32_pfnacc)42 b(\(v2sf,)k(v2sf\))390 1303 y(v2sf)h(__builtin_ia32_pfpnacc)41 b(\(v2sf,)46 b(v2sf\))390 1407 y(v2sf)h(__builtin_ia32_pi2fw)42 b(\(v2si\))390 1511 y(v2sf)47 b(__builtin_ia32_pswapdsf)41 b(\(v2sf\))390 1615 y(v2si)47 b(__builtin_ia32_pswapdsi)41 b(\(v2si\))150 1848 y Fg(5.46.2)63 b(P)m(o)m(w)m(erPC)39 b(AltiV)-10 b(ec)40 b(Built-in)h(F)-10 b(unctions)275 2045 y Fy(These)32 b(built-in)d(functions)i(are)i(a)m(v)-5 b(ailable)32 b(for)g(the)h(P)m(o)m(w)m(erPC)g(family)e(of)h(computers,) h(dep)s(ending)150 2155 y(on)d(the)h(command-line)e(switc)m(hes)h (used.)275 2294 y(The)j(follo)m(wing)g(mac)m(hine)h(mo)s(des)f(are)i(a) m(v)-5 b(ailable)34 b(for)g(use)g(with)f(AltiV)-8 b(ec)34 b(built-in)d(functions)i(\(see)150 2403 y(Section)d(5.44)i([V)-8 b(ector)32 b(Extensions],)e(page)h(216\):)43 b Fq(V4SI)29 b Fy(for)h(a)h(v)m(ector)h(of)e(four)g(32-bit)g(in)m(tegers,)h Fq(V4SF)150 2513 y Fy(for)d(a)h(v)m(ector)h(of)e(four)g(32-bit)g (\015oating)g(p)s(oin)m(t)g(n)m(um)m(b)s(ers,)f Fq(V8HI)g Fy(for)h(a)h(v)m(ector)h(of)e(eigh)m(t)h(16-bit)f(in)m(tegers,)150 2622 y(and)i Fq(V16QI)f Fy(for)h(a)h(v)m(ector)h(of)e(sixteen)g(8-bit)g (in)m(tegers.)275 2761 y(The)58 b(follo)m(wing)f(functions)h(are)h (made)g(a)m(v)-5 b(ailable)58 b(b)m(y)h(including)c Fq()h Fy(and)i(using)150 2871 y(`)p Fq(-maltivec)p Fy(')37 b(and)i(`)p Fq(-mabi=altivec)p Fy('.)64 b(The)39 b(functions)f (implemen)m(t)g(the)h(functionalit)m(y)f(describ)s(ed)150 2981 y(in)29 b(Motorola's)j(AltiV)-8 b(ec)31 b(Programming)e(In)m (terface)j(Man)m(ual.)275 3120 y Fr(Note:)44 b Fy(Only)26 b(the)h Fq()e Fy(in)m(terface)j(is)f(supp)s(orted.)38 b(In)m(ternally)-8 b(,)27 b(GCC)g(uses)g(built-in)e(func-)150 3229 y(tions)33 b(to)h(ac)m(hiev)m(e)h(the)f(functionalit)m(y)e(in)g (the)i(aforemen)m(tioned)g(header)f(\014le,)h(but)e(they)i(are)g(not)g (sup-)150 3339 y(p)s(orted)c(and)f(are)i(sub)5 b(ject)30 b(to)h(c)m(hange)h(without)d(notice.)390 3472 y Fq(vector)46 b(signed)g(char)h(vec_abs)f(\(vector)f(signed)i(char,)f(vector)g (signed)g(char\);)390 3576 y(vector)g(signed)g(short)h(vec_abs)e (\(vector)h(signed)g(short,)g(vector)g(signed)h(short\);)390 3680 y(vector)f(signed)g(int)h(vec_abs)f(\(vector)g(signed)g(int,)g (vector)h(signed)f(int\);)390 3783 y(vector)g(signed)g(float)h(vec_abs) e(\(vector)h(signed)g(float,)g(vector)g(signed)h(float\);)390 3991 y(vector)f(signed)g(char)h(vec_abss)e(\(vector)h(signed)g(char,)h (vector)f(signed)g(char\);)390 4095 y(vector)g(signed)g(short)h (vec_abss)e(\(vector)h(signed)g(short,)g(vector)g(signed)g(short\);)390 4302 y(vector)g(signed)g(char)h(vec_add)f(\(vector)f(signed)i(char,)f (vector)g(signed)g(char\);)390 4406 y(vector)g(unsigned)g(char)g (vec_add)g(\(vector)g(signed)g(char,)g(vector)g(unsigned)g(char\);)390 4614 y(vector)g(unsigned)g(char)g(vec_add)g(\(vector)g(unsigned)f (char,)i(vector)f(signed)g(char\);)390 4821 y(vector)g(unsigned)g(char) g(vec_add)g(\(vector)g(unsigned)f(char,)1822 4925 y(vector)h(unsigned)f (char\);)390 5029 y(vector)h(signed)g(short)h(vec_add)e(\(vector)h (signed)g(short,)g(vector)g(signed)h(short\);)390 5132 y(vector)f(unsigned)g(short)g(vec_add)g(\(vector)g(signed)g(short,)1870 5236 y(vector)g(unsigned)f(short\);)390 5340 y(vector)h(unsigned)g (short)g(vec_add)g(\(vector)g(unsigned)f(short,)p eop %%Page: 226 236 226 235 bop 150 -116 a Fy(226)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))1870 299 y Fq(vector)46 b(signed)g(short\);)390 403 y(vector)g(unsigned)g(short)g(vec_add)g(\(vector)g(unsigned)f (short,)1870 506 y(vector)h(unsigned)f(short\);)390 610 y(vector)h(signed)g(int)h(vec_add)f(\(vector)g(signed)g(int,)g(vector)h (signed)f(int\);)390 714 y(vector)g(unsigned)g(int)h(vec_add)e (\(vector)h(signed)g(int,)h(vector)f(unsigned)g(int\);)390 818 y(vector)g(unsigned)g(int)h(vec_add)e(\(vector)h(unsigned)g(int,)g (vector)g(signed)h(int\);)390 922 y(vector)f(unsigned)g(int)h(vec_add)e (\(vector)h(unsigned)g(int,)g(vector)g(unsigned)g(int\);)390 1025 y(vector)g(float)g(vec_add)g(\(vector)g(float,)g(vector)g (float\);)390 1233 y(vector)g(unsigned)g(int)h(vec_addc)e(\(vector)h (unsigned)f(int,)i(vector)f(unsigned)g(int\);)390 1440 y(vector)g(unsigned)g(char)g(vec_adds)g(\(vector)g(signed)g(char,)1870 1544 y(vector)g(unsigned)f(char\);)390 1648 y(vector)h(unsigned)g(char) g(vec_adds)g(\(vector)g(unsigned)f(char,)1870 1752 y(vector)h(signed)g (char\);)390 1856 y(vector)g(unsigned)g(char)g(vec_adds)g(\(vector)g (unsigned)f(char,)1870 1959 y(vector)h(unsigned)f(char\);)390 2063 y(vector)h(signed)g(char)h(vec_adds)e(\(vector)h(signed)g(char,)h (vector)f(signed)g(char\);)390 2167 y(vector)g(unsigned)g(short)g (vec_adds)g(\(vector)f(signed)h(short,)1917 2271 y(vector)g(unsigned)g (short\);)390 2374 y(vector)g(unsigned)g(short)g(vec_adds)g(\(vector)f (unsigned)h(short,)1917 2478 y(vector)g(signed)g(short\);)390 2582 y(vector)g(unsigned)g(short)g(vec_adds)g(\(vector)f(unsigned)h (short,)1917 2686 y(vector)g(unsigned)g(short\);)390 2790 y(vector)g(signed)g(short)h(vec_adds)e(\(vector)h(signed)g(short,) g(vector)g(signed)g(short\);)390 2997 y(vector)g(unsigned)g(int)h (vec_adds)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f(int\);)390 3101 y(vector)h(unsigned)g(int)h(vec_adds)e(\(vector)h(unsigned)f(int,) i(vector)f(signed)g(int\);)390 3205 y(vector)g(unsigned)g(int)h (vec_adds)e(\(vector)h(unsigned)f(int,)i(vector)f(unsigned)g(int\);)390 3412 y(vector)g(signed)g(int)h(vec_adds)f(\(vector)f(signed)i(int,)f (vector)g(signed)g(int\);)390 3620 y(vector)g(float)g(vec_and)g (\(vector)g(float,)g(vector)g(float\);)390 3724 y(vector)g(float)g (vec_and)g(\(vector)g(float,)g(vector)g(signed)g(int\);)390 3827 y(vector)g(float)g(vec_and)g(\(vector)g(signed)g(int,)h(vector)f (float\);)390 3931 y(vector)g(signed)g(int)h(vec_and)f(\(vector)g (signed)g(int,)g(vector)h(signed)f(int\);)390 4035 y(vector)g(unsigned) g(int)h(vec_and)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)g (int\);)390 4139 y(vector)g(unsigned)g(int)h(vec_and)e(\(vector)h (unsigned)g(int,)g(vector)g(signed)h(int\);)390 4242 y(vector)f(unsigned)g(int)h(vec_and)e(\(vector)h(unsigned)g(int,)g (vector)g(unsigned)g(int\);)390 4346 y(vector)g(signed)g(short)h (vec_and)e(\(vector)h(signed)g(short,)g(vector)g(signed)h(short\);)390 4450 y(vector)f(unsigned)g(short)g(vec_and)g(\(vector)g(signed)g (short,)1870 4554 y(vector)g(unsigned)f(short\);)390 4658 y(vector)h(unsigned)g(short)g(vec_and)g(\(vector)g(unsigned)f (short,)1870 4761 y(vector)h(signed)g(short\);)390 4865 y(vector)g(unsigned)g(short)g(vec_and)g(\(vector)g(unsigned)f(short,) 1870 4969 y(vector)h(unsigned)f(short\);)390 5073 y(vector)h(signed)g (char)h(vec_and)f(\(vector)f(signed)i(char,)f(vector)g(signed)g (char\);)390 5176 y(vector)g(unsigned)g(char)g(vec_and)g(\(vector)g (signed)g(char,)g(vector)g(unsigned)g(char\);)p eop %%Page: 227 237 227 236 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(227)390 299 y Fq(vector)46 b(unsigned)g(char)g(vec_and)g(\(vector)g(unsigned)f (char,)i(vector)f(signed)g(char\);)390 506 y(vector)g(unsigned)g(char)g (vec_and)g(\(vector)g(unsigned)f(char,)1822 610 y(vector)h(unsigned)f (char\);)390 818 y(vector)h(float)g(vec_andc)g(\(vector)g(float,)g (vector)g(float\);)390 922 y(vector)g(float)g(vec_andc)g(\(vector)g (float,)g(vector)g(signed)g(int\);)390 1025 y(vector)g(float)g (vec_andc)g(\(vector)g(signed)g(int,)h(vector)f(float\);)390 1129 y(vector)g(signed)g(int)h(vec_andc)f(\(vector)f(signed)i(int,)f (vector)g(signed)g(int\);)390 1233 y(vector)g(unsigned)g(int)h (vec_andc)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f(int\);)390 1337 y(vector)h(unsigned)g(int)h(vec_andc)e(\(vector)h(unsigned)f(int,) i(vector)f(signed)g(int\);)390 1440 y(vector)g(unsigned)g(int)h (vec_andc)e(\(vector)h(unsigned)f(int,)i(vector)f(unsigned)g(int\);)390 1648 y(vector)g(signed)g(short)h(vec_andc)e(\(vector)h(signed)g(short,) g(vector)g(signed)g(short\);)390 1856 y(vector)g(unsigned)g(short)g (vec_andc)g(\(vector)f(signed)h(short,)1917 1959 y(vector)g(unsigned)g (short\);)390 2063 y(vector)g(unsigned)g(short)g(vec_andc)g(\(vector)f (unsigned)h(short,)1917 2167 y(vector)g(signed)g(short\);)390 2271 y(vector)g(unsigned)g(short)g(vec_andc)g(\(vector)f(unsigned)h (short,)1917 2374 y(vector)g(unsigned)g(short\);)390 2478 y(vector)g(signed)g(char)h(vec_andc)e(\(vector)h(signed)g(char,)h (vector)f(signed)g(char\);)390 2582 y(vector)g(unsigned)g(char)g (vec_andc)g(\(vector)g(signed)g(char,)1870 2686 y(vector)g(unsigned)f (char\);)390 2790 y(vector)h(unsigned)g(char)g(vec_andc)g(\(vector)g (unsigned)f(char,)1870 2893 y(vector)h(signed)g(char\);)390 2997 y(vector)g(unsigned)g(char)g(vec_andc)g(\(vector)g(unsigned)f (char,)1870 3101 y(vector)h(unsigned)f(char\);)390 3308 y(vector)h(unsigned)g(char)g(vec_avg)g(\(vector)g(unsigned)f(char,)1822 3412 y(vector)h(unsigned)f(char\);)390 3516 y(vector)h(signed)g(char)h (vec_avg)f(\(vector)f(signed)i(char,)f(vector)g(signed)g(char\);)390 3620 y(vector)g(unsigned)g(short)g(vec_avg)g(\(vector)g(unsigned)f (short,)1870 3724 y(vector)h(unsigned)f(short\);)390 3827 y(vector)h(signed)g(short)h(vec_avg)e(\(vector)h(signed)g(short,)g (vector)g(signed)h(short\);)390 3931 y(vector)f(unsigned)g(int)h (vec_avg)e(\(vector)h(unsigned)g(int,)g(vector)g(unsigned)g(int\);)390 4035 y(vector)g(signed)g(int)h(vec_avg)f(\(vector)g(signed)g(int,)g (vector)h(signed)f(int\);)390 4242 y(vector)g(float)g(vec_ceil)g (\(vector)g(float\);)390 4450 y(vector)g(signed)g(int)h(vec_cmpb)f (\(vector)f(float,)i(vector)f(float\);)390 4658 y(vector)g(signed)g (char)h(vec_cmpeq)e(\(vector)h(signed)g(char,)g(vector)g(signed)h (char\);)390 4761 y(vector)f(signed)g(char)h(vec_cmpeq)e(\(vector)h (unsigned)f(char,)1822 4865 y(vector)h(unsigned)f(char\);)390 4969 y(vector)h(signed)g(short)h(vec_cmpeq)e(\(vector)h(signed)g (short,)1870 5073 y(vector)g(signed)g(short\);)390 5176 y(vector)g(signed)g(short)h(vec_cmpeq)e(\(vector)h(unsigned)f(short,) 1870 5280 y(vector)h(unsigned)f(short\);)p eop %%Page: 228 238 228 237 bop 150 -116 a Fy(228)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(vector)46 b(signed)g(int)h (vec_cmpeq)e(\(vector)h(signed)g(int,)h(vector)f(signed)g(int\);)390 403 y(vector)g(signed)g(int)h(vec_cmpeq)e(\(vector)h(unsigned)g(int,)g (vector)g(unsigned)g(int\);)390 506 y(vector)g(signed)g(int)h (vec_cmpeq)e(\(vector)h(float,)g(vector)g(float\);)390 714 y(vector)g(signed)g(int)h(vec_cmpge)e(\(vector)h(float,)g(vector)g (float\);)390 922 y(vector)g(signed)g(char)h(vec_cmpgt)e(\(vector)h (unsigned)f(char,)1822 1025 y(vector)h(unsigned)f(char\);)390 1129 y(vector)h(signed)g(char)h(vec_cmpgt)e(\(vector)h(signed)g(char,)g (vector)g(signed)h(char\);)390 1233 y(vector)f(signed)g(short)h (vec_cmpgt)e(\(vector)h(unsigned)f(short,)1870 1337 y(vector)h (unsigned)f(short\);)390 1440 y(vector)h(signed)g(short)h(vec_cmpgt)e (\(vector)h(signed)g(short,)1870 1544 y(vector)g(signed)g(short\);)390 1648 y(vector)g(signed)g(int)h(vec_cmpgt)e(\(vector)h(unsigned)g(int,)g (vector)g(unsigned)g(int\);)390 1752 y(vector)g(signed)g(int)h (vec_cmpgt)e(\(vector)h(signed)g(int,)h(vector)f(signed)g(int\);)390 1856 y(vector)g(signed)g(int)h(vec_cmpgt)e(\(vector)h(float,)g(vector)g (float\);)390 2063 y(vector)g(signed)g(int)h(vec_cmple)e(\(vector)h (float,)g(vector)g(float\);)390 2271 y(vector)g(signed)g(char)h (vec_cmplt)e(\(vector)h(unsigned)f(char,)1822 2374 y(vector)h(unsigned) f(char\);)390 2478 y(vector)h(signed)g(char)h(vec_cmplt)e(\(vector)h (signed)g(char,)g(vector)g(signed)h(char\);)390 2582 y(vector)f(signed)g(short)h(vec_cmplt)e(\(vector)h(unsigned)f(short,) 1870 2686 y(vector)h(unsigned)f(short\);)390 2790 y(vector)h(signed)g (short)h(vec_cmplt)e(\(vector)h(signed)g(short,)1870 2893 y(vector)g(signed)g(short\);)390 2997 y(vector)g(signed)g(int)h (vec_cmplt)e(\(vector)h(unsigned)g(int,)g(vector)g(unsigned)g(int\);) 390 3101 y(vector)g(signed)g(int)h(vec_cmplt)e(\(vector)h(signed)g (int,)h(vector)f(signed)g(int\);)390 3205 y(vector)g(signed)g(int)h (vec_cmplt)e(\(vector)h(float,)g(vector)g(float\);)390 3412 y(vector)g(float)g(vec_ctf)g(\(vector)g(unsigned)g(int,)g(const)h (char\);)390 3516 y(vector)f(float)g(vec_ctf)g(\(vector)g(signed)g (int,)h(const)f(char\);)390 3724 y(vector)g(signed)g(int)h(vec_cts)f (\(vector)g(float,)g(const)g(char\);)390 3931 y(vector)g(unsigned)g (int)h(vec_ctu)e(\(vector)h(float,)g(const)h(char\);)390 4139 y(void)g(vec_dss)e(\(const)i(char\);)390 4346 y(void)g(vec_dssall) e(\(void\);)390 4554 y(void)i(vec_dst)e(\(void)i(*,)g(int,)g(const)f (char\);)390 4761 y(void)h(vec_dstst)e(\(void)h(*,)h(int,)g(const)f (char\);)390 4969 y(void)h(vec_dststt)e(\(void)h(*,)h(int,)g(const)f (char\);)390 5176 y(void)h(vec_dstt)e(\(void)i(*,)g(int,)f(const)h (char\);)p eop %%Page: 229 239 229 238 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(229)390 299 y Fq(vector)46 b(float)g(vec_expte)g(\(vector)g(float,)g(vector)g (float\);)390 506 y(vector)g(float)g(vec_floor)g(\(vector)g(float,)g (vector)g(float\);)390 714 y(vector)g(float)g(vec_ld)h(\(int,)f(vector) g(float)g(*\);)390 818 y(vector)g(float)g(vec_ld)h(\(int,)f(float)g (*\):)390 922 y(vector)g(signed)g(int)h(vec_ld)f(\(int,)h(int)f(*\);) 390 1025 y(vector)g(signed)g(int)h(vec_ld)f(\(int,)h(vector)f(signed)g (int)h(*\);)390 1129 y(vector)f(unsigned)g(int)h(vec_ld)f(\(int,)g (vector)g(unsigned)g(int)h(*\);)390 1233 y(vector)f(unsigned)g(int)h (vec_ld)f(\(int,)g(unsigned)g(int)g(*\);)390 1337 y(vector)g(signed)g (short)h(vec_ld)f(\(int,)g(short)g(*,)i(vector)e(signed)g(short)g(*\);) 390 1440 y(vector)g(unsigned)g(short)g(vec_ld)g(\(int,)g(unsigned)g (short)g(*,)1822 1544 y(vector)g(unsigned)f(short)i(*\);)390 1648 y(vector)f(signed)g(char)h(vec_ld)f(\(int,)g(signed)g(char)h(*\);) 390 1752 y(vector)f(signed)g(char)h(vec_ld)f(\(int,)g(vector)g(signed)g (char)h(*\);)390 1856 y(vector)f(unsigned)g(char)g(vec_ld)g(\(int,)h (unsigned)e(char)i(*\);)390 1959 y(vector)f(unsigned)g(char)g(vec_ld)g (\(int,)h(vector)f(unsigned)f(char)i(*\);)390 2167 y(vector)f(signed)g (char)h(vec_lde)f(\(int,)g(signed)g(char)h(*\);)390 2271 y(vector)f(unsigned)g(char)g(vec_lde)g(\(int,)g(unsigned)g(char)h(*\);) 390 2374 y(vector)f(signed)g(short)h(vec_lde)e(\(int,)i(short)f(*\);) 390 2478 y(vector)g(unsigned)g(short)g(vec_lde)g(\(int,)g(unsigned)g (short)g(*\);)390 2582 y(vector)g(float)g(vec_lde)g(\(int,)h(float)f (*\);)390 2686 y(vector)g(signed)g(int)h(vec_lde)f(\(int,)g(int)h(*\);) 390 2790 y(vector)f(unsigned)g(int)h(vec_lde)e(\(int,)i(unsigned)e(int) i(*\);)390 2997 y(void)g(float)f(vec_ldl)g(\(int,)g(float)h(*\);)390 3101 y(void)g(float)f(vec_ldl)g(\(int,)g(vector)g(float)h(*\);)390 3205 y(void)g(signed)f(int)h(vec_ldl)e(\(int,)i(vector)f(signed)g(int)h (*\);)390 3308 y(void)g(signed)f(int)h(vec_ldl)e(\(int,)i(int)g(*\);) 390 3412 y(void)g(unsigned)e(int)i(vec_ldl)f(\(int,)g(unsigned)g(int)h (*\);)390 3516 y(void)g(unsigned)e(int)i(vec_ldl)f(\(int,)g(vector)g (unsigned)g(int)h(*\);)390 3620 y(void)g(signed)f(short)g(vec_ldl)g (\(int,)g(vector)g(signed)g(short)h(*\);)390 3724 y(void)g(signed)f (short)g(vec_ldl)g(\(int,)g(short)h(*\);)390 3827 y(void)g(unsigned)e (short)i(vec_ldl)e(\(int,)i(vector)f(unsigned)f(short)i(*\);)390 3931 y(void)g(unsigned)e(short)i(vec_ldl)e(\(int,)i(unsigned)e(short)i (*\);)390 4035 y(void)g(signed)f(char)g(vec_ldl)g(\(int,)h(vector)f (signed)g(char)g(*\);)390 4139 y(void)h(signed)f(char)g(vec_ldl)g (\(int,)h(signed)f(char)g(*\);)390 4242 y(void)h(unsigned)e(char)i (vec_ldl)f(\(int,)g(vector)g(unsigned)g(char)g(*\);)390 4346 y(void)h(unsigned)e(char)i(vec_ldl)f(\(int,)g(unsigned)g(char)g (*\);)390 4554 y(vector)g(float)g(vec_loge)g(\(vector)g(float\);)390 4761 y(vector)g(unsigned)g(char)g(vec_lvsl)g(\(int,)g(void)h(*,)g(int)g (*\);)390 4969 y(vector)f(unsigned)g(char)g(vec_lvsr)g(\(int,)g(void)h (*,)g(int)g(*\);)390 5176 y(vector)f(float)g(vec_madd)g(\(vector)g (float,)g(vector)g(float,)g(vector)g(float\);)p eop %%Page: 230 240 230 239 bop 150 -116 a Fy(230)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(vector)46 b(signed)g(short)h (vec_madds)e(\(vector)h(signed)g(short,)g(vector)g(signed)g(short,)1870 403 y(vector)g(signed)g(short\);)390 610 y(vector)g(unsigned)g(char)g (vec_max)g(\(vector)g(signed)g(char,)g(vector)g(unsigned)g(char\);)390 818 y(vector)g(unsigned)g(char)g(vec_max)g(\(vector)g(unsigned)f(char,) i(vector)f(signed)g(char\);)390 1025 y(vector)g(unsigned)g(char)g (vec_max)g(\(vector)g(unsigned)f(char,)1822 1129 y(vector)h(unsigned)f (char\);)390 1233 y(vector)h(signed)g(char)h(vec_max)f(\(vector)f (signed)i(char,)f(vector)g(signed)g(char\);)390 1337 y(vector)g(unsigned)g(short)g(vec_max)g(\(vector)g(signed)g(short,)1870 1440 y(vector)g(unsigned)f(short\);)390 1544 y(vector)h(unsigned)g (short)g(vec_max)g(\(vector)g(unsigned)f(short,)1870 1648 y(vector)h(signed)g(short\);)390 1752 y(vector)g(unsigned)g(short) g(vec_max)g(\(vector)g(unsigned)f(short,)1870 1856 y(vector)h(unsigned) f(short\);)390 1959 y(vector)h(signed)g(short)h(vec_max)e(\(vector)h (signed)g(short,)g(vector)g(signed)h(short\);)390 2063 y(vector)f(unsigned)g(int)h(vec_max)e(\(vector)h(signed)g(int,)h (vector)f(unsigned)g(int\);)390 2167 y(vector)g(unsigned)g(int)h (vec_max)e(\(vector)h(unsigned)g(int,)g(vector)g(signed)h(int\);)390 2271 y(vector)f(unsigned)g(int)h(vec_max)e(\(vector)h(unsigned)g(int,)g (vector)g(unsigned)g(int\);)390 2374 y(vector)g(signed)g(int)h(vec_max) f(\(vector)g(signed)g(int,)g(vector)h(signed)f(int\);)390 2478 y(vector)g(float)g(vec_max)g(\(vector)g(float,)g(vector)g (float\);)390 2686 y(vector)g(signed)g(char)h(vec_mergeh)e(\(vector)h (signed)g(char,)g(vector)g(signed)g(char\);)390 2790 y(vector)g(unsigned)g(char)g(vec_mergeh)f(\(vector)h(unsigned)g(char,) 1965 2893 y(vector)g(unsigned)g(char\);)390 2997 y(vector)g(signed)g (short)h(vec_mergeh)e(\(vector)g(signed)h(short,)1917 3101 y(vector)g(signed)g(short\);)390 3205 y(vector)g(unsigned)g(short) g(vec_mergeh)f(\(vector)h(unsigned)f(short,)2013 3308 y(vector)h(unsigned)f(short\);)390 3412 y(vector)h(float)g(vec_mergeh)f (\(vector)h(float,)g(vector)g(float\);)390 3516 y(vector)g(signed)g (int)h(vec_mergeh)e(\(vector)h(signed)g(int,)h(vector)f(signed)g (int\);)390 3620 y(vector)g(unsigned)g(int)h(vec_mergeh)e(\(vector)g (unsigned)h(int,)1917 3724 y(vector)g(unsigned)g(int\);)390 3931 y(vector)g(signed)g(char)h(vec_mergel)e(\(vector)h(signed)g(char,) g(vector)g(signed)g(char\);)390 4035 y(vector)g(unsigned)g(char)g (vec_mergel)f(\(vector)h(unsigned)g(char,)1965 4139 y(vector)g (unsigned)g(char\);)390 4242 y(vector)g(signed)g(short)h(vec_mergel)e (\(vector)g(signed)h(short,)1917 4346 y(vector)g(signed)g(short\);)390 4450 y(vector)g(unsigned)g(short)g(vec_mergel)f(\(vector)h(unsigned)f (short,)2013 4554 y(vector)h(unsigned)f(short\);)390 4658 y(vector)h(float)g(vec_mergel)f(\(vector)h(float,)g(vector)g (float\);)390 4761 y(vector)g(signed)g(int)h(vec_mergel)e(\(vector)h (signed)g(int,)h(vector)f(signed)g(int\);)390 4865 y(vector)g(unsigned) g(int)h(vec_mergel)e(\(vector)g(unsigned)h(int,)1917 4969 y(vector)g(unsigned)g(int\);)390 5176 y(vector)g(unsigned)g(short) g(vec_mfvscr)f(\(void\);)p eop %%Page: 231 241 231 240 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(231)390 299 y Fq(vector)46 b(unsigned)g(char)g(vec_min)g(\(vector)g(signed)g (char,)g(vector)g(unsigned)g(char\);)390 506 y(vector)g(unsigned)g (char)g(vec_min)g(\(vector)g(unsigned)f(char,)i(vector)f(signed)g (char\);)390 714 y(vector)g(unsigned)g(char)g(vec_min)g(\(vector)g (unsigned)f(char,)1822 818 y(vector)h(unsigned)f(char\);)390 922 y(vector)h(signed)g(char)h(vec_min)f(\(vector)f(signed)i(char,)f (vector)g(signed)g(char\);)390 1025 y(vector)g(unsigned)g(short)g (vec_min)g(\(vector)g(signed)g(short,)1870 1129 y(vector)g(unsigned)f (short\);)390 1233 y(vector)h(unsigned)g(short)g(vec_min)g(\(vector)g (unsigned)f(short,)1870 1337 y(vector)h(signed)g(short\);)390 1440 y(vector)g(unsigned)g(short)g(vec_min)g(\(vector)g(unsigned)f (short,)1870 1544 y(vector)h(unsigned)f(short\);)390 1648 y(vector)h(signed)g(short)h(vec_min)e(\(vector)h(signed)g(short,)g (vector)g(signed)h(short\);)390 1752 y(vector)f(unsigned)g(int)h (vec_min)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)g(int\);)390 1856 y(vector)g(unsigned)g(int)h(vec_min)e(\(vector)h(unsigned)g(int,)g (vector)g(signed)h(int\);)390 1959 y(vector)f(unsigned)g(int)h(vec_min) e(\(vector)h(unsigned)g(int,)g(vector)g(unsigned)g(int\);)390 2063 y(vector)g(signed)g(int)h(vec_min)f(\(vector)g(signed)g(int,)g (vector)h(signed)f(int\);)390 2167 y(vector)g(float)g(vec_min)g (\(vector)g(float,)g(vector)g(float\);)390 2374 y(vector)g(signed)g (short)h(vec_mladd)e(\(vector)h(signed)g(short,)g(vector)g(signed)g (short,)1870 2478 y(vector)g(signed)g(short\);)390 2582 y(vector)g(signed)g(short)h(vec_mladd)e(\(vector)h(signed)g(short,)1870 2686 y(vector)g(unsigned)f(short,)1870 2790 y(vector)h(unsigned)f (short\);)390 2893 y(vector)h(signed)g(short)h(vec_mladd)e(\(vector)h (unsigned)f(short,)1870 2997 y(vector)h(signed)g(short,)1870 3101 y(vector)g(signed)g(short\);)390 3205 y(vector)g(unsigned)g(short) g(vec_mladd)f(\(vector)h(unsigned)g(short,)1965 3308 y(vector)g(unsigned)g(short,)1965 3412 y(vector)g(unsigned)g(short\);) 390 3620 y(vector)g(signed)g(short)h(vec_mradds)e(\(vector)g(signed)h (short,)1917 3724 y(vector)g(signed)g(short,)1917 3827 y(vector)g(signed)g(short\);)390 4035 y(vector)g(unsigned)g(int)h (vec_msum)e(\(vector)h(unsigned)f(char,)1822 4139 y(vector)h(unsigned)f (char,)1822 4242 y(vector)h(unsigned)f(int\);)390 4346 y(vector)h(signed)g(int)h(vec_msum)f(\(vector)f(signed)i(char,)f (vector)g(unsigned)g(char,)1726 4450 y(vector)g(signed)h(int\);)390 4554 y(vector)f(unsigned)g(int)h(vec_msum)e(\(vector)h(unsigned)f (short,)1822 4658 y(vector)h(unsigned)f(short,)1822 4761 y(vector)h(unsigned)f(int\);)390 4865 y(vector)h(signed)g(int)h (vec_msum)f(\(vector)f(signed)i(short,)f(vector)g(signed)g(short,)1726 4969 y(vector)g(signed)h(int\);)390 5176 y(vector)f(unsigned)g(int)h (vec_msums)e(\(vector)h(unsigned)f(short,)1870 5280 y(vector)h (unsigned)f(short,)p eop %%Page: 232 242 232 241 bop 150 -116 a Fy(232)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))1870 299 y Fq(vector)46 b(unsigned)f(int\);)390 403 y(vector)h(signed)g(int)h(vec_msums)e(\(vector)h(signed)g(short,)g (vector)g(signed)h(short,)1774 506 y(vector)f(signed)g(int\);)390 714 y(void)h(vec_mtvscr)e(\(vector)g(signed)i(int\);)390 818 y(void)g(vec_mtvscr)e(\(vector)g(unsigned)h(int\);)390 922 y(void)h(vec_mtvscr)e(\(vector)g(signed)i(short\);)390 1025 y(void)g(vec_mtvscr)e(\(vector)g(unsigned)h(short\);)390 1129 y(void)h(vec_mtvscr)e(\(vector)g(signed)i(char\);)390 1233 y(void)g(vec_mtvscr)e(\(vector)g(unsigned)h(char\);)390 1440 y(vector)g(unsigned)g(short)g(vec_mule)g(\(vector)f(unsigned)h (char,)1917 1544 y(vector)g(unsigned)g(char\);)390 1648 y(vector)g(signed)g(short)h(vec_mule)e(\(vector)h(signed)g(char,)g (vector)g(signed)h(char\);)390 1752 y(vector)f(unsigned)g(int)h (vec_mule)e(\(vector)h(unsigned)f(short,)1822 1856 y(vector)h(unsigned) f(short\);)390 1959 y(vector)h(signed)g(int)h(vec_mule)f(\(vector)f (signed)i(short,)f(vector)g(signed)g(short\);)390 2167 y(vector)g(unsigned)g(short)g(vec_mulo)g(\(vector)f(unsigned)h(char,) 1917 2271 y(vector)g(unsigned)g(char\);)390 2374 y(vector)g(signed)g (short)h(vec_mulo)e(\(vector)h(signed)g(char,)g(vector)g(signed)h (char\);)390 2478 y(vector)f(unsigned)g(int)h(vec_mulo)e(\(vector)h (unsigned)f(short,)1822 2582 y(vector)h(unsigned)f(short\);)390 2686 y(vector)h(signed)g(int)h(vec_mulo)f(\(vector)f(signed)i(short,)f (vector)g(signed)g(short\);)390 2893 y(vector)g(float)g(vec_nmsub)g (\(vector)g(float,)g(vector)g(float,)g(vector)g(float\);)390 3101 y(vector)g(float)g(vec_nor)g(\(vector)g(float,)g(vector)g (float\);)390 3205 y(vector)g(signed)g(int)h(vec_nor)f(\(vector)g (signed)g(int,)g(vector)h(signed)f(int\);)390 3308 y(vector)g(unsigned) g(int)h(vec_nor)e(\(vector)h(unsigned)g(int,)g(vector)g(unsigned)g (int\);)390 3412 y(vector)g(signed)g(short)h(vec_nor)e(\(vector)h (signed)g(short,)g(vector)g(signed)h(short\);)390 3516 y(vector)f(unsigned)g(short)g(vec_nor)g(\(vector)g(unsigned)f(short,) 1870 3620 y(vector)h(unsigned)f(short\);)390 3724 y(vector)h(signed)g (char)h(vec_nor)f(\(vector)f(signed)i(char,)f(vector)g(signed)g (char\);)390 3827 y(vector)g(unsigned)g(char)g(vec_nor)g(\(vector)g (unsigned)f(char,)1822 3931 y(vector)h(unsigned)f(char\);)390 4139 y(vector)h(float)g(vec_or)h(\(vector)e(float,)h(vector)h(float\);) 390 4242 y(vector)f(float)g(vec_or)h(\(vector)e(float,)h(vector)h (signed)f(int\);)390 4346 y(vector)g(float)g(vec_or)h(\(vector)e (signed)h(int,)h(vector)f(float\);)390 4450 y(vector)g(signed)g(int)h (vec_or)f(\(vector)g(signed)g(int,)h(vector)f(signed)g(int\);)390 4554 y(vector)g(unsigned)g(int)h(vec_or)f(\(vector)f(signed)i(int,)f (vector)g(unsigned)g(int\);)390 4658 y(vector)g(unsigned)g(int)h (vec_or)f(\(vector)f(unsigned)h(int,)h(vector)f(signed)g(int\);)390 4761 y(vector)g(unsigned)g(int)h(vec_or)f(\(vector)f(unsigned)h(int,)h (vector)f(unsigned)f(int\);)390 4865 y(vector)h(signed)g(short)h (vec_or)f(\(vector)f(signed)i(short,)f(vector)g(signed)g(short\);)390 4969 y(vector)g(unsigned)g(short)g(vec_or)g(\(vector)g(signed)g(short,) 1822 5073 y(vector)g(unsigned)f(short\);)390 5176 y(vector)h(unsigned)g (short)g(vec_or)g(\(vector)g(unsigned)f(short,)1822 5280 y(vector)h(signed)g(short\);)p eop %%Page: 233 243 233 242 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(233)390 299 y Fq(vector)46 b(unsigned)g(short)g(vec_or)g(\(vector)g(unsigned)f (short,)1822 403 y(vector)h(unsigned)f(short\);)390 506 y(vector)h(signed)g(char)h(vec_or)f(\(vector)g(signed)g(char,)g(vector) g(signed)g(char\);)390 610 y(vector)g(unsigned)g(char)g(vec_or)g (\(vector)g(signed)g(char,)h(vector)f(unsigned)f(char\);)390 714 y(vector)h(unsigned)g(char)g(vec_or)g(\(vector)g(unsigned)g(char,)g (vector)g(signed)g(char\);)390 818 y(vector)g(unsigned)g(char)g(vec_or) g(\(vector)g(unsigned)g(char,)1774 922 y(vector)g(unsigned)g(char\);) 390 1129 y(vector)g(signed)g(char)h(vec_pack)e(\(vector)h(signed)g (short,)g(vector)g(signed)h(short\);)390 1233 y(vector)f(unsigned)g (char)g(vec_pack)g(\(vector)g(unsigned)f(short,)1870 1337 y(vector)h(unsigned)f(short\);)390 1440 y(vector)h(signed)g(short) h(vec_pack)e(\(vector)h(signed)g(int,)h(vector)f(signed)g(int\);)390 1544 y(vector)g(unsigned)g(short)g(vec_pack)g(\(vector)f(unsigned)h (int,)1917 1648 y(vector)g(unsigned)g(int\);)390 1856 y(vector)g(signed)g(short)h(vec_packpx)e(\(vector)g(unsigned)h(int,) 1917 1959 y(vector)g(unsigned)g(int\);)390 2167 y(vector)g(unsigned)g (char)g(vec_packs)g(\(vector)f(unsigned)h(short,)1917 2271 y(vector)g(unsigned)g(short\);)390 2374 y(vector)g(signed)g(char)h (vec_packs)e(\(vector)h(signed)g(short,)g(vector)g(signed)g(short\);) 390 2582 y(vector)g(unsigned)g(short)g(vec_packs)f(\(vector)h(unsigned) g(int,)1965 2686 y(vector)g(unsigned)g(int\);)390 2790 y(vector)g(signed)g(short)h(vec_packs)e(\(vector)h(signed)g(int,)g (vector)g(signed)h(int\);)390 2997 y(vector)f(unsigned)g(char)g (vec_packsu)f(\(vector)h(unsigned)g(short,)1965 3101 y(vector)g(unsigned)g(short\);)390 3205 y(vector)g(unsigned)g(char)g (vec_packsu)f(\(vector)h(signed)g(short,)1965 3308 y(vector)g(signed)g (short\);)390 3412 y(vector)g(unsigned)g(short)g(vec_packsu)f(\(vector) h(unsigned)f(int,)2013 3516 y(vector)h(unsigned)f(int\);)390 3620 y(vector)h(unsigned)g(short)g(vec_packsu)f(\(vector)h(signed)g (int,)h(vector)f(signed)g(int\);)390 3827 y(vector)g(float)g(vec_perm)g (\(vector)g(float,)g(vector)g(float,)1488 3931 y(vector)g(unsigned)f (char\);)390 4035 y(vector)h(signed)g(int)h(vec_perm)f(\(vector)f (signed)i(int,)f(vector)g(signed)g(int,)1726 4139 y(vector)g(unsigned)g (char\);)390 4242 y(vector)g(unsigned)g(int)h(vec_perm)e(\(vector)h (unsigned)f(int,)i(vector)f(unsigned)g(int,)1822 4346 y(vector)g(unsigned)f(char\);)390 4450 y(vector)h(signed)g(short)h (vec_perm)e(\(vector)h(signed)g(short,)g(vector)g(signed)g(short,)1822 4554 y(vector)g(unsigned)f(char\);)390 4658 y(vector)h(unsigned)g (short)g(vec_perm)g(\(vector)f(unsigned)h(short,)1917 4761 y(vector)g(unsigned)g(short,)1917 4865 y(vector)g(unsigned)g (char\);)390 4969 y(vector)g(signed)g(char)h(vec_perm)e(\(vector)h (signed)g(char,)h(vector)f(signed)g(char,)1774 5073 y(vector)g (unsigned)g(char\);)390 5176 y(vector)g(unsigned)g(char)g(vec_perm)g (\(vector)g(unsigned)f(char,)1870 5280 y(vector)h(unsigned)f(char,)p eop %%Page: 234 244 234 243 bop 150 -116 a Fy(234)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))1870 299 y Fq(vector)46 b(unsigned)f(char\);)390 506 y(vector)h(float)g(vec_re)h(\(vector)e(float\);)390 714 y(vector)h(signed)g(char)h(vec_rl)f(\(vector)g(signed)g(char,)g (vector)g(unsigned)g(char\);)390 818 y(vector)g(unsigned)g(char)g (vec_rl)g(\(vector)g(unsigned)g(char,)1774 922 y(vector)g(unsigned)g (char\);)390 1025 y(vector)g(signed)g(short)h(vec_rl)f(\(vector)f (signed)i(short,)f(vector)g(unsigned)f(short\);)390 1233 y(vector)h(unsigned)g(short)g(vec_rl)g(\(vector)g(unsigned)f(short,) 1822 1337 y(vector)h(unsigned)f(short\);)390 1440 y(vector)h(signed)g (int)h(vec_rl)f(\(vector)g(signed)g(int,)h(vector)f(unsigned)f(int\);) 390 1544 y(vector)h(unsigned)g(int)h(vec_rl)f(\(vector)f(unsigned)h (int,)h(vector)f(unsigned)f(int\);)390 1752 y(vector)h(float)g (vec_round)g(\(vector)g(float\);)390 1959 y(vector)g(float)g (vec_rsqrte)f(\(vector)h(float\);)390 2167 y(vector)g(float)g(vec_sel)g (\(vector)g(float,)g(vector)g(float,)g(vector)g(signed)h(int\);)390 2271 y(vector)f(float)g(vec_sel)g(\(vector)g(float,)g(vector)g(float,)g (vector)g(unsigned)g(int\);)390 2374 y(vector)g(signed)g(int)h(vec_sel) f(\(vector)g(signed)g(int,)g(vector)h(signed)f(int,)1679 2478 y(vector)g(signed)g(int\);)390 2582 y(vector)g(signed)g(int)h (vec_sel)f(\(vector)g(signed)g(int,)g(vector)h(signed)f(int,)1679 2686 y(vector)g(unsigned)f(int\);)390 2790 y(vector)h(unsigned)g(int)h (vec_sel)e(\(vector)h(unsigned)g(int,)g(vector)g(unsigned)g(int,)1774 2893 y(vector)g(signed)g(int\);)390 2997 y(vector)g(unsigned)g(int)h (vec_sel)e(\(vector)h(unsigned)g(int,)g(vector)g(unsigned)g(int,)1774 3101 y(vector)g(unsigned)g(int\);)390 3205 y(vector)g(signed)g(short)h (vec_sel)e(\(vector)h(signed)g(short,)g(vector)g(signed)h(short,)1774 3308 y(vector)f(signed)g(short\);)390 3412 y(vector)g(signed)g(short)h (vec_sel)e(\(vector)h(signed)g(short,)g(vector)g(signed)h(short,)1774 3516 y(vector)f(unsigned)g(short\);)390 3620 y(vector)g(unsigned)g (short)g(vec_sel)g(\(vector)g(unsigned)f(short,)1870 3724 y(vector)h(unsigned)f(short,)1870 3827 y(vector)h(signed)g (short\);)390 3931 y(vector)g(unsigned)g(short)g(vec_sel)g(\(vector)g (unsigned)f(short,)1870 4035 y(vector)h(unsigned)f(short,)1870 4139 y(vector)h(unsigned)f(short\);)390 4242 y(vector)h(signed)g(char)h (vec_sel)f(\(vector)f(signed)i(char,)f(vector)g(signed)g(char,)1726 4346 y(vector)g(signed)h(char\);)390 4450 y(vector)f(signed)g(char)h (vec_sel)f(\(vector)f(signed)i(char,)f(vector)g(signed)g(char,)1726 4554 y(vector)g(unsigned)g(char\);)390 4658 y(vector)g(unsigned)g(char) g(vec_sel)g(\(vector)g(unsigned)f(char,)1822 4761 y(vector)h(unsigned)f (char,)1822 4865 y(vector)h(signed)g(char\);)390 4969 y(vector)g(unsigned)g(char)g(vec_sel)g(\(vector)g(unsigned)f(char,)1822 5073 y(vector)h(unsigned)f(char,)1822 5176 y(vector)h(unsigned)f (char\);)p eop %%Page: 235 245 235 244 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(235)390 299 y Fq(vector)46 b(signed)g(char)h(vec_sl)f(\(vector)g(signed)g (char,)g(vector)g(unsigned)g(char\);)390 403 y(vector)g(unsigned)g (char)g(vec_sl)g(\(vector)g(unsigned)g(char,)1774 506 y(vector)g(unsigned)g(char\);)390 610 y(vector)g(signed)g(short)h (vec_sl)f(\(vector)f(signed)i(short,)f(vector)g(unsigned)f(short\);)390 818 y(vector)h(unsigned)g(short)g(vec_sl)g(\(vector)g(unsigned)f (short,)1822 922 y(vector)h(unsigned)f(short\);)390 1025 y(vector)h(signed)g(int)h(vec_sl)f(\(vector)g(signed)g(int,)h(vector)f (unsigned)f(int\);)390 1129 y(vector)h(unsigned)g(int)h(vec_sl)f (\(vector)f(unsigned)h(int,)h(vector)f(unsigned)f(int\);)390 1337 y(vector)h(float)g(vec_sld)g(\(vector)g(float,)g(vector)g(float,)g (const)h(char\);)390 1440 y(vector)f(signed)g(int)h(vec_sld)f(\(vector) g(signed)g(int,)g(vector)h(signed)f(int,)1679 1544 y(const)g(char\);) 390 1648 y(vector)g(unsigned)g(int)h(vec_sld)e(\(vector)h(unsigned)g (int,)g(vector)g(unsigned)g(int,)1774 1752 y(const)g(char\);)390 1856 y(vector)g(signed)g(short)h(vec_sld)e(\(vector)h(signed)g(short,)g (vector)g(signed)h(short,)1774 1959 y(const)f(char\);)390 2063 y(vector)g(unsigned)g(short)g(vec_sld)g(\(vector)g(unsigned)f (short,)1870 2167 y(vector)h(unsigned)f(short,)h(const)h(char\);)390 2271 y(vector)f(signed)g(char)h(vec_sld)f(\(vector)f(signed)i(char,)f (vector)g(signed)g(char,)1726 2374 y(const)h(char\);)390 2478 y(vector)f(unsigned)g(char)g(vec_sld)g(\(vector)g(unsigned)f (char,)1822 2582 y(vector)h(unsigned)f(char,)1822 2686 y(const)h(char\);)390 2893 y(vector)g(signed)g(int)h(vec_sll)f (\(vector)g(signed)g(int,)g(vector)h(unsigned)e(int\);)390 2997 y(vector)h(signed)g(int)h(vec_sll)f(\(vector)g(signed)g(int,)g (vector)h(unsigned)e(short\);)390 3101 y(vector)h(signed)g(int)h (vec_sll)f(\(vector)g(signed)g(int,)g(vector)h(unsigned)e(char\);)390 3205 y(vector)h(unsigned)g(int)h(vec_sll)e(\(vector)h(unsigned)g(int,)g (vector)g(unsigned)g(int\);)390 3308 y(vector)g(unsigned)g(int)h (vec_sll)e(\(vector)h(unsigned)g(int,)1774 3412 y(vector)g(unsigned)g (short\);)390 3516 y(vector)g(unsigned)g(int)h(vec_sll)e(\(vector)h (unsigned)g(int,)g(vector)g(unsigned)g(char\);)390 3724 y(vector)g(signed)g(short)h(vec_sll)e(\(vector)h(signed)g(short,)g (vector)g(unsigned)g(int\);)390 3827 y(vector)g(signed)g(short)h (vec_sll)e(\(vector)h(signed)g(short,)1774 3931 y(vector)g(unsigned)g (short\);)390 4035 y(vector)g(signed)g(short)h(vec_sll)e(\(vector)h (signed)g(short,)g(vector)g(unsigned)g(char\);)390 4242 y(vector)g(unsigned)g(short)g(vec_sll)g(\(vector)g(unsigned)f(short,) 1870 4346 y(vector)h(unsigned)f(int\);)390 4450 y(vector)h(unsigned)g (short)g(vec_sll)g(\(vector)g(unsigned)f(short,)1870 4554 y(vector)h(unsigned)f(short\);)390 4658 y(vector)h(unsigned)g (short)g(vec_sll)g(\(vector)g(unsigned)f(short,)1870 4761 y(vector)h(unsigned)f(char\);)390 4865 y(vector)h(signed)g(char)h (vec_sll)f(\(vector)f(signed)i(char,)f(vector)g(unsigned)g(int\);)390 4969 y(vector)g(signed)g(char)h(vec_sll)f(\(vector)f(signed)i(char,)f (vector)g(unsigned)g(short\);)390 5073 y(vector)g(signed)g(char)h (vec_sll)f(\(vector)f(signed)i(char,)f(vector)g(unsigned)g(char\);)390 5176 y(vector)g(unsigned)g(char)g(vec_sll)g(\(vector)g(unsigned)f (char,)1822 5280 y(vector)h(unsigned)f(int\);)p eop %%Page: 236 246 236 245 bop 150 -116 a Fy(236)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(vector)46 b(unsigned)g(char)g (vec_sll)g(\(vector)g(unsigned)f(char,)1822 403 y(vector)h(unsigned)f (short\);)390 506 y(vector)h(unsigned)g(char)g(vec_sll)g(\(vector)g (unsigned)f(char,)1822 610 y(vector)h(unsigned)f(char\);)390 818 y(vector)h(float)g(vec_slo)g(\(vector)g(float,)g(vector)g(signed)g (char\);)390 922 y(vector)g(float)g(vec_slo)g(\(vector)g(float,)g (vector)g(unsigned)g(char\);)390 1025 y(vector)g(signed)g(int)h (vec_slo)f(\(vector)g(signed)g(int,)g(vector)h(signed)f(char\);)390 1129 y(vector)g(signed)g(int)h(vec_slo)f(\(vector)g(signed)g(int,)g (vector)h(unsigned)e(char\);)390 1233 y(vector)h(unsigned)g(int)h (vec_slo)e(\(vector)h(unsigned)g(int,)g(vector)g(signed)h(char\);)390 1337 y(vector)f(unsigned)g(int)h(vec_slo)e(\(vector)h(unsigned)g(int,)g (vector)g(unsigned)g(char\);)390 1544 y(vector)g(signed)g(short)h (vec_slo)e(\(vector)h(signed)g(short,)g(vector)g(signed)h(char\);)390 1648 y(vector)f(signed)g(short)h(vec_slo)e(\(vector)h(signed)g(short,)g (vector)g(unsigned)g(char\);)390 1856 y(vector)g(unsigned)g(short)g (vec_slo)g(\(vector)g(unsigned)f(short,)1870 1959 y(vector)h(signed)g (char\);)390 2063 y(vector)g(unsigned)g(short)g(vec_slo)g(\(vector)g (unsigned)f(short,)1870 2167 y(vector)h(unsigned)f(char\);)390 2271 y(vector)h(signed)g(char)h(vec_slo)f(\(vector)f(signed)i(char,)f (vector)g(signed)g(char\);)390 2374 y(vector)g(signed)g(char)h(vec_slo) f(\(vector)f(signed)i(char,)f(vector)g(unsigned)g(char\);)390 2478 y(vector)g(unsigned)g(char)g(vec_slo)g(\(vector)g(unsigned)f (char,)i(vector)f(signed)g(char\);)390 2686 y(vector)g(unsigned)g(char) g(vec_slo)g(\(vector)g(unsigned)f(char,)1822 2790 y(vector)h(unsigned)f (char\);)390 2997 y(vector)h(signed)g(char)h(vec_splat)e(\(vector)h (signed)g(char,)g(const)h(char\);)390 3101 y(vector)f(unsigned)g(char)g (vec_splat)g(\(vector)f(unsigned)h(char,)g(const)h(char\);)390 3205 y(vector)f(signed)g(short)h(vec_splat)e(\(vector)h(signed)g (short,)g(const)g(char\);)390 3308 y(vector)g(unsigned)g(short)g (vec_splat)f(\(vector)h(unsigned)g(short,)g(const)g(char\);)390 3412 y(vector)g(float)g(vec_splat)g(\(vector)g(float,)g(const)g (char\);)390 3516 y(vector)g(signed)g(int)h(vec_splat)e(\(vector)h (signed)g(int,)h(const)f(char\);)390 3620 y(vector)g(unsigned)g(int)h (vec_splat)e(\(vector)h(unsigned)f(int,)i(const)f(char\);)390 3827 y(vector)g(signed)g(char)h(vec_splat_s8)d(\(const)i(char\);)390 4035 y(vector)g(signed)g(short)h(vec_splat_s16)d(\(const)i(char\);)390 4242 y(vector)g(signed)g(int)h(vec_splat_s32)d(\(const)i(char\);)390 4450 y(vector)g(unsigned)g(char)g(vec_splat_u8)f(\(const)h(char\);)390 4658 y(vector)g(unsigned)g(short)g(vec_splat_u16)e(\(const)i(char\);) 390 4865 y(vector)g(unsigned)g(int)h(vec_splat_u32)d(\(const)i(char\);) 390 5073 y(vector)g(signed)g(char)h(vec_sr)f(\(vector)g(signed)g(char,) g(vector)g(unsigned)g(char\);)390 5176 y(vector)g(unsigned)g(char)g (vec_sr)g(\(vector)g(unsigned)g(char,)1774 5280 y(vector)g(unsigned)g (char\);)p eop %%Page: 237 247 237 246 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(237)390 299 y Fq(vector)46 b(signed)g(short)h(vec_sr)f(\(vector)f(signed)i (short,)f(vector)g(unsigned)f(short\);)390 506 y(vector)h(unsigned)g (short)g(vec_sr)g(\(vector)g(unsigned)f(short,)1822 610 y(vector)h(unsigned)f(short\);)390 714 y(vector)h(signed)g(int)h (vec_sr)f(\(vector)g(signed)g(int,)h(vector)f(unsigned)f(int\);)390 818 y(vector)h(unsigned)g(int)h(vec_sr)f(\(vector)f(unsigned)h(int,)h (vector)f(unsigned)f(int\);)390 1025 y(vector)h(signed)g(char)h (vec_sra)f(\(vector)f(signed)i(char,)f(vector)g(unsigned)g(char\);)390 1129 y(vector)g(unsigned)g(char)g(vec_sra)g(\(vector)g(unsigned)f (char,)1822 1233 y(vector)h(unsigned)f(char\);)390 1337 y(vector)h(signed)g(short)h(vec_sra)e(\(vector)h(signed)g(short,)1774 1440 y(vector)g(unsigned)g(short\);)390 1544 y(vector)g(unsigned)g (short)g(vec_sra)g(\(vector)g(unsigned)f(short,)1870 1648 y(vector)h(unsigned)f(short\);)390 1752 y(vector)h(signed)g(int)h (vec_sra)f(\(vector)g(signed)g(int,)g(vector)h(unsigned)e(int\);)390 1856 y(vector)h(unsigned)g(int)h(vec_sra)e(\(vector)h(unsigned)g(int,)g (vector)g(unsigned)g(int\);)390 2063 y(vector)g(signed)g(int)h(vec_srl) f(\(vector)g(signed)g(int,)g(vector)h(unsigned)e(int\);)390 2167 y(vector)h(signed)g(int)h(vec_srl)f(\(vector)g(signed)g(int,)g (vector)h(unsigned)e(short\);)390 2271 y(vector)h(signed)g(int)h (vec_srl)f(\(vector)g(signed)g(int,)g(vector)h(unsigned)e(char\);)390 2374 y(vector)h(unsigned)g(int)h(vec_srl)e(\(vector)h(unsigned)g(int,)g (vector)g(unsigned)g(int\);)390 2478 y(vector)g(unsigned)g(int)h (vec_srl)e(\(vector)h(unsigned)g(int,)1774 2582 y(vector)g(unsigned)g (short\);)390 2686 y(vector)g(unsigned)g(int)h(vec_srl)e(\(vector)h (unsigned)g(int,)g(vector)g(unsigned)g(char\);)390 2893 y(vector)g(signed)g(short)h(vec_srl)e(\(vector)h(signed)g(short,)g (vector)g(unsigned)g(int\);)390 2997 y(vector)g(signed)g(short)h (vec_srl)e(\(vector)h(signed)g(short,)1774 3101 y(vector)g(unsigned)g (short\);)390 3205 y(vector)g(signed)g(short)h(vec_srl)e(\(vector)h (signed)g(short,)g(vector)g(unsigned)g(char\);)390 3412 y(vector)g(unsigned)g(short)g(vec_srl)g(\(vector)g(unsigned)f(short,) 1870 3516 y(vector)h(unsigned)f(int\);)390 3620 y(vector)h(unsigned)g (short)g(vec_srl)g(\(vector)g(unsigned)f(short,)1870 3724 y(vector)h(unsigned)f(short\);)390 3827 y(vector)h(unsigned)g (short)g(vec_srl)g(\(vector)g(unsigned)f(short,)1870 3931 y(vector)h(unsigned)f(char\);)390 4035 y(vector)h(signed)g(char)h (vec_srl)f(\(vector)f(signed)i(char,)f(vector)g(unsigned)g(int\);)390 4139 y(vector)g(signed)g(char)h(vec_srl)f(\(vector)f(signed)i(char,)f (vector)g(unsigned)g(short\);)390 4242 y(vector)g(signed)g(char)h (vec_srl)f(\(vector)f(signed)i(char,)f(vector)g(unsigned)g(char\);)390 4346 y(vector)g(unsigned)g(char)g(vec_srl)g(\(vector)g(unsigned)f (char,)1822 4450 y(vector)h(unsigned)f(int\);)390 4554 y(vector)h(unsigned)g(char)g(vec_srl)g(\(vector)g(unsigned)f(char,)1822 4658 y(vector)h(unsigned)f(short\);)390 4761 y(vector)h(unsigned)g (char)g(vec_srl)g(\(vector)g(unsigned)f(char,)1822 4865 y(vector)h(unsigned)f(char\);)390 5073 y(vector)h(float)g(vec_sro)g (\(vector)g(float,)g(vector)g(signed)g(char\);)390 5176 y(vector)g(float)g(vec_sro)g(\(vector)g(float,)g(vector)g(unsigned)g (char\);)390 5280 y(vector)g(signed)g(int)h(vec_sro)f(\(vector)g (signed)g(int,)g(vector)h(signed)f(char\);)p eop %%Page: 238 248 238 247 bop 150 -116 a Fy(238)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(vector)46 b(signed)g(int)h(vec_sro)f (\(vector)g(signed)g(int,)g(vector)h(unsigned)e(char\);)390 403 y(vector)h(unsigned)g(int)h(vec_sro)e(\(vector)h(unsigned)g(int,)g (vector)g(signed)h(char\);)390 506 y(vector)f(unsigned)g(int)h(vec_sro) e(\(vector)h(unsigned)g(int,)g(vector)g(unsigned)g(char\);)390 714 y(vector)g(signed)g(short)h(vec_sro)e(\(vector)h(signed)g(short,)g (vector)g(signed)h(char\);)390 818 y(vector)f(signed)g(short)h(vec_sro) e(\(vector)h(signed)g(short,)g(vector)g(unsigned)g(char\);)390 1025 y(vector)g(unsigned)g(short)g(vec_sro)g(\(vector)g(unsigned)f (short,)1870 1129 y(vector)h(signed)g(char\);)390 1233 y(vector)g(unsigned)g(short)g(vec_sro)g(\(vector)g(unsigned)f(short,) 1870 1337 y(vector)h(unsigned)f(char\);)390 1440 y(vector)h(signed)g (char)h(vec_sro)f(\(vector)f(signed)i(char,)f(vector)g(signed)g (char\);)390 1544 y(vector)g(signed)g(char)h(vec_sro)f(\(vector)f (signed)i(char,)f(vector)g(unsigned)g(char\);)390 1648 y(vector)g(unsigned)g(char)g(vec_sro)g(\(vector)g(unsigned)f(char,)i (vector)f(signed)g(char\);)390 1856 y(vector)g(unsigned)g(char)g (vec_sro)g(\(vector)g(unsigned)f(char,)1822 1959 y(vector)h(unsigned)f (char\);)390 2167 y(void)i(vec_st)f(\(vector)g(float,)g(int,)g(float)h (*\);)390 2271 y(void)g(vec_st)f(\(vector)g(float,)g(int,)g(vector)g (float)h(*\);)390 2374 y(void)g(vec_st)f(\(vector)g(signed)g(int,)g (int,)h(int)g(*\);)390 2478 y(void)g(vec_st)f(\(vector)g(signed)g(int,) g(int,)h(unsigned)e(int)i(*\);)390 2582 y(void)g(vec_st)f(\(vector)g (unsigned)f(int,)i(int,)f(unsigned)g(int)h(*\);)390 2686 y(void)g(vec_st)f(\(vector)g(unsigned)f(int,)i(int,)f(vector)g (unsigned)g(int)h(*\);)390 2790 y(void)g(vec_st)f(\(vector)g(signed)g (short,)g(int,)g(short)h(*\);)390 2893 y(void)g(vec_st)f(\(vector)g (signed)g(short,)g(int,)g(vector)g(unsigned)g(short)g(*\);)390 2997 y(void)h(vec_st)f(\(vector)g(signed)g(short,)g(int,)g(vector)g (signed)h(short)f(*\);)390 3101 y(void)h(vec_st)f(\(vector)g(unsigned)f (short,)h(int,)h(unsigned)e(short)i(*\);)390 3205 y(void)g(vec_st)f (\(vector)g(unsigned)f(short,)h(int,)h(vector)f(unsigned)f(short)i (*\);)390 3308 y(void)g(vec_st)f(\(vector)g(signed)g(char,)g(int,)h (signed)f(char)g(*\);)390 3412 y(void)h(vec_st)f(\(vector)g(signed)g (char,)g(int,)h(unsigned)e(char)i(*\);)390 3516 y(void)g(vec_st)f (\(vector)g(signed)g(char,)g(int,)h(vector)f(signed)g(char)g(*\);)390 3620 y(void)h(vec_st)f(\(vector)g(unsigned)f(char,)h(int,)h(unsigned)f (char)g(*\);)390 3724 y(void)h(vec_st)f(\(vector)g(unsigned)f(char,)h (int,)h(vector)f(unsigned)g(char)g(*\);)390 3931 y(void)h(vec_ste)e (\(vector)h(signed)g(char,)h(int,)f(unsigned)g(char)h(*\);)390 4035 y(void)g(vec_ste)e(\(vector)h(signed)g(char,)h(int,)f(signed)g (char)h(*\);)390 4139 y(void)g(vec_ste)e(\(vector)h(unsigned)g(char,)g (int,)h(unsigned)e(char)i(*\);)390 4242 y(void)g(vec_ste)e(\(vector)h (signed)g(short,)g(int,)h(short)f(*\);)390 4346 y(void)h(vec_ste)e (\(vector)h(signed)g(short,)g(int,)h(unsigned)f(short)g(*\);)390 4450 y(void)h(vec_ste)e(\(vector)h(unsigned)g(short,)g(int,)h(void)f (*\);)390 4554 y(void)h(vec_ste)e(\(vector)h(signed)g(int,)h(int,)g (unsigned)e(int)i(*\);)390 4658 y(void)g(vec_ste)e(\(vector)h(signed)g (int,)h(int,)g(int)g(*\);)390 4761 y(void)g(vec_ste)e(\(vector)h (unsigned)g(int,)g(int,)h(unsigned)f(int)h(*\);)390 4865 y(void)g(vec_ste)e(\(vector)h(float,)g(int,)h(float)f(*\);)390 5073 y(void)h(vec_stl)e(\(vector)h(float,)g(int,)h(vector)f(float)g (*\);)390 5176 y(void)h(vec_stl)e(\(vector)h(float,)g(int,)h(float)f (*\);)390 5280 y(void)h(vec_stl)e(\(vector)h(signed)g(int,)h(int,)g (vector)f(signed)g(int)h(*\);)p eop %%Page: 239 249 239 248 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(239)390 299 y Fq(void)47 b(vec_stl)e(\(vector)h(signed)g(int,)h(int,)g(int)g (*\);)390 403 y(void)g(vec_stl)e(\(vector)h(signed)g(int,)h(int,)g (unsigned)e(int)i(*\);)390 506 y(void)g(vec_stl)e(\(vector)h(unsigned)g (int,)g(int,)h(vector)f(unsigned)g(int)h(*\);)390 610 y(void)g(vec_stl)e(\(vector)h(unsigned)g(int,)g(int,)h(unsigned)f(int)h (*\);)390 714 y(void)g(vec_stl)e(\(vector)h(signed)g(short,)g(int,)h (short)f(*\);)390 818 y(void)h(vec_stl)e(\(vector)h(signed)g(short,)g (int,)h(unsigned)f(short)g(*\);)390 922 y(void)h(vec_stl)e(\(vector)h (signed)g(short,)g(int,)h(vector)f(signed)g(short)h(*\);)390 1025 y(void)g(vec_stl)e(\(vector)h(unsigned)g(short,)g(int,)h(unsigned) e(short)h(*\);)390 1129 y(void)h(vec_stl)e(\(vector)h(unsigned)g (short,)g(int,)h(vector)f(signed)g(short)g(*\);)390 1233 y(void)h(vec_stl)e(\(vector)h(signed)g(char,)h(int,)f(signed)g(char)h (*\);)390 1337 y(void)g(vec_stl)e(\(vector)h(signed)g(char,)h(int,)f (unsigned)g(char)h(*\);)390 1440 y(void)g(vec_stl)e(\(vector)h(signed)g (char,)h(int,)f(vector)g(signed)h(char)f(*\);)390 1544 y(void)h(vec_stl)e(\(vector)h(unsigned)g(char,)g(int,)h(unsigned)e (char)i(*\);)390 1648 y(void)g(vec_stl)e(\(vector)h(unsigned)g(char,)g (int,)h(vector)f(unsigned)f(char)i(*\);)390 1856 y(vector)f(signed)g (char)h(vec_sub)f(\(vector)f(signed)i(char,)f(vector)g(signed)g (char\);)390 1959 y(vector)g(unsigned)g(char)g(vec_sub)g(\(vector)g (signed)g(char,)g(vector)g(unsigned)g(char\);)390 2167 y(vector)g(unsigned)g(char)g(vec_sub)g(\(vector)g(unsigned)f(char,)i (vector)f(signed)g(char\);)390 2374 y(vector)g(unsigned)g(char)g (vec_sub)g(\(vector)g(unsigned)f(char,)1822 2478 y(vector)h(unsigned)f (char\);)390 2582 y(vector)h(signed)g(short)h(vec_sub)e(\(vector)h (signed)g(short,)g(vector)g(signed)h(short\);)390 2686 y(vector)f(unsigned)g(short)g(vec_sub)g(\(vector)g(signed)g(short,)1870 2790 y(vector)g(unsigned)f(short\);)390 2893 y(vector)h(unsigned)g (short)g(vec_sub)g(\(vector)g(unsigned)f(short,)1870 2997 y(vector)h(signed)g(short\);)390 3101 y(vector)g(unsigned)g(short) g(vec_sub)g(\(vector)g(unsigned)f(short,)1870 3205 y(vector)h(unsigned) f(short\);)390 3308 y(vector)h(signed)g(int)h(vec_sub)f(\(vector)g (signed)g(int,)g(vector)h(signed)f(int\);)390 3412 y(vector)g(unsigned) g(int)h(vec_sub)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)g (int\);)390 3516 y(vector)g(unsigned)g(int)h(vec_sub)e(\(vector)h (unsigned)g(int,)g(vector)g(signed)h(int\);)390 3620 y(vector)f(unsigned)g(int)h(vec_sub)e(\(vector)h(unsigned)g(int,)g (vector)g(unsigned)g(int\);)390 3724 y(vector)g(float)g(vec_sub)g (\(vector)g(float,)g(vector)g(float\);)390 3931 y(vector)g(unsigned)g (int)h(vec_subc)e(\(vector)h(unsigned)f(int,)i(vector)f(unsigned)g (int\);)390 4139 y(vector)g(unsigned)g(char)g(vec_subs)g(\(vector)g (signed)g(char,)1870 4242 y(vector)g(unsigned)f(char\);)390 4346 y(vector)h(unsigned)g(char)g(vec_subs)g(\(vector)g(unsigned)f (char,)1870 4450 y(vector)h(signed)g(char\);)390 4554 y(vector)g(unsigned)g(char)g(vec_subs)g(\(vector)g(unsigned)f(char,) 1870 4658 y(vector)h(unsigned)f(char\);)390 4761 y(vector)h(signed)g (char)h(vec_subs)e(\(vector)h(signed)g(char,)h(vector)f(signed)g (char\);)390 4865 y(vector)g(unsigned)g(short)g(vec_subs)g(\(vector)f (signed)h(short,)1917 4969 y(vector)g(unsigned)g(short\);)390 5073 y(vector)g(unsigned)g(short)g(vec_subs)g(\(vector)f(unsigned)h (short,)1917 5176 y(vector)g(signed)g(short\);)390 5280 y(vector)g(unsigned)g(short)g(vec_subs)g(\(vector)f(unsigned)h(short,)p eop %%Page: 240 250 240 249 bop 150 -116 a Fy(240)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))1917 299 y Fq(vector)46 b(unsigned)g(short\);)390 403 y(vector)g(signed)g(short)h(vec_subs)e(\(vector)h(signed)g(short,)g (vector)g(signed)g(short\);)390 610 y(vector)g(unsigned)g(int)h (vec_subs)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f(int\);)390 714 y(vector)h(unsigned)g(int)h(vec_subs)e(\(vector)h(unsigned)f(int,)i (vector)f(signed)g(int\);)390 818 y(vector)g(unsigned)g(int)h(vec_subs) e(\(vector)h(unsigned)f(int,)i(vector)f(unsigned)g(int\);)390 1025 y(vector)g(signed)g(int)h(vec_subs)f(\(vector)f(signed)i(int,)f (vector)g(signed)g(int\);)390 1233 y(vector)g(unsigned)g(int)h (vec_sum4s)e(\(vector)h(unsigned)f(char,)1870 1337 y(vector)h(unsigned) f(int\);)390 1440 y(vector)h(signed)g(int)h(vec_sum4s)e(\(vector)h (signed)g(char,)h(vector)f(signed)g(int\);)390 1544 y(vector)g(signed)g (int)h(vec_sum4s)e(\(vector)h(signed)g(short,)g(vector)g(signed)h (int\);)390 1752 y(vector)f(signed)g(int)h(vec_sum2s)e(\(vector)h (signed)g(int,)h(vector)f(signed)g(int\);)390 1959 y(vector)g(signed)g (int)h(vec_sums)f(\(vector)f(signed)i(int,)f(vector)g(signed)g(int\);) 390 2167 y(vector)g(float)g(vec_trunc)g(\(vector)g(float\);)390 2374 y(vector)g(signed)g(short)h(vec_unpackh)d(\(vector)i(signed)g (char\);)390 2478 y(vector)g(unsigned)g(int)h(vec_unpackh)d(\(vector)i (signed)g(short\);)390 2582 y(vector)g(signed)g(int)h(vec_unpackh)e (\(vector)h(signed)g(short\);)390 2790 y(vector)g(signed)g(short)h (vec_unpackl)d(\(vector)i(signed)g(char\);)390 2893 y(vector)g (unsigned)g(int)h(vec_unpackl)d(\(vector)i(signed)g(short\);)390 2997 y(vector)g(signed)g(int)h(vec_unpackl)e(\(vector)h(signed)g (short\);)390 3205 y(vector)g(float)g(vec_xor)g(\(vector)g(float,)g (vector)g(float\);)390 3308 y(vector)g(float)g(vec_xor)g(\(vector)g (float,)g(vector)g(signed)g(int\);)390 3412 y(vector)g(float)g(vec_xor) g(\(vector)g(signed)g(int,)h(vector)f(float\);)390 3516 y(vector)g(signed)g(int)h(vec_xor)f(\(vector)g(signed)g(int,)g(vector)h (signed)f(int\);)390 3620 y(vector)g(unsigned)g(int)h(vec_xor)e (\(vector)h(signed)g(int,)h(vector)f(unsigned)g(int\);)390 3724 y(vector)g(unsigned)g(int)h(vec_xor)e(\(vector)h(unsigned)g(int,)g (vector)g(signed)h(int\);)390 3827 y(vector)f(unsigned)g(int)h(vec_xor) e(\(vector)h(unsigned)g(int,)g(vector)g(unsigned)g(int\);)390 3931 y(vector)g(signed)g(short)h(vec_xor)e(\(vector)h(signed)g(short,)g (vector)g(signed)h(short\);)390 4035 y(vector)f(unsigned)g(short)g (vec_xor)g(\(vector)g(signed)g(short,)1870 4139 y(vector)g(unsigned)f (short\);)390 4242 y(vector)h(unsigned)g(short)g(vec_xor)g(\(vector)g (unsigned)f(short,)1870 4346 y(vector)h(signed)g(short\);)390 4450 y(vector)g(unsigned)g(short)g(vec_xor)g(\(vector)g(unsigned)f (short,)1870 4554 y(vector)h(unsigned)f(short\);)390 4658 y(vector)h(signed)g(char)h(vec_xor)f(\(vector)f(signed)i(char,)f (vector)g(signed)g(char\);)390 4761 y(vector)g(unsigned)g(char)g (vec_xor)g(\(vector)g(signed)g(char,)g(vector)g(unsigned)g(char\);)390 4969 y(vector)g(unsigned)g(char)g(vec_xor)g(\(vector)g(unsigned)f (char,)i(vector)f(signed)g(char\);)390 5176 y(vector)g(unsigned)g(char) g(vec_xor)g(\(vector)g(unsigned)f(char,)1822 5280 y(vector)h(unsigned)f (char\);)p eop %%Page: 241 251 241 250 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(241)390 403 y Fq(vector)46 b(signed)g(int)h(vec_all_eq)e(\(vector)h(signed)g (char,)g(vector)g(unsigned)g(char\);)390 610 y(vector)g(signed)g(int)h (vec_all_eq)e(\(vector)h(signed)g(char,)g(vector)g(signed)h(char\);)390 714 y(vector)f(signed)g(int)h(vec_all_eq)e(\(vector)h(unsigned)f(char,) i(vector)f(signed)g(char\);)390 922 y(vector)g(signed)g(int)h (vec_all_eq)e(\(vector)h(unsigned)f(char,)1822 1025 y(vector)h (unsigned)f(char\);)390 1129 y(vector)h(signed)g(int)h(vec_all_eq)e (\(vector)h(signed)g(short,)1822 1233 y(vector)g(unsigned)f(short\);) 390 1337 y(vector)h(signed)g(int)h(vec_all_eq)e(\(vector)h(signed)g (short,)g(vector)g(signed)g(short\);)390 1544 y(vector)g(signed)g(int)h (vec_all_eq)e(\(vector)h(unsigned)f(short,)1822 1648 y(vector)h(signed)g(short\);)390 1752 y(vector)g(signed)g(int)h (vec_all_eq)e(\(vector)h(unsigned)f(short,)1822 1856 y(vector)h(unsigned)f(short\);)390 1959 y(vector)h(signed)g(int)h (vec_all_eq)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f(int\);)390 2063 y(vector)h(signed)g(int)h(vec_all_eq)e(\(vector)h(signed)g(int,)h (vector)f(signed)g(int\);)390 2167 y(vector)g(signed)g(int)h (vec_all_eq)e(\(vector)h(unsigned)f(int,)i(vector)f(signed)g(int\);)390 2271 y(vector)g(signed)g(int)h(vec_all_eq)e(\(vector)h(unsigned)f(int,) i(vector)f(unsigned)g(int\);)390 2478 y(vector)g(signed)g(int)h (vec_all_eq)e(\(vector)h(float,)g(vector)g(float\);)390 2686 y(vector)g(signed)g(int)h(vec_all_ge)e(\(vector)h(signed)g(char,)g (vector)g(unsigned)g(char\);)390 2893 y(vector)g(signed)g(int)h (vec_all_ge)e(\(vector)h(unsigned)f(char,)i(vector)f(signed)g(char\);) 390 3101 y(vector)g(signed)g(int)h(vec_all_ge)e(\(vector)h(unsigned)f (char,)1822 3205 y(vector)h(unsigned)f(char\);)390 3308 y(vector)h(signed)g(int)h(vec_all_ge)e(\(vector)h(signed)g(char,)g (vector)g(signed)h(char\);)390 3412 y(vector)f(signed)g(int)h (vec_all_ge)e(\(vector)h(signed)g(short,)1822 3516 y(vector)g(unsigned) f(short\);)390 3620 y(vector)h(signed)g(int)h(vec_all_ge)e(\(vector)h (unsigned)f(short,)1822 3724 y(vector)h(signed)g(short\);)390 3827 y(vector)g(signed)g(int)h(vec_all_ge)e(\(vector)h(unsigned)f (short,)1822 3931 y(vector)h(unsigned)f(short\);)390 4035 y(vector)h(signed)g(int)h(vec_all_ge)e(\(vector)h(signed)g(short,) g(vector)g(signed)g(short\);)390 4242 y(vector)g(signed)g(int)h (vec_all_ge)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f(int\);)390 4346 y(vector)h(signed)g(int)h(vec_all_ge)e(\(vector)h(unsigned)f(int,) i(vector)f(signed)g(int\);)390 4450 y(vector)g(signed)g(int)h (vec_all_ge)e(\(vector)h(unsigned)f(int,)i(vector)f(unsigned)g(int\);) 390 4658 y(vector)g(signed)g(int)h(vec_all_ge)e(\(vector)h(signed)g (int,)h(vector)f(signed)g(int\);)390 4761 y(vector)g(signed)g(int)h (vec_all_ge)e(\(vector)h(float,)g(vector)g(float\);)390 4969 y(vector)g(signed)g(int)h(vec_all_gt)e(\(vector)h(signed)g(char,)g (vector)g(unsigned)g(char\);)390 5176 y(vector)g(signed)g(int)h (vec_all_gt)e(\(vector)h(unsigned)f(char,)i(vector)f(signed)g(char\);)p eop %%Page: 242 252 242 251 bop 150 -116 a Fy(242)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(vector)46 b(signed)g(int)h (vec_all_gt)e(\(vector)h(unsigned)f(char,)1822 403 y(vector)h(unsigned) f(char\);)390 506 y(vector)h(signed)g(int)h(vec_all_gt)e(\(vector)h (signed)g(char,)g(vector)g(signed)h(char\);)390 610 y(vector)f(signed)g (int)h(vec_all_gt)e(\(vector)h(signed)g(short,)1822 714 y(vector)g(unsigned)f(short\);)390 818 y(vector)h(signed)g(int)h (vec_all_gt)e(\(vector)h(unsigned)f(short,)1822 922 y(vector)h(signed)g (short\);)390 1025 y(vector)g(signed)g(int)h(vec_all_gt)e(\(vector)h (unsigned)f(short,)1822 1129 y(vector)h(unsigned)f(short\);)390 1233 y(vector)h(signed)g(int)h(vec_all_gt)e(\(vector)h(signed)g(short,) g(vector)g(signed)g(short\);)390 1440 y(vector)g(signed)g(int)h (vec_all_gt)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f(int\);)390 1544 y(vector)h(signed)g(int)h(vec_all_gt)e(\(vector)h(unsigned)f(int,) i(vector)f(signed)g(int\);)390 1648 y(vector)g(signed)g(int)h (vec_all_gt)e(\(vector)h(unsigned)f(int,)i(vector)f(unsigned)g(int\);) 390 1856 y(vector)g(signed)g(int)h(vec_all_gt)e(\(vector)h(signed)g (int,)h(vector)f(signed)g(int\);)390 1959 y(vector)g(signed)g(int)h (vec_all_gt)e(\(vector)h(float,)g(vector)g(float\);)390 2167 y(vector)g(signed)g(int)h(vec_all_in)e(\(vector)h(float,)g(vector) g(float\);)390 2374 y(vector)g(signed)g(int)h(vec_all_le)e(\(vector)h (signed)g(char,)g(vector)g(unsigned)g(char\);)390 2582 y(vector)g(signed)g(int)h(vec_all_le)e(\(vector)h(unsigned)f(char,)i (vector)f(signed)g(char\);)390 2790 y(vector)g(signed)g(int)h (vec_all_le)e(\(vector)h(unsigned)f(char,)1822 2893 y(vector)h (unsigned)f(char\);)390 2997 y(vector)h(signed)g(int)h(vec_all_le)e (\(vector)h(signed)g(char,)g(vector)g(signed)h(char\);)390 3101 y(vector)f(signed)g(int)h(vec_all_le)e(\(vector)h(signed)g(short,) 1822 3205 y(vector)g(unsigned)f(short\);)390 3308 y(vector)h(signed)g (int)h(vec_all_le)e(\(vector)h(unsigned)f(short,)1822 3412 y(vector)h(signed)g(short\);)390 3516 y(vector)g(signed)g(int)h (vec_all_le)e(\(vector)h(unsigned)f(short,)1822 3620 y(vector)h(unsigned)f(short\);)390 3724 y(vector)h(signed)g(int)h (vec_all_le)e(\(vector)h(signed)g(short,)g(vector)g(signed)g(short\);) 390 3931 y(vector)g(signed)g(int)h(vec_all_le)e(\(vector)h(signed)g (int,)h(vector)f(unsigned)f(int\);)390 4035 y(vector)h(signed)g(int)h (vec_all_le)e(\(vector)h(unsigned)f(int,)i(vector)f(signed)g(int\);)390 4139 y(vector)g(signed)g(int)h(vec_all_le)e(\(vector)h(unsigned)f(int,) i(vector)f(unsigned)g(int\);)390 4346 y(vector)g(signed)g(int)h (vec_all_le)e(\(vector)h(signed)g(int,)h(vector)f(signed)g(int\);)390 4450 y(vector)g(signed)g(int)h(vec_all_le)e(\(vector)h(float,)g(vector) g(float\);)390 4658 y(vector)g(signed)g(int)h(vec_all_lt)e(\(vector)h (signed)g(char,)g(vector)g(unsigned)g(char\);)390 4865 y(vector)g(signed)g(int)h(vec_all_lt)e(\(vector)h(unsigned)f(char,)i (vector)f(signed)g(char\);)390 5073 y(vector)g(signed)g(int)h (vec_all_lt)e(\(vector)h(unsigned)f(char,)1822 5176 y(vector)h (unsigned)f(char\);)390 5280 y(vector)h(signed)g(int)h(vec_all_lt)e (\(vector)h(signed)g(char,)g(vector)g(signed)h(char\);)p eop %%Page: 243 253 243 252 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(243)390 299 y Fq(vector)46 b(signed)g(int)h(vec_all_lt)e(\(vector)h(signed)g (short,)1822 403 y(vector)g(unsigned)f(short\);)390 506 y(vector)h(signed)g(int)h(vec_all_lt)e(\(vector)h(unsigned)f(short,) 1822 610 y(vector)h(signed)g(short\);)390 714 y(vector)g(signed)g(int)h (vec_all_lt)e(\(vector)h(unsigned)f(short,)1822 818 y(vector)h (unsigned)f(short\);)390 922 y(vector)h(signed)g(int)h(vec_all_lt)e (\(vector)h(signed)g(short,)g(vector)g(signed)g(short\);)390 1129 y(vector)g(signed)g(int)h(vec_all_lt)e(\(vector)h(signed)g(int,)h (vector)f(unsigned)f(int\);)390 1233 y(vector)h(signed)g(int)h (vec_all_lt)e(\(vector)h(unsigned)f(int,)i(vector)f(signed)g(int\);)390 1337 y(vector)g(signed)g(int)h(vec_all_lt)e(\(vector)h(unsigned)f(int,) i(vector)f(unsigned)g(int\);)390 1544 y(vector)g(signed)g(int)h (vec_all_lt)e(\(vector)h(signed)g(int,)h(vector)f(signed)g(int\);)390 1648 y(vector)g(signed)g(int)h(vec_all_lt)e(\(vector)h(float,)g(vector) g(float\);)390 1856 y(vector)g(signed)g(int)h(vec_all_nan)e(\(vector)h (float\);)390 2063 y(vector)g(signed)g(int)h(vec_all_ne)e(\(vector)h (signed)g(char,)g(vector)g(unsigned)g(char\);)390 2271 y(vector)g(signed)g(int)h(vec_all_ne)e(\(vector)h(signed)g(char,)g (vector)g(signed)h(char\);)390 2374 y(vector)f(signed)g(int)h (vec_all_ne)e(\(vector)h(unsigned)f(char,)i(vector)f(signed)g(char\);) 390 2582 y(vector)g(signed)g(int)h(vec_all_ne)e(\(vector)h(unsigned)f (char,)1822 2686 y(vector)h(unsigned)f(char\);)390 2790 y(vector)h(signed)g(int)h(vec_all_ne)e(\(vector)h(signed)g(short,)1822 2893 y(vector)g(unsigned)f(short\);)390 2997 y(vector)h(signed)g(int)h (vec_all_ne)e(\(vector)h(signed)g(short,)g(vector)g(signed)g(short\);) 390 3205 y(vector)g(signed)g(int)h(vec_all_ne)e(\(vector)h(unsigned)f (short,)1822 3308 y(vector)h(signed)g(short\);)390 3412 y(vector)g(signed)g(int)h(vec_all_ne)e(\(vector)h(unsigned)f(short,) 1822 3516 y(vector)h(unsigned)f(short\);)390 3620 y(vector)h(signed)g (int)h(vec_all_ne)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f (int\);)390 3724 y(vector)h(signed)g(int)h(vec_all_ne)e(\(vector)h (signed)g(int,)h(vector)f(signed)g(int\);)390 3827 y(vector)g(signed)g (int)h(vec_all_ne)e(\(vector)h(unsigned)f(int,)i(vector)f(signed)g (int\);)390 3931 y(vector)g(signed)g(int)h(vec_all_ne)e(\(vector)h (unsigned)f(int,)i(vector)f(unsigned)g(int\);)390 4139 y(vector)g(signed)g(int)h(vec_all_ne)e(\(vector)h(float,)g(vector)g (float\);)390 4346 y(vector)g(signed)g(int)h(vec_all_nge)e(\(vector)h (float,)g(vector)g(float\);)390 4554 y(vector)g(signed)g(int)h (vec_all_ngt)e(\(vector)h(float,)g(vector)g(float\);)390 4761 y(vector)g(signed)g(int)h(vec_all_nle)e(\(vector)h(float,)g (vector)g(float\);)390 4969 y(vector)g(signed)g(int)h(vec_all_nlt)e (\(vector)h(float,)g(vector)g(float\);)390 5176 y(vector)g(signed)g (int)h(vec_all_numeric)d(\(vector)i(float\);)p eop %%Page: 244 254 244 253 bop 150 -116 a Fy(244)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(vector)46 b(signed)g(int)h (vec_any_eq)e(\(vector)h(signed)g(char,)g(vector)g(unsigned)g(char\);) 390 506 y(vector)g(signed)g(int)h(vec_any_eq)e(\(vector)h(signed)g (char,)g(vector)g(signed)h(char\);)390 610 y(vector)f(signed)g(int)h (vec_any_eq)e(\(vector)h(unsigned)f(char,)i(vector)f(signed)g(char\);) 390 818 y(vector)g(signed)g(int)h(vec_any_eq)e(\(vector)h(unsigned)f (char,)1822 922 y(vector)h(unsigned)f(char\);)390 1025 y(vector)h(signed)g(int)h(vec_any_eq)e(\(vector)h(signed)g(short,)1822 1129 y(vector)g(unsigned)f(short\);)390 1233 y(vector)h(signed)g(int)h (vec_any_eq)e(\(vector)h(signed)g(short,)g(vector)g(signed)g(short\);) 390 1440 y(vector)g(signed)g(int)h(vec_any_eq)e(\(vector)h(unsigned)f (short,)1822 1544 y(vector)h(signed)g(short\);)390 1648 y(vector)g(signed)g(int)h(vec_any_eq)e(\(vector)h(unsigned)f(short,) 1822 1752 y(vector)h(unsigned)f(short\);)390 1856 y(vector)h(signed)g (int)h(vec_any_eq)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f (int\);)390 1959 y(vector)h(signed)g(int)h(vec_any_eq)e(\(vector)h (signed)g(int,)h(vector)f(signed)g(int\);)390 2063 y(vector)g(signed)g (int)h(vec_any_eq)e(\(vector)h(unsigned)f(int,)i(vector)f(signed)g (int\);)390 2167 y(vector)g(signed)g(int)h(vec_any_eq)e(\(vector)h (unsigned)f(int,)i(vector)f(unsigned)g(int\);)390 2374 y(vector)g(signed)g(int)h(vec_any_eq)e(\(vector)h(float,)g(vector)g (float\);)390 2582 y(vector)g(signed)g(int)h(vec_any_ge)e(\(vector)h (signed)g(char,)g(vector)g(unsigned)g(char\);)390 2790 y(vector)g(signed)g(int)h(vec_any_ge)e(\(vector)h(unsigned)f(char,)i (vector)f(signed)g(char\);)390 2997 y(vector)g(signed)g(int)h (vec_any_ge)e(\(vector)h(unsigned)f(char,)1822 3101 y(vector)h (unsigned)f(char\);)390 3205 y(vector)h(signed)g(int)h(vec_any_ge)e (\(vector)h(signed)g(char,)g(vector)g(signed)h(char\);)390 3308 y(vector)f(signed)g(int)h(vec_any_ge)e(\(vector)h(signed)g(short,) 1822 3412 y(vector)g(unsigned)f(short\);)390 3516 y(vector)h(signed)g (int)h(vec_any_ge)e(\(vector)h(unsigned)f(short,)1822 3620 y(vector)h(signed)g(short\);)390 3724 y(vector)g(signed)g(int)h (vec_any_ge)e(\(vector)h(unsigned)f(short,)1822 3827 y(vector)h(unsigned)f(short\);)390 3931 y(vector)h(signed)g(int)h (vec_any_ge)e(\(vector)h(signed)g(short,)g(vector)g(signed)g(short\);) 390 4139 y(vector)g(signed)g(int)h(vec_any_ge)e(\(vector)h(signed)g (int,)h(vector)f(unsigned)f(int\);)390 4242 y(vector)h(signed)g(int)h (vec_any_ge)e(\(vector)h(unsigned)f(int,)i(vector)f(signed)g(int\);)390 4346 y(vector)g(signed)g(int)h(vec_any_ge)e(\(vector)h(unsigned)f(int,) i(vector)f(unsigned)g(int\);)390 4554 y(vector)g(signed)g(int)h (vec_any_ge)e(\(vector)h(signed)g(int,)h(vector)f(signed)g(int\);)390 4658 y(vector)g(signed)g(int)h(vec_any_ge)e(\(vector)h(float,)g(vector) g(float\);)390 4865 y(vector)g(signed)g(int)h(vec_any_gt)e(\(vector)h (signed)g(char,)g(vector)g(unsigned)g(char\);)390 5073 y(vector)g(signed)g(int)h(vec_any_gt)e(\(vector)h(unsigned)f(char,)i (vector)f(signed)g(char\);)390 5280 y(vector)g(signed)g(int)h (vec_any_gt)e(\(vector)h(unsigned)f(char,)p eop %%Page: 245 255 245 254 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(245)1822 299 y Fq(vector)46 b(unsigned)f(char\);)390 403 y(vector)h(signed)g (int)h(vec_any_gt)e(\(vector)h(signed)g(char,)g(vector)g(signed)h (char\);)390 506 y(vector)f(signed)g(int)h(vec_any_gt)e(\(vector)h (signed)g(short,)1822 610 y(vector)g(unsigned)f(short\);)390 714 y(vector)h(signed)g(int)h(vec_any_gt)e(\(vector)h(unsigned)f (short,)1822 818 y(vector)h(signed)g(short\);)390 922 y(vector)g(signed)g(int)h(vec_any_gt)e(\(vector)h(unsigned)f(short,) 1822 1025 y(vector)h(unsigned)f(short\);)390 1129 y(vector)h(signed)g (int)h(vec_any_gt)e(\(vector)h(signed)g(short,)g(vector)g(signed)g (short\);)390 1337 y(vector)g(signed)g(int)h(vec_any_gt)e(\(vector)h (signed)g(int,)h(vector)f(unsigned)f(int\);)390 1440 y(vector)h(signed)g(int)h(vec_any_gt)e(\(vector)h(unsigned)f(int,)i (vector)f(signed)g(int\);)390 1544 y(vector)g(signed)g(int)h (vec_any_gt)e(\(vector)h(unsigned)f(int,)i(vector)f(unsigned)g(int\);) 390 1752 y(vector)g(signed)g(int)h(vec_any_gt)e(\(vector)h(signed)g (int,)h(vector)f(signed)g(int\);)390 1856 y(vector)g(signed)g(int)h (vec_any_gt)e(\(vector)h(float,)g(vector)g(float\);)390 2063 y(vector)g(signed)g(int)h(vec_any_le)e(\(vector)h(signed)g(char,)g (vector)g(unsigned)g(char\);)390 2271 y(vector)g(signed)g(int)h (vec_any_le)e(\(vector)h(unsigned)f(char,)i(vector)f(signed)g(char\);) 390 2478 y(vector)g(signed)g(int)h(vec_any_le)e(\(vector)h(unsigned)f (char,)1822 2582 y(vector)h(unsigned)f(char\);)390 2686 y(vector)h(signed)g(int)h(vec_any_le)e(\(vector)h(signed)g(char,)g (vector)g(signed)h(char\);)390 2790 y(vector)f(signed)g(int)h (vec_any_le)e(\(vector)h(signed)g(short,)1822 2893 y(vector)g(unsigned) f(short\);)390 2997 y(vector)h(signed)g(int)h(vec_any_le)e(\(vector)h (unsigned)f(short,)1822 3101 y(vector)h(signed)g(short\);)390 3205 y(vector)g(signed)g(int)h(vec_any_le)e(\(vector)h(unsigned)f (short,)1822 3308 y(vector)h(unsigned)f(short\);)390 3412 y(vector)h(signed)g(int)h(vec_any_le)e(\(vector)h(signed)g(short,) g(vector)g(signed)g(short\);)390 3620 y(vector)g(signed)g(int)h (vec_any_le)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f(int\);)390 3724 y(vector)h(signed)g(int)h(vec_any_le)e(\(vector)h(unsigned)f(int,) i(vector)f(signed)g(int\);)390 3827 y(vector)g(signed)g(int)h (vec_any_le)e(\(vector)h(unsigned)f(int,)i(vector)f(unsigned)g(int\);) 390 4035 y(vector)g(signed)g(int)h(vec_any_le)e(\(vector)h(signed)g (int,)h(vector)f(signed)g(int\);)390 4139 y(vector)g(signed)g(int)h (vec_any_le)e(\(vector)h(float,)g(vector)g(float\);)390 4346 y(vector)g(signed)g(int)h(vec_any_lt)e(\(vector)h(signed)g(char,)g (vector)g(unsigned)g(char\);)390 4554 y(vector)g(signed)g(int)h (vec_any_lt)e(\(vector)h(unsigned)f(char,)i(vector)f(signed)g(char\);) 390 4761 y(vector)g(signed)g(int)h(vec_any_lt)e(\(vector)h(unsigned)f (char,)1822 4865 y(vector)h(unsigned)f(char\);)390 4969 y(vector)h(signed)g(int)h(vec_any_lt)e(\(vector)h(signed)g(char,)g (vector)g(signed)h(char\);)390 5073 y(vector)f(signed)g(int)h (vec_any_lt)e(\(vector)h(signed)g(short,)1822 5176 y(vector)g(unsigned) f(short\);)390 5280 y(vector)h(signed)g(int)h(vec_any_lt)e(\(vector)h (unsigned)f(short,)p eop %%Page: 246 256 246 255 bop 150 -116 a Fy(246)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))1822 299 y Fq(vector)46 b(signed)g(short\);)390 403 y(vector)g(signed)g(int)h(vec_any_lt)e(\(vector)h(unsigned)f (short,)1822 506 y(vector)h(unsigned)f(short\);)390 610 y(vector)h(signed)g(int)h(vec_any_lt)e(\(vector)h(signed)g(short,)g (vector)g(signed)g(short\);)390 818 y(vector)g(signed)g(int)h (vec_any_lt)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f(int\);)390 922 y(vector)h(signed)g(int)h(vec_any_lt)e(\(vector)h(unsigned)f(int,)i (vector)f(signed)g(int\);)390 1025 y(vector)g(signed)g(int)h (vec_any_lt)e(\(vector)h(unsigned)f(int,)i(vector)f(unsigned)g(int\);) 390 1233 y(vector)g(signed)g(int)h(vec_any_lt)e(\(vector)h(signed)g (int,)h(vector)f(signed)g(int\);)390 1337 y(vector)g(signed)g(int)h (vec_any_lt)e(\(vector)h(float,)g(vector)g(float\);)390 1544 y(vector)g(signed)g(int)h(vec_any_nan)e(\(vector)h(float\);)390 1752 y(vector)g(signed)g(int)h(vec_any_ne)e(\(vector)h(signed)g(char,)g (vector)g(unsigned)g(char\);)390 1959 y(vector)g(signed)g(int)h (vec_any_ne)e(\(vector)h(signed)g(char,)g(vector)g(signed)h(char\);)390 2063 y(vector)f(signed)g(int)h(vec_any_ne)e(\(vector)h(unsigned)f (char,)i(vector)f(signed)g(char\);)390 2271 y(vector)g(signed)g(int)h (vec_any_ne)e(\(vector)h(unsigned)f(char,)1822 2374 y(vector)h (unsigned)f(char\);)390 2478 y(vector)h(signed)g(int)h(vec_any_ne)e (\(vector)h(signed)g(short,)1822 2582 y(vector)g(unsigned)f(short\);) 390 2686 y(vector)h(signed)g(int)h(vec_any_ne)e(\(vector)h(signed)g (short,)g(vector)g(signed)g(short\);)390 2893 y(vector)g(signed)g(int)h (vec_any_ne)e(\(vector)h(unsigned)f(short,)1822 2997 y(vector)h(signed)g(short\);)390 3101 y(vector)g(signed)g(int)h (vec_any_ne)e(\(vector)h(unsigned)f(short,)1822 3205 y(vector)h(unsigned)f(short\);)390 3308 y(vector)h(signed)g(int)h (vec_any_ne)e(\(vector)h(signed)g(int,)h(vector)f(unsigned)f(int\);)390 3412 y(vector)h(signed)g(int)h(vec_any_ne)e(\(vector)h(signed)g(int,)h (vector)f(signed)g(int\);)390 3516 y(vector)g(signed)g(int)h (vec_any_ne)e(\(vector)h(unsigned)f(int,)i(vector)f(signed)g(int\);)390 3620 y(vector)g(signed)g(int)h(vec_any_ne)e(\(vector)h(unsigned)f(int,) i(vector)f(unsigned)g(int\);)390 3827 y(vector)g(signed)g(int)h (vec_any_ne)e(\(vector)h(float,)g(vector)g(float\);)390 4035 y(vector)g(signed)g(int)h(vec_any_nge)e(\(vector)h(float,)g (vector)g(float\);)390 4242 y(vector)g(signed)g(int)h(vec_any_ngt)e (\(vector)h(float,)g(vector)g(float\);)390 4450 y(vector)g(signed)g (int)h(vec_any_nle)e(\(vector)h(float,)g(vector)g(float\);)390 4658 y(vector)g(signed)g(int)h(vec_any_nlt)e(\(vector)h(float,)g (vector)g(float\);)390 4865 y(vector)g(signed)g(int)h(vec_any_numeric)d (\(vector)i(float\);)390 5073 y(vector)g(signed)g(int)h(vec_any_out)e (\(vector)h(float,)g(vector)g(float\);)p eop %%Page: 247 257 247 256 bop 150 -116 a Fy(Chapter)30 b(5:)41 b(Extensions)29 b(to)i(the)g(C)f(Language)h(F)-8 b(amily)1494 b(247)150 299 y Fs(5.47)68 b(Pragmas)46 b(Accepted)f(b)l(y)f(GCC)275 488 y Fy(GCC)35 b(supp)s(orts)g(sev)m(eral)h(t)m(yp)s(es)g(of)h (pragmas,)h(primarily)32 b(in)j(order)h(to)h(compile)e(co)s(de)i (originally)150 597 y(written)26 b(for)g(other)h(compilers.)38 b(Note)27 b(that)h(in)d(general)h(w)m(e)h(do)g(not)g(recommend)f(the)h (use)f(of)h(pragmas;)150 707 y(See)k(Section)f(5.26)i([F)-8 b(unction)30 b(A)m(ttributes],)h(page)g(172,)h(for)e(further)f (explanation.)150 920 y Fg(5.47.1)63 b(ARM)41 b(Pragmas)275 1109 y Fy(The)28 b(ARM)i(target)h(de\014nes)d(pragmas)i(for)f(con)m (trolling)f(the)h(default)g(addition)e(of)j Fq(long_call)d Fy(and)150 1219 y Fq(short_call)32 b Fy(attributes)h(to)j(functions.)51 b(See)34 b(Section)g(5.26)i([F)-8 b(unction)35 b(A)m(ttributes],)g (page)g(172,)i(for)150 1328 y(information)29 b(ab)s(out)h(the)g (e\013ects)i(of)f(these)f(attributes.)150 1481 y Fq(long_calls)630 1590 y Fy(Set)h(all)e(subsequen)m(t)g(functions)g(to)j(ha)m(v)m(e)f (the)g Fq(long_call)d Fy(attribute.)150 1742 y Fq(no_long_calls)630 1852 y Fy(Set)j(all)e(subsequen)m(t)g(functions)g(to)j(ha)m(v)m(e)f (the)g Fq(short_call)c Fy(attribute.)150 2004 y Fq(long_calls_off)630 2114 y Fy(Do)g(not)f(a\013ect)i(the)e Fq(long_call)e Fy(or)i Fq(short_call)d Fy(attributes)j(of)g(subsequen)m(t)f (functions.)150 2327 y Fg(5.47.2)63 b(Darwin)41 b(Pragmas)275 2516 y Fy(The)31 b(follo)m(wing)f(pragmas)i(are)g(a)m(v)-5 b(ailable)32 b(for)f(all)g(arc)m(hitectures)i(running)c(the)j(Darwin)e (op)s(erating)150 2625 y(system.)41 b(These)30 b(are)h(useful)d(for)j (compatibilit)m(y)d(with)h(other)i(MacOS)f(compilers.)150 2777 y Fq(mark)f Fn(tok)m(ens)t Fq(...)630 2887 y Fy(This)g(pragma)h (is)g(accepted,)i(but)d(has)h(no)h(e\013ect.)150 3039 y Fq(options)d(align=)p Fn(alignmen)m(t)630 3149 y Fy(This)e(pragma)i (sets)g(the)g(alignmen)m(t)g(of)g(\014elds)e(in)h(structures.)39 b(The)27 b(v)-5 b(alues)28 b(of)g Fn(alignmen)m(t)630 3258 y Fy(ma)m(y)38 b(b)s(e)g Fq(mac68k)p Fy(,)g(to)g(em)m(ulate)g (m68k)h(alignmen)m(t,)g(or)f Fq(power)p Fy(,)g(to)h(em)m(ulate)f(P)m(o) m(w)m(erPC)630 3368 y(alignmen)m(t.)49 b(Uses)33 b(of)h(this)e(pragma)h (nest)h(prop)s(erly;)e(to)i(restore)g(the)g(previous)e(setting,)630 3477 y(use)e Fq(reset)f Fy(for)h(the)h Fn(alignmen)m(t)p Fy(.)150 3630 y Fq(segment)d Fn(tok)m(ens)t Fq(...)630 3739 y Fy(This)h(pragma)h(is)g(accepted,)i(but)d(has)h(no)h(e\013ect.) 150 3891 y Fq(unused)e(\()p Fn(v)-5 b(ar)36 b Fq([,)30 b Fn(v)-5 b(ar)7 b Fq(]...)n(\))630 4001 y Fy(This)33 b(pragma)i(declares)f(v)-5 b(ariables)33 b(to)i(b)s(e)f(p)s(ossibly)e (un)m(used.)52 b(GCC)34 b(will)e(not)j(pro)s(duce)630 4110 y(w)m(arnings)i(for)h(the)g(listed)e(v)-5 b(ariables.)63 b(The)38 b(e\013ect)h(is)e(similar)f(to)i(that)h(of)f(the)h Fq(unused)630 4220 y Fy(attribute,)31 b(except)i(that)f(this)e(pragma)h (ma)m(y)h(app)s(ear)f(an)m(ywhere)g(within)e(the)i(v)-5 b(ariables')630 4330 y(scop)s(es.)150 4543 y Fg(5.47.3)63 b(Solaris)42 b(Pragmas)275 4732 y Fy(F)-8 b(or)31 b(compatibilit)m(y)d (with)h(the)i(SunPR)m(O)e(compiler,)g(the)h(follo)m(wing)f(pragma)i(is) e(supp)s(orted.)150 4884 y Fq(redefine_extname)d Fn(oldname)35 b(newname)630 4994 y Fy(This)29 b(pragma)i(giv)m(es)g(the)g(C)f (function)f Fn(oldname)35 b Fy(the)c(assem)m(bler)f(lab)s(el)f Fn(newname)p Fy(.)41 b(The)630 5103 y(pragma)25 b(m)m(ust)f(app)s(ear)g (b)s(efore)g(the)h(function)e(declaration.)38 b(This)23 b(pragma)i(is)e(equiv)-5 b(alen)m(t)630 5213 y(to)41 b(the)f(asm)g(lab)s(els)e(extension)h(\(see)i(Section)f(5.38)h([Asm)f (Lab)s(els],)i(page)e(210\).)71 b(The)630 5322 y(prepro)s(cessor)29 b(de\014nes)h Fq(__PRAGMA_REDEFINE_EXTNAM)o(E)24 b Fy(if)30 b(the)g(pragma)h(is)e(a)m(v)-5 b(ailable.)p eop %%Page: 248 258 248 257 bop 150 -116 a Fy(248)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fg(5.47.4)63 b(T)-10 b(ru64)42 b(Pragmas)275 491 y Fy(F)-8 b(or)31 b(compatibilit)m(y)d (with)h(the)i(Compaq)f(C)g(compiler,)f(the)i(follo)m(wing)e(pragma)h (is)f(supp)s(orted.)150 651 y Fq(extern_prefix)e Fn(string)630 760 y Fy(This)38 b(pragma)i(renames)f(all)g(subsequen)m(t)g(function)f (and)h(v)-5 b(ariable)38 b(declarations)h(suc)m(h)630 870 y(that)32 b Fn(string)38 b Fy(is)30 b(prep)s(ended)f(to)i(the)h (name.)43 b(This)29 b(e\013ect)k(ma)m(y)e(b)s(e)g(terminated)f(b)m(y)h (using)630 980 y(another)g Fq(extern_prefix)26 b Fy(pragma)31 b(with)e(the)i(empt)m(y)f(string.)630 1114 y(This)24 b(pragma)i(is)f(similar)f(in)h(in)m(ten)m(t)h(to)h(to)f(the)h(asm)f (lab)s(els)e(extension)i(\(see)h(Section)e(5.38)630 1224 y([Asm)35 b(Lab)s(els],)h(page)g(210\))h(in)d(that)i(the)f(system)h (programmer)e(w)m(an)m(ts)i(to)g(c)m(hange)h(the)630 1333 y(assem)m(bly-lev)m(el)i(ABI)g(without)g(c)m(hanging)g(the)g (source-lev)m(el)h(API.)f(The)g(prepro)s(cessor)630 1443 y(de\014nes)29 b Fq(__EXTERN_PREFIX)e Fy(if)i(the)i(pragma)f(is)g(a)m (v)-5 b(ailable.)150 1700 y Fs(5.48)68 b(Unnamed)46 b(struct/union)e (\014elds)h(within)h(structs/unions.)275 1893 y Fy(F)-8 b(or)33 b(compatibilit)m(y)e(with)h(other)h(compilers,)f(GCC)h(allo)m (ws)f(y)m(ou)h(to)h(de\014ne)e(a)h(structure)g(or)g(union)150 2002 y(that)e(con)m(tains,)g(as)f(\014elds,)f(structures)h(and)g (unions)e(without)i(names.)40 b(F)-8 b(or)32 b(example:)390 2131 y Fq(struct)46 b({)485 2235 y(int)h(a;)485 2339 y(union)g({)581 2443 y(int)g(b;)581 2546 y(float)f(c;)485 2650 y(};)485 2754 y(int)h(d;)390 2858 y(})g(foo;)275 2992 y Fy(In)31 b(this)g(example,)h(the)g(user)g(w)m(ould)f(b)s(e)g (able)h(to)g(access)i(mem)m(b)s(ers)d(of)h(the)g(unnamed)f(union)f (with)150 3102 y(co)s(de)36 b(lik)m(e)g(`)p Fq(foo.b)p Fy('.)57 b(Note)38 b(that)e(only)g(unnamed)e(structs)i(and)g(unions)e (are)j(allo)m(w)m(ed,)g(y)m(ou)g(ma)m(y)g(not)150 3211 y(ha)m(v)m(e,)32 b(for)e(example,)g(an)h(unnamed)e Fq(int)p Fy(.)275 3346 y(Y)-8 b(ou)36 b(m)m(ust)f(nev)m(er)i(create)g(suc)m(h)e (structures)g(that)i(cause)f(am)m(biguous)f(\014eld)f(de\014nitions.)55 b(F)-8 b(or)36 b(ex-)150 3455 y(ample,)30 b(this)f(structure:)390 3584 y Fq(struct)46 b({)485 3688 y(int)h(a;)485 3792 y(struct)g({)581 3895 y(int)g(a;)485 3999 y(};)390 4103 y(})g(foo;)275 4237 y Fy(It)c(is)g(am)m(biguous)f(whic)m(h)h Fq(a)g Fy(is)f(b)s(eing)h(referred)f(to)j(with)d(`)p Fq(foo.a)p Fy('.)79 b(Suc)m(h)43 b(constructs)h(are)g(not)150 4347 y(supp)s(orted)23 b(and)i(m)m(ust)g(b)s(e)f(a)m(v)m(oided.)39 b(In)25 b(the)g(future,)g(suc)m(h)g(constructs)g(ma)m(y)h(b)s(e)e (detected)i(and)f(treated)150 4457 y(as)31 b(compilation)e(errors.)p eop %%Page: 249 259 249 258 bop 150 -116 a Fy(Chapter)30 b(6:)41 b(Extensions)29 b(to)i(the)g(C)p Fq(++)e Fy(Language)1702 b(249)150 299 y Fv(6)80 b(Extensions)53 b(to)g(the)g(C)p Fm(++)g Fv(Language)275 537 y Fy(The)38 b(GNU)i(compiler)d(pro)m(vides)h(these)h(extensions)g (to)g(the)h(C)p Fq(++)d Fy(language)j(\(and)e(y)m(ou)i(can)f(also)150 646 y(use)34 b(most)g(of)g(the)g(C)g(language)g(extensions)f(in)g(y)m (our)h(C)p Fq(++)f Fy(programs\).)51 b(If)34 b(y)m(ou)g(w)m(an)m(t)h (to)g(write)e(co)s(de)150 756 y(that)38 b(c)m(hec)m(ks)h(whether)e (these)h(features)g(are)g(a)m(v)-5 b(ailable,)40 b(y)m(ou)e(can)f(test) i(for)e(the)h(GNU)h(compiler)d(the)150 865 y(same)i(w)m(a)m(y)g(as)f (for)g(C)g(programs:)54 b(c)m(hec)m(k)39 b(for)e(a)h(prede\014ned)d (macro)j Fq(__GNUC__)p Fy(.)59 b(Y)-8 b(ou)38 b(can)f(also)g(use)150 975 y Fq(__GNUG__)c Fy(to)j(test)g(sp)s(eci\014cally)d(for)h(GNU)i(C)p Fq(++)e Fy(\(see)i(section)g(\\Standard)e(Prede\014ned)g(Macros")i(in) 150 1084 y Fn(The)30 b(C)g(Prepro)s(cessor)7 b Fy(\).)150 1345 y Fs(6.1)68 b(Minim)l(um)45 b(and)g(Maxim)l(um)g(Op)t(erators)h (in)e(C)p Ft(++)275 1539 y Fy(It)28 b(is)e(v)m(ery)j(con)m(v)m(enien)m (t)g(to)f(ha)m(v)m(e)i(op)s(erators)e(whic)m(h)e(return)h(the)h (\\minim)m(um")e(or)i(the)g(\\maxim)m(um")150 1648 y(of)j(t)m(w)m(o)g (argumen)m(ts.)41 b(In)30 b(GNU)h(C)p Fq(++)e Fy(\(but)h(not)h(in)e (GNU)i(C\),)150 1809 y Fn(a)g Fq(?)f Fn(b)227 b Fy(is)29 b(the)i Fn(maxim)m(um)p Fy(,)e(returning)g(the)i(larger)f(of)g(the)h(n)m (umeric)e(v)-5 b(alues)30 b Fn(a)g Fy(and)g Fn(b)p Fy(.)275 2131 y(These)c(op)s(erations)h(are)g(not)h(primitiv)m(e)d(in)g (ordinary)h(C)p Fq(++)p Fy(,)h(since)f(y)m(ou)i(can)f(use)g(a)g(macro)h (to)g(return)150 2241 y(the)j(minim)m(um)c(of)k(t)m(w)m(o)g(things)f (in)f(C)p Fq(++)p Fy(,)g(as)i(in)e(the)i(follo)m(wing)d(example.)390 2371 y Fq(#define)46 b(MIN\(X,Y\))f(\(\(X\))i(<)g(\(Y\))g(?)h(:)f (\(X\))g(:)h(\(Y\)\))150 2506 y Fy(Y)-8 b(ou)31 b(migh)m(t)f(then)g (use)g(`)p Fq(int)f(min)h(=)g(MIN)f(\(i,)h(j\);)p Fy(')g(to)h(set)f Fn(min)f Fy(to)i(the)g(minim)m(um)c(v)-5 b(alue)30 b(of)g(v)-5 b(ariables)150 2616 y Fn(i)34 b Fy(and)c Fn(j)p Fy(.)275 2752 y(Ho)m(w)m(ev)m(er,)h(side)c(e\013ects)j(in)d Fq(X)h Fy(or)g Fq(Y)h Fy(ma)m(y)g(cause)g(unin)m(tended)d(b)s(eha)m(vior.)39 b(F)-8 b(or)29 b(example,)g Fq(MIN)g(\(i++,)150 2861 y(j++\))k Fy(will)e(fail,)j(incremen)m(ting)f(the)h(smaller)f(coun)m (ter)i(t)m(wice.)52 b(A)34 b(GNU)h(C)f(extension)f(allo)m(ws)h(y)m(ou)g (to)150 2971 y(write)28 b(safe)h(macros)f(that)h(a)m(v)m(oid)g(this)f (kind)e(of)j(problem)e(\(see)i(Section)f(5.6)i([Naming)e(an)h (Expression's)150 3080 y(T)m(yp)s(e],)g(page)h(160\).)42 b(Ho)m(w)m(ev)m(er,)32 b(writing)27 b Fq(MIN)h Fy(and)g Fq(MAX)h Fy(as)g(macros)g(also)g(forces)h(y)m(ou)f(to)h(use)f (function-)150 3190 y(call)g(notation)h(for)f(a)h(fundamen)m(tal)f (arithmetic)g(op)s(eration.)39 b(Using)29 b(GNU)i(C)p Fq(++)d Fy(extensions,)i(y)m(ou)g(can)150 3299 y(write)g(`)p Fq(int)f(min)h(=)g(i)g(?)h Fy(are)g(built)e(in)m(to)i(the) g(compiler,)f(they)h(prop)s(erly)e(handle)g(expressions)h(with)g(side-) 150 3545 y(e\013ects;)k(`)p Fq(int)e(min)f(=)h(i++)g(\(*ptr1\))p Fy(.)275 3520 y(When)25 b(using)g(a)h(reference)g(to)h(v)m(olatile,)f(G)p Fq(++)g Fy(do)s(es)f(not)i(treat)g(equiv)-5 b(alen)m(t)25 b(expressions)f(as)i (accesses)150 3629 y(to)40 b(v)m(olatiles,)i(but)d(instead)g(issues)f (a)i(w)m(arning)f(that)h(no)g(v)m(olatile)f(is)g(accessed.)70 b(The)39 b(rationale)g(for)150 3739 y(this)28 b(is)g(that)h(otherwise)g (it)f(b)s(ecomes)h(di\016cult)e(to)j(determine)e(where)g(v)m(olatile)h (access)h(o)s(ccur,)f(and)g(not)150 3849 y(p)s(ossible)34 b(to)j(ignore)f(the)g(return)f(v)-5 b(alue)36 b(from)g(functions)e (returning)h(v)m(olatile)h(references.)58 b(Again,)38 b(if)150 3958 y(y)m(ou)31 b(wish)d(to)j(force)g(a)g(read,)g(cast)g(the) g(reference)f(to)i(an)e(rv)-5 b(alue.)150 4229 y Fs(6.3)68 b(Restricting)47 b(P)l(oin)l(ter)f(Aliasing)275 4426 y Fy(As)27 b(with)f(gcc,)j(g)p Fq(++)f Fy(understands)d(the)j(C99)f (feature)h(of)g(restricted)f(p)s(oin)m(ters,)g(sp)s(eci\014ed)f(with)g (the)h Fq(_)150 4536 y(_restrict__)p Fy(,)d(or)h Fq(__restrict)d Fy(t)m(yp)s(e)k(quali\014er.)37 b(Because)27 b(y)m(ou)e(cannot)h (compile)e(C)p Fq(++)h Fy(b)m(y)g(sp)s(ecifying)150 4646 y(the)31 b(`)p Fq(-std=c99)p Fy(')d(language)j(\015ag,)g Fq(restrict)d Fy(is)h(not)i(a)g(k)m(eyw)m(ord)g(in)e(C)p Fq(++)p Fy(.)275 4785 y(In)k(addition)f(to)i(allo)m(wing)f(restricted)g (p)s(oin)m(ters,)h(y)m(ou)g(can)g(sp)s(ecify)f(restricted)g (references,)i(whic)m(h)150 4895 y(indicate)29 b(that)i(the)g (reference)g(is)e(not)i(aliased)e(in)g(the)i(lo)s(cal)f(con)m(text.)390 5029 y Fq(void)47 b(fn)g(\(int)f(*__restrict__)f(rptr,)h(int)h (&__restrict__)d(rref\))390 5132 y({)485 5236 y(...)390 5340 y(})p eop %%Page: 251 261 251 260 bop 150 -116 a Fy(Chapter)30 b(6:)41 b(Extensions)29 b(to)i(the)g(C)p Fq(++)e Fy(Language)1702 b(251)150 299 y(In)20 b(the)i(b)s(o)s(dy)d(of)j Fq(fn)p Fy(,)g Fn(rptr)27 b Fy(p)s(oin)m(ts)20 b(to)i(an)f(unaliased)e(in)m(teger)j(and)e Fn(rref)38 b Fy(refers)21 b(to)h(a)f(\(di\013eren)m(t\))h(unaliased)150 408 y(in)m(teger.)275 539 y(Y)-8 b(ou)38 b(ma)m(y)h(also)e(sp)s(ecify)g (whether)g(a)i(mem)m(b)s(er)e(function's)g Fn(this)j Fy(p)s(oin)m(ter)d(is)g(unaliased)g(b)m(y)g(using)150 648 y Fq(__restrict__)27 b Fy(as)k(a)f(mem)m(b)s(er)g(function)f (quali\014er.)390 773 y Fq(void)47 b(T::fn)f(\(\))h(__restrict__)390 877 y({)485 980 y(...)390 1084 y(})150 1214 y Fy(Within)34 b(the)j(b)s(o)s(dy)d(of)i Fq(T::fn)p Fy(,)h Fn(this)h Fy(will)c(ha)m(v)m(e)j(the)f(e\013ectiv)m(e)i(de\014nition)c Fq(T)c(*__restrict__)c(const)150 1324 y(this)p Fy(.)38 b(Notice)28 b(that)g(the)f(in)m(terpretation)f(of)h(a)h Fq(__restrict__)23 b Fy(mem)m(b)s(er)k(function)e(quali\014er)g(is)h (di\013er-)150 1433 y(en)m(t)33 b(to)f(that)h(of)f Fq(const)e Fy(or)i Fq(volatile)e Fy(quali\014er,)g(in)g(that)j(it)e(is)g(applied)f (to)j(the)f(p)s(oin)m(ter)e(rather)i(than)150 1543 y(the)f(ob)5 b(ject.)41 b(This)29 b(is)g(consisten)m(t)i(with)e(other)i(compilers)d (whic)m(h)h(implemen)m(t)g(restricted)i(p)s(oin)m(ters.)275 1673 y(As)f(with)f(all)h(outermost)h(parameter)g(quali\014ers,)e Fq(__restrict__)e Fy(is)j(ignored)g(in)f(function)h(de\014ni-)150 1783 y(tion)d(matc)m(hing.)39 b(This)26 b(means)h(y)m(ou)g(only)g(need) f(to)i(sp)s(ecify)e Fq(__restrict__)e Fy(in)i(a)h(function)f (de\014nition,)150 1892 y(rather)k(than)g(in)f(a)i(function)e(protot)m (yp)s(e)i(as)g(w)m(ell.)150 2137 y Fs(6.4)68 b(V)-11 b(ague)45 b(Link)-7 b(age)275 2325 y Fy(There)35 b(are)i(sev)m(eral)f (constructs)g(in)f(C)p Fq(++)g Fy(whic)m(h)g(require)g(space)i(in)d (the)j(ob)5 b(ject)37 b(\014le)e(but)g(are)i(not)150 2435 y(clearly)27 b(tied)g(to)i(a)f(single)e(translation)h(unit.)38 b(W)-8 b(e)29 b(sa)m(y)g(that)f(these)g(constructs)g(ha)m(v)m(e)h(\\v) -5 b(ague)29 b(link)-5 b(age".)150 2545 y(T)m(ypically)27 b(suc)m(h)i(constructs)g(are)h(emitted)f(wherev)m(er)g(they)g(are)h (needed,)f(though)g(sometimes)g(w)m(e)h(can)150 2654 y(b)s(e)g(more)g(clev)m(er.)150 2805 y(Inline)e(F)-8 b(unctions)630 2915 y(Inline)39 b(functions)h(are)i(t)m(ypically)e (de\014ned)g(in)g(a)i(header)f(\014le)f(whic)m(h)g(can)i(b)s(e)f (included)630 3024 y(in)h(man)m(y)i(di\013eren)m(t)f(compilations.)79 b(Hop)s(efully)41 b(they)j(can)g(usually)d(b)s(e)i(inlined,)h(but)630 3134 y(sometimes)23 b(an)g(out-of-line)f(cop)m(y)h(is)f(necessary)-8 b(,)26 b(if)c(the)h(address)e(of)i(the)g(function)f(is)g(tak)m(en)630 3243 y(or)i(if)e(inlining)e(fails.)37 b(In)23 b(general,)j(w)m(e)e (emit)f(an)h(out-of-line)f(cop)m(y)i(in)d(all)h(translation)g(units)630 3353 y(where)g(one)h(is)e(needed.)38 b(As)24 b(an)f(exception,)i(w)m(e) f(only)f(emit)g(inline)d(virtual)i(functions)g(with)630 3463 y(the)31 b(vtable,)f(since)g(it)g(will)d(alw)m(a)m(ys)k(require)e (a)i(cop)m(y)-8 b(.)630 3593 y(Lo)s(cal)36 b(static)g(v)-5 b(ariables)34 b(and)h(string)g(constan)m(ts)i(used)e(in)f(an)i(inline)c (function)j(are)h(also)630 3702 y(considered)26 b(to)h(ha)m(v)m(e)h(v) -5 b(ague)28 b(link)-5 b(age,)27 b(since)f(they)h(m)m(ust)g(b)s(e)f (shared)g(b)s(et)m(w)m(een)i(all)d(inlined)630 3812 y(and)30 b(out-of-line)g(instances)g(of)g(the)h(function.)150 3963 y(VT)-8 b(ables)156 b(C)p Fq(++)28 b Fy(virtual)f(functions)h(are) h(implemen)m(ted)e(in)h(most)h(compilers)f(using)f(a)i(lo)s(okup)f (table,)630 4073 y(kno)m(wn)33 b(as)i(a)f(vtable.)51 b(The)33 b(vtable)h(con)m(tains)g(p)s(oin)m(ters)f(to)h(the)g(virtual)f (functions)f(pro-)630 4182 y(vided)24 b(b)m(y)i(a)h(class,)f(and)g(eac) m(h)h(ob)5 b(ject)27 b(of)f(the)g(class)f(con)m(tains)i(a)f(p)s(oin)m (ter)f(to)h(its)g(vtable)g(\(or)630 4292 y(vtables,)j(in)e(some)i(m)m (ultiple-inheritance)d(situations\).)39 b(If)28 b(the)h(class)g (declares)f(an)m(y)h(non-)630 4401 y(inline,)i(non-pure)h(virtual)f (functions,)i(the)g(\014rst)f(one)i(is)e(c)m(hosen)h(as)h(the)f(\\k)m (ey)h(metho)s(d")630 4511 y(for)g(the)g(class,)g(and)f(the)h(vtable)g (is)f(only)g(emitted)h(in)e(the)i(translation)f(unit)f(where)i(the)630 4620 y(k)m(ey)d(metho)s(d)f(is)f(de\014ned.)630 4751 y Fr(Note:)56 b Fy(If)34 b(the)i(c)m(hosen)g(k)m(ey)g(metho)s(d)f(is)f (later)h(de\014ned)f(as)i(inline,)e(the)h(vtable)g(will)e(still)630 4860 y(b)s(e)26 b(emitted)h(in)e(ev)m(ery)j(translation)e(unit)f(whic)m (h)h(de\014nes)g(it.)39 b(Mak)m(e)28 b(sure)e(that)i(an)m(y)f(inline) 630 4970 y(virtuals)f(are)h(declared)g(inline)e(in)h(the)h(class)g(b)s (o)s(dy)-8 b(,)27 b(ev)m(en)h(if)f(they)g(are)h(not)f(de\014ned)f (there.)150 5121 y(t)m(yp)s(e)p 329 5121 28 4 v 33 w(info)j(ob)5 b(jects)630 5230 y(C)p Fq(++)30 b Fy(requires)f(information)h(ab)s(out) g(t)m(yp)s(es)h(to)h(b)s(e)e(written)g(out)i(in)d(order)i(to)g (implemen)m(t)630 5340 y(`)p Fq(dynamic_cast)p Fy(',)46 b(`)p Fq(typeid)p Fy(')e(and)g(exception)h(handling.)81 b(F)-8 b(or)46 b(p)s(olymorphic)c(classes)p eop %%Page: 252 262 252 261 bop 150 -116 a Fy(252)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))630 299 y(\(classes)k(with)d(virtual)h (functions\),)h(the)g(t)m(yp)s(e)p 2260 299 28 4 v 33 w(info)f(ob)5 b(ject)34 b(is)e(written)h(out)g(along)g(with)630 408 y(the)h(vtable)g(so)h(that)g(`)p Fq(dynamic_cast)p Fy(')c(can)j(determine)g(the)g(dynamic)f(t)m(yp)s(e)h(of)h(a)f(class) 630 518 y(ob)5 b(ject)32 b(at)g(run)m(time.)42 b(F)-8 b(or)31 b(all)f(other)i(t)m(yp)s(es,)f(w)m(e)h(write)e(out)i(the)f(t)m (yp)s(e)p 3059 518 V 33 w(info)f(ob)5 b(ject)32 b(when)630 628 y(it)39 b(is)g(used:)59 b(when)39 b(applying)f(`)p Fq(typeid)p Fy(')h(to)h(an)g(expression,)i(thro)m(wing)d(an)h(ob)5 b(ject,)43 b(or)630 737 y(referring)29 b(to)i(a)g(t)m(yp)s(e)f(in)f(a)i (catc)m(h)h(clause)e(or)h(exception)f(sp)s(eci\014cation.)150 899 y(T)-8 b(emplate)31 b(Instan)m(tiations)630 1009 y(Most)24 b(ev)m(erything)e(in)f(this)h(section)h(also)f(applies)f(to)i (template)h(instan)m(tiations,)f(but)f(there)630 1118 y(are)31 b(other)f(options)g(as)h(w)m(ell.)39 b(See)31 b(Section)f(6.6)i([Where's)f(the)f(T)-8 b(emplate?],)31 b(page)g(254.)275 1282 y(When)f(used)f(with)g(GNU)i(ld)f(v)m(ersion)f (2.8)j(or)e(later)h(on)f(an)g(ELF)h(system)f(suc)m(h)g(as)h(Lin)m (ux/GNU)f(or)150 1391 y(Solaris)i(2,)i(or)f(on)h(Microsoft)f(Windo)m (ws,)h(duplicate)e(copies)h(of)g(these)h(constructs)f(will)e(b)s(e)i (discarded)150 1501 y(at)e(link)d(time.)41 b(This)28 b(is)i(kno)m(wn)g(as)g(COMD)m(A)-8 b(T)31 b(supp)s(ort.)275 1638 y(On)g(targets)i(that)f(don't)g(supp)s(ort)e(COMD)m(A)-8 b(T,)33 b(but)f(do)f(supp)s(ort)g(w)m(eak)h(sym)m(b)s(ols,)f(GCC)h (will)d(use)150 1748 y(them.)49 b(This)31 b(w)m(a)m(y)j(one)f(cop)m(y)h (will)c(o)m(v)m(erride)k(all)e(the)h(others,)h(but)e(the)h(un)m(used)f (copies)h(will)d(still)h(tak)m(e)150 1857 y(up)e(space)i(in)e(the)i (executable.)275 1994 y(F)-8 b(or)30 b(targets)i(whic)m(h)d(do)h(not)g (supp)s(ort)e(either)i(COMD)m(A)-8 b(T)31 b(or)f(w)m(eak)h(sym)m(b)s (ols,)e(most)h(en)m(tities)g(with)150 2104 y(v)-5 b(ague)30 b(link)-5 b(age)29 b(will)e(b)s(e)i(emitted)g(as)h(lo)s(cal)f(sym)m(b)s (ols)f(to)i(a)m(v)m(oid)g(duplicate)e(de\014nition)g(errors)h(from)g (the)150 2214 y(link)m(er.)44 b(This)30 b(will)f(not)j(happ)s(en)f(for) g(lo)s(cal)g(statics)i(in)d(inlines,)g(ho)m(w)m(ev)m(er,)k(as)e(ha)m (ving)g(m)m(ultiple)d(copies)150 2323 y(will)f(almost)i(certainly)g (break)g(things.)275 2460 y(See)e(Section)g(6.5)h([Declarations)g(and)f (De\014nitions)f(in)g(One)h(Header],)h(page)g(252,)h(for)e(another)h(w) m(a)m(y)150 2570 y(to)i(con)m(trol)g(placemen)m(t)g(of)f(these)h (constructs.)150 2834 y Fs(6.5)68 b(Declarations)47 b(and)e (De\014nitions)g(in)g(One)g(Header)275 3029 y Fy(C)p Fq(++)35 b Fy(ob)5 b(ject)38 b(de\014nitions)c(can)j(b)s(e)f(quite)g (complex.)59 b(In)36 b(principle,)f(y)m(our)i(source)f(co)s(de)h(will)d (need)150 3139 y(t)m(w)m(o)28 b(kinds)d(of)i(things)f(for)g(eac)m(h)i (ob)5 b(ject)28 b(that)f(y)m(ou)g(use)g(across)g(more)g(than)g(one)g (source)g(\014le.)38 b(First,)28 b(y)m(ou)150 3248 y(need)g(an)g Fn(in)m(terface)34 b Fy(sp)s(eci\014cation,)28 b(describing)e(its)i (structure)f(with)g(t)m(yp)s(e)i(declarations)f(and)f(function)150 3358 y(protot)m(yp)s(es.)57 b(Second,)37 b(y)m(ou)g(need)e(the)h Fn(implemen)m(tation)e Fy(itself.)56 b(It)36 b(can)g(b)s(e)f(tedious)g (to)i(main)m(tain)e(a)150 3468 y(separate)f(in)m(terface)f(description) e(in)g(a)j(header)e(\014le,)h(in)f(parallel)e(to)k(the)f(actual)g (implemen)m(tation.)47 b(It)150 3577 y(is)31 b(also)i(dangerous,)g (since)e(separate)j(in)m(terface)f(and)e(implemen)m(tation)g (de\014nitions)f(ma)m(y)j(not)g(remain)150 3687 y(parallel.)275 3824 y(With)c(GNU)i(C)p Fq(++)p Fy(,)f(y)m(ou)h(can)f(use)h(a)f(single) f(header)h(\014le)g(for)g(b)s(oth)g(purp)s(oses.)390 3955 y Fr(Warning:)54 b Fy(The)34 b(mec)m(hanism)g(to)i(sp)s(ecify)d (this)g(is)h(in)f(transition.)52 b(F)-8 b(or)35 b(the)g(nonce,)h(y)m (ou)390 4059 y(m)m(ust)e(use)g(one)g(of)h(t)m(w)m(o)g Fq(#pragma)d Fy(commands;)k(in)d(a)i(future)e(release)i(of)f(GNU)h(C)p Fq(++)p Fy(,)f(an)390 4163 y(alternativ)m(e)d(mec)m(hanism)e(will)f (mak)m(e)k(these)e Fq(#pragma)f Fy(commands)h(unnecessary)-8 b(.)275 4300 y(The)36 b(header)i(\014le)e(con)m(tains)i(the)f(full)e (de\014nitions,)i(but)g(is)f(mark)m(ed)i(with)e(`)p Fq(#pragma)28 b(interface)p Fy(')150 4409 y(in)38 b(the)i(source)g(co)s(de.)70 b(This)38 b(allo)m(ws)h(the)h(compiler)e(to)j(use)e(the)h(header)g (\014le)f(only)g(as)h(an)f(in)m(terface)150 4519 y(sp)s(eci\014cation) 30 b(when)h(ordinary)f(source)i(\014les)e(incorp)s(orate)h(it)g(with)g Fq(#include)p Fy(.)42 b(In)31 b(the)h(single)e(source)150 4629 y(\014le)44 b(where)g(the)g(full)e(implemen)m(tation)h(b)s (elongs,)48 b(y)m(ou)c(can)h(use)f(either)g(a)h(naming)e(con)m(v)m(en)m (tion)j(or)150 4738 y(`)p Fq(#pragma)29 b(implementation)p Fy(')d(to)31 b(indicate)f(this)f(alternate)i(use)f(of)h(the)f(header)h (\014le.)150 4902 y Fq(#pragma)d(interface)150 5011 y(#pragma)g (interface)g(")p Fn(sub)s(dir)7 b Fq(/)p Fn(ob)e(jects)p Fq(.h")630 5121 y Fy(Use)41 b(this)f(directiv)m(e)g(in)g Fr(he)-5 b(ader)44 b(\014les)49 b Fy(that)41 b(de\014ne)f(ob)5 b(ject)42 b(classes,)i(to)d(sa)m(v)m(e)i(space)e(in)630 5230 y(most)30 b(of)f(the)h(ob)5 b(ject)30 b(\014les)e(that)i(use)f (those)h(classes.)40 b(Normally)-8 b(,)29 b(lo)s(cal)g(copies)g(of)g (certain)630 5340 y(information)c(\(bac)m(kup)i(copies)f(of)h(inline)d (mem)m(b)s(er)i(functions,)h(debugging)e(information,)p eop %%Page: 253 263 253 262 bop 150 -116 a Fy(Chapter)30 b(6:)41 b(Extensions)29 b(to)i(the)g(C)p Fq(++)e Fy(Language)1702 b(253)630 299 y(and)29 b(the)h(in)m(ternal)e(tables)h(that)h(implemen)m(t)e(virtual)g (functions\))g(m)m(ust)i(b)s(e)e(k)m(ept)j(in)d(eac)m(h)630 408 y(ob)5 b(ject)25 b(\014le)e(that)i(includes)c(class)j (de\014nitions.)36 b(Y)-8 b(ou)25 b(can)f(use)g(this)f(pragma)h(to)h(a) m(v)m(oid)f(suc)m(h)630 518 y(duplication.)37 b(When)28 b(a)h(header)f(\014le)f(con)m(taining)h(`)p Fq(#pragma)h(interface)p Fy(')d(is)h(included)e(in)630 628 y(a)h(compilation,)f(this)f (auxiliary)f(information)h(will)f(not)i(b)s(e)g(generated)h(\(unless)e (the)i(main)630 737 y(input)39 b(source)i(\014le)f(itself)g(uses)g(`)p Fq(#pragma)29 b(implementation)p Fy('\).)68 b(Instead,)44 b(the)d(ob)5 b(ject)630 847 y(\014les)29 b(will)f(con)m(tain)j (references)f(to)i(b)s(e)d(resolv)m(ed)i(at)g(link)d(time.)630 984 y(The)f(second)h(form)g(of)g(this)e(directiv)m(e)i(is)f(useful)f (for)i(the)g(case)h(where)e(y)m(ou)h(ha)m(v)m(e)h(m)m(ultiple)630 1093 y(headers)k(with)e(the)i(same)g(name)g(in)f(di\013eren)m(t)g (directories.)47 b(If)33 b(y)m(ou)g(use)g(this)e(form,)j(y)m(ou)630 1203 y(m)m(ust)c(sp)s(ecify)f(the)i(same)g(string)e(to)i(`)p Fq(#pragma)e(implementation)p Fy('.)150 1367 y Fq(#pragma)f (implementation)150 1476 y(#pragma)g(implementation)f(")p Fn(ob)5 b(jects)p Fq(.h")630 1586 y Fy(Use)29 b(this)f(pragma)h(in)f(a) h Fr(main)j(input)g(\014le)p Fy(,)d(when)f(y)m(ou)h(w)m(an)m(t)h(full)d (output)h(from)h(included)630 1696 y(header)k(\014les)f(to)i(b)s(e)e (generated)i(\(and)f(made)g(globally)f(visible\).)46 b(The)33 b(included)d(header)630 1805 y(\014le,)f(in)g(turn,)g(should)e (use)j(`)p Fq(#pragma)f(interface)p Fy('.)38 b(Bac)m(kup)30 b(copies)g(of)g(inline)d(mem)m(b)s(er)630 1915 y(functions,)40 b(debugging)e(information,)i(and)e(the)i(in)m(ternal)d(tables)i(used)g (to)g(implemen)m(t)630 2024 y(virtual)29 b(functions)g(are)h(all)g (generated)h(in)e(implemen)m(tation)g(\014les.)630 2161 y(If)51 b(y)m(ou)i(use)e(`)p Fq(#pragma)29 b(implementation)p Fy(')48 b(with)i(no)i(argumen)m(t,)58 b(it)51 b(applies)f(to)j(an)630 2271 y(include)43 b(\014le)i(with)f(the)i(same)g(basename)2141 2238 y Fj(1)2225 2271 y Fy(as)f(y)m(our)h(source)g(\014le.)85 b(F)-8 b(or)47 b(example,)i(in)630 2380 y(`)p Fq(allclass.cc)p Fy(',)43 b(giving)e(just)h(`)p Fq(#pragma)28 b(implementation)p Fy(')39 b(b)m(y)j(itself)f(is)g(equiv)-5 b(alen)m(t)630 2490 y(to)31 b(`)p Fq(#pragma)e(implementation)d("allclass.h")p Fy('.)630 2627 y(In)42 b(v)m(ersions)g(of)h(GNU)h(C)p Fq(++)e Fy(prior)f(to)j(2.6.0)g(`)p Fq(allclass.h)p Fy(')d(w)m(as)i (treated)h(as)f(an)g(im-)630 2736 y(plemen)m(tation)d(\014le)g(whenev)m (er)h(y)m(ou)g(w)m(ould)f(include)e(it)j(from)f(`)p Fq(allclass.cc)p Fy(')e(ev)m(en)k(if)630 2846 y(y)m(ou)35 b(nev)m(er)g(sp)s(eci\014ed)e (`)p Fq(#pragma)c(implementation)p Fy('.)50 b(This)33 b(w)m(as)i(deemed)f(to)i(b)s(e)e(more)630 2956 y(trouble)29 b(than)i(it)e(w)m(as)i(w)m(orth,)g(ho)m(w)m(ev)m(er,)h(and)e(disabled.) 630 3092 y(If)24 b(y)m(ou)h(use)f(an)g(explicit)f(`)p Fq(#pragma)29 b(implementation)p Fy(',)22 b(it)i(m)m(ust)g(app)s(ear)g (in)f(y)m(our)i(source)630 3202 y(\014le)k Fr(b)-5 b(efor)g(e)38 b Fy(y)m(ou)31 b(include)d(the)j(a\013ected)h(header)e(\014les.)630 3339 y(Use)24 b(the)h(string)e(argumen)m(t)h(if)f(y)m(ou)i(w)m(an)m(t)g (a)f(single)f(implemen)m(tation)g(\014le)g(to)i(include)d(co)s(de)630 3448 y(from)j(m)m(ultiple)e(header)j(\014les.)38 b(\(Y)-8 b(ou)26 b(m)m(ust)f(also)h(use)f(`)p Fq(#include)p Fy(')f(to)i(include) d(the)j(header)630 3558 y(\014le;)43 b(`)p Fq(#pragma)29 b(implementation)p Fy(')36 b(only)i(sp)s(eci\014es)g(ho)m(w)h(to)i(use) e(the)g(\014le|it)f(do)s(esn't)630 3668 y(actually)30 b(include)e(it.\))630 3804 y(There)37 b(is)g(no)h(w)m(a)m(y)h(to)f (split)f(up)f(the)i(con)m(ten)m(ts)i(of)e(a)g(single)f(header)g(\014le) g(in)m(to)h(m)m(ultiple)630 3914 y(implemen)m(tation)29 b(\014les.)275 4108 y(`)p Fq(#pragma)f(implementation)p Fy(')39 b(and)k(`)p Fq(#pragma)28 b(interface)p Fy(')41 b(also)i(ha)m(v)m(e)h(an)f(e\013ect)h(on)f(function)150 4217 y(inlining.)275 4356 y(If)38 b(y)m(ou)h(de\014ne)e(a)i(class)g(in) e(a)i(header)f(\014le)g(mark)m(ed)h(with)e(`)p Fq(#pragma)29 b(interface)p Fy(',)38 b(the)h(e\013ect)h(on)150 4466 y(a)34 b(function)f(de\014ned)g(in)g(that)i(class)e(is)g(similar)f(to)j (an)f(explicit)e Fq(extern)h Fy(declaration|the)g(compiler)150 4576 y(emits)d(no)g(co)s(de)h(at)g(all)f(to)h(de\014ne)e(an)i(indep)s (enden)m(t)d(v)m(ersion)i(of)g(the)h(function.)40 b(Its)30 b(de\014nition)e(is)i(used)150 4685 y(only)f(for)i(inlining)26 b(with)j(its)h(callers.)275 4824 y(Con)m(v)m(ersely)-8 b(,)32 b(when)e(y)m(ou)i(include)d(the)j(same)f(header)h(\014le)e(in)g (a)i(main)e(source)i(\014le)e(that)i(declares)f(it)150 4934 y(as)i(`)p Fq(#pragma)c(implementation)p Fy(',)h(the)j(compiler)e (emits)i(co)s(de)g(for)f(the)h(function)f(itself;)h(this)f(de\014nes) 150 5044 y(a)38 b(v)m(ersion)g(of)g(the)g(function)f(that)i(can)f(b)s (e)g(found)e(via)i(p)s(oin)m(ters)f(\(or)h(b)m(y)g(callers)f(compiled)g (without)p 150 5154 1200 4 v 199 5221 a Fj(1)275 5253 y Fi(A)24 b(\014le's)h Fd(basename)k Fi(w)n(as)d(the)e(name)g(stripp)r (ed)h(of)g(all)h(leading)g(path)e(information)i(and)e(of)i(trailing)g (su\016xes,)f(suc)n(h)f(as)275 5340 y(`)p Fh(.h)p Fi(')i(or)g(`)p Fh(.C)p Fi(')h(or)f(`)p Fh(.cc)p Fi('.)p eop %%Page: 254 264 254 263 bop 150 -116 a Fy(254)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y(inlining\).)58 b(If)37 b(all)f(calls)g(to)i(the)g(function)e(can)h(b)s(e)g(inlined,)f(y)m(ou)i (can)f(a)m(v)m(oid)h(emitting)f(the)g(function)150 408 y(b)m(y)e(compiling)d(with)i(`)p Fq(-fno-implement-inlines)p Fy('.)48 b(If)34 b(an)m(y)h(calls)f(w)m(ere)h(not)g(inlined,)e(y)m(ou)i (will)d(get)150 518 y(link)m(er)d(errors.)150 785 y Fs(6.6)68 b(Where's)46 b(the)f(T)-11 b(emplate?)275 982 y Fy(C)p Fq(++)35 b Fy(templates)i(are)g(the)f(\014rst)g(language)h(feature)g (to)g(require)e(more)i(in)m(telligence)e(from)h(the)h(en-)150 1091 y(vironmen)m(t)h(than)g(one)h(usually)e(\014nds)g(on)h(a)i(UNIX)f (system.)65 b(Someho)m(w)39 b(the)g(compiler)e(and)i(link)m(er)150 1201 y(ha)m(v)m(e)30 b(to)f(mak)m(e)g(sure)f(that)h(eac)m(h)h(template) e(instance)g(o)s(ccurs)h(exactly)g(once)g(in)e(the)i(executable)g(if)e (it)h(is)150 1310 y(needed,)j(and)g(not)g(at)h(all)e(otherwise.)43 b(There)30 b(are)i(t)m(w)m(o)g(basic)f(approac)m(hes)g(to)h(this)e (problem,)g(whic)m(h)g(I)150 1420 y(will)e(refer)i(to)h(as)g(the)f (Borland)g(mo)s(del)f(and)h(the)g(Cfron)m(t)g(mo)s(del.)150 1585 y(Borland)f(mo)s(del)630 1695 y(Borland)42 b(C)p Fq(++)g Fy(solv)m(ed)h(the)g(template)g(instan)m(tiation)f(problem)f(b) m(y)i(adding)f(the)h(co)s(de)630 1805 y(equiv)-5 b(alen)m(t)37 b(of)h(common)g(blo)s(c)m(ks)f(to)i(their)e(link)m(er;)j(the)e (compiler)e(emits)i(template)g(in-)630 1914 y(stances)c(in)e(eac)m(h)i (translation)e(unit)f(that)j(uses)f(them,)g(and)g(the)g(link)m(er)f (collapses)g(them)630 2024 y(together.)40 b(The)23 b(adv)-5 b(an)m(tage)25 b(of)f(this)e(mo)s(del)g(is)h(that)h(the)g(link)m(er)d (only)i(has)g(to)h(consider)f(the)630 2133 y(ob)5 b(ject)37 b(\014les)e(themselv)m(es;)k(there)d(is)f(no)h(external)g(complexit)m (y)g(to)h(w)m(orry)e(ab)s(out.)58 b(This)630 2243 y(disadv)-5 b(an)m(tage)36 b(is)f(that)h(compilation)e(time)h(is)g(increased)g(b)s (ecause)g(the)h(template)g(co)s(de)630 2352 y(is)41 b(b)s(eing)g (compiled)f(rep)s(eatedly)-8 b(.)75 b(Co)s(de)42 b(written)f(for)g (this)g(mo)s(del)g(tends)g(to)i(include)630 2462 y(de\014nitions)37 b(of)j(all)e(templates)i(in)e(the)i(header)f(\014le,)i(since)e(they)h (m)m(ust)f(b)s(e)g(seen)g(to)i(b)s(e)630 2572 y(instan)m(tiated.)150 2735 y(Cfron)m(t)30 b(mo)s(del)630 2845 y(The)i(A)-8 b(T&T)33 b(C)p Fq(++)f Fy(translator,)i(Cfron)m(t,)f(solv)m(ed)g(the)g (template)h(instan)m(tiation)e(problem)630 2954 y(b)m(y)k(creating)g (the)h(notion)e(of)h(a)h(template)f(rep)s(ository)-8 b(,)37 b(an)f(automatically)g(main)m(tained)630 3064 y(place)24 b(where)g(template)g(instances)g(are)g(stored.)39 b(A)24 b(more)g(mo)s(dern)f(v)m(ersion)h(of)g(the)g(rep)s(os-)630 3173 y(itory)31 b(w)m(orks)h(as)g(follo)m(ws:)43 b(As)32 b(individual)27 b(ob)5 b(ject)33 b(\014les)e(are)h(built,)f(the)h (compiler)e(places)630 3283 y(an)m(y)36 b(template)f(de\014nitions)e (and)i(instan)m(tiations)f(encoun)m(tered)i(in)e(the)h(rep)s(ository)-8 b(.)55 b(A)m(t)630 3392 y(link)30 b(time,)i(the)g(link)e(wrapp)s(er)g (adds)i(in)e(the)i(ob)5 b(jects)33 b(in)e(the)h(rep)s(ository)f(and)g (compiles)630 3502 y(an)m(y)e(needed)f(instances)g(that)h(w)m(ere)g (not)g(previously)d(emitted.)40 b(The)28 b(adv)-5 b(an)m(tages)30 b(of)f(this)630 3612 y(mo)s(del)36 b(are)h(more)g(optimal)f (compilation)g(sp)s(eed)g(and)g(the)i(abilit)m(y)d(to)j(use)f(the)g (system)630 3721 y(link)m(er;)26 b(to)h(implemen)m(t)d(the)i(Borland)f (mo)s(del)g(a)h(compiler)e(v)m(endor)i(also)g(needs)f(to)i(replace)630 3831 y(the)j(link)m(er.)38 b(The)29 b(disadv)-5 b(an)m(tages)30 b(are)g(v)-5 b(astly)29 b(increased)f(complexit)m(y)-8 b(,)30 b(and)f(th)m(us)g(p)s(oten-)630 3940 y(tial)39 b(for)g(error;)44 b(for)c(some)f(co)s(de)h(this)f(can)h(b)s(e)f(just)g (as)g(transparen)m(t,)j(but)d(in)g(practice)630 4050 y(it)33 b(can)h(b)s(een)f(v)m(ery)h(di\016cult)e(to)i(build)d(m)m (ultiple)g(programs)i(in)g(one)g(directory)h(and)f(one)630 4160 y(program)d(in)e(m)m(ultiple)g(directories.)39 b(Co)s(de)30 b(written)f(for)g(this)g(mo)s(del)g(tends)g(to)i(separate)630 4269 y(de\014nitions)24 b(of)i(non-inline)d(mem)m(b)s(er)j(templates)h (in)m(to)f(a)h(separate)g(\014le,)f(whic)m(h)f(should)g(b)s(e)630 4379 y(compiled)k(separately)-8 b(.)275 4544 y(When)30 b(used)f(with)g(GNU)i(ld)f(v)m(ersion)f(2.8)j(or)e(later)h(on)f(an)g (ELF)h(system)f(suc)m(h)g(as)h(Lin)m(ux/GNU)f(or)150 4654 y(Solaris)j(2,)k(or)d(on)h(Microsoft)g(Windo)m(ws,)h(g)p Fq(++)e Fy(supp)s(orts)f(the)i(Borland)f(mo)s(del.)53 b(On)34 b(other)h(systems,)150 4763 y(g)p Fq(++)30 b Fy(implemen)m(ts)f(neither)g(automatic)j(mo)s(del.)275 4902 y(A)41 b(future)f(v)m(ersion)g(of)h(g)p Fq(++)g Fy(will)d(supp)s(ort)h(a)j(h)m(ybrid)c(mo)s(del)i(whereb)m(y)g(the)h (compiler)f(will)e(emit)150 5011 y(an)m(y)e(instan)m(tiations)f(for)h (whic)m(h)f(the)h(template)g(de\014nition)e(is)h(included)e(in)i(the)h (compile,)h(and)e(store)150 5121 y(template)e(de\014nitions)d(and)i (instan)m(tiation)f(con)m(text)j(information)d(in)m(to)h(the)h(ob)5 b(ject)33 b(\014le)f(for)g(the)h(rest.)150 5230 y(The)40 b(link)e(wrapp)s(er)g(will)g(extract)j(that)g(information)d(as)j (necessary)f(and)g(in)m(v)m(ok)m(e)h(the)f(compiler)f(to)150 5340 y(pro)s(duce)22 b(the)i(remaining)e(instan)m(tiations.)37 b(The)23 b(link)m(er)f(will)e(then)k(com)m(bine)f(duplicate)f(instan)m (tiations.)p eop %%Page: 255 265 255 264 bop 150 -116 a Fy(Chapter)30 b(6:)41 b(Extensions)29 b(to)i(the)g(C)p Fq(++)e Fy(Language)1702 b(255)275 299 y(In)20 b(the)i(mean)g(time,)h(y)m(ou)f(ha)m(v)m(e)h(the)f(follo)m (wing)e(options)h(for)g(dealing)g(with)f(template)i(instan)m(tiations:) 199 436 y(1.)61 b(Compile)25 b(y)m(our)j(template-using)e(co)s(de)i (with)e(`)p Fq(-frepo)p Fy('.)38 b(The)27 b(compiler)f(will)e(generate) 29 b(\014les)d(with)330 546 y(the)h(extension)g(`)p Fq(.rpo)p Fy(')f(listing)e(all)i(of)h(the)g(template)h(instan)m(tiations)d(used)h (in)g(the)h(corresp)s(onding)330 656 y(ob)5 b(ject)33 b(\014les)e(whic)m(h)g(could)g(b)s(e)g(instan)m(tiated)h(there;)h(the)f (link)e(wrapp)s(er,)h(`)p Fq(collect2)p Fy(',)g(will)e(then)330 765 y(up)s(date)41 b(the)h(`)p Fq(.rpo)p Fy(')g(\014les)f(to)h(tell)f (the)i(compiler)d(where)i(to)g(place)g(those)h(instan)m(tiations)e(and) 330 875 y(rebuild)c(an)m(y)j(a\013ected)h(ob)5 b(ject)41 b(\014les.)68 b(The)39 b(link-time)f(o)m(v)m(erhead)j(is)e(negligible)e (after)k(the)f(\014rst)330 984 y(pass,)30 b(as)h(the)f(compiler)f(will) f(con)m(tin)m(ue)j(to)g(place)f(the)h(instan)m(tiations)e(in)g(the)i (same)f(\014les.)330 1120 y(This)g(is)g(y)m(our)i(b)s(est)f(option)f (for)i(application)d(co)s(de)j(written)f(for)g(the)h(Borland)e(mo)s (del,)h(as)h(it)f(will)330 1230 y(just)39 b(w)m(ork.)67 b(Co)s(de)39 b(written)f(for)h(the)g(Cfron)m(t)g(mo)s(del)f(will)f (need)i(to)h(b)s(e)e(mo)s(di\014ed)f(so)j(that)g(the)330 1340 y(template)29 b(de\014nitions)d(are)i(a)m(v)-5 b(ailable)28 b(at)h(one)g(or)f(more)h(p)s(oin)m(ts)e(of)h(instan)m(tiation;)h (usually)d(this)h(is)330 1449 y(as)k(simple)d(as)j(adding)e Fq(#include)f()e Fy(to)32 b(the)e(end)g(of)g(eac)m(h)i (template)f(header.)330 1585 y(F)-8 b(or)35 b(library)d(co)s(de,)k(if)d (y)m(ou)i(w)m(an)m(t)g(the)g(library)d(to)j(pro)m(vide)f(all)f(of)i (the)f(template)h(instan)m(tiations)330 1695 y(it)k(needs,)k(just)c (try)h(to)g(link)e(all)h(of)h(its)g(ob)5 b(ject)40 b(\014les)f (together;)47 b(the)40 b(link)e(will)f(fail,)k(but)e(cause)330 1804 y(the)31 b(instan)m(tiations)f(to)h(b)s(e)g(generated)h(as)f(a)g (side)f(e\013ect.)44 b(Be)32 b(w)m(arned,)e(ho)m(w)m(ev)m(er,)j(that)f (this)d(ma)m(y)330 1914 y(cause)j(con\015icts)g(if)f(m)m(ultiple)e (libraries)g(try)j(to)g(pro)m(vide)f(the)h(same)g(instan)m(tiations.)44 b(F)-8 b(or)33 b(greater)330 2023 y(con)m(trol,)e(use)f(explicit)f (instan)m(tiation)g(as)i(describ)s(ed)d(in)h(the)i(next)f(option.)199 2159 y(2.)61 b(Compile)22 b(y)m(our)i(co)s(de)f(with)g(`)p Fq(-fno-implicit-templates)p Fy(')18 b(to)24 b(disable)e(the)i (implicit)d(generation)330 2269 y(of)36 b(template)h(instances,)g(and)e (explicitly)f(instan)m(tiate)i(all)f(the)h(ones)h(y)m(ou)f(use.)57 b(This)35 b(approac)m(h)330 2379 y(requires)20 b(more)i(kno)m(wledge)f (of)h(exactly)h(whic)m(h)d(instances)h(y)m(ou)h(need)f(than)g(do)h(the) g(others,)h(but)e(it's)330 2488 y(less)32 b(m)m(ysterious)g(and)g(allo) m(ws)g(greater)i(con)m(trol.)49 b(Y)-8 b(ou)33 b(can)g(scatter)h(the)f (explicit)e(instan)m(tiations)330 2598 y(throughout)40 b(y)m(our)g(program,)j(p)s(erhaps)38 b(putting)h(them)i(in)e(the)h (translation)f(units)g(where)h(the)330 2707 y(instances)35 b(are)h(used)e(or)h(the)h(translation)e(units)g(that)i(de\014ne)e(the)i (templates)f(themselv)m(es;)k(y)m(ou)330 2817 y(can)c(put)e(all)g(of)i (the)f(explicit)f(instan)m(tiations)g(y)m(ou)i(need)f(in)m(to)g(one)h (big)e(\014le;)j(or)e(y)m(ou)h(can)f(create)330 2927 y(small)29 b(\014les)g(lik)m(e)570 3057 y Fq(#include)46 b("Foo.h")570 3161 y(#include)g("Foo.cc")570 3368 y(template)g(class)g (Foo;)570 3472 y(template)g(ostream&)f(operator)h(<<)1334 3576 y(\(ostream&,)f(const)h(Foo&\);)330 3712 y Fy(for)38 b(eac)m(h)h(of)g(the)f(instances)g(y)m(ou)h(need,)h(and)d (create)j(a)f(template)f(instan)m(tiation)g(library)d(from)330 3821 y(those.)330 3957 y(If)53 b(y)m(ou)g(are)g(using)f(Cfron)m(t-mo)s (del)g(co)s(de,)59 b(y)m(ou)53 b(can)g(probably)f(get)i(a)m(w)m(a)m(y)h (with)c(not)i(using)330 4067 y(`)p Fq(-fno-implicit-templates)p Fy(')29 b(when)34 b(compiling)e(\014les)i(that)i(don't)e(`)p Fq(#include)p Fy(')g(the)h(mem)m(b)s(er)330 4176 y(template)c (de\014nitions.)330 4312 y(If)37 b(y)m(ou)h(use)f(one)g(big)g(\014le)f (to)i(do)f(the)h(instan)m(tiations,)g(y)m(ou)g(ma)m(y)g(w)m(an)m(t)g (to)g(compile)e(it)h(without)330 4422 y(`)p Fq(-fno-implicit-templates) p Fy(')29 b(so)35 b(y)m(ou)g(get)h(all)e(of)h(the)g(instances)g (required)e(b)m(y)i(y)m(our)g(explicit)330 4532 y(instan)m(tiations)29 b(\(but)h(not)h(b)m(y)f(an)m(y)h(other)f(\014les\))g(without)f(ha)m (ving)h(to)i(sp)s(ecify)d(them)h(as)g(w)m(ell.)330 4668 y(g)p Fq(++)h Fy(has)h(extended)f(the)h(template)g(instan)m(tiation)e (syn)m(tax)i(outlined)e(in)g(the)h(W)-8 b(orking)32 b(P)m(ap)s(er)f(to) 330 4777 y(allo)m(w)f(forw)m(ard)h(declaration)f(of)h(explicit)e (instan)m(tiations)h(\(with)g Fq(extern)p Fy(\),)g(instan)m(tiation)g (of)h(the)330 4887 y(compiler)h(supp)s(ort)g(data)i(for)g(a)g(template) g(class)f(\(i.e.)h(the)g(vtable\))f(without)g(instan)m(tiating)g(an)m (y)330 4996 y(of)f(its)g(mem)m(b)s(ers)g(\(with)f Fq(inline)p Fy(\),)h(and)f(instan)m(tiation)g(of)i(only)e(the)i(static)g(data)g (mem)m(b)s(ers)e(of)i(a)330 5106 y(template)e(class,)f(without)g(the)g (supp)s(ort)f(data)i(or)f(mem)m(b)s(er)g(functions)f(\(with)g(\()p Fq(static)p Fy(\):)570 5236 y Fq(extern)46 b(template)g(int)h(max)f (\(int,)h(int\);)570 5340 y(inline)f(template)g(class)g(Foo;)p eop %%Page: 256 266 256 265 bop 150 -116 a Fy(256)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))570 299 y Fq(static)46 b(template)g(class)g (Foo;)199 434 y Fy(3.)61 b(Do)31 b(nothing.)41 b(Pretend)30 b(g)p Fq(++)g Fy(do)s(es)g(implemen)m(t)g(automatic)h(instan)m(tiation) f(managemen)m(t.)42 b(Co)s(de)330 544 y(written)c(for)g(the)h(Borland)f (mo)s(del)g(will)e(w)m(ork)j(\014ne,)h(but)e(eac)m(h)i(translation)e (unit)f(will)g(con)m(tain)330 653 y(instances)j(of)h(eac)m(h)g(of)g (the)f(templates)h(it)f(uses.)71 b(In)39 b(a)i(large)g(program,)i(this) c(can)i(lead)f(to)h(an)330 763 y(unacceptable)30 b(amoun)m(t)h(of)g(co) s(de)f(duplication.)199 898 y(4.)61 b(Add)25 b(`)p Fq(#pragma)k (interface)p Fy(')24 b(to)j(all)e(\014les)g(con)m(taining)h(template)g (de\014nitions.)37 b(F)-8 b(or)27 b(eac)m(h)g(of)f(these)330 1007 y(\014les,)48 b(add)c(`)p Fq(#pragma)29 b(implementation)d(")p Fn(\014lename)5 b Fq(")p Fy(')44 b(to)i(the)f(top)h(of)f(some)g(`)p Fq(.C)p Fy(')g(\014le)f(whic)m(h)330 1117 y(`)p Fq(#include)p Fy('s)39 b(it.)73 b(Then)41 b(compile)f(ev)m(erything)h(with)f(`)p Fq(-fexternal-templates)p Fy('.)68 b(The)41 b(tem-)330 1226 y(plates)31 b(will)d(then)i(only)g(b)s(e)h(expanded)f(in)f(the)i (translation)f(unit)g(whic)m(h)f(implemen)m(ts)h(them)g(\(i.e.)330 1336 y(has)35 b(a)i(`)p Fq(#pragma)28 b(implementation)p Fy(')k(line)i(for)i(the)g(\014le)f(where)g(they)h(liv)m(e\);)i(all)d (other)h(\014les)f(will)330 1446 y(use)h(external)h(references.)60 b(If)36 b(y)m(ou're)i(luc)m(ky)-8 b(,)38 b(ev)m(erything)f(should)e(w)m (ork)h(prop)s(erly)-8 b(.)58 b(If)37 b(y)m(ou)g(get)330 1555 y(unde\014ned)30 b(sym)m(b)s(ol)i(errors,)h(y)m(ou)g(need)f(to)h (mak)m(e)h(sure)e(that)h(eac)m(h)h(template)f(instance)g(whic)m(h)e(is) 330 1665 y(used)i(in)f(the)i(program)f(is)g(used)f(in)h(the)g(\014le)g (whic)m(h)f(implemen)m(ts)g(that)i(template.)51 b(If)33 b(y)m(ou)h(don't)330 1774 y(ha)m(v)m(e)c(an)m(y)f(use)f(for)h(a)g (particular)e(instance)h(in)g(that)h(\014le,)f(y)m(ou)h(can)g(just)g (instan)m(tiate)f(it)h(explicitly)-8 b(,)330 1884 y(using)29 b(the)h(syn)m(tax)h(from)f(the)h(latest)g(C)p Fq(++)e Fy(w)m(orking)h(pap)s(er:)570 2013 y Fq(template)46 b(class)g(A;) 570 2117 y(template)g(ostream&)f(operator)h(<<)h(\(ostream&,)e(const)h (A&\);)330 2252 y Fy(This)41 b(strategy)j(will)c(w)m(ork)j(with)e (co)s(de)i(written)f(for)g(either)h(mo)s(del.)76 b(If)42 b(y)m(ou)h(are)g(using)f(co)s(de)330 2362 y(written)24 b(for)g(the)g(Cfron)m(t)h(mo)s(del,)f(the)h(\014le)e(con)m(taining)h(a) h(class)f(template)h(and)f(the)h(\014le)e(con)m(taining)330 2471 y(its)30 b(mem)m(b)s(er)g(templates)g(should)f(b)s(e)g(implemen)m (ted)g(in)g(the)i(same)g(translation)e(unit.)199 2606 y(5.)61 b(A)41 b(sligh)m(t)f(v)-5 b(ariation)40 b(on)h(this)f(approac)m (h)h(is)f(to)h(use)g(the)g(\015ag)g(`)p Fq(-falt-external-templates)p Fy(')330 2716 y(instead.)f(This)28 b(\015ag)i(causes)h(template)f (instances)f(to)i(b)s(e)e(emitted)h(in)f(the)h(translation)f(unit)f (that)330 2825 y(implemen)m(ts)38 b(the)i(header)f(where)h(they)g(are)g (\014rst)f(instan)m(tiated,)i(rather)f(than)f(the)h(one)g(whic)m(h)330 2935 y(implemen)m(ts)28 b(the)i(\014le)f(where)g(the)h(templates)f(are) h(de\014ned.)40 b(This)27 b(header)j(m)m(ust)f(b)s(e)g(the)h(same)g(in) 330 3045 y(all)f(translation)h(units,)f(or)h(things)f(are)i(lik)m(ely)e (to)i(break.)330 3180 y(See)i(Section)g(6.5)h([Declarations)g(and)e (De\014nitions)g(in)g(One)g(Header],)j(page)f(252,)h(for)e(more)g(dis-) 330 3289 y(cussion)c(of)i(these)g(pragmas.)150 3528 y Fs(6.7)68 b(Extracting)46 b(the)f(function)g(p)t(oin)l(ter)h(from)f(a)g (b)t(ound)f(p)t(oin)l(ter)h(to)389 3661 y(mem)l(b)t(er)g(function)275 3855 y Fy(In)32 b(C)p Fq(++)p Fy(,)h(p)s(oin)m(ter)f(to)i(mem)m(b)s(er) f(functions)e(\(PMFs\))j(are)g(implemen)m(ted)e(using)f(a)j(wide)e(p)s (oin)m(ter)g(of)150 3964 y(sorts)c(to)g(handle)e(all)g(the)i(p)s (ossible)d(call)i(mec)m(hanisms;)h(the)g(PMF)g(needs)f(to)h(store)g (information)e(ab)s(out)150 4074 y(ho)m(w)h(to)i(adjust)d(the)i(`)p Fq(this)p Fy(')f(p)s(oin)m(ter,)g(and)g(if)f(the)h(function)g(p)s(oin)m (ted)f(to)i(is)e(virtual,)h(where)g(to)h(\014nd)e(the)150 4184 y(vtable,)j(and)g(where)g(in)e(the)j(vtable)f(to)g(lo)s(ok)g(for)g (the)g(mem)m(b)s(er)g(function.)39 b(If)28 b(y)m(ou)i(are)f(using)f (PMFs)h(in)150 4293 y(an)i(inner)f(lo)s(op,)g(y)m(ou)i(should)d(really) h(reconsider)h(that)g(decision.)42 b(If)31 b(that)h(is)e(not)i(an)f (option,)g(y)m(ou)h(can)150 4403 y(extract)j(the)e(p)s(oin)m(ter)f(to)i (the)f(function)f(that)i(w)m(ould)d(b)s(e)i(called)f(for)h(a)h(giv)m (en)f(ob)5 b(ject/PMF)35 b(pair)d(and)150 4512 y(call)e(it)g(directly)f (inside)f(the)i(inner)f(lo)s(op,)h(to)h(sa)m(v)m(e)h(a)e(bit)g(of)g (time.)275 4648 y(Note)f(that)g(y)m(ou)g(will)c(still)h(b)s(e)i(pa)m (ying)g(the)g(p)s(enalt)m(y)g(for)g(the)g(call)g(through)f(a)i (function)e(p)s(oin)m(ter;)h(on)150 4757 y(most)k(mo)s(dern)f(arc)m (hitectures,)i(suc)m(h)e(a)h(call)f(defeats)i(the)f(branc)m(h)f (prediction)f(features)i(of)g(the)g(CPU.)150 4867 y(This)d(is)g(also)h (true)g(of)h(normal)e(virtual)g(function)g(calls.)275 5003 y(The)g(syn)m(tax)i(for)f(this)g(extension)g(is)390 5132 y Fq(extern)46 b(A)i(a;)390 5236 y(extern)e(int)h(\(A::*fp\)\(\);) 390 5340 y(typedef)f(int)h(\(*fptr\)\(A)e(*\);)p eop %%Page: 257 267 257 266 bop 150 -116 a Fy(Chapter)30 b(6:)41 b(Extensions)29 b(to)i(the)g(C)p Fq(++)e Fy(Language)1702 b(257)390 403 y Fq(fptr)47 b(p)g(=)h(\(fptr\)\(a.*fp\);)275 544 y Fy(F)-8 b(or)24 b(PMF)g(constan)m(ts)h(\(i.e.)f(expressions)e(of)i(the)g(form)f (`)p Fq(&Klasse::Member)p Fy('\),)f(no)i(ob)5 b(ject)25 b(is)d(needed)150 653 y(to)31 b(obtain)e(the)h(address)f(of)h(the)g (function.)40 b(They)29 b(can)h(b)s(e)g(con)m(v)m(erted)h(to)g (function)d(p)s(oin)m(ters)h(directly:)390 788 y Fq(fptr)47 b(p1)g(=)g(\(fptr\)\(&A::foo\);)275 929 y Fy(Y)-8 b(ou)30 b(m)m(ust)h(sp)s(ecify)e(`)p Fq(-Wno-pmf-conversions)p Fy(')c(to)31 b(use)f(this)f(extension.)150 1202 y Fs(6.8)68 b(C)p Ft(++)p Fs(-Sp)t(eci\014c)43 b(V)-11 b(ariable,)46 b(F)-11 b(unction,)45 b(and)f(T)l(yp)t(e)h(A)l(ttributes)275 1401 y Fy(Some)30 b(attributes)g(only)f(mak)m(e)j(sense)e(for)g(C)p Fq(++)g Fy(programs.)150 1570 y Fq(init_priority)d(\()p Fn(priorit)m(y)8 b Fq(\))630 1680 y Fy(In)42 b(Standard)f(C)p Fq(++)p Fy(,)k(ob)5 b(jects)43 b(de\014ned)e(at)i(namespace)g(scop)s(e) g(are)g(guaran)m(teed)g(to)h(b)s(e)630 1789 y(initialized)17 b(in)i(an)i(order)e(in)g(strict)i(accordance)h(with)d(that)i(of)f (their)g(de\014nitions)d Fr(in)24 b(a)g(given)630 1899 y(tr)-5 b(anslation)47 b(unit)p Fy(.)80 b(No)44 b(guaran)m(tee)g(is)f (made)g(for)g(initializations)d(across)k(translation)630 2009 y(units.)67 b(Ho)m(w)m(ev)m(er,)44 b(GNU)c(C)p Fq(++)f Fy(allo)m(ws)f(users)h(to)h(con)m(trol)g(the)g(order)f(of)h (initialization)630 2118 y(of)f(ob)5 b(jects)40 b(de\014ned)e(at)h (namespace)h(scop)s(e)f(with)f(the)h Fq(init_priority)c Fy(attribute)k(b)m(y)630 2228 y(sp)s(ecifying)29 b(a)i(relativ)m(e)f Fn(priorit)m(y)p Fy(,)g(a)h(constan)m(t)h(in)m(tegral)e(expression)f (curren)m(tly)h(b)s(ounded)630 2337 y(b)s(et)m(w)m(een)h(101)h(and)d (65535)k(inclusiv)m(e.)39 b(Lo)m(w)m(er)31 b(n)m(um)m(b)s(ers)e (indicate)g(a)i(higher)e(priorit)m(y)-8 b(.)630 2475 y(In)28 b(the)h(follo)m(wing)e(example,)i Fq(A)g Fy(w)m(ould)e (normally)g(b)s(e)h(created)i(b)s(efore)e Fq(B)p Fy(,)h(but)f(the)h Fq(init_)630 2585 y(priority)f Fy(attribute)i(has)g(rev)m(ersed)h(that) g(order:)870 2716 y Fq(Some_Class)93 b(A)i(__attribute__)44 b(\(\(init_priority)g(\(2000\)\)\);)870 2820 y(Some_Class)93 b(B)i(__attribute__)44 b(\(\(init_priority)g(\(543\)\)\);)630 2958 y Fy(Note)39 b(that)g(the)f(particular)e(v)-5 b(alues)38 b(of)g Fn(priorit)m(y)44 b Fy(do)38 b(not)g(matter;)43 b(only)37 b(their)g(relativ)m(e)630 3068 y(ordering.)150 3233 y Fq(java_interface)630 3343 y Fy(This)42 b(t)m(yp)s(e)h (attribute)g(informs)f(C)p Fq(++)g Fy(that)i(the)f(class)g(is)g(a)g(Ja) m(v)-5 b(a)45 b(in)m(terface.)80 b(It)43 b(ma)m(y)630 3452 y(only)37 b(b)s(e)g(applied)e(to)j(classes)g(declared)f(within)e (an)i Fq(extern)29 b("Java")36 b Fy(blo)s(c)m(k.)61 b(Calls)36 b(to)630 3562 y(metho)s(ds)22 b(declared)g(in)f(this)h(in)m(terface)h (will)d(b)s(e)i(dispatc)m(hed)g(using)f(GCJ's)i(in)m(terface)g(table) 630 3672 y(mec)m(hanism,)30 b(instead)g(of)g(regular)g(virtual)e(table) j(dispatc)m(h.)150 3945 y Fs(6.9)68 b(Ja)l(v)-7 b(a)46 b(Exceptions)275 4144 y Fy(The)35 b(Ja)m(v)-5 b(a)38 b(language)e(uses)g(a)h(sligh)m(tly)e(di\013eren)m(t)h(exception)g (handling)e(mo)s(del)h(from)h(C)p Fq(++)p Fy(.)57 b(Nor-)150 4253 y(mally)-8 b(,)33 b(GNU)h(C)p Fq(++)f Fy(will)d(automatically)k (detect)g(when)f(y)m(ou)g(are)h(writing)d(C)p Fq(++)i Fy(co)s(de)g(that)h(uses)f(Ja)m(v)-5 b(a)150 4363 y(exceptions,)28 b(and)e(handle)f(them)i(appropriately)-8 b(.)38 b(Ho)m(w)m(ev)m(er,)30 b(if)c(C)p Fq(++)g Fy(co)s(de)h(only)f(needs)g(to)i(execute)g(de-)150 4473 y(structors)i(when)f(Ja)m(v)-5 b(a)31 b(exceptions)g(are)f(thro)m (wn)g(through)f(it,)h(GCC)g(will)e(guess)i(incorrectly)-8 b(.)40 b(Sample)150 4582 y(problematic)29 b(co)s(de)i(is:)485 4717 y Fq(struct)47 b(S)g({)g(~S\(\);)g(};)485 4821 y(extern)g(void)f (bar\(\);)189 b(//)48 b(is)f(written)f(in)h(Java,)f(and)h(may)g(throw)f (exceptions)485 4925 y(void)h(foo\(\))485 5029 y({)581 5132 y(S)g(s;)581 5236 y(bar\(\);)485 5340 y(})p eop %%Page: 258 268 258 267 bop 150 -116 a Fy(258)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y(The)39 b(usual)f(e\013ect)j(of)f(an)f (incorrect)g(guess)h(is)e(a)i(link)e(failure,)i(complaining)d(of)j(a)g (missing)d(routine)150 408 y(called)30 b(`)p Fq(__gxx_personality_v0)p Fy('.)275 577 y(Y)-8 b(ou)33 b(can)g(inform)e(the)i(compiler)e(that)i (Ja)m(v)-5 b(a)34 b(exceptions)f(are)g(to)g(b)s(e)f(used)g(in)f(a)i (translation)f(unit,)150 686 y(irresp)s(ectiv)m(e)24 b(of)h(what)g(it)f(migh)m(t)h(think,)g(b)m(y)f(writing)f(`)p Fq(#pragma)29 b(GCC)g(java_exceptions)l Fy(')c(at)h(the)f(head)150 796 y(of)g(the)g(\014le.)38 b(This)23 b(`)p Fq(#pragma)p Fy(')h(m)m(ust)g(app)s(ear)h(b)s(efore)f(an)m(y)h(functions)f(that)h (thro)m(w)g(or)g(catc)m(h)i(exceptions,)150 906 y(or)j(run)f (destructors)h(when)g(exceptions)g(are)h(thro)m(wn)f(through)g(them.) 275 1074 y(Y)-8 b(ou)30 b(cannot)g(mix)f(Ja)m(v)-5 b(a)31 b(and)e(C)p Fq(++)g Fy(exceptions)h(in)f(the)h(same)g(translation)f (unit.)39 b(It)30 b(is)f(b)s(eliev)m(ed)f(to)150 1183 y(b)s(e)k(safe)i(to)g(thro)m(w)e(a)i(C)p Fq(++)e Fy(exception)h(from)g (one)g(\014le)f(through)g(another)h(\014le)g(compiled)e(for)i(the)g(Ja) m(v)-5 b(a)150 1293 y(exception)31 b(mo)s(del,)e(or)h(vice)h(v)m(ersa,) g(but)f(there)g(ma)m(y)h(b)s(e)f(bugs)g(in)f(this)g(area.)150 1635 y Fs(6.10)68 b(Deprecated)46 b(F)-11 b(eatures)275 1861 y Fy(In)32 b(the)h(past,)i(the)e(GNU)h(C)p Fq(++)e Fy(compiler)g(w)m(as)i(extended)f(to)h(exp)s(erimen)m(t)e(with)g(new)h (features,)h(at)150 1971 y(a)d(time)g(when)f(the)h(C)p Fq(++)e Fy(language)j(w)m(as)f(still)e(ev)m(olving.)41 b(No)m(w)32 b(that)f(the)g(C)p Fq(++)f Fy(standard)g(is)g(complete,)150 2081 y(some)25 b(of)h(those)f(features)h(are)f(sup)s(erseded)e(b)m(y)i (sup)s(erior)e(alternativ)m(es.)39 b(Using)24 b(the)i(old)e(features)h (migh)m(t)150 2190 y(cause)h(a)g(w)m(arning)e(in)g(some)i(cases)g(that) g(the)g(feature)g(will)c(b)s(e)j(dropp)s(ed)f(in)g(the)h(future.)38 b(In)25 b(other)h(cases,)150 2300 y(the)31 b(feature)f(migh)m(t)g(b)s (e)g(gone)h(already)-8 b(.)275 2468 y(While)32 b(the)j(list)e(b)s(elo)m (w)g(is)g(not)i(exhaustiv)m(e,)g(it)f(do)s(cumen)m(ts)g(some)g(of)h (the)f(options)g(that)g(are)h(no)m(w)150 2578 y(deprecated:)150 2788 y Fq(-fexternal-templates)150 2897 y(-falt-external-templates)630 3007 y Fy(These)e(are)g(t)m(w)m(o)h(of)f(the)g(man)m(y)g(w)m(a)m(ys)h (for)f(g)p Fq(++)f Fy(to)i(implemen)m(t)d(template)j(instan)m(tiation.) 630 3117 y(See)g(Section)g(6.6)h([T)-8 b(emplate)34 b(Instan)m (tiation],)h(page)g(254.)52 b(The)34 b(C)p Fq(++)f Fy(standard)g (clearly)630 3226 y(de\014nes)k(ho)m(w)i(template)g(de\014nitions)d(ha) m(v)m(e)j(to)g(b)s(e)f(organized)g(across)h(implemen)m(tation)630 3336 y(units.)47 b(g)p Fq(++)33 b Fy(has)f(an)h(implicit)d(instan)m (tiation)i(mec)m(hanism)h(that)g(should)e(w)m(ork)i(just)g(\014ne)630 3445 y(for)d(standard-conforming)f(co)s(de.)150 3639 y Fq(-fstrict-prototype)150 3748 y(-fno-strict-prototype)630 3858 y Fy(Previously)d(it)h(w)m(as)h(p)s(ossible)d(to)j(use)f(an)g (empt)m(y)h(protot)m(yp)s(e)g(parameter)g(list)f(to)h(indicate)630 3967 y(an)37 b(unsp)s(eci\014ed)d(n)m(um)m(b)s(er)i(of)h(parameters)g (\(lik)m(e)f(C\),)h(rather)g(than)g(no)g(parameters,)i(as)630 4077 y(C)p Fq(++)32 b Fy(demands.)49 b(This)31 b(feature)j(has)f(b)s (een)f(remo)m(v)m(ed,)k(except)e(where)f(it)f(is)h(required)e(for)630 4187 y(bac)m(kw)m(ards)26 b(compatibilit)m(y)e(See)i(Section)f(6.11)i ([Bac)m(kw)m(ards)g(Compatibilit)m(y],)e(page)h(259.)275 4397 y(The)j(named)h(return)g(v)-5 b(alue)29 b(extension)h(has)h(b)s (een)e(deprecated,)i(and)f(is)g(no)m(w)g(remo)m(v)m(ed)h(from)f(g)p Fq(++)p Fy(.)275 4565 y(The)23 b(use)h(of)h(initializer)c(lists)i(with) g(new)h(expressions)f(has)h(b)s(een)g(deprecated,)i(and)e(is)g(no)m(w)g (remo)m(v)m(ed)150 4675 y(from)30 b(g)p Fq(++)p Fy(.)275 4843 y(Floating)c(and)f(complex)h(non-t)m(yp)s(e)f(template)i (parameters)f(ha)m(v)m(e)h(b)s(een)f(deprecated,)h(and)f(are)g(no)m(w) 150 4952 y(remo)m(v)m(ed)31 b(from)f(g)p Fq(++)p Fy(.)275 5121 y(The)f(implicit)f(t)m(yp)s(ename)i(extension)g(has)g(b)s(een)g (deprecated)h(and)e(will)f(b)s(e)i(remo)m(v)m(ed)h(from)f(g)p Fq(++)g Fy(at)150 5230 y(some)k(p)s(oin)m(t.)51 b(In)34 b(some)g(cases)h(g)p Fq(++)f Fy(determines)f(that)i(a)f(dep)s(endan)m (t)g(t)m(yp)s(e)g(suc)m(h)g(as)g Fq(TPL::X)d Fy(is)j(a)150 5340 y(t)m(yp)s(e)d(without)e(needing)g(a)i Fq(typename)d Fy(k)m(eyw)m(ord,)j(con)m(trary)g(to)g(the)g(standard.)p eop %%Page: 259 269 259 268 bop 150 -116 a Fy(Chapter)30 b(6:)41 b(Extensions)29 b(to)i(the)g(C)p Fq(++)e Fy(Language)1702 b(259)150 299 y Fs(6.11)68 b(Bac)l(kw)l(ards)46 b(Compatibilit)l(y)275 491 y Fy(No)m(w)33 b(that)g(there)g(is)e(a)i(de\014nitiv)m(e)f(ISO)f (standard)h(C)p Fq(++)p Fy(,)g(G)p Fq(++)h Fy(has)f(a)h(sp)s (eci\014cation)e(to)j(adhere)e(to.)150 601 y(The)i(C)p Fq(++)f Fy(language)h(ev)m(olv)m(ed)h(o)m(v)m(er)h(time,)e(and)g (features)g(that)h(used)e(to)i(b)s(e)f(acceptable)h(in)d(previous)150 711 y(drafts)c(of)g(the)h(standard,)f(suc)m(h)g(as)g(the)g(ARM)h ([Annotated)g(C)p Fq(++)e Fy(Reference)i(Man)m(ual],)h(are)e(no)g (longer)150 820 y(accepted.)48 b(In)32 b(order)f(to)i(allo)m(w)f (compilation)f(of)i(C)p Fq(++)e Fy(written)g(to)i(suc)m(h)f(drafts,)h (G)p Fq(++)f Fy(con)m(tains)h(some)150 930 y(bac)m(kw)m(ards)42 b(compatibilities.)71 b Fr(A)n(l)5 b(l)42 b(such)h(b)-5 b(ackwar)g(ds)45 b(c)-5 b(omp)g(atibility)45 b(fe)-5 b(atur)g(es)44 b(ar)-5 b(e)44 b(liable)f(to)g(disap-)150 1039 y(p)-5 b(e)g(ar)43 b(in)e(futur)-5 b(e)42 b(versions)g(of)g(G)p Fq(++)p Fr(.)69 b Fy(They)39 b(should)f(b)s(e)h(considered)g (deprecated)h(See)h(Section)e(6.10)150 1149 y([Deprecated)32 b(F)-8 b(eatures],)32 b(page)f(258.)150 1308 y Fq(For)e(scope)67 b Fy(If)34 b(a)h(v)-5 b(ariable)33 b(is)g(declared)h(at)h(for)f(scop)s (e,)i(it)d(used)h(to)h(remain)e(in)g(scop)s(e)i(un)m(til)d(the)j(end) 630 1418 y(of)29 b(the)f(scop)s(e)h(whic)m(h)e(con)m(tained)i(the)g (for)f(statemen)m(t)i(\(rather)f(than)f(just)g(within)e(the)j(for)630 1528 y(scop)s(e\).)63 b(G)p Fq(++)37 b Fy(retains)g(this,)h(but)f (issues)g(a)h(w)m(arning,)g(if)f(suc)m(h)g(a)h(v)-5 b(ariable)36 b(is)h(accessed)630 1637 y(outside)30 b(the)g(for)g(scop)s(e.)150 1797 y Fq(Implicit)e(C)i(language)630 1906 y Fy(Old)35 b(C)i(system)g(header)f(\014les)g(did)f(not)i(con)m(tain)h(an)e Fq(extern)29 b("C")g({...)o(})37 b Fy(scop)s(e)g(to)g(set)630 2016 y(the)28 b(language.)41 b(On)27 b(suc)m(h)h(systems,)h(all)e (header)h(\014les)g(are)g(implicitly)d(scop)s(ed)j(inside)e(a)i(C)630 2125 y(language)j(scop)s(e.)41 b(Also,)30 b(an)g(empt)m(y)h(protot)m (yp)s(e)g Fq(\(\))e Fy(will)f(b)s(e)i(treated)h(as)f(an)h(unsp)s (eci\014ed)630 2235 y(n)m(um)m(b)s(er)e(of)i(argumen)m(ts,)g(rather)f (than)g(no)g(argumen)m(ts,)h(as)g(C)p Fq(++)e Fy(demands.)p eop %%Page: 260 270 260 269 bop 150 -116 a Fy(260)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 261 271 261 270 bop 150 -116 a Fy(Chapter)30 b(7:)41 b(GNU)31 b(Ob)5 b(jectiv)m(e-C)30 b(run)m(time)g(features)1601 b(261)150 299 y Fv(7)80 b(GNU)54 b(Ob)9 b(jectiv)l(e-C)53 b(run)l(time)f(features)275 544 y Fy(This)28 b(do)s(cumen)m(t)i(is)g (mean)m(t)h(to)g(describ)s(e)e(some)h(of)h(the)f(GNU)h(Ob)5 b(jectiv)m(e-C)31 b(run)m(time)e(features.)41 b(It)150 653 y(is)33 b(not)h(in)m(tended)f(to)h(teac)m(h)i(y)m(ou)e(Ob)5 b(jectiv)m(e-C,)34 b(there)g(are)g(sev)m(eral)h(resources)e(on)h(the)g (In)m(ternet)g(that)150 763 y(presen)m(t)h(the)h(language.)56 b(Questions)34 b(and)h(commen)m(ts)h(ab)s(out)f(this)g(do)s(cumen)m(t)g (to)h(Ovidiu)c(Predescu)150 872 y Fq(ovidiu@cup.hp.com)p Fy(.)150 1138 y Fs(7.1)68 b Ft(+load)p Fs(:)d(Executing)46 b(co)t(de)f(b)t(efore)g(main)275 1335 y Fy(The)34 b(GNU)h(Ob)5 b(jectiv)m(e-C)34 b(run)m(time)g(pro)m(vides)f(a)i(w)m(a)m(y)h(that)f (allo)m(ws)f(y)m(ou)g(to)i(execute)g(co)s(de)e(b)s(efore)150 1444 y(the)28 b(execution)h(of)f(the)h(program)f(en)m(ters)g(the)h Fq(main)e Fy(function.)39 b(The)27 b(co)s(de)i(is)e(executed)i(on)f(a)h (p)s(er-class)150 1554 y(and)h(a)h(p)s(er-category)g(basis,)f(through)f (a)i(sp)s(ecial)e(class)h(metho)s(d)g Fq(+load)p Fy(.)275 1692 y(This)24 b(facilit)m(y)h(is)g(v)m(ery)h(useful)e(if)h(y)m(ou)i(w) m(an)m(t)f(to)h(initialize)c(global)j(v)-5 b(ariables)24 b(whic)m(h)h(can)h(b)s(e)g(accessed)150 1801 y(b)m(y)44 b(the)h(program)f(directly)-8 b(,)48 b(without)43 b(sending)g(a)i (message)h(to)f(the)f(class)h(\014rst.)82 b(The)44 b(usual)f(w)m(a)m(y) 150 1911 y(to)h(initialize)d(global)i(v)-5 b(ariables,)46 b(in)c(the)h Fq(+initialize)e Fy(metho)s(d,)46 b(migh)m(t)e(not)f(b)s (e)g(useful)f(b)s(ecause)150 2021 y Fq(+initialize)29 b Fy(is)h(only)h(called)g(when)f(the)i(\014rst)f(message)i(is)d(sen)m (t)i(to)h(a)f(class)f(ob)5 b(ject,)33 b(whic)m(h)d(in)h(some)150 2130 y(cases)g(could)f(b)s(e)f(to)s(o)j(late.)275 2268 y(Supp)s(ose)40 b(for)i(example)g(y)m(ou)h(ha)m(v)m(e)h(a)f Fq(FileStream)c Fy(class)j(that)h(declares)g Fq(Stdin)p Fy(,)h Fq(Stdout)d Fy(and)150 2378 y Fq(Stderr)29 b Fy(as)h(global)g(v) -5 b(ariables,)29 b(lik)m(e)h(b)s(elo)m(w:)390 2614 y Fq(FileStream)45 b(*Stdin)h(=)i(nil;)390 2718 y(FileStream)d(*Stdout)h (=)h(nil;)390 2821 y(FileStream)e(*Stderr)h(=)h(nil;)390 3029 y(@implementation)d(FileStream)390 3236 y(+)j(\(void\)initialize) 390 3340 y({)581 3444 y(Stdin)f(=)i([[FileStream)c(new])j (initWithFd:0];)581 3548 y(Stdout)f(=)h([[FileStream)e(new])i (initWithFd:1];)581 3652 y(Stderr)f(=)h([[FileStream)e(new])i (initWithFd:2];)390 3755 y(})390 3963 y(/*)g(Other)g(methods)e(here)i (*/)390 4067 y(@end)275 4308 y Fy(In)29 b(this)g(example,)h(the)g (initialization)d(of)j Fq(Stdin)p Fy(,)f Fq(Stdout)g Fy(and)g Fq(Stderr)f Fy(in)h Fq(+initialize)e Fy(o)s(ccurs)150 4418 y(to)s(o)33 b(late.)45 b(The)31 b(programmer)h(can)g(send)f(a)h (message)h(to)g(one)f(of)g(these)g(ob)5 b(jects)33 b(b)s(efore)e(the)h (v)-5 b(ariables)150 4528 y(are)26 b(actually)g(initialized,)d(th)m(us) j(sending)e(messages)j(to)f(the)g Fq(nil)f Fy(ob)5 b(ject.)40 b(The)26 b Fq(+initialize)c Fy(metho)s(d)150 4637 y(whic)m(h)32 b(actually)h(initializes)e(the)j(global)f(v)-5 b(ariables)32 b(is)h(not)h(in)m(v)m(ok)m(ed)g(un)m(til)d(the)j(\014rst)f(message)i (is)d(sen)m(t)150 4747 y(to)g(the)g(class)g(ob)5 b(ject.)45 b(The)31 b(solution)f(w)m(ould)h(require)f(these)i(v)-5 b(ariables)30 b(to)j(b)s(e)e(initialized)d(just)j(b)s(efore)150 4856 y(en)m(tering)f Fq(main)p Fy(.)275 4994 y(The)48 b(correct)j(solution)d(of)i(the)f(ab)s(o)m(v)m(e)i(problem)d(is)g(to)i (use)g(the)f Fq(+load)f Fy(metho)s(d)h(instead)g(of)150 5104 y Fq(+initialize)p Fy(:)390 5340 y Fq(@implementation)44 b(FileStream)p eop %%Page: 262 272 262 271 bop 150 -116 a Fy(262)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 403 y Fq(+)47 b(\(void\)load)390 506 y({)581 610 y(Stdin)f(=)i([[FileStream)c(new])j(initWithFd:0];)581 714 y(Stdout)f(=)h([[FileStream)e(new])i(initWithFd:1];)581 818 y(Stderr)f(=)h([[FileStream)e(new])i(initWithFd:2];)390 922 y(})390 1129 y(/*)g(Other)g(methods)e(here)i(*/)390 1233 y(@end)275 1474 y Fy(The)42 b Fq(+load)f Fy(is)g(a)i(metho)s(d)f (that)h(is)f(not)g(o)m(v)m(erridden)g(b)m(y)g(categories.)79 b(If)42 b(a)h(class)f(and)g(a)h(cate-)150 1583 y(gory)33 b(of)h(it)e(b)s(oth)h(implemen)m(t)e Fq(+load)p Fy(,)i(b)s(oth)f(metho) s(ds)g(are)i(in)m(v)m(ok)m(ed.)49 b(This)31 b(allo)m(ws)i(some)g (additional)150 1693 y(initializations)27 b(to)k(b)s(e)f(p)s(erformed)f (in)g(a)i(category)-8 b(.)275 1830 y(This)32 b(mec)m(hanism)i(is)f(not) i(in)m(tended)e(to)i(b)s(e)e(a)i(replacemen)m(t)g(for)f Fq(+initialize)p Fy(.)49 b(Y)-8 b(ou)35 b(should)e(b)s(e)150 1939 y(a)m(w)m(are)f(of)e(its)g(limitations)e(when)i(y)m(ou)g(decide)g (to)h(use)f(it)g(instead)g(of)g Fq(+initialize)p Fy(.)150 2168 y Fg(7.1.1)63 b(What)40 b(y)m(ou)h(can)f(and)h(what)f(y)m(ou)h (cannot)f(do)i(in)f Fc(+load)275 2363 y Fy(The)29 b Fq(+load)g Fy(implemen)m(tation)g(in)g(the)i(GNU)g(run)m(time)e(guaran)m(tees)j(y) m(ou)f(the)f(follo)m(wing)f(things:)225 2500 y Fx(\017)60 b Fy(y)m(ou)31 b(can)f(write)g(whatev)m(er)h(C)f(co)s(de)h(y)m(ou)f (lik)m(e;)225 2636 y Fx(\017)60 b Fy(y)m(ou)65 b(can)f(send)g(messages) h(to)g(Ob)5 b(jectiv)m(e-C)65 b(constan)m(t)g(strings)e(\()p Fq(@"this)29 b(is)h(a)g(constant)330 2745 y(string")p Fy(\);)225 2881 y Fx(\017)60 b Fy(y)m(ou)30 b(can)f(allo)s(cate)h(and)e (send)h(messages)h(to)g(ob)5 b(jects)30 b(whose)e(class)h(is)g (implemen)m(ted)e(in)h(the)i(same)330 2991 y(\014le;)225 3126 y Fx(\017)60 b Fy(the)30 b Fq(+load)e Fy(implemen)m(tation)h(of)h (all)e(sup)s(er)h(classes)g(of)h(a)h(class)e(are)h(executed)h(b)s (efore)e(the)h Fq(+load)330 3236 y Fy(of)h(that)g(class)f(is)f (executed;)225 3372 y Fx(\017)60 b Fy(the)36 b Fq(+load)e Fy(implemen)m(tation)h(of)h(a)g(class)f(is)g(executed)i(b)s(efore)e (the)h Fq(+load)e Fy(implemen)m(tation)h(of)330 3481 y(an)m(y)c(category)-8 b(.)275 3644 y(In)35 b(particular,)h(the)h (follo)m(wing)d(things,)j(ev)m(en)g(if)e(they)h(can)h(w)m(ork)f(in)f(a) i(particular)d(case,)39 b(are)e(not)150 3754 y(guaran)m(teed:)225 3891 y Fx(\017)60 b Fy(allo)s(cation)30 b(of)g(or)h(sending)d(messages) k(to)f(arbitrary)e(ob)5 b(jects;)225 4026 y Fx(\017)60 b Fy(allo)s(cation)24 b(of)h(or)g(sending)f(messages)i(to)f(ob)5 b(jects)26 b(whose)f(classes)g(ha)m(v)m(e)h(a)f(category)i(implemen)m (ted)330 4136 y(in)i(the)i(same)f(\014le;)275 4299 y(Y)-8 b(ou)24 b(should)e(mak)m(e)i(no)g(assumptions)e(ab)s(out)i(receiving)f Fq(+load)f Fy(in)g(sibling)f(classes)j(when)f(y)m(ou)h(write)150 4409 y Fq(+load)29 b Fy(of)h(a)h(class.)41 b(The)30 b(order)f(in)h (whic)m(h)f(sibling)e(classes)j(receiv)m(e)i Fq(+load)d Fy(is)g(not)i(guaran)m(teed.)275 4546 y(The)43 b(order)h(in)e(whic)m(h) h Fq(+load)g Fy(and)g Fq(+initialize)e Fy(are)j(called)g(could)f(b)s(e) g(problematic)g(if)g(this)150 4655 y(matters.)59 b(If)36 b(y)m(ou)h(don't)f(allo)s(cate)h(ob)5 b(jects)37 b(inside)d Fq(+load)p Fy(,)j(it)f(is)f(guaran)m(teed)j(that)e Fq(+load)f Fy(is)h(called)150 4765 y(b)s(efore)42 b Fq(+initialize)p Fy(.)72 b(If)41 b(y)m(ou)h(create)i(an)e(ob)5 b(ject)42 b(inside)e Fq(+load)h Fy(the)h Fq(+initialize)c Fy(metho)s(d)k(of)150 4874 y(ob)5 b(ject's)29 b(class)f(is)f(in)m(v)m(ok)m(ed)i(ev)m(en)g(if) e Fq(+load)g Fy(w)m(as)h(not)h(in)m(v)m(ok)m(ed.)40 b(Note)29 b(if)f(y)m(ou)g(explicitly)e(call)h Fq(+load)g Fy(on)150 4984 y(a)i(class,)f Fq(+initialize)e Fy(will)f(b)s(e)j(called)f (\014rst.)40 b(T)-8 b(o)28 b(a)m(v)m(oid)h(p)s(ossible)d(problems)h (try)h(to)h(implemen)m(t)e(only)150 5093 y(one)k(of)f(these)h(metho)s (ds.)275 5230 y(The)21 b Fq(+load)g Fy(metho)s(d)g(is)g(also)h(in)m(v)m (ok)m(ed)h(when)e(a)h(bundle)e(is)h(dynamically)f(loaded)i(in)m(to)g(y) m(our)g(running)150 5340 y(program.)44 b(This)30 b(happ)s(ens)g (automatically)h(without)g(an)m(y)h(in)m(terv)m(ening)e(op)s(eration)h (from)g(y)m(ou.)45 b(When)p eop %%Page: 263 273 263 272 bop 150 -116 a Fy(Chapter)30 b(7:)41 b(GNU)31 b(Ob)5 b(jectiv)m(e-C)30 b(run)m(time)g(features)1601 b(263)150 299 y(y)m(ou)29 b(write)g(bundles)d(and)j(y)m(ou)g(need)g(to) h(write)e Fq(+load)f Fy(y)m(ou)j(can)f(safely)g(create)h(and)f(send)f (messages)i(to)150 408 y(ob)5 b(jects)29 b(whose)e(classes)h(already)g (exist)g(in)e(the)i(running)d(program.)40 b(The)27 b(same)i (restrictions)e(as)h(ab)s(o)m(v)m(e)150 518 y(apply)h(to)i(classes)g (de\014ned)e(in)g(bundle.)150 769 y Fs(7.2)68 b(T)l(yp)t(e)45 b(enco)t(ding)275 960 y Fy(The)26 b(Ob)5 b(jectiv)m(e-C)28 b(compiler)e(generates)i(t)m(yp)s(e)g(enco)s(dings)e(for)h(all)f(the)i (t)m(yp)s(es.)39 b(These)27 b(t)m(yp)s(e)h(enco)s(d-)150 1069 y(ings)35 b(are)h(used)g(at)g(run)m(time)f(to)i(\014nd)d(out)j (information)d(ab)s(out)i(selectors)g(and)g(metho)s(ds)f(and)g(ab)s (out)150 1179 y(ob)5 b(jects)31 b(and)f(classes.)275 1311 y(The)f(t)m(yp)s(es)i(are)g(enco)s(ded)f(in)f(the)h(follo)m(wing)f (w)m(a)m(y:)150 1444 y Fq(char)808 b(c)150 1553 y(unsigned)28 b(char)396 b(C)150 1663 y(short)760 b(s)150 1772 y(unsigned)28 b(short)348 b(S)150 1882 y(int)856 b(i)150 1992 y(unsigned)28 b(int)444 b(I)150 2101 y(long)808 b(l)150 2211 y(unsigned)28 b(long)396 b(L)150 2320 y(long)29 b(long)587 b(q)150 2430 y(unsigned)28 b(long)h(long)175 b(Q)150 2539 y(float)760 b(f)150 2649 y(double)712 b(d)150 2759 y(void)808 b(v)150 2868 y(id)904 b(@)150 2978 y(Class)760 b(#)150 3087 y(SEL)856 b(:)150 3197 y(char*)760 b(*)150 3307 y Fy(unkno)m(wn)29 b(t)m(yp)s(e)437 b Fq(?)150 3416 y Fy(bit-\014elds)654 b Fq(b)29 b Fy(follo)m(w)m(ed)g(b)m(y)g(the)h(starting)f(p)s(osition)e (of)j(the)f(bit-\014eld,)f(the)i(t)m(yp)s(e)f(of)h(the)1150 3526 y(bit-\014eld)35 b(and)h(the)h(size)g(of)g(the)g(bit-\014eld)e (\(the)j(bit-\014elds)d(enco)s(ding)h(w)m(as)1150 3635 y(c)m(hanged)31 b(from)f(the)g(NeXT's)h(compiler)e(enco)s(ding,)g(see)i (b)s(elo)m(w\))275 3762 y(The)e(enco)s(ding)h(of)h(bit-\014elds)d(has)i (c)m(hanged)h(to)g(allo)m(w)f(bit-\014elds)f(to)i(b)s(e)f(prop)s(erly)e (handled)g(b)m(y)j(the)150 3872 y(run)m(time)g(functions)h(that)h (compute)g(sizes)f(and)g(alignmen)m(ts)g(of)g(t)m(yp)s(es)h(that)g(con) m(tain)g(bit-\014elds.)45 b(The)150 3982 y(previous)29 b(enco)s(ding)h(con)m(tained)h(only)f(the)h(size)f(of)h(the)g (bit-\014eld.)40 b(Using)30 b(only)g(this)g(information)f(it)h(is)150 4091 y(not)j(p)s(ossible)c(to)k(reliably)d(compute)j(the)g(size)f(o)s (ccupied)f(b)m(y)h(the)h(bit-\014eld.)44 b(This)31 b(is)g(v)m(ery)i (imp)s(ortan)m(t)150 4201 y(in)j(the)h(presence)h(of)f(the)h(Bo)s (ehm's)f(garbage)i(collector)f(b)s(ecause)f(the)g(ob)5 b(jects)38 b(are)g(allo)s(cated)f(using)150 4310 y(the)27 b(t)m(yp)s(ed)f(memory)h(facilit)m(y)f(a)m(v)-5 b(ailable)26 b(in)f(this)h(collector.)40 b(The)26 b(t)m(yp)s(ed)h(memory)f(allo)s (cation)g(requires)150 4420 y(information)j(ab)s(out)h(where)g(the)g(p) s(oin)m(ters)f(are)i(lo)s(cated)g(inside)d(the)j(ob)5 b(ject.)275 4552 y(The)36 b(p)s(osition)g(in)g(the)h(bit-\014eld)e(is)i (the)g(p)s(osition,)g(coun)m(ting)h(in)e(bits,)i(of)f(the)h(bit)e (closest)i(to)g(the)150 4662 y(b)s(eginning)28 b(of)i(the)h(structure.) 275 4794 y(The)e(non-atomic)i(t)m(yp)s(es)g(are)f(enco)s(ded)g(as)h (follo)m(ws:)150 4927 y(p)s(oin)m(ters)500 b(`)p Fq(^)p Fy(')30 b(follo)m(w)m(ed)g(b)m(y)g(the)h(p)s(oin)m(ted)e(t)m(yp)s(e.) 150 5036 y(arra)m(ys)577 b(`)p Fq([)p Fy(')39 b(follo)m(w)m(ed)g(b)m(y) g(the)h(n)m(um)m(b)s(er)e(of)h(elemen)m(ts)h(in)e(the)i(arra)m(y)g (follo)m(w)m(ed)f(b)m(y)g(the)970 5146 y(t)m(yp)s(e)30 b(of)h(the)f(elemen)m(ts)h(follo)m(w)m(ed)f(b)m(y)g(`)p Fq(])p Fy(')150 5241 y(structures)424 b(`)p Fq({)p Fy(')42 b(follo)m(w)m(ed)h(b)m(y)f(the)h(name)g(of)g(the)f(structure)h(\(or)g (`)p Fq(?)p Fy(')f(if)g(the)h(structure)f(is)970 5350 y(unnamed\),)29 b(the)i(`)p Fq(=)p Fy(')f(sign,)g(the)g(t)m(yp)s(e)h (of)g(the)f(mem)m(b)s(ers)g(and)f(b)m(y)i(`)p Fq(})p Fy(')p eop %%Page: 264 274 264 273 bop 150 -116 a Fy(264)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y(unions)560 b(`)p Fq(\()p Fy(')40 b(follo)m(w)m(ed)f(b)m(y)h(the)h(name)f(of)g(the)g(structure)g (\(or)g(`)p Fq(?)p Fy(')g(if)f(the)h(union)f(is)g(un-)970 408 y(named\),)30 b(the)h(`)p Fq(=)p Fy(')f(sign,)g(the)g(t)m(yp)s(e)h (of)g(the)f(mem)m(b)s(ers)g(follo)m(w)m(ed)g(b)m(y)g(`)p Fq(\))p Fy(')275 523 y(Here)k(are)f(some)h(t)m(yp)s(es)g(and)f(their)f (enco)s(dings,)i(as)f(they)h(are)g(generated)h(b)m(y)e(the)h(compiler)e (on)h(an)150 632 y(i386)e(mac)m(hine:)150 871 y(Ob)5 b(jectiv)m(e-C)31 b(t)m(yp)s(e)318 b(Compiler)28 b(enco)s(ding)390 981 y Fq(int)47 b(a[10];)281 b([10i])390 1152 y(struct)46 b({)485 1256 y(int)h(i;)485 1359 y(float)g(f[3];)485 1463 y(int)g(a:3;)485 1567 y(int)g(b:2;)485 1671 y(char)g(c;)390 1775 y(})1150 1152 y({?=i[3f]b128i3b131i2c})275 2075 y Fy(In)31 b(addition)f(to)j(the)f(t)m(yp)s(es)g(the)g(compiler)e(also) i(enco)s(des)g(the)h(t)m(yp)s(e)f(sp)s(eci\014ers.)43 b(The)32 b(table)g(b)s(elo)m(w)150 2184 y(describ)s(es)d(the)h(enco)s (ding)g(of)g(the)h(curren)m(t)f(Ob)5 b(jectiv)m(e-C)30 b(t)m(yp)s(e)h(sp)s(eci\014ers:)150 2423 y(Sp)s(eci\014er)662 b(Enco)s(ding)150 2533 y Fq(const)760 b(r)150 2642 y(in)904 b(n)150 2752 y(inout)760 b(N)150 2861 y(out)856 b(o)150 2971 y(bycopy)712 b(O)150 3081 y(oneway)g(V)275 3319 y Fy(The)37 b(t)m(yp)s(e)h(sp)s(eci\014ers)e(are)i(enco)s(ded)g(just)f (b)s(efore)g(the)h(t)m(yp)s(e.)64 b(Unlik)m(e)37 b(t)m(yp)s(es)g(ho)m (w)m(ev)m(er,)42 b(the)c(t)m(yp)s(e)150 3429 y(sp)s(eci\014ers)29 b(are)h(only)g(enco)s(ded)g(when)f(they)i(app)s(ear)f(in)f(metho)s(d)g (argumen)m(t)i(t)m(yp)s(es.)150 3670 y Fs(7.3)68 b(Garbage)46 b(Collection)275 3857 y Fy(Supp)s(ort)39 b(for)j(a)g(new)f(memory)h (managemen)m(t)h(p)s(olicy)d(has)h(b)s(een)g(added)g(b)m(y)h(using)e(a) i(p)s(o)m(w)m(erful)150 3967 y(conserv)-5 b(ativ)m(e)37 b(garbage)h(collector,)h(kno)m(wn)d(as)h(the)f(Bo)s(ehm-Demers-W)-8 b(eiser)38 b(conserv)-5 b(ativ)m(e)38 b(garbage)150 4076 y(collector.)j(It)31 b(is)e(a)m(v)-5 b(ailable)30 b(from)g Fq(http://www.hpl.hp.com/p)o(erso)o(nal/)o(Han)o(s_Bo)o(ehm/)o(gc/)-7 b Fy(.)275 4205 y(T)f(o)32 b(enable)f(the)i(supp)s(ort)d(for)h(it)h(y)m (ou)g(ha)m(v)m(e)h(to)g(con\014gure)f(the)g(compiler)e(using)h(an)h (additional)e(ar-)150 4315 y(gumen)m(t,)g(`)p Fq(--enable-objc-gc)p Fy(')l(.)40 b(Y)-8 b(ou)30 b(need)e(to)i(ha)m(v)m(e)g(garbage)g (collector)g(installed)c(b)s(efore)j(building)150 4424 y(the)e(compiler.)38 b(This)25 b(will)f(build)g(an)j(additional)e(run)m (time)h(library)e(whic)m(h)i(has)g(sev)m(eral)h(enhancemen)m(ts)150 4534 y(to)k(supp)s(ort)e(the)h(garbage)i(collector.)41 b(The)30 b(new)g(library)e(has)i(a)h(new)e(name,)i(`)p Fq(libobjc_gc.a)p Fy(')d(to)j(not)150 4644 y(con\015ict)f(with)f(the)i (non-garbage-collected)h(library)-8 b(.)275 4773 y(When)32 b(the)h(garbage)h(collector)g(is)e(used,)g(the)i(ob)5 b(jects)33 b(are)g(allo)s(cated)g(using)f(the)h(so-called)f(t)m(yp)s (ed)150 4882 y(memory)27 b(allo)s(cation)g(mec)m(hanism)g(a)m(v)-5 b(ailable)27 b(in)f(the)i(Bo)s(ehm-Demers-W)-8 b(eiser)28 b(collector.)41 b(This)25 b(mo)s(de)150 4992 y(requires)j(precise)g (information)f(on)i(where)g(p)s(oin)m(ters)f(are)h(lo)s(cated)h(inside) c(ob)5 b(jects.)41 b(This)28 b(information)150 5101 y(is)h(computed)i (once)g(p)s(er)e(class,)h(immediately)f(after)i(the)g(class)f(has)g(b)s (een)f(initialized.)275 5230 y(There)36 b(is)g(a)i(new)e(run)m(time)g (function)g Fq(class_ivar_set_gcinvisib)o(le\()o(\))31 b Fy(whic)m(h)36 b(can)h(b)s(e)g(used)150 5340 y(to)j(declare)e(a)i (so-called)e Fn(w)m(eak)i(p)s(oin)m(ter)45 b Fy(reference.)66 b(Suc)m(h)38 b(a)i(p)s(oin)m(ter)e(is)f(basically)h(hidden)e(for)j(the) p eop %%Page: 265 275 265 274 bop 150 -116 a Fy(Chapter)30 b(7:)41 b(GNU)31 b(Ob)5 b(jectiv)m(e-C)30 b(run)m(time)g(features)1601 b(265)150 299 y(garbage)29 b(collector;)g(this)e(can)h(b)s(e)f(useful)g (in)f(certain)i(situations,)f(esp)s(ecially)f(when)h(y)m(ou)h(w)m(an)m (t)h(to)f(k)m(eep)150 408 y(trac)m(k)39 b(of)e(the)h(allo)s(cated)f(ob) 5 b(jects,)40 b(y)m(et)f(allo)m(w)d(them)i(to)g(b)s(e)f(collected.)62 b(This)35 b(kind)h(of)h(p)s(oin)m(ters)g(can)150 518 y(only)26 b(b)s(e)h(mem)m(b)s(ers)f(of)h(ob)5 b(jects,)29 b(y)m(ou)f(cannot)f(declare)h(a)f(global)f(p)s(oin)m(ter)h(as)g(a)h(w)m (eak)g(reference.)40 b(Ev)m(ery)150 628 y(t)m(yp)s(e)31 b(whic)m(h)e(is)g(a)i(p)s(oin)m(ter)e(t)m(yp)s(e)i(can)f(b)s(e)g (declared)g(a)h(w)m(eak)g(p)s(oin)m(ter,)f(including)d Fq(id)p Fy(,)j Fq(Class)f Fy(and)g Fq(SEL)p Fy(.)275 772 y(Here)k(is)e(an)i(example)f(of)h(ho)m(w)f(to)i(use)e(this)g (feature.)47 b(Supp)s(ose)31 b(y)m(ou)i(w)m(an)m(t)h(to)f(implemen)m(t) e(a)i(class)150 882 y(whose)d(instances)g(hold)f(a)i(w)m(eak)g(p)s(oin) m(ter)f(reference;)h(the)f(follo)m(wing)f(class)h(do)s(es)g(this:)390 1124 y Fq(@interface)45 b(WeakPointer)g(:)i(Object)390 1228 y({)581 1332 y(const)f(void*)h(weakPointer;)390 1435 y(})390 1643 y(-)g(initWithPointer:\(const)42 b(void*\)p;)390 1747 y(-)47 b(\(const)g(void*\)weakPointer;)390 1851 y(@end)390 2162 y(@implementation)d(WeakPointer)390 2369 y(+)j(\(void\)initialize)390 2473 y({)485 2577 y (class_ivar_set_gcinvisible)41 b(\(self,)46 b("weakPointer",)e(YES\);) 390 2681 y(})390 2888 y(-)j(initWithPointer:\(const)42 b(void*\)p)390 2992 y({)485 3096 y(weakPointer)j(=)j(p;)485 3200 y(return)f(self;)390 3303 y(})390 3511 y(-)g(\(const)g (void*\)weakPointer)390 3615 y({)485 3719 y(return)g(weakPointer;)390 3822 y(})390 4030 y(@end)275 4278 y Fy(W)-8 b(eak)32 b(p)s(oin)m(ters)d(are)i(supp)s(orted)e(through)g(a)i(new)f(t)m(yp)s(e) h(c)m(haracter)h(sp)s(eci\014er)d(represen)m(ted)h(b)m(y)h(the)150 4388 y(`)p Fq(!)p Fy(')26 b(c)m(haracter.)40 b(The)26 b Fq(class_ivar_set_gcinvisi)o(ble)o(\(\))19 b Fy(function)25 b(adds)g(or)g(remo)m(v)m(es)i(this)e(sp)s(eci\014er)150 4497 y(to)31 b(the)g(string)e(t)m(yp)s(e)i(description)d(of)i(the)h (instance)f(v)-5 b(ariable)29 b(named)h(as)h(argumen)m(t.)150 4780 y Fs(7.4)68 b(Constan)l(t)46 b(string)f(ob)7 b(jects)275 4982 y Fy(GNU)39 b(Ob)5 b(jectiv)m(e-C)38 b(pro)m(vides)f(constan)m(t)j (string)d(ob)5 b(jects)39 b(that)g(are)g(generated)g(directly)e(b)m(y)i (the)150 5092 y(compiler.)56 b(Y)-8 b(ou)37 b(declare)f(a)h(constan)m (t)g(string)e(ob)5 b(ject)37 b(b)m(y)f(pre\014xing)e(a)j(C)e(constan)m (t)j(string)d(with)g(the)150 5201 y(c)m(haracter)d(`)p Fq(@)p Fy(':)485 5340 y Fq(id)48 b(myString)d(=)j(@"this)e(is)h(a)g (constant)f(string)g(object";)p eop %%Page: 266 276 266 275 bop 150 -116 a Fy(266)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))275 299 y(The)g(constan)m(t)i(string)d(ob)5 b(jects)32 b(are)f(usually)d(instances)i(of)h(the)g Fq (NXConstantString)26 b Fy(class)k(whic)m(h)150 408 y(is)h(pro)m(vided)f (b)m(y)i(the)g(GNU)g(Ob)5 b(jectiv)m(e-C)32 b(run)m(time.)44 b(T)-8 b(o)32 b(get)h(the)f(de\014nition)d(of)j(this)e(class)i(y)m(ou)g (m)m(ust)150 518 y(include)c(the)j(`)p Fq(objc/NXConstStr.h)p Fy(')26 b(header)k(\014le.)275 653 y(User)38 b(de\014ned)f(libraries)e (ma)m(y)k(w)m(an)m(t)g(to)g(implemen)m(t)e(their)g(o)m(wn)h(constan)m (t)i(string)d(class.)64 b(T)-8 b(o)39 b(b)s(e)150 762 y(able)e(to)i(supp)s(ort)d(them,)k(the)d(GNU)i(Ob)5 b(jectiv)m(e-C)38 b(compiler)e(pro)m(vides)h(a)h(new)f(command)h(line)e(op-)150 872 y(tions)22 b(`)p Fq(-fconstant-string-class=)p Fn(cl)o(ass-name)5 b Fy('.)33 b(The)22 b(pro)m(vided)g(class)g(should)e(adhere)j(to)g(a)g (strict)150 981 y(structure,)30 b(the)h(same)f(as)h Fq (NXConstantString)p Fy('s)26 b(structure:)390 1214 y Fq(@interface)45 b(NXConstantString)e(:)48 b(Object)390 1318 y({)485 1421 y(char)f(*c_string;)485 1525 y(unsigned)f(int)h(len;) 390 1629 y(})390 1733 y(@end)275 1971 y Fy(User)37 b(class)f(libraries) f(ma)m(y)i(c)m(ho)s(ose)i(to)e(inherit)e(the)j(customized)f(constan)m (t)h(string)e(class)h(from)g(a)150 2081 y(di\013eren)m(t)f(class)h (than)g Fq(Object)p Fy(.)58 b(There)36 b(is)g(no)h(requiremen)m(t)f(in) g(the)h(metho)s(ds)f(the)h(constan)m(t)h(string)150 2190 y(class)30 b(has)g(to)h(implemen)m(t.)275 2325 y(When)j(a)g(\014le)f (is)h(compiled)e(with)h(the)i(`)p Fq(-fconstant-string-class)p Fy(')28 b(option,)35 b(all)e(the)i(constan)m(t)150 2434 y(string)21 b(ob)5 b(jects)24 b(will)19 b(b)s(e)j(instances)g(of)h(the) g(class)f(sp)s(eci\014ed)f(as)h(argumen)m(t)h(to)g(this)f(option.)37 b(It)23 b(is)e(p)s(ossible)150 2544 y(to)30 b(ha)m(v)m(e)h(m)m(ultiple) c(compilation)h(units)g(referring)g(to)i(di\013eren)m(t)f(constan)m(t)i (string)d(classes,)i(neither)f(the)150 2653 y(compiler)g(nor)h(the)g (link)m(er)f(imp)s(ose)g(an)m(y)i(restrictions)e(in)g(doing)h(this.)150 2911 y Fs(7.5)68 b(compatibilit)l(y)p 1170 2911 41 6 v 51 w(alias)275 3103 y Fy(This)30 b(is)h(a)i(feature)g(of)g(the)f(Ob)5 b(jectiv)m(e-C)33 b(compiler)e(rather)h(than)g(of)g(the)h(run)m(time,)f (an)m(yw)m(a)m(y)i(since)150 3213 y(it)c(is)f(do)s(cumen)m(ted)h(no)m (where)h(and)f(its)f(existence)i(w)m(as)g(forgotten,)h(w)m(e)f(are)f (do)s(cumen)m(ting)g(it)g(here.)275 3347 y(The)d(k)m(eyw)m(ord)i Fq(@compatibility_alias)22 b Fy(allo)m(ws)28 b(y)m(ou)g(to)h(de\014ne)f (a)g(class)g(name)g(as)h(equiv)-5 b(alen)m(t)27 b(to)150 3457 y(another)k(class)f(name.)40 b(F)-8 b(or)32 b(example:)390 3586 y Fq(@compatibility_alias)42 b(WOApplication)i(GSWApplication;)275 3720 y Fy(tells)i(the)i(compiler)e(that)i(eac)m(h)g(time)f(it)g(encoun) m(ters)h Fq(WOApplication)c Fy(as)j(a)h(class)f(name,)52 b(it)150 3830 y(should)g(replace)j(it)e(with)g Fq(GSWApplication)e Fy(\(that)k(is,)60 b Fq(WOApplication)50 b Fy(is)k(just)f(an)i(alias)e (for)150 3939 y Fq(GSWApplication)p Fy(\).)275 4074 y(There)29 b(are)i(some)g(constrain)m(ts)f(on)h(ho)m(w)f(this)f(can)i(b)s(e)f (used|)225 4208 y Fx(\017)60 b Fq(WOApplication)27 b Fy(\(the)k(alias\))f(m)m(ust)g(not)g(b)s(e)g(an)g(existing)g(class;)225 4343 y Fx(\017)60 b Fq(GSWApplication)26 b Fy(\(the)31 b(real)f(class\))h(m)m(ust)f(b)s(e)g(an)g(existing)g(class.)p eop %%Page: 267 277 267 276 bop 150 -116 a Fy(Chapter)30 b(8:)41 b Fq(gcov)p Fy(:)e(a)31 b(T)-8 b(est)31 b(Co)m(v)m(erage)i(Program)1730 b(267)150 299 y Fv(8)80 b Fm(gcov)p Fv(:)g(a)54 b(T)-13 b(est)53 b(Co)l(v)l(erage)f(Program)275 631 y Fq(gcov)43 b Fy(is)g(a)h(to)s(ol)h(y)m(ou)f(can)h(use)f(in)e(conjunction)i(with)f (GCC)g(to)i(test)g(co)s(de)g(co)m(v)m(erage)i(in)c(y)m(our)150 741 y(programs.)150 1080 y Fs(8.1)68 b(In)l(tro)t(duction)45 b(to)g Ft(gcov)275 1306 y Fq(gcov)29 b Fy(is)g(a)i(test)g(co)m(v)m (erage)j(program.)40 b(Use)31 b(it)f(in)f(concert)i(with)e(GCC)h(to)h (analyze)g(y)m(our)f(programs)150 1415 y(to)k(help)e(create)k(more)d (e\016cien)m(t,)i(faster)f(running)d(co)s(de.)50 b(Y)-8 b(ou)35 b(can)e(use)h Fq(gcov)e Fy(as)i(a)g(pro\014ling)d(to)s(ol)i(to) 150 1525 y(help)f(disco)m(v)m(er)i(where)g(y)m(our)f(optimization)g (e\013orts)h(will)d(b)s(est)j(a\013ect)h(y)m(our)e(co)s(de.)51 b(Y)-8 b(ou)35 b(can)f(also)f(use)150 1634 y Fq(gcov)d Fy(along)g(with)g(the)g(other)h(pro\014ling)d(to)s(ol,)j Fq(gprof)p Fy(,)f(to)h(assess)g(whic)m(h)f(parts)g(of)h(y)m(our)f(co)s (de)h(use)g(the)150 1744 y(greatest)h(amoun)m(t)f(of)g(computing)e (time.)275 1911 y(Pro\014ling)f(to)s(ols)i(help)g(y)m(ou)h(analyze)g(y) m(our)f(co)s(de's)h(p)s(erformance.)41 b(Using)30 b(a)h(pro\014ler)e (suc)m(h)h(as)h Fq(gcov)150 2021 y Fy(or)f Fq(gprof)p Fy(,)g(y)m(ou)g(can)h(\014nd)e(out)h(some)h(basic)f(p)s(erformance)g (statistics,)g(suc)m(h)g(as:)225 2188 y Fx(\017)60 b Fy(ho)m(w)30 b(often)h(eac)m(h)h(line)c(of)j(co)s(de)g(executes)225 2339 y Fx(\017)60 b Fy(what)30 b(lines)f(of)h(co)s(de)h(are)g(actually) f(executed)225 2490 y Fx(\017)60 b Fy(ho)m(w)30 b(m)m(uc)m(h)h (computing)e(time)h(eac)m(h)i(section)e(of)h(co)s(de)g(uses)275 2698 y(Once)26 b(y)m(ou)h(kno)m(w)f(these)h(things)e(ab)s(out)h(ho)m(w) g(y)m(our)h(co)s(de)f(w)m(orks)h(when)e(compiled,)h(y)m(ou)h(can)f(lo)s (ok)g(at)150 2808 y(eac)m(h)35 b(mo)s(dule)d(to)i(see)h(whic)m(h)d(mo)s (dules)g(should)g(b)s(e)h(optimized.)50 b Fq(gcov)32 b Fy(helps)g(y)m(ou)j(determine)d(where)150 2918 y(to)f(w)m(ork)g(on)f (optimization.)275 3085 y(Soft)m(w)m(are)38 b(dev)m(elop)s(ers)f(also)h (use)f(co)m(v)m(erage)k(testing)c(in)g(concert)h(with)f(testsuites,)j (to)e(mak)m(e)h(sure)150 3194 y(soft)m(w)m(are)33 b(is)e(actually)g(go) s(o)s(d)g(enough)g(for)h(a)g(release.)44 b(T)-8 b(estsuites)32 b(can)g(v)m(erify)f(that)h(a)g(program)f(w)m(orks)150 3304 y(as)h(exp)s(ected;)h(a)f(co)m(v)m(erage)i(program)e(tests)g(to)g (see)g(ho)m(w)g(m)m(uc)m(h)g(of)f(the)h(program)f(is)g(exercised)g(b)m (y)h(the)150 3414 y(testsuite.)43 b(Dev)m(elop)s(ers)31 b(can)h(then)e(determine)h(what)f(kinds)g(of)h(test)h(cases)g(need)e (to)i(b)s(e)f(added)f(to)i(the)150 3523 y(testsuites)f(to)g(create)h(b) s(oth)d(b)s(etter)i(testing)f(and)g(a)h(b)s(etter)f(\014nal)f(pro)s (duct.)275 3690 y(Y)-8 b(ou)40 b(should)f(compile)g(y)m(our)h(co)s(de)h (without)e(optimization)g(if)g(y)m(ou)i(plan)e(to)i(use)f Fq(gcov)f Fy(b)s(ecause)150 3800 y(the)i(optimization,)i(b)m(y)f(com)m (bining)d(some)j(lines)d(of)j(co)s(de)f(in)m(to)g(one)h(function,)h(ma) m(y)e(not)h(giv)m(e)g(y)m(ou)150 3910 y(as)c(m)m(uc)m(h)g(information)e (as)i(y)m(ou)g(need)g(to)g(lo)s(ok)g(for)f(`hot)i(sp)s(ots')e(where)g (the)h(co)s(de)g(is)f(using)g(a)h(great)150 4019 y(deal)28 b(of)g(computer)g(time.)40 b(Lik)m(ewise,)27 b(b)s(ecause)h Fq(gcov)f Fy(accum)m(ulates)i(statistics)f(b)m(y)g(line)f(\(at)i(the)f (lo)m(w)m(est)150 4129 y(resolution\),)g(it)f(w)m(orks)h(b)s(est)f (with)g(a)h(programming)e(st)m(yle)i(that)h(places)e(only)g(one)h (statemen)m(t)i(on)e(eac)m(h)150 4238 y(line.)60 b(If)37 b(y)m(ou)h(use)f(complicated)h(macros)f(that)i(expand)d(to)j(lo)s(ops)d (or)h(to)i(other)e(con)m(trol)h(structures,)150 4348 y(the)d(statistics)f(are)h(less)f(helpful|they)e(only)h(rep)s(ort)h(on) g(the)h(line)e(where)h(the)h(macro)g(call)e(app)s(ears.)150 4458 y(If)h(y)m(our)h(complex)f(macros)h(b)s(eha)m(v)m(e)g(lik)m(e)f (functions,)g(y)m(ou)h(can)g(replace)f(them)h(with)e(inline)e (functions)150 4567 y(to)g(solv)m(e)g(this)e(problem.)275 4734 y Fq(gcov)g Fy(creates)j(a)g(log\014le)e(called)g(`)p Fn(source\014le)p Fq(.gcov)p Fy(')f(whic)m(h)h(indicates)f(ho)m(w)i (man)m(y)g(times)g(eac)m(h)h(line)150 4844 y(of)h(a)g(source)g(\014le)f (`)p Fn(source\014le)p Fq(.c)p Fy(')g(has)g(executed.)49 b(Y)-8 b(ou)33 b(can)g(use)g(these)g(log\014les)f(along)g(with)g Fq(gprof)f Fy(to)150 4954 y(aid)i(in)f(\014ne-tuning)g(the)i(p)s (erformance)f(of)h(y)m(our)f(programs.)50 b Fq(gprof)33 b Fy(giv)m(es)g(timing)g(information)f(y)m(ou)150 5063 y(can)f(use)f(along)g(with)f(the)i(information)d(y)m(ou)j(get)h(from)e Fq(gcov)p Fy(.)275 5230 y Fq(gcov)41 b Fy(w)m(orks)i(only)f(on)h(co)s (de)g(compiled)e(with)g(GCC.)78 b(It)43 b(is)f(not)h(compatible)f(with) g(an)m(y)h(other)150 5340 y(pro\014ling)28 b(or)i(test)h(co)m(v)m (erage)j(mec)m(hanism.)p eop %%Page: 268 278 268 277 bop 150 -116 a Fy(268)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fs(8.2)68 b(In)l(v)l(oking)46 b(gco)l(v)390 461 y Fq(gcov)h Fy([)p Fn(options)t Fy(])g Fn(source\014le)275 684 y Fq(gcov)29 b Fy(accepts)i(the)g(follo)m(wing) e(options:)150 976 y Fq(-h)150 1085 y(--help)192 b Fy(Displa)m(y)22 b(help)f(ab)s(out)h(using)f Fq(gcov)h Fy(\(on)h(the)g(standard)e (output\),)k(and)d(exit)g(without)g(doing)630 1195 y(an)m(y)31 b(further)e(pro)s(cessing.)150 1442 y Fq(-v)150 1552 y(--version)630 1662 y Fy(Displa)m(y)34 b(the)i Fq(gcov)e Fy(v)m(ersion)g(n)m(um)m(b)s(er)g(\(on)i(the)f(standard)g(output\),)h (and)f(exit)g(without)630 1771 y(doing)29 b(an)m(y)i(further)e(pro)s (cessing.)150 2019 y Fq(-b)150 2129 y(--branch-probabilities)630 2238 y Fy(W)-8 b(rite)30 b(branc)m(h)g(frequencies)f(to)i(the)f(output) g(\014le,)f(and)h(write)f(branc)m(h)g(summary)g(info)g(to)630 2348 y(the)35 b(standard)e(output.)52 b(This)33 b(option)h(allo)m(ws)f (y)m(ou)i(to)g(see)g(ho)m(w)f(often)h(eac)m(h)h(branc)m(h)d(in)630 2457 y(y)m(our)d(program)g(w)m(as)h(tak)m(en.)150 2705 y Fq(-c)150 2815 y(--branch-counts)630 2924 y Fy(W)-8 b(rite)43 b(branc)m(h)f(frequencies)f(as)i(the)g(n)m(um)m(b)s(er)e(of)i (branc)m(hes)f(tak)m(en,)47 b(rather)42 b(than)h(the)630 3034 y(p)s(ercen)m(tage)32 b(of)e(branc)m(hes)g(tak)m(en.)150 3282 y Fq(-n)150 3391 y(--no-output)630 3501 y Fy(Do)h(not)g(create)h (the)e Fq(gcov)g Fy(output)g(\014le.)150 3749 y Fq(-l)150 3858 y(--long-file-names)630 3968 y Fy(Create)42 b(long)f(\014le)g (names)h(for)f(included)e(source)i(\014les.)73 b(F)-8 b(or)43 b(example,)h(if)c(the)i(header)630 4077 y(\014le)33 b(`)p Fq(x.h)p Fy(')h(con)m(tains)g(co)s(de,)h(and)e(w)m(as)i(included) c(in)h(the)j(\014le)e(`)p Fq(a.c)p Fy(',)h(then)g(running)d Fq(gcov)630 4187 y Fy(on)37 b(the)g(\014le)f(`)p Fq(a.c)p Fy(')h(will)d(pro)s(duce)i(an)h(output)g(\014le)f(called)g(`)p Fq(a.c.x.h.gcov)p Fy(')e(instead)j(of)630 4297 y(`)p Fq(x.h.gcov)p Fy('.)i(This)29 b(can)h(b)s(e)g(useful)f(if)g(`)p Fq(x.h)p Fy(')h(is)f(included)f(in)h(m)m(ultiple)f(source)j(\014les.) 150 4544 y Fq(-f)150 4654 y(--function-summaries)630 4763 y Fy(Output)e(summaries)g(for)h(eac)m(h)i(function)d(in)g (addition)f(to)j(the)g(\014le)f(lev)m(el)g(summary)-8 b(.)150 5011 y Fq(-o)30 b Fn(directory)150 5121 y Fq (--object-directory)25 b Fn(directory)630 5230 y Fy(The)h(directory)g (where)g(the)h(ob)5 b(ject)27 b(\014les)f(liv)m(e.)39 b(Gco)m(v)28 b(will)c(searc)m(h)j(for)f(`)p Fq(.bb)p Fy(',)i(`)p Fq(.bbg)p Fy(',)f(and)630 5340 y(`)p Fq(.da)p Fy(')j(\014les)f(in)g(this)h(directory)-8 b(.)p eop %%Page: 269 279 269 278 bop 150 -116 a Fy(Chapter)30 b(8:)41 b Fq(gcov)p Fy(:)e(a)31 b(T)-8 b(est)31 b(Co)m(v)m(erage)i(Program)1730 b(269)275 324 y(When)31 b(using)f Fq(gcov)p Fy(,)h(y)m(ou)h(m)m(ust)f (\014rst)g(compile)f(y)m(our)i(program)f(with)f(t)m(w)m(o)j(sp)s(ecial) d(GCC)h(options:)150 434 y(`)p Fq(-fprofile-arcs)c(-ftest-coverage)p Fy('.)44 b(This)31 b(tells)h(the)h(compiler)e(to)j(generate)g (additional)d(infor-)150 543 y(mation)c(needed)g(b)m(y)h(gco)m(v)h (\(basically)d(a)i(\015o)m(w)f(graph)g(of)h(the)f(program\))h(and)f (also)g(includes)e(additional)150 653 y(co)s(de)h(in)e(the)i(ob)5 b(ject)27 b(\014les)e(for)g(generating)h(the)g(extra)h(pro\014ling)c (information)h(needed)i(b)m(y)f(gco)m(v.)41 b(These)150 763 y(additional)28 b(\014les)i(are)g(placed)g(in)f(the)i(directory)f (where)g(the)g(source)h(co)s(de)f(is)g(lo)s(cated.)275 903 y(Running)37 b(the)k(program)f(will)d(cause)k(pro\014le)e(output)h (to)g(b)s(e)g(generated.)71 b(F)-8 b(or)41 b(eac)m(h)g(source)g(\014le) 150 1012 y(compiled)34 b(with)f(`)p Fq(-fprofile-arcs)p Fy(',)h(an)h(accompan)m(ying)g(`)p Fq(.da)p Fy(')g(\014le)f(will)f(b)s (e)h(placed)h(in)e(the)j(source)150 1122 y(directory)-8 b(.)275 1262 y(Running)30 b Fq(gcov)i Fy(with)g(y)m(our)h(program's)g (source)g(\014le)f(names)h(as)g(argumen)m(ts)g(will)e(no)m(w)i(pro)s (duce)f(a)150 1372 y(listing)k(of)i(the)g(co)s(de)g(along)g(with)f (frequency)g(of)h(execution)g(for)g(eac)m(h)h(line.)62 b(F)-8 b(or)38 b(example,)i(if)d(y)m(our)150 1481 y(program)30 b(is)g(called)f(`)p Fq(tmp.c)p Fy(',)h(this)f(is)h(what)g(y)m(ou)h(see) f(when)g(y)m(ou)h(use)f(the)g(basic)g Fq(gcov)f Fy(facilit)m(y:)390 1616 y Fq($)47 b(gcc)g(-fprofile-arcs)d(-ftest-coverage)g(tmp.c)390 1719 y($)j(a.out)390 1823 y($)g(gcov)g(tmp.c)438 1927 y(87.50\045)f(of)h(8)g(source)g(lines)f(executed)f(in)j(file)e(tmp.c) 390 2031 y(Creating)g(tmp.c.gcov.)275 2171 y Fy(The)29 b(\014le)h(`)p Fq(tmp.c.gcov)p Fy(')e(con)m(tains)j(output)e(from)h Fq(gcov)p Fy(.)40 b(Here)31 b(is)e(a)i(sample:)1154 2305 y Fq(main\(\))1154 2409 y({)915 2513 y(1)286 b(int)47 b(i,)g(total;)915 2721 y(1)286 b(total)46 b(=)i(0;)867 2928 y(11)286 b(for)47 b(\(i)g(=)h(0;)f(i)g(<)h(10;)f(i++\))867 3032 y(10)382 b(total)46 b(+=)h(i;)915 3239 y(1)286 b(if)47 b(\(total)f(!=)i(45\))676 3343 y(######)381 b(printf)46 b(\("Failure\\n"\);)1249 3447 y(else)915 3551 y(1)382 b(printf)46 b(\("Success\\n"\);)915 3655 y(1)191 b(})275 3789 y Fy(When)30 b(y)m(ou)g(use)g(the)h(`)p Fq(-b)p Fy(')f(option,)g(y)m(our)h(output)f(lo)s(oks)g(lik)m(e)f(this:)390 3924 y Fq($)47 b(gcov)g(-b)g(tmp.c)438 4028 y(87.50\045)f(of)h(8)g (source)g(lines)f(executed)f(in)j(file)e(tmp.c)438 4131 y(80.00\045)g(of)h(5)g(branches)f(executed)g(in)h(file)f(tmp.c)438 4235 y(80.00\045)g(of)h(5)g(branches)f(taken)g(at)i(least)e(once)h(in)g (file)f(tmp.c)438 4339 y(50.00\045)g(of)h(2)g(calls)g(executed)e(in)j (file)e(tmp.c)390 4443 y(Creating)g(tmp.c.gcov.)275 4583 y Fy(Here)30 b(is)g(a)h(sample)e(of)i(a)f(resulting)f(`)p Fq(tmp.c.gcov)p Fy(')f(\014le:)1154 4717 y Fq(main\(\))1154 4821 y({)915 4925 y(1)286 b(int)47 b(i,)g(total;)915 5132 y(1)286 b(total)46 b(=)i(0;)867 5340 y(11)286 b(for)47 b(\(i)g(=)h(0;)f(i)g(<)h(10;)f(i++\))p eop %%Page: 270 280 270 279 bop 150 -116 a Fy(270)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(branch)46 b(0)i(taken)e(=)h(91\045) 390 403 y(branch)f(1)i(taken)e(=)h(100\045)390 506 y(branch)f(2)i (taken)e(=)h(100\045)867 610 y(10)382 b(total)46 b(+=)h(i;)915 818 y(1)286 b(if)47 b(\(total)f(!=)i(45\))390 922 y(branch)e(0)i(taken) e(=)h(100\045)676 1025 y(######)381 b(printf)46 b(\("Failure\\n"\);)390 1129 y(call)h(0)g(never)f(executed)390 1233 y(branch)g(1)i(never)e (executed)1249 1337 y(else)915 1440 y(1)382 b(printf)46 b(\("Success\\n"\);)390 1544 y(call)h(0)g(returns)f(=)h(100\045)915 1648 y(1)191 b(})275 1776 y Fy(F)-8 b(or)28 b(eac)m(h)i(basic)d(blo)s (c)m(k,)h(a)h(line)d(is)h(prin)m(ted)g(after)h(the)g(last)g(line)f(of)h (the)g(basic)f(blo)s(c)m(k)h(describing)e(the)150 1885 y(branc)m(h)g(or)g(call)g(that)h(ends)f(the)g(basic)g(blo)s(c)m(k.)39 b(There)26 b(can)h(b)s(e)f(m)m(ultiple)e(branc)m(hes)i(and)g(calls)f (listed)g(for)150 1995 y(a)j(single)f(source)h(line)f(if)g(there)h(are) g(m)m(ultiple)e(basic)h(blo)s(c)m(ks)h(that)h(end)e(on)h(that)g(line.) 39 b(In)27 b(this)g(case,)j(the)150 2105 y(branc)m(hes)e(and)f(calls)h (are)g(eac)m(h)i(giv)m(en)e(a)h(n)m(um)m(b)s(er.)38 b(There)28 b(is)f(no)h(simple)f(w)m(a)m(y)i(to)g(map)f(these)g(branc)m(hes)150 2214 y(and)f(calls)f(bac)m(k)j(to)f(source)f(constructs.)40 b(In)27 b(general,)h(though,)g(the)g(lo)m(w)m(est)g(n)m(um)m(b)s(ered)e (branc)m(h)h(or)h(call)150 2324 y(will)g(corresp)s(ond)h(to)i(the)g (leftmost)f(construct)h(on)f(the)h(source)f(line.)275 2451 y(F)-8 b(or)31 b(a)h(branc)m(h,)f(if)f(it)g(w)m(as)h(executed)h (at)g(least)f(once,)i(then)d(a)i(p)s(ercen)m(tage)g(indicating)d(the)i (n)m(um)m(b)s(er)150 2561 y(of)c(times)f(the)h(branc)m(h)g(w)m(as)g (tak)m(en)h(divided)c(b)m(y)j(the)g(n)m(um)m(b)s(er)e(of)i(times)f(the) h(branc)m(h)g(w)m(as)g(executed)h(will)150 2671 y(b)s(e)i(prin)m(ted.) 39 b(Otherwise,)29 b(the)i(message)g(\\nev)m(er)g(executed")h(is)e (prin)m(ted.)275 2798 y(F)-8 b(or)33 b(a)g(call,)g(if)f(it)h(w)m(as)g (executed)g(at)h(least)f(once,)i(then)d(a)h(p)s(ercen)m(tage)i (indicating)30 b(the)j(n)m(um)m(b)s(er)f(of)150 2908 y(times)24 b(the)g(call)g(returned)f(divided)f(b)m(y)i(the)g(n)m(um)m (b)s(er)f(of)i(times)f(the)g(call)g(w)m(as)h(executed)g(will)c(b)s(e)j (prin)m(ted.)150 3018 y(This)34 b(will)g(usually)g(b)s(e)i(100\045,)j (but)c(ma)m(y)i(b)s(e)f(less)f(for)h(functions)f(call)g Fq(exit)g Fy(or)i Fq(longjmp)p Fy(,)f(and)f(th)m(us)150 3127 y(ma)m(y)c(not)g(return)e(ev)m(ery)i(time)f(they)h(are)f(called.) 275 3255 y(The)43 b(execution)i(coun)m(ts)g(are)f(cum)m(ulativ)m(e.)83 b(If)43 b(the)i(example)f(program)g(w)m(ere)h(executed)g(again)150 3365 y(without)32 b(remo)m(ving)i(the)f(`)p Fq(.da)p Fy(')g(\014le,)g(the)h(coun)m(t)g(for)f(the)h(n)m(um)m(b)s(er)e(of)h (times)g(eac)m(h)i(line)c(in)h(the)i(source)150 3474 y(w)m(as)25 b(executed)h(w)m(ould)d(b)s(e)h(added)g(to)i(the)e(results) g(of)h(the)g(previous)e(run\(s\).)38 b(This)23 b(is)g(p)s(oten)m (tially)h(useful)150 3584 y(in)e(sev)m(eral)i(w)m(a)m(ys.)39 b(F)-8 b(or)25 b(example,)f(it)g(could)e(b)s(e)h(used)g(to)h(accum)m (ulate)g(data)h(o)m(v)m(er)f(a)g(n)m(um)m(b)s(er)e(of)i(program)150 3693 y(runs)29 b(as)i(part)g(of)f(a)i(test)f(v)m(eri\014cation)f (suite,)h(or)g(to)g(pro)m(vide)f(more)h(accurate)h(long-term)f (information)150 3803 y(o)m(v)m(er)h(a)e(large)h(n)m(um)m(b)s(er)e(of)i (program)f(runs.)275 3931 y(The)40 b(data)j(in)d(the)h(`)p Fq(.da)p Fy(')g(\014les)g(is)f(sa)m(v)m(ed)j(immediately)c(b)s(efore)i (the)h(program)f(exits.)74 b(F)-8 b(or)42 b(eac)m(h)150 4040 y(source)30 b(\014le)g(compiled)e(with)h(`)p Fq(-fprofile-arcs)p Fy(',)e(the)k(pro\014ling)c(co)s(de)k(\014rst)e(attempts)i(to)g(read)f (in)f(an)150 4150 y(existing)i(`)p Fq(.da)p Fy(')h(\014le;)g(if)f(the)h (\014le)f(do)s(esn't)g(matc)m(h)i(the)f(executable)h(\(di\013ering)d(n) m(um)m(b)s(er)h(of)h(basic)f(blo)s(c)m(k)150 4259 y(coun)m(ts\))f(it)f (will)d(ignore)j(the)g(con)m(ten)m(ts)i(of)e(the)g(\014le.)40 b(It)29 b(then)g(adds)f(in)g(the)h(new)g(execution)g(coun)m(ts)h(and) 150 4369 y(\014nally)e(writes)i(the)g(data)h(to)g(the)g(\014le.)150 4606 y Fs(8.3)68 b(Using)46 b Ft(gcov)d Fs(with)i(GCC)g(Optimization) 275 4792 y Fy(If)26 b(y)m(ou)h(plan)e(to)j(use)e Fq(gcov)g Fy(to)i(help)d(optimize)h(y)m(our)h(co)s(de,)h(y)m(ou)f(m)m(ust)g (\014rst)f(compile)f(y)m(our)i(program)150 4902 y(with)f(t)m(w)m(o)j (sp)s(ecial)d(GCC)i(options:)38 b(`)p Fq(-fprofile-arcs)27 b(-ftest-coverage)p Fy('.)36 b(Aside)26 b(from)i(that,)h(y)m(ou)150 5011 y(can)39 b(use)f(an)m(y)h(other)g(GCC)f(options;)43 b(but)38 b(if)f(y)m(ou)i(w)m(an)m(t)h(to)f(pro)m(v)m(e)h(that)f(ev)m (ery)g(single)f(line)f(in)g(y)m(our)150 5121 y(program)g(w)m(as)h (executed,)i(y)m(ou)e(should)e(not)h(compile)g(with)f(optimization)g (at)j(the)e(same)h(time.)62 b(On)150 5230 y(some)28 b(mac)m(hines)e (the)i(optimizer)e(can)h(eliminate)f(some)i(simple)d(co)s(de)i(lines)e (b)m(y)i(com)m(bining)f(them)h(with)150 5340 y(other)k(lines.)39 b(F)-8 b(or)31 b(example,)f(co)s(de)h(lik)m(e)e(this:)p eop %%Page: 271 281 271 280 bop 150 -116 a Fy(Chapter)30 b(8:)41 b Fq(gcov)p Fy(:)e(a)31 b(T)-8 b(est)31 b(Co)m(v)m(erage)i(Program)1730 b(271)390 299 y Fq(if)47 b(\(a)g(!=)h(b\))485 403 y(c)g(=)f(1;)390 506 y(else)485 610 y(c)h(=)f(0;)150 744 y Fy(can)35 b(b)s(e)f(compiled) g(in)m(to)g(one)h(instruction)e(on)i(some)g(mac)m(hines.)54 b(In)34 b(this)g(case,)j(there)e(is)f(no)g(w)m(a)m(y)i(for)150 853 y Fq(gcov)30 b Fy(to)i(calculate)g(separate)g(execution)f(coun)m (ts)h(for)f(eac)m(h)i(line)c(b)s(ecause)j(there)f(isn't)f(separate)j (co)s(de)150 963 y(for)41 b(eac)m(h)i(line.)73 b(Hence)42 b(the)g Fq(gcov)e Fy(output)h(lo)s(oks)g(lik)m(e)g(this)g(if)f(y)m(ou)i (compiled)e(the)i(program)f(with)150 1072 y(optimization:)676 1200 y Fq(100)95 b(if)47 b(\(a)g(!=)h(b\))676 1304 y(100)190 b(c)48 b(=)f(1;)676 1407 y(100)95 b(else)676 1511 y(100)190 b(c)48 b(=)f(0;)275 1644 y Fy(The)22 b(output)h(sho)m(ws)g(that)g(this) f(blo)s(c)m(k)h(of)g(co)s(de,)i(com)m(bined)d(b)m(y)h(optimization,)h (executed)g(100)g(times.)150 1754 y(In)34 b(one)g(sense)g(this)g (result)f(is)g(correct,)k(b)s(ecause)d(there)h(w)m(as)f(only)g(one)g (instruction)e(represen)m(ting)i(all)150 1864 y(four)e(of)h(these)g (lines.)46 b(Ho)m(w)m(ev)m(er,)36 b(the)d(output)f(do)s(es)g(not)h (indicate)f(ho)m(w)h(man)m(y)g(times)f(the)h(result)f(w)m(as)150 1973 y(0)f(and)f(ho)m(w)g(man)m(y)g(times)g(the)h(result)e(w)m(as)i(1.) 150 2227 y Fs(8.4)68 b(Brief)45 b(description)h(of)f Ft(gcov)e Fs(data)i(\014les)275 2418 y Fq(gcov)33 b Fy(uses)h(three)h (\014les)e(for)h(doing)g(pro\014ling.)51 b(The)34 b(names)g(of)h(these) g(\014les)e(are)i(deriv)m(ed)f(from)g(the)150 2528 y(original)e Fr(sour)-5 b(c)g(e)42 b Fy(\014le)33 b(b)m(y)h(substituting)e(the)i (\014le)f(su\016x)g(with)f(either)i(`)p Fq(.bb)p Fy(',)h(`)p Fq(.bbg)p Fy(',)f(or)g(`)p Fq(.da)p Fy('.)51 b(All)33 b(of)150 2638 y(these)f(\014les)f(are)h(placed)g(in)e(the)i(same)g (directory)g(as)g(the)g(source)g(\014le,)f(and)g(con)m(tain)i(data)f (stored)g(in)f(a)150 2747 y(platform-indep)s(enden)m(t)d(metho)s(d.)275 2881 y(The)i(`)p Fq(.bb)p Fy(')g(and)h(`)p Fq(.bbg)p Fy(')f(\014les)g(are)h(generated)h(when)e(the)h(source)g(\014le)f(is)f (compiled)h(with)f(the)i(GCC)150 2990 y(`)p Fq(-ftest-coverage)p Fy(')26 b(option.)40 b(The)29 b(`)p Fq(.bb)p Fy(')g(\014le)g(con)m (tains)g(a)h(list)e(of)i(source)g(\014les)e(\(including)f(headers\),) 150 3100 y(functions)21 b(within)e(those)k(\014les,)g(and)e(line)g(n)m (um)m(b)s(ers)f(corresp)s(onding)g(to)j(eac)m(h)h(basic)d(blo)s(c)m(k)h (in)e(the)j(source)150 3209 y(\014le.)275 3343 y(The)31 b(`)p Fq(.bb)p Fy(')g(\014le)g(format)h(consists)f(of)h(sev)m(eral)g (lists)e(of)i(4-b)m(yte)h(in)m(tegers)f(whic)m(h)f(corresp)s(ond)f(to)j (the)150 3452 y(line)i(n)m(um)m(b)s(ers)h(of)i(eac)m(h)g(basic)e(blo)s (c)m(k)h(in)f(the)h(\014le.)60 b(Eac)m(h)38 b(list)e(is)g(terminated)h (b)m(y)g(a)g(line)f(n)m(um)m(b)s(er)g(of)150 3562 y(0.)44 b(A)31 b(line)f(n)m(um)m(b)s(er)g(of)i Fx(\000)p Fy(1)f(is)f(used)h(to) h(designate)f(that)h(the)g(source)f(\014le)g(name)g(\(padded)g(to)h(a)g (4-b)m(yte)150 3671 y(b)s(oundary)27 b(and)i(follo)m(w)m(ed)f(b)m(y)i (another)f Fx(\000)p Fy(1\))g(follo)m(ws.)40 b(In)28 b(addition,)g(a)i(line)d(n)m(um)m(b)s(er)h(of)h Fx(\000)p Fy(2)h(is)e(used)g(to)150 3781 y(designate)33 b(that)g(the)g(name)g(of) g(a)g(function)e(\(also)i(padded)f(to)i(a)f(4-b)m(yte)h(b)s(oundary)d (and)h(follo)m(w)m(ed)g(b)m(y)150 3891 y(a)f Fx(\000)p Fy(2\))g(follo)m(ws.)275 4024 y(The)41 b(`)p Fq(.bbg)p Fy(')g(\014le)g(is)f(used)h(to)i(reconstruct)f(the)g(program)f(\015o)m (w)h(graph)f(for)g(the)h(source)g(\014le.)74 b(It)150 4134 y(con)m(tains)44 b(a)h(list)e(of)h(the)h(program)f(\015o)m(w)g (arcs)g(\(p)s(ossible)e(branc)m(hes)i(tak)m(en)i(from)d(one)i(basic)e (blo)s(c)m(k)150 4243 y(to)e(another\))g(for)f(eac)m(h)i(function)d (whic)m(h,)j(in)d(com)m(bination)h(with)f(the)h(`)p Fq(.bb)p Fy(')g(\014le,)i(enables)e(gco)m(v)i(to)150 4353 y(reconstruct)31 b(the)f(program)g(\015o)m(w.)275 4486 y(In)f(the)i(`)p Fq(.bbg)p Fy(')e(\014le,)h(the)h(format)f(is:)772 4614 y Fq(number)46 b(of)h(basic)f(blocks)h(for)f(function)g(#0)h(\(4-byte)f (number\))772 4717 y(total)g(number)g(of)h(arcs)g(for)g(function)f(#0)h (\(4-byte)f(number\))772 4821 y(count)g(of)h(arcs)g(in)g(basic)g(block) f(#0)h(\(4-byte)f(number\))772 4925 y(destination)f(basic)h(block)g(of) h(arc)g(#0)h(\(4-byte)d(number\))772 5029 y(flag)h(bits)h(\(4-byte)f (number\))772 5132 y(destination)f(basic)h(block)g(of)h(arc)g(#1)h (\(4-byte)d(number\))772 5236 y(flag)h(bits)h(\(4-byte)f(number\))772 5340 y(...)p eop %%Page: 272 282 272 281 bop 150 -116 a Fy(272)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))772 299 y Fq(destination)45 b(basic)h(block)g(of) h(arc)g(#N)h(\(4-byte)d(number\))772 403 y(flag)h(bits)h(\(4-byte)f (number\))772 506 y(count)g(of)h(arcs)g(in)g(basic)g(block)f(#1)h (\(4-byte)f(number\))772 610 y(destination)f(basic)h(block)g(of)h(arc)g (#0)h(\(4-byte)d(number\))772 714 y(flag)h(bits)h(\(4-byte)f(number\)) 772 818 y(...)275 952 y Fy(A)27 b Fx(\000)p Fy(1)g(\(stored)g(as)g(a)g (4-b)m(yte)i(n)m(um)m(b)s(er\))d(is)g(used)g(to)i(separate)f(eac)m(h)i (function's)c(list)h(of)h(basic)f(blo)s(c)m(ks,)150 1062 y(and)k(to)h(v)m(erify)f(that)h(the)f(\014le)g(has)g(b)s(een)f(read)i (correctly)-8 b(.)275 1196 y(The)33 b(`)p Fq(.da)p Fy(')h(\014le)f(is)g (generated)i(when)e(a)i(program)f(con)m(taining)f(ob)5 b(ject)35 b(\014les)e(built)f(with)h(the)h(GCC)150 1306 y(`)p Fq(-fprofile-arcs)p Fy(')f(option)j(is)f(executed.)59 b(A)37 b(separate)g(`)p Fq(.da)p Fy(')f(\014le)f(is)h(created)h(for)f (eac)m(h)h(source)g(\014le)150 1416 y(compiled)20 b(with)h(this)f (option,)k(and)d(the)h(name)g(of)f(the)h(`)p Fq(.da)p Fy(')g(\014le)f(is)g(stored)g(as)h(an)g(absolute)g(pathname)f(in)150 1525 y(the)j(resulting)d(ob)5 b(ject)24 b(\014le.)38 b(This)21 b(path)i(name)h(is)e(deriv)m(ed)g(from)h(the)h(source)f (\014le)g(name)g(b)m(y)g(substituting)150 1635 y(a)31 b(`)p Fq(.da)p Fy(')f(su\016x.)275 1769 y(The)k(format)h(of)g(the)g(`)p Fq(.da)p Fy(')f(\014le)g(is)g(fairly)f(simple.)52 b(The)34 b(\014rst)g(8-b)m(yte)i(n)m(um)m(b)s(er)e(is)f(the)i(n)m(um)m(b)s(er)f (of)150 1879 y(coun)m(ts)22 b(in)e(the)h(\014le,)h(follo)m(w)m(ed)f(b)m (y)g(the)h(coun)m(ts)f(\(stored)h(as)f(8-b)m(yte)i(n)m(um)m(b)s(ers\).) 37 b(Eac)m(h)21 b(coun)m(t)h(corresp)s(onds)150 1988 y(to)36 b(the)g(n)m(um)m(b)s(er)e(of)i(times)f(eac)m(h)h(arc)g(in)f (the)g(program)h(is)e(executed.)57 b(The)35 b(coun)m(ts)h(are)g(cum)m (ulativ)m(e;)150 2098 y(eac)m(h)c(time)e(the)g(program)g(is)g (executed,)h(it)f(attempts)h(to)g(com)m(bine)g(the)f(existing)f(`)p Fq(.da)p Fy(')h(\014les)g(with)f(the)150 2208 y(new)38 b(coun)m(ts)h(for)f(this)g(in)m(v)m(o)s(cation)g(of)h(the)f(program.)65 b(It)39 b(ignores)f(the)g(con)m(ten)m(ts)i(of)f(an)m(y)g(`)p Fq(.da)p Fy(')f(\014les)150 2317 y(whose)f(n)m(um)m(b)s(er)f(of)h(arcs) g(do)s(esn't)g(corresp)s(ond)f(to)i(the)f(curren)m(t)g(program,)i(and)d (merely)g(o)m(v)m(erwrites)150 2427 y(them)30 b(instead.)275 2561 y(All)24 b(three)i(of)g(these)g(\014les)f(use)g(the)h(functions)f (in)f(`)p Fq(gcov-io.h)p Fy(')g(to)j(store)f(in)m(tegers;)i(the)e (functions)e(in)150 2671 y(this)i(header)i(pro)m(vide)e(a)i(mac)m (hine-indep)s(enden)m(t)d(mec)m(hanism)i(for)g(storing)g(and)g (retrieving)f(data)i(from)150 2780 y(a)j(stream.)p eop %%Page: 273 283 273 282 bop 150 -116 a Fy(Chapter)30 b(9:)41 b(Kno)m(wn)30 b(Causes)g(of)g(T)-8 b(rouble)29 b(with)g(GCC)1535 b(273)150 299 y Fv(9)80 b(Kno)l(wn)53 b(Causes)f(of)i(T)-13 b(rouble)53 b(with)h(GCC)275 601 y Fy(This)29 b(section)i(describ)s(es)e(kno)m(wn)h (problems)f(that)i(a\013ect)i(users)d(of)h(GCC.)41 b(Most)32 b(of)f(these)g(are)h(not)150 711 y(GCC)h(bugs)f(p)s(er)g(se|if)g(they)h (w)m(ere,)i(w)m(e)e(w)m(ould)f(\014x)h(them.)48 b(But)34 b(the)f(result)f(for)h(a)g(user)g(ma)m(y)g(b)s(e)g(lik)m(e)150 820 y(the)e(result)e(of)h(a)h(bug.)275 977 y(Some)25 b(of)g(these)g(problems)f(are)h(due)g(to)h(bugs)e(in)g(other)h(soft)m (w)m(are,)j(some)d(are)h(missing)d(features)i(that)150 1087 y(are)k(to)s(o)h(m)m(uc)m(h)e(w)m(ork)h(to)h(add,)e(and)g(some)h (are)h(places)e(where)g(p)s(eople's)g(opinions)e(di\013er)i(as)h(to)g (what)g(is)150 1197 y(b)s(est.)150 1511 y Fs(9.1)68 b(Actual)45 b(Bugs)f(W)-11 b(e)45 b(Ha)l(v)l(en't)i(Fixed)e(Y)-11 b(et)225 1678 y Fx(\017)60 b Fy(The)29 b Fq(fixincludes)e Fy(script)i(in)m(teracts)h(badly)f(with)g(automoun)m(ters;)h(if)f(the)h (directory)g(of)g(system)330 1788 y(header)h(\014les)f(is)h(automoun)m (ted,)h(it)f(tends)g(to)h(b)s(e)e(unmoun)m(ted)h(while)e Fq(fixincludes)f Fy(is)i(running.)330 1898 y(This)35 b(w)m(ould)g(seem)i(to)g(b)s(e)f(a)h(bug)f(in)f(the)i(automoun)m(ter.) 60 b(W)-8 b(e)37 b(don't)g(kno)m(w)f(an)m(y)h(go)s(o)s(d)g(w)m(a)m(y)g (to)330 2007 y(w)m(ork)30 b(around)g(it.)225 2153 y Fx(\017)60 b Fy(The)22 b Fq(fixproto)f Fy(script)g(will)g(sometimes)h(add)h (protot)m(yp)s(es)g(for)f(the)h Fq(sigsetjmp)e Fy(and)h Fq(siglongjmp)330 2263 y Fy(functions)27 b(that)i(reference)g(the)f Fq(jmp_buf)f Fy(t)m(yp)s(e)h(b)s(efore)g(that)h(t)m(yp)s(e)g(is)e (de\014ned.)39 b(T)-8 b(o)29 b(w)m(ork)f(around)330 2372 y(this,)i(edit)f(the)i(o\013ending)e(\014le)h(and)g(place)g(the)g(t)m (yp)s(edef)h(in)e(fron)m(t)h(of)h(the)f(protot)m(yp)s(es.)225 2518 y Fx(\017)60 b Fy(When)41 b(`)p Fq(-pedantic-errors)p Fy(')d(is)j(sp)s(eci\014ed,)h(GCC)g(will)c(incorrectly)j(giv)m(e)h(an)g (error)f(message)330 2628 y(when)29 b(a)i(function)e(name)i(is)e(sp)s (eci\014ed)g(in)g(an)h(expression)f(in)m(v)m(olving)g(the)i(comma)g(op) s(erator.)150 2942 y Fs(9.2)68 b(Cross-Compiler)46 b(Problems)275 3157 y Fy(Y)-8 b(ou)44 b(ma)m(y)h(run)e(in)m(to)h(problems)f(with)g (cross)i(compilation)d(on)j(certain)f(mac)m(hines,)j(for)e(sev)m(eral) 150 3267 y(reasons.)225 3424 y Fx(\017)60 b Fy(Cross)32 b(compilation)f(can)i(run)e(in)m(to)i(trouble)f(for)g(certain)g(mac)m (hines)h(b)s(ecause)f(some)h(target)h(ma-)330 3533 y(c)m(hines')29 b(assem)m(blers)f(require)g(\015oating)h(p)s(oin)m(t)f(n)m(um)m(b)s (ers)g(to)i(b)s(e)e(written)g(as)i Fr(inte)-5 b(ger)39 b Fy(constan)m(ts)30 b(in)330 3643 y(certain)g(con)m(texts.)330 3789 y(The)35 b(compiler)e(writes)i(these)g(in)m(teger)h(constan)m(ts)g (b)m(y)g(examining)d(the)j(\015oating)f(p)s(oin)m(t)f(v)-5 b(alue)35 b(as)330 3898 y(an)27 b(in)m(teger)g(and)f(prin)m(ting)e (that)k(in)m(teger,)g(b)s(ecause)f(this)e(is)h(simple)f(to)i(write)f (and)g(indep)s(enden)m(t)f(of)330 4008 y(the)30 b(details)f(of)h(the)g (\015oating)g(p)s(oin)m(t)f(represen)m(tation.)41 b(But)30 b(this)f(do)s(es)g(not)h(w)m(ork)g(if)f(the)h(compiler)330 4118 y(is)h(running)f(on)i(a)g(di\013eren)m(t)g(mac)m(hine)g(with)f(an) h(incompatible)e(\015oating)j(p)s(oin)m(t)e(format,)i(or)f(ev)m(en)330 4227 y(a)f(di\013eren)m(t)f(b)m(yte-ordering.)330 4373 y(In)25 b(addition,)h(correct)h(constan)m(t)h(folding)c(of)i (\015oating)g(p)s(oin)m(t)f(v)-5 b(alues)26 b(requires)f(represen)m (ting)g(them)330 4483 y(in)35 b(the)h(target)i(mac)m(hine's)e(format.) 59 b(\(The)36 b(C)g(standard)g(do)s(es)g(not)g(quite)g(require)f(this,) i(but)e(in)330 4592 y(practice)c(it)f(is)f(the)i(only)e(w)m(a)m(y)i(to) h(win.\))330 4738 y(It)27 b(is)e(no)m(w)h(p)s(ossible)e(to)j(o)m(v)m (ercome)i(these)e(problems)e(b)m(y)h(de\014ning)e(macros)j(suc)m(h)f (as)h Fq(REAL_VALUE_)330 4848 y(TYPE)p Fy(.)73 b(But)42 b(doing)f(so)h(is)e(a)i(substan)m(tial)f(amoun)m(t)h(of)g(w)m(ork)f (for)h(eac)m(h)g(target)i(mac)m(hine.)74 b(See)330 4957 y(section)34 b(\\Cross)f(Compilation)f(and)h(Floating)h(P)m(oin)m(t")g (in)e Fn(GNU)j(Compiler)c(Collection)i(\(GCC\))330 5067 y(In)m(ternals)t Fy(.)225 5213 y Fx(\017)60 b Fy(A)m(t)42 b(presen)m(t,)h(the)e(program)g(`)p Fq(mips-tfile)p Fy(')d(whic)m(h)h (adds)h(debug)g(supp)s(ort)f(to)j(ob)5 b(ject)41 b(\014les)f(on)330 5322 y(MIPS)30 b(systems)g(do)s(es)g(not)h(w)m(ork)f(in)f(a)i(cross)g (compile)e(en)m(vironmen)m(t.)p eop %%Page: 274 284 274 283 bop 150 -116 a Fy(274)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fs(9.3)68 b(In)l(terop)t(eration)275 496 y Fy(This)24 b(section)i(lists)f(v)-5 b(arious)25 b(di\016culties)f(encoun)m(tered)j(in)e(using)f(GCC)i(together)i(with)d (other)h(com-)150 605 y(pilers)i(or)j(with)e(the)h(assem)m(blers,)g (link)m(ers,)f(libraries)f(and)h(debuggers)h(on)h(certain)f(systems.) 225 744 y Fx(\017)60 b Fy(G)p Fq(++)29 b Fy(do)s(es)g(not)g(do)g(name)g (mangling)f(in)g(the)h(same)h(w)m(a)m(y)g(as)f(other)h(C)p Fq(++)e Fy(compilers.)39 b(This)27 b(means)330 854 y(that)k(ob)5 b(ject)31 b(\014les)f(compiled)e(with)h(one)i(compiler)e(cannot)i(b)s (e)f(used)f(with)g(another.)330 990 y(This)i(e\013ect)j(is)e(in)m(ten)m (tional,)h(to)h(protect)f(y)m(ou)h(from)e(more)h(subtle)e(problems.)47 b(Compilers)30 b(di\013er)330 1100 y(as)i(to)g(man)m(y)f(in)m(ternal)f (details)h(of)g(C)p Fq(++)f Fy(implemen)m(tation,)h(including:)39 b(ho)m(w)32 b(class)f(instances)g(are)330 1210 y(laid)h(out,)k(ho)m(w)e (m)m(ultiple)d(inheritance)i(is)g(implemen)m(ted,)g(and)h(ho)m(w)g (virtual)e(function)g(calls)i(are)330 1319 y(handled.)k(If)28 b(the)g(name)g(enco)s(ding)f(w)m(ere)i(made)f(the)h(same,)g(y)m(our)f (programs)g(w)m(ould)f(link)f(against)330 1429 y(libraries)d(pro)m (vided)h(from)h(other)g(compilers|but)e(the)j(programs)f(w)m(ould)f (then)h(crash)h(when)e(run.)330 1538 y(Incompatible)29 b(libraries)e(are)k(then)f(detected)i(at)f(link)d(time,)j(rather)f (than)g(at)h(run)e(time.)225 1675 y Fx(\017)60 b Fy(Older)30 b(GDB)j(v)m(ersions)f(sometimes)g(fail)e(to)j(read)f(the)g(output)f(of) h(GCC)g(v)m(ersion)f(2.)46 b(If)31 b(y)m(ou)i(ha)m(v)m(e)330 1784 y(trouble,)d(get)h(GDB)h(v)m(ersion)d(4.4)j(or)e(later.)225 1921 y Fx(\017)60 b Fy(DBX)22 b(rejects)h(some)f(\014les)e(pro)s(duced) g(b)m(y)h(GCC,)h(though)f(it)g(accepts)i(similar)18 b(constructs)k(in)e (output)330 2031 y(from)i(PCC.)38 b(Un)m(til)21 b(someone)j(can)f (supply)d(a)j(coheren)m(t)h(description)d(of)i(what)f(is)g(v)-5 b(alid)21 b(DBX)j(input)330 2140 y(and)j(what)g(is)f(not,)j(there)e(is) f(nothing)g(I)i(can)f(do)g(ab)s(out)g(these)h(problems.)38 b(Y)-8 b(ou)28 b(are)f(on)g(y)m(our)h(o)m(wn.)225 2277 y Fx(\017)60 b Fy(The)35 b(GNU)g(assem)m(bler)g(\(GAS\))h(do)s(es)e (not)i(supp)s(ort)d(PIC.)54 b(T)-8 b(o)36 b(generate)g(PIC)f(co)s(de,)i (y)m(ou)e(m)m(ust)330 2387 y(use)30 b(some)h(other)f(assem)m(bler,)h (suc)m(h)f(as)g(`)p Fq(/bin/as)p Fy('.)225 2523 y Fx(\017)60 b Fy(On)28 b(some)i(BSD)f(systems,)h(including)c(some)j(v)m(ersions)g (of)g(Ultrix,)f(use)h(of)g(pro\014ling)e(causes)i(static)330 2633 y(v)-5 b(ariable)29 b(destructors)h(\(curren)m(tly)g(used)g(only)f (in)g(C)p Fq(++)p Fy(\))h(not)h(to)g(b)s(e)e(run.)225 2769 y Fx(\017)60 b Fy(On)24 b(some)i(SGI)f(systems,)h(when)e(y)m(ou)i (use)f(`)p Fq(-lgl_s)p Fy(')f(as)h(an)g(option,)h(it)f(gets)h (translated)f(magically)330 2879 y(to)30 b(`)p Fq(-lgl_s)f(-lX11_s)f (-lc_s)p Fy('.)40 b(Naturally)-8 b(,)29 b(this)f(do)s(es)h(not)h(happ)s (en)d(when)i(y)m(ou)g(use)g(GCC.)40 b(Y)-8 b(ou)330 2989 y(m)m(ust)30 b(sp)s(ecify)f(all)h(three)g(options)g(explicitly)-8 b(.)225 3125 y Fx(\017)60 b Fy(On)22 b(a)h(Sparc,)h(GCC)f(aligns)e(all) h(v)-5 b(alues)23 b(of)g(t)m(yp)s(e)g Fq(double)e Fy(on)i(an)f(8-b)m (yte)j(b)s(oundary)-8 b(,)23 b(and)f(it)h(exp)s(ects)330 3235 y(ev)m(ery)35 b Fq(double)e Fy(to)i(b)s(e)f(so)h(aligned.)52 b(The)34 b(Sun)f(compiler)g(usually)f(giv)m(es)j Fq(double)e Fy(v)-5 b(alues)34 b(8-b)m(yte)330 3344 y(alignmen)m(t,)26 b(with)e(one)i(exception:)38 b(function)24 b(argumen)m(ts)i(of)f(t)m (yp)s(e)h Fq(double)e Fy(ma)m(y)i(not)f(b)s(e)g(aligned.)330 3481 y(As)41 b(a)g(result,)i(if)d(a)h(function)f(compiled)f(with)h(Sun) g(CC)g(tak)m(es)i(the)f(address)f(of)i(an)e(argumen)m(t)330 3591 y(of)34 b(t)m(yp)s(e)g Fq(double)e Fy(and)h(passes)h(this)e(p)s (oin)m(ter)h(of)h(t)m(yp)s(e)g Fq(double)29 b(*)k Fy(to)h(a)h(function) d(compiled)g(with)330 3700 y(GCC,)e(dereferencing)g(the)g(p)s(oin)m (ter)g(ma)m(y)h(cause)g(a)f(fatal)h(signal.)330 3837 y(One)g(w)m(a)m(y)h(to)g(solv)m(e)g(this)e(problem)g(is)g(to)i(compile) e(y)m(our)i(en)m(tire)f(program)g(with)f(GCC.)43 b(Another)330 3946 y(solution)27 b(is)h(to)i(mo)s(dify)d(the)i(function)e(that)j(is)d (compiled)h(with)f(Sun)g(CC)h(to)i(cop)m(y)f(the)g(argumen)m(t)330 4056 y(in)m(to)h(a)g(lo)s(cal)e(v)-5 b(ariable;)29 b(lo)s(cal)g(v)-5 b(ariables)28 b(are)i(alw)m(a)m(ys)g(prop)s(erly)e(aligned.)39 b(A)30 b(third)d(solution)i(is)f(to)330 4166 y(mo)s(dify)33 b(the)h(function)f(that)i(uses)f(the)h(p)s(oin)m(ter)e(to)i (dereference)g(it)f(via)g(the)g(follo)m(wing)f(function)330 4275 y Fq(access_double)27 b Fy(instead)i(of)i(directly)e(with)g(`)p Fq(*)p Fy(':)570 4406 y Fq(inline)46 b(double)570 4510 y(access_double)e(\(double)i(*unaligned_ptr\))570 4614 y({)665 4717 y(union)h(d2i)g({)g(double)f(d;)h(int)g(i[2];)g(};)665 4925 y(union)g(d2i)g(*p)g(=)g(\(union)f(d2i)h(*\))h(unaligned_ptr;)665 5029 y(union)f(d2i)g(u;)665 5236 y(u.i[0])g(=)g(p->i[0];)665 5340 y(u.i[1])g(=)g(p->i[1];)p eop %%Page: 275 285 275 284 bop 150 -116 a Fy(Chapter)30 b(9:)41 b(Kno)m(wn)30 b(Causes)g(of)g(T)-8 b(rouble)29 b(with)g(GCC)1535 b(275)665 403 y Fq(return)47 b(u.d;)570 506 y(})330 643 y Fy(Storing)29 b(in)m(to)i(the)f(p)s(oin)m(ter)g(can)g(b)s(e)g(done)g(lik)m(ewise)f (with)g(the)i(same)g(union.)225 779 y Fx(\017)60 b Fy(On)39 b(Solaris,)h(the)g Fq(malloc)d Fy(function)h(in)h(the)g(`)p Fq(libmalloc.a)p Fy(')e(library)g(ma)m(y)j(allo)s(cate)g(memory)330 888 y(that)32 b(is)f(only)g(4)h(b)m(yte)h(aligned.)43 b(Since)31 b(GCC)g(on)h(the)g(Sparc)f(assumes)g(that)i(doubles)d(are)i (8)g(b)m(yte)330 998 y(aligned,)g(this)f(ma)m(y)i(result)e(in)f(a)j (fatal)f(signal)f(if)g(doubles)g(are)i(stored)f(in)f(memory)h(allo)s (cated)g(b)m(y)330 1108 y(the)f(`)p Fq(libmalloc.a)p Fy(')c(library)-8 b(.)330 1244 y(The)32 b(solution)e(is)i(to)h(not)f (use)g(the)g(`)p Fq(libmalloc.a)p Fy(')e(library)-8 b(.)44 b(Use)33 b(instead)e Fq(malloc)f Fy(and)i(related)330 1353 y(functions)d(from)h(`)p Fq(libc.a)p Fy(';)f(they)i(do)f(not)h(ha) m(v)m(e)g(this)f(problem.)225 1490 y Fx(\017)60 b Fy(Sun)22 b(forgot)j(to)f(include)e(a)i(static)g(v)m(ersion)f(of)h(`)p Fq(libdl.a)p Fy(')e(with)g(some)i(v)m(ersions)f(of)h(SunOS)d(\(mainly) 330 1599 y(4.1\).)42 b(This)27 b(results)h(in)g(unde\014ned)f(sym)m(b)s (ols)g(when)h(linking)f(static)i(binaries)e(\(that)j(is,)f(if)f(y)m(ou) h(use)330 1709 y(`)p Fq(-static)p Fy('\).)40 b(If)30 b(y)m(ou)h(see)g(unde\014ned)d(sym)m(b)s(ols)h Fq(_dlclose)p Fy(,)f Fq(_dlsym)h Fy(or)i Fq(_dlopen)d Fy(when)i(linking,)330 1818 y(compile)d(and)g(link)e(against)j(the)g(\014le)e(`)p Fq(mit/util/misc/dlsym.c)p Fy(')d(from)k(the)h(MIT)f(v)m(ersion)g(of)h (X)330 1928 y(windo)m(ws.)225 2064 y Fx(\017)60 b Fy(The)28 b(128-bit)i(long)e(double)f(format)j(that)f(the)g(Sparc)f(p)s(ort)g (supp)s(orts)f(curren)m(tly)h(w)m(orks)h(b)m(y)f(using)330 2174 y(the)42 b(arc)m(hitecturally)f(de\014ned)g(quad-w)m(ord)g (\015oating)h(p)s(oin)m(t)f(instructions.)74 b(Since)41 b(there)h(is)f(no)330 2283 y(hardw)m(are)g(that)h(supp)s(orts)d(these)j (instructions)d(they)j(m)m(ust)f(b)s(e)f(em)m(ulated)i(b)m(y)f(the)g (op)s(erating)330 2393 y(system.)54 b(Long)35 b(doubles)e(do)i(not)g(w) m(ork)g(in)e(Sun)g(OS)h(v)m(ersions)g(4.0.3)j(and)d(earlier,)h(b)s (ecause)g(the)330 2503 y(k)m(ernel)c(em)m(ulator)h(uses)f(an)g (obsolete)i(and)e(incompatible)e(format.)45 b(Long)32 b(doubles)e(do)h(not)h(w)m(ork)330 2612 y(in)g(Sun)f(OS)i(v)m(ersion)f (4.1.1)j(due)e(to)h(a)f(problem)f(in)g(a)h(Sun)f(library)-8 b(.)47 b(Long)33 b(doubles)f(do)h(w)m(ork)g(on)330 2722 y(Sun)i(OS)g(v)m(ersions)h(4.1.2)i(and)e(higher,)h(but)f(GCC)g(do)s(es) g(not)g(enable)g(them)g(b)m(y)h(default.)58 b(Long)330 2831 y(doubles)29 b(app)s(ear)h(to)h(w)m(ork)f(in)f(Sun)g(OS)h(5.x)h (\(Solaris)e(2.x\).)225 2968 y Fx(\017)60 b Fy(On)37 b(HP-UX)h(v)m(ersion)e(9.01)j(on)f(the)f(HP)h(P)-8 b(A,)38 b(the)f(HP)h(compiler)e Fq(cc)g Fy(do)s(es)h(not)h(compile)e(GCC)330 3077 y(correctly)-8 b(.)39 b(W)-8 b(e)23 b(do)g(not)f(y)m(et)i(kno)m(w) e(wh)m(y)-8 b(.)38 b(Ho)m(w)m(ev)m(er,)26 b(GCC)c(compiled)f(on)h (earlier)g(HP-UX)h(v)m(ersions)330 3187 y(w)m(orks)30 b(prop)s(erly)e(on)j(HP-UX)g(9.01)h(and)d(can)i(compile)e(itself)h (prop)s(erly)e(on)i(9.01.)225 3323 y Fx(\017)60 b Fy(On)40 b(the)i(HP)f(P)-8 b(A)41 b(mac)m(hine,)j(ADB)e(sometimes)f(fails)f(to)i (w)m(ork)f(on)g(functions)f(compiled)f(with)330 3433 y(GCC.)g(Sp)s(eci\014cally)-8 b(,)26 b(it)h(fails)f(to)i(w)m(ork)f(on)g (functions)f(that)i(use)f Fq(alloca)f Fy(or)h(v)-5 b(ariable-size)26 b(arra)m(ys.)330 3542 y(This)31 b(is)i(b)s(ecause)g(GCC)g(do)s(esn't)g (generate)i(HP-UX)f(un)m(wind)c(descriptors)i(for)h(suc)m(h)g (functions.)330 3652 y(It)d(ma)m(y)h(ev)m(en)h(b)s(e)d(imp)s(ossible)e (to)k(generate)h(them.)225 3788 y Fx(\017)60 b Fy(Debugging)30 b(\(`)p Fq(-g)p Fy('\))h(is)f(not)g(supp)s(orted)f(on)h(the)g(HP)h(P)-8 b(A)30 b(mac)m(hine,)h(unless)d(y)m(ou)j(use)f(the)h(prelimi-)330 3898 y(nary)f(GNU)h(to)s(ols.)225 4034 y Fx(\017)60 b Fy(T)-8 b(aking)25 b(the)g(address)f(of)h(a)g(lab)s(el)f(ma)m(y)h (generate)i(errors)d(from)g(the)i(HP-UX)f(P)-8 b(A)26 b(assem)m(bler.)38 b(GAS)330 4143 y(for)30 b(the)h(P)-8 b(A)30 b(do)s(es)h(not)f(ha)m(v)m(e)i(this)d(problem.)225 4280 y Fx(\017)60 b Fy(Using)25 b(\015oating)g(p)s(oin)m(t)g (parameters)h(for)g(indirect)d(calls)i(to)i(static)f(functions)e(will)f (not)j(w)m(ork)g(when)330 4389 y(using)d(the)i(HP)g(assem)m(bler.)38 b(There)24 b(simply)e(is)i(no)g(w)m(a)m(y)i(for)e(GCC)h(to)g(sp)s (ecify)e(what)i(registers)f(hold)330 4499 y(argumen)m(ts)j(for)g (static)g(functions)f(when)f(using)h(the)h(HP)g(assem)m(bler.)39 b(GAS)26 b(for)h(the)g(P)-8 b(A)27 b(do)s(es)g(not)330 4608 y(ha)m(v)m(e)32 b(this)d(problem.)225 4745 y Fx(\017)60 b Fy(In)24 b(extremely)h(rare)g(cases)h(in)m(v)m(olving)e(some)h(v)m (ery)h(large)f(functions)e(y)m(ou)i(ma)m(y)h(receiv)m(e)g(errors)e (from)330 4854 y(the)34 b(HP)g(link)m(er)e(complaining)g(ab)s(out)h(an) h(out)g(of)g(b)s(ounds)d(unconditional)g(branc)m(h)j(o\013set.)52 b(This)330 4964 y(used)33 b(to)h(o)s(ccur)f(more)h(often)g(in)e (previous)g(v)m(ersions)h(of)h(GCC,)f(but)g(is)f(no)m(w)i (exceptionally)f(rare.)330 5073 y(If)d(y)m(ou)h(should)d(run)h(in)m(to) h(it,)g(y)m(ou)h(can)g(w)m(ork)f(around)g(b)m(y)g(making)g(y)m(our)g (function)f(smaller.)225 5210 y Fx(\017)60 b Fy(GCC)26 b(compiled)e(co)s(de)i(sometimes)g(emits)g(w)m(arnings)e(from)i(the)g (HP-UX)g(assem)m(bler)g(of)g(the)g(form:)570 5340 y Fq(\(warning\))45 b(Use)i(of)g(GR3)g(when)p eop %%Page: 276 286 276 285 bop 150 -116 a Fy(276)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))665 299 y Fq(frame)47 b(>=)g(8192)g(may)g(cause)f (conflict.)330 441 y Fy(These)30 b(w)m(arnings)f(are)i(harmless)e(and)h (can)g(b)s(e)g(safely)g(ignored.)225 583 y Fx(\017)60 b Fy(On)30 b(the)g(IBM)h(RS/6000,)h(compiling)c(co)s(de)j(of)f(the)h (form)570 719 y Fq(extern)46 b(int)h(foo;)570 927 y(...)g(foo)g(...)570 1135 y(static)f(int)h(foo;)330 1277 y Fy(will)24 b(cause)k(the)f(link)m (er)e(to)j(rep)s(ort)e(an)h(unde\014ned)e(sym)m(b)s(ol)h Fq(foo)p Fy(.)38 b(Although)26 b(this)g(b)s(eha)m(vior)g(di\013ers)330 1386 y(from)41 b(most)i(other)f(systems,)j(it)c(is)g(not)h(a)h(bug)e(b) s(ecause)h(rede\014ning)e(an)i Fq(extern)e Fy(v)-5 b(ariable)41 b(as)330 1496 y Fq(static)29 b Fy(is)g(unde\014ned)f(in)h(ISO)h(C.)225 1638 y Fx(\017)60 b Fy(In)24 b(extremely)h(rare)g(cases)h(in)m(v)m (olving)e(some)h(v)m(ery)h(large)f(functions)e(y)m(ou)i(ma)m(y)h (receiv)m(e)g(errors)e(from)330 1748 y(the)31 b(AIX)h(Assem)m(bler)e (complaining)f(ab)s(out)i(a)h(displacemen)m(t)e(that)i(is)e(to)s(o)i (large.)44 b(If)30 b(y)m(ou)i(should)330 1857 y(run)d(in)m(to)h(it,)g (y)m(ou)h(can)g(w)m(ork)f(around)g(b)m(y)g(making)g(y)m(our)g(function) f(smaller.)225 1999 y Fx(\017)60 b Fy(The)26 b(`)p Fq(libstdc++.a)p Fy(')e(library)g(in)h(GCC)h(relies)g(on)g(the)h(SVR4)f(dynamic)g(link)m (er)e(seman)m(tics)j(whic)m(h)330 2109 y(merges)i(global)f(sym)m(b)s (ols)f(b)s(et)m(w)m(een)i(libraries)c(and)j(applications,)f(esp)s (ecially)g(necessary)i(for)f(C)p Fq(++)330 2218 y Fy(streams)41 b(functionalit)m(y)-8 b(.)70 b(This)39 b(is)g(not)i(the)g(default)f(b)s (eha)m(vior)g(of)g(AIX)h(shared)f(libraries)e(and)330 2328 y(dynamic)h(linking.)69 b(`)p Fq(libstdc++.a)p Fy(')38 b(is)i(built)e(on)j(AIX)g(with)e(\\run)m(time-linking")f(enabled)i(so) 330 2438 y(that)g(sym)m(b)s(ol)e(merging)h(can)h(o)s(ccur.)68 b(T)-8 b(o)40 b(utilize)e(this)g(feature,)43 b(the)d(application)d (link)m(ed)h(with)330 2547 y(`)p Fq(libstdc++.a)p Fy(')28 b(m)m(ust)i(include)d(the)k(`)p Fq(-Wl,-brtl)p Fy(')d(\015ag)i(on)g (the)h(link)d(line.)39 b(G)p Fq(++)30 b Fy(cannot)g(imp)s(ose)330 2657 y(this)24 b(b)s(ecause)g(this)g(option)g(ma)m(y)i(in)m(terfere)e (with)g(the)h(seman)m(tics)g(of)g(the)g(user)f(program)h(and)f(users) 330 2766 y(ma)m(y)g(not)g(alw)m(a)m(ys)h(use)e(`)p Fq(g++)p Fy(')g(to)i(link)c(his)i(or)g(her)h(application.)37 b(Applications)21 b(are)j(not)g(required)e(to)330 2876 y(use)30 b(the)h(`)p Fq(-Wl,-brtl)p Fy(')e(\015ag)i(on)g(the)f(link)f(line|the)g(rest)i(of)g (the)g(`)p Fq(libstdc++.a)p Fy(')d(library)g(whic)m(h)330 2986 y(is)h(not)i(dep)s(enden)m(t)e(on)i(the)f(sym)m(b)s(ol)f(merging)h (seman)m(tics)h(will)c(con)m(tin)m(ue)k(to)g(function)e(correctly)-8 b(.)225 3128 y Fx(\017)60 b Fy(An)36 b(application)f(can)h(in)m(terp)s (ose)g(its)g(o)m(wn)g(de\014nition)e(of)i(functions)f(for)h(functions)f (in)m(v)m(ok)m(ed)i(b)m(y)330 3237 y(`)p Fq(libstdc++.a)p Fy(')31 b(with)h(\\run)m(time-linking")e(enabled)j(on)g(AIX.)h(T)-8 b(o)34 b(accomplish)e(this)g(the)i(appli-)330 3347 y(cation)c(m)m(ust)g (b)s(e)f(link)m(ed)f(with)h(\\run)m(time-linking")e(option)i(and)g(the) h(functions)f(explicitly)e(m)m(ust)330 3456 y(b)s(e)j(exp)s(orted)g(b)m (y)g(the)h(application)d(\(`)p Fq(-Wl,-brtl,-bE:exportfile)p Fy('\).)225 3599 y Fx(\017)60 b Fy(AIX)35 b(on)f(the)g(RS/6000)i(pro)m (vides)e(supp)s(ort)e(\(NLS\))j(for)f(en)m(vironmen)m(ts)g(outside)g (of)g(the)h(United)330 3708 y(States.)62 b(Compilers)35 b(and)h(assem)m(blers)h(use)f(NLS)h(to)h(supp)s(ort)d(lo)s(cale-sp)s (eci\014c)h(represen)m(tations)330 3818 y(of)i(v)-5 b(arious)36 b(ob)5 b(jects)38 b(including)d(\015oating-p)s(oin)m(t)h(n)m(um)m(b)s (ers)g(\(`)p Fq(.)p Fy(')i(vs)g(`)p Fq(,)p Fy(')f(for)h(separating)f (decimal)330 3927 y(fractions\).)i(There)24 b(ha)m(v)m(e)i(b)s(een)e (problems)f(rep)s(orted)h(where)g(the)h(library)d(link)m(ed)i(with)f (GCC)h(do)s(es)330 4037 y(not)35 b(pro)s(duce)g(the)g(same)h (\015oating-p)s(oin)m(t)e(formats)i(that)f(the)h(assem)m(bler)f (accepts.)56 b(If)35 b(y)m(ou)h(ha)m(v)m(e)330 4146 y(this)29 b(problem,)g(set)i(the)g Fq(LANG)e Fy(en)m(vironmen)m(t)h(v)-5 b(ariable)29 b(to)i(`)p Fq(C)p Fy(')g(or)f(`)p Fq(En_US)p Fy('.)225 4289 y Fx(\017)60 b Fy(Ev)m(en)37 b(if)f(y)m(ou)h(sp)s(ecify) f(`)p Fq(-fdollars-in-identifiers)o Fy(',)d(y)m(ou)k(cannot)h (successfully)d(use)h(`)p Fq($)p Fy(')h(in)330 4398 y(iden)m(ti\014ers) c(on)i(the)g(RS/6000)h(due)e(to)i(a)f(restriction)f(in)f(the)i(IBM)h (assem)m(bler.)53 b(GAS)35 b(supp)s(orts)330 4508 y(these)c(iden)m (ti\014ers.)225 4650 y Fx(\017)60 b Fy(There)36 b(is)g(an)h(assem)m (bler)f(bug)g(in)g(v)m(ersions)g(of)h(DG/UX)h(prior)e(to)h(5.4.2.01)j (that)d(o)s(ccurs)g(when)330 4759 y(the)i(`)p Fq(fldcr)p Fy(')e(instruction)f(is)i(used.)64 b(GCC)38 b(uses)g(`)p Fq(fldcr)p Fy(')f(on)i(the)f(88100)j(to)e(serialize)e(v)m(olatile)330 4869 y(memory)30 b(references.)40 b(Use)30 b(the)g(option)g(`)p Fq(-mno-serialize-volatile)p Fy(')23 b(if)29 b(y)m(our)h(v)m(ersion)f (of)h(the)330 4979 y(assem)m(bler)g(has)g(this)f(bug.)225 5121 y Fx(\017)60 b Fy(On)31 b(VMS,)g(GAS)g(v)m(ersions)g(1.38.1)j(and) d(earlier)f(ma)m(y)i(cause)g(spurious)d(w)m(arning)h(messages)i(from) 330 5230 y(the)c(link)m(er.)38 b(These)28 b(w)m(arning)e(messages)j (complain)d(of)i(mismatc)m(hed)f(psect)h(attributes.)39 b(Y)-8 b(ou)29 b(can)330 5340 y(ignore)h(them.)p eop %%Page: 277 287 277 286 bop 150 -116 a Fy(Chapter)30 b(9:)41 b(Kno)m(wn)30 b(Causes)g(of)g(T)-8 b(rouble)29 b(with)g(GCC)1535 b(277)225 299 y Fx(\017)60 b Fy(On)32 b(NewsOS)g(v)m(ersion)g(3,)i(if)e(y)m(ou)h (include)d(b)s(oth)i(of)h(the)g(\014les)f(`)p Fq(stddef.h)p Fy(')f(and)h(`)p Fq(sys/types.h)p Fy(',)330 408 y(y)m(ou)50 b(get)i(an)d(error)h(b)s(ecause)g(there)g(are)h(t)m(w)m(o)g(t)m(yp)s (edefs)f(of)g Fq(size_t)p Fy(.)98 b(Y)-8 b(ou)51 b(should)d(c)m(hange) 330 518 y(`)p Fq(sys/types.h)p Fy(')28 b(b)m(y)i(adding)f(these)i (lines)d(around)i(the)g(de\014nition)e(of)j Fq(size_t)p Fy(:)570 647 y Fq(#ifndef)46 b(_SIZE_T)570 751 y(#define)g(_SIZE_T)570 854 y Fn(actual-t)m(yp)s(edef-here)570 958 y Fq(#endif)225 1093 y Fx(\017)60 b Fy(On)40 b(the)h(Allian)m(t,)i(the)e(system's)g(o)m (wn)g(con)m(v)m(en)m(tion)h(for)f(returning)e(structures)i(and)f (unions)f(is)330 1202 y(un)m(usual,)29 b(and)g(is)h(not)g(compatible)g (with)f(GCC)h(no)g(matter)i(what)e(options)g(are)g(used.)225 1337 y Fx(\017)60 b Fy(On)35 b(the)g(IBM)h(R)-8 b(T)36 b(PC,)f(the)g(MetaW)-8 b(are)39 b(HighC)34 b(compiler)g(\(hc\))i(uses)f (a)h(di\013eren)m(t)f(con)m(v)m(en)m(tion)330 1447 y(for)30 b(structure)g(and)g(union)f(returning.)40 b(Use)30 b(the)h(option)f(`)p Fq(-mhc-struct-return)p Fy(')c(to)32 b(tell)d(GCC)330 1556 y(to)i(use)f(a)h(con)m(v)m(en)m(tion)g(compatible)f(with)f(it.)225 1691 y Fx(\017)60 b Fy(On)30 b(Ultrix,)g(the)h(F)-8 b(ortran)32 b(compiler)d(exp)s(ects)j(registers)e(2)i(through)e(5)h(to)h(b)s(e)e (sa)m(v)m(ed)i(b)m(y)f(function)330 1801 y(calls.)42 b(Ho)m(w)m(ev)m(er,)34 b(the)e(C)e(compiler)g(uses)h(con)m(v)m(en)m (tions)h(compatible)f(with)e(BSD)j(Unix:)41 b(registers)330 1910 y(2)31 b(through)e(5)i(ma)m(y)g(b)s(e)f(clobb)s(ered)f(b)m(y)h (function)f(calls.)330 2045 y(GCC)f(uses)h(the)f(same)i(con)m(v)m(en)m (tion)f(as)g(the)g(Ultrix)e(C)i(compiler.)38 b(Y)-8 b(ou)30 b(can)f(use)f(these)h(options)f(to)330 2154 y(pro)s(duce)h(co)s(de)i (compatible)e(with)h(the)g(F)-8 b(ortran)31 b(compiler:)570 2283 y Fq(-fcall-saved-r2)44 b(-fcall-saved-r3)f(-fcall-saved-r4)h (-fcall-saved-r5)225 2418 y Fx(\017)60 b Fy(On)26 b(the)h(WE32k,)i(y)m (ou)e(ma)m(y)g(\014nd)f(that)h(programs)f(compiled)g(with)f(GCC)i(do)f (not)h(w)m(ork)g(with)f(the)330 2527 y(standard)i(shared)h(C)f(library) -8 b(.)39 b(Y)-8 b(ou)29 b(ma)m(y)h(need)f(to)h(link)d(with)h(the)h (ordinary)e(C)i(compiler.)39 b(If)29 b(y)m(ou)330 2637 y(do)h(so,)h(y)m(ou)g(m)m(ust)f(sp)s(ecify)f(the)i(follo)m(wing)e (options:)570 2766 y Fq(-L/usr/local/lib/gcc-lib)o(/we3)o(2k-a)o(tt-)o (sysv)o(/2.8)o(.1)41 b(-lgcc)47 b(-lc_s)330 2900 y Fy(The)22 b(\014rst)f(sp)s(eci\014es)g(where)h(to)h(\014nd)e(the)h(library)e(`)p Fq(libgcc.a)p Fy(')h(sp)s(eci\014ed)f(with)h(the)i(`)p Fq(-lgcc)p Fy(')e(option.)330 3035 y(GCC)27 b(do)s(es)g(linking)e(b)m (y)i(in)m(v)m(oking)g Fq(ld)p Fy(,)g(just)g(as)h Fq(cc)f Fy(do)s(es,)h(and)e(there)i(is)f(no)g(reason)g(wh)m(y)g(it)g Fr(should)330 3145 y Fy(matter)c(whic)m(h)e(compilation)f(program)i(y)m (ou)g(use)g(to)h(in)m(v)m(ok)m(e)g Fq(ld)p Fy(.)37 b(If)22 b(someone)h(trac)m(ks)g(this)e(problem)330 3254 y(do)m(wn,)30 b(it)g(can)h(probably)d(b)s(e)i(\014xed)g(easily)-8 b(.)225 3389 y Fx(\017)60 b Fy(On)25 b(the)i(Alpha,)f(y)m(ou)g(ma)m(y)h(get)h (assem)m(bler)d(errors)h(ab)s(out)g(in)m(v)-5 b(alid)24 b(syn)m(tax)i(as)h(a)g(result)e(of)h(\015oating)330 3499 y(p)s(oin)m(t)k(constan)m(ts.)42 b(This)29 b(is)g(due)h(to)i(a)e(bug)g (in)g(the)g(C)h(library)d(functions)h Fq(ecvt)p Fy(,)g Fq(fcvt)h Fy(and)g Fq(gcvt)p Fy(.)330 3608 y(Giv)m(en)g(v)-5 b(alid)29 b(\015oating)h(p)s(oin)m(t)g(n)m(um)m(b)s(ers,)f(they)h (sometimes)h(prin)m(t)e(`)p Fq(NaN)p Fy('.)225 3743 y Fx(\017)60 b Fy(On)43 b(Irix)f(4.0.5F)k(\(and)d(p)s(erhaps)f(in)h(some) h(other)g(v)m(ersions\),)j(an)d(assem)m(bler)f(bug)g(sometimes)330 3852 y(reorders)26 b(instructions)f(incorrectly)h(when)g(optimization)g (is)g(turned)g(on.)39 b(If)27 b(y)m(ou)g(think)e(this)h(ma)m(y)330 3962 y(b)s(e)h(happ)s(ening)d(to)k(y)m(ou,)h(try)e(using)f(the)h(GNU)h (assem)m(bler;)g(GAS)g(v)m(ersion)e(2.1)j(supp)s(orts)c(ECOFF)330 4072 y(on)30 b(Irix.)330 4206 y(Or)41 b(use)h(the)g(`)p Fq(-noasmopt)p Fy(')e(option)h(when)g(y)m(ou)h(compile)f(GCC)h(with)e (itself,)k(and)d(then)h(again)330 4316 y(when)36 b(y)m(ou)h(compile)g (y)m(our)g(program.)60 b(\(This)36 b(is)g(a)h(temp)s(orary)g(kludge)f (to)i(turn)e(o\013)h(assem)m(bler)330 4425 y(optimization)24 b(on)h(Irix.\))37 b(If)25 b(this)f(pro)m(v)m(es)h(to)h(b)s(e)e(what)h (y)m(ou)g(need,)h(edit)e(the)h(assem)m(bler)g(sp)s(ec)f(in)g(the)330 4535 y(\014le)33 b(`)p Fq(specs)p Fy(')f(so)i(that)h(it)e (unconditionally)d(passes)j(`)p Fq(-O0)p Fy(')h(to)g(the)g(assem)m (bler,)g(and)f(nev)m(er)h(passes)330 4645 y(`)p Fq(-O2)p Fy(')c(or)g(`)p Fq(-O3)p Fy('.)150 4903 y Fs(9.4)68 b(Problems)46 b(Compiling)g(Certain)g(Programs)275 5096 y Fy(Certain)29 b(programs)h(ha)m(v)m(e)i(problems)c(compiling.)225 5230 y Fx(\017)60 b Fy(P)m(arse)35 b(errors)f(ma)m(y)g(o)s(ccur)g(compiling) e(X11)k(on)e(a)g(Decstation)i(running)31 b(Ultrix)i(4.2)j(b)s(ecause)e (of)330 5340 y(problems)d(in)h(DEC's)h(v)m(ersions)g(of)g(the)h(X11)g (header)f(\014les)f(`)p Fq(X11/Xlib.h)p Fy(')f(and)h(`)p Fq(X11/Xutil.h)p Fy('.)p eop %%Page: 278 288 278 287 bop 150 -116 a Fy(278)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))330 299 y(P)m(eople)22 b(recommend)f(adding)f(`)p Fq(-I/usr/include/mit)p Fy(')d(to)22 b(use)f(the)g(MIT)g(v)m(ersions)g (of)h(the)f(header)330 408 y(\014les,)33 b(using)f(the)i(`)p Fq(-traditional)p Fy(')d(switc)m(h)h(to)j(turn)d(o\013)i(ISO)e(C,)h(or) h(\014xing)e(the)h(header)h(\014les)e(b)m(y)330 518 y(adding)d(this:) 570 647 y Fq(#ifdef)46 b(__STDC__)570 751 y(#define)g (NeedFunctionPrototypes)c(0)570 855 y(#endif)225 990 y Fx(\017)60 b Fy(On)30 b(v)-5 b(arious)29 b(386)j(Unix)d(systems)i (deriv)m(ed)e(from)h(System)g(V,)h(including)c(SCO,)j(ISC,)f(and)h (ESIX,)330 1099 y(y)m(ou)44 b(ma)m(y)g(get)h(error)e(messages)i(ab)s (out)e(running)e(out)j(of)g(virtual)e(memory)i(while)d(compiling)330 1209 y(certain)30 b(programs.)330 1344 y(Y)-8 b(ou)46 b(can)f(prev)m(en)m(t)h(this)e(problem)g(b)m(y)h(linking)d(GCC)j(with)f (the)h(GNU)h(mallo)s(c)e(\(whic)m(h)g(th)m(us)330 1454 y(replaces)24 b(the)g(mallo)s(c)g(that)g(comes)i(with)c(the)j (system\).)39 b(GNU)25 b(mallo)s(c)e(is)g(a)m(v)-5 b(ailable)24 b(as)g(a)h(separate)330 1563 y(pac)m(k)-5 b(age,)33 b(and)c(also)i(in)e (the)h(\014le)g(`)p Fq(src/gmalloc.c)p Fy(')d(in)i(the)i(GNU)g(Emacs)f (19)i(distribution.)330 1698 y(If)g(y)m(ou)g(ha)m(v)m(e)h(installed)d (GNU)j(mallo)s(c)e(as)i(a)f(separate)h(library)d(pac)m(k)-5 b(age,)35 b(use)c(this)g(option)h(when)330 1808 y(y)m(ou)f(relink)d (GCC:)570 1937 y Fq(MALLOC=/usr/local/lib/li)o(bgma)o(lloc)o(.a)330 2072 y Fy(Alternativ)m(ely)-8 b(,)29 b(if)e(y)m(ou)h(ha)m(v)m(e)h (compiled)e(`)p Fq(gmalloc.c)p Fy(')f(from)h(Emacs)i(19,)g(cop)m(y)g (the)f(ob)5 b(ject)29 b(\014le)e(to)330 2181 y(`)p Fq(gmalloc.o)p Fy(')h(and)i(use)g(this)f(option)h(when)g(y)m(ou)g(relink)f(GCC:)570 2311 y Fq(MALLOC=gmalloc.o)150 2570 y Fs(9.5)68 b(Incompatibilities)47 b(of)f(GCC)275 2764 y Fy(There)39 b(are)h(sev)m(eral)h(notew)m(orth)m (y)g(incompatibilities)35 b(b)s(et)m(w)m(een)41 b(GNU)g(C)e(and)g(K&R)g (\(non-ISO\))150 2874 y(v)m(ersions)33 b(of)i(C.)51 b(The)34 b(`)p Fq(-traditional)p Fy(')d(option)j(eliminates)f(man)m(y)h(of)g (these)h(incompatibilities,)c Fr(but)150 2983 y(not)i(al)5 b(l)p Fy(,)31 b(b)m(y)g(telling)d(GCC)i(to)i(b)s(eha)m(v)m(e)f(lik)m(e) e(a)i(K&R)f(C)g(compiler.)225 3170 y Fx(\017)60 b Fy(GCC)43 b(normally)e(mak)m(es)j(string)e(constan)m(ts)i(read-only)-8 b(.)79 b(If)42 b(sev)m(eral)i(iden)m(tical-lo)s(oking)d(string)330 3280 y(constan)m(ts)32 b(are)e(used,)g(GCC)g(stores)h(only)e(one)i(cop) m(y)g(of)g(the)f(string.)330 3415 y(One)d(consequence)i(is)d(that)j(y)m (ou)f(cannot)g(call)f Fq(mktemp)f Fy(with)g(a)j(string)d(constan)m(t)j (argumen)m(t.)40 b(The)330 3524 y(function)29 b Fq(mktemp)g Fy(alw)m(a)m(ys)i(alters)f(the)g(string)g(its)g(argumen)m(t)g(p)s(oin)m (ts)g(to.)330 3659 y(Another)37 b(consequence)i(is)d(that)j Fq(sscanf)c Fy(do)s(es)j(not)f(w)m(ork)h(on)f(some)h(systems)g(when)e (passed)i(a)330 3769 y(string)24 b(constan)m(t)i(as)f(its)g(format)g (con)m(trol)g(string)f(or)h(input.)37 b(This)24 b(is)g(b)s(ecause)h Fq(sscanf)e Fy(incorrectly)330 3878 y(tries)30 b(to)h(write)e(in)m(to)i (the)f(string)g(constan)m(t.)42 b(Lik)m(ewise)29 b Fq(fscanf)g Fy(and)h Fq(scanf)p Fy(.)330 4013 y(The)20 b(b)s(est)g(solution)f(to)j (these)f(problems)e(is)g(to)j(c)m(hange)f(the)g(program)f(to)i(use)e Fq(char)p Fy(-arra)m(y)g(v)-5 b(ariables)330 4123 y(with)31 b(initialization)d(strings)j(for)h(these)g(purp)s(oses)e(instead)i(of)g (string)f(constan)m(ts.)46 b(But)32 b(if)f(this)g(is)330 4232 y(not)26 b(p)s(ossible,)e(y)m(ou)h(can)h(use)f(the)h(`)p Fq(-fwritable-strings)p Fy(')21 b(\015ag,)27 b(whic)m(h)d(directs)g (GCC)h(to)h(handle)330 4342 y(string)41 b(constan)m(ts)i(the)f(same)g (w)m(a)m(y)h(most)f(C)f(compilers)g(do.)75 b(`)p Fq(-traditional)p Fy(')39 b(also)i(has)h(this)330 4452 y(e\013ect,)32 b(among)f(others.) 225 4587 y Fx(\017)60 b Fq(-2147483648)27 b Fy(is)j(p)s(ositiv)m(e.)330 4722 y(This)g(is)i(b)s(ecause)g(2147483648)37 b(cannot)c(\014t)f(in)f (the)h(t)m(yp)s(e)h Fq(int)p Fy(,)f(so)g(\(follo)m(wing)f(the)i(ISO)e (C)h(rules\))330 4831 y(its)e(data)h(t)m(yp)s(e)f(is)g Fq(unsigned)e(long)h(int)p Fy(.)40 b(Negating)31 b(this)f(v)-5 b(alue)29 b(yields)g(2147483648)35 b(again.)225 4966 y Fx(\017)60 b Fy(GCC)23 b(do)s(es)h(not)f(substitute)g(macro)h (argumen)m(ts)g(when)f(they)h(app)s(ear)f(inside)e(of)j(string)f (constan)m(ts.)330 5076 y(F)-8 b(or)31 b(example,)f(the)h(follo)m(wing) e(macro)i(in)e(GCC)570 5205 y Fq(#define)46 b(foo\(a\))g("a")330 5340 y Fy(will)28 b(pro)s(duce)h(output)h Fq("a")f Fy(regardless)h(of)h (what)f(the)g(argumen)m(t)h Fn(a)g Fy(is.)p eop %%Page: 279 289 279 288 bop 150 -116 a Fy(Chapter)30 b(9:)41 b(Kno)m(wn)30 b(Causes)g(of)g(T)-8 b(rouble)29 b(with)g(GCC)1535 b(279)330 299 y(The)35 b(`)p Fq(-traditional)p Fy(')e(option)i(directs)g(GCC)g (to)i(handle)d(suc)m(h)h(cases)i(\(among)f(others\))g(in)f(the)330 408 y(old-fashioned)29 b(\(non-ISO\))g(fashion.)225 543 y Fx(\017)60 b Fy(When)38 b(y)m(ou)h(use)e Fq(setjmp)g Fy(and)g Fq(longjmp)p Fy(,)i(the)f(only)g(automatic)h(v)-5 b(ariables)37 b(guaran)m(teed)i(to)g(re-)330 653 y(main)34 b(v)-5 b(alid)33 b(are)i(those)g(declared)g Fq(volatile)p Fy(.)52 b(This)33 b(is)h(a)h(consequence)g(of)g(automatic)h(register) 330 762 y(allo)s(cation.)k(Consider)29 b(this)g(function:)570 891 y Fq(jmp_buf)46 b(j;)570 1099 y(foo)h(\(\))570 1202 y({)665 1306 y(int)g(a,)h(b;)665 1514 y(a)g(=)f(fun1)g(\(\);)665 1617 y(if)h(\(setjmp)d(\(j\)\))761 1721 y(return)h(a;)665 1929 y(a)i(=)f(fun2)g(\(\);)665 2033 y(/*)h(longjmp)d(\(j\))30 b Fy(ma)m(y)h(o)s(ccur)f(in)f Fq(fun3)p Fy(.)47 b Fq(*/)665 2136 y(return)g(a)g(+)g(fun3)g(\(\);)570 2240 y(})330 2375 y Fy(Here)32 b Fq(a)f Fy(ma)m(y)h(or)g(ma)m(y)g(not)f(b)s(e)g (restored)h(to)g(its)f(\014rst)g(v)-5 b(alue)30 b(when)h(the)h Fq(longjmp)d Fy(o)s(ccurs.)44 b(If)31 b Fq(a)g Fy(is)330 2484 y(allo)s(cated)e(in)f(a)i(register,)f(then)g(its)f(\014rst)h(v)-5 b(alue)28 b(is)h(restored;)h(otherwise,)f(it)f(k)m(eeps)i(the)f(last)g (v)-5 b(alue)330 2594 y(stored)30 b(in)g(it.)330 2728 y(If)24 b(y)m(ou)h(use)g(the)f(`)p Fq(-W)p Fy(')h(option)f(with)f(the)i (`)p Fq(-O)p Fy(')g(option,)g(y)m(ou)g(will)d(get)k(a)f(w)m(arning)f (when)f(GCC)i(thinks)330 2838 y(suc)m(h)30 b(a)h(problem)e(migh)m(t)h (b)s(e)f(p)s(ossible.)330 2973 y(The)24 b(`)p Fq(-traditional)p Fy(')d(option)i(directs)h(GCC)g(to)g(put)g(v)-5 b(ariables)23 b(in)f(the)j(stac)m(k)g(b)m(y)f(default,)h(rather)330 3082 y(than)33 b(in)e(registers,)j(in)d(functions)h(that)h(call)g Fq(setjmp)p Fy(.)46 b(This)31 b(results)h(in)g(the)h(b)s(eha)m(vior)f (found)f(in)330 3192 y(traditional)e(C)h(compilers.)225 3326 y Fx(\017)60 b Fy(Programs)34 b(that)h(use)f(prepro)s(cessing)f (directiv)m(es)h(in)f(the)h(middle)e(of)j(macro)g(argumen)m(ts)f(do)h (not)330 3436 y(w)m(ork)30 b(with)g(GCC.)40 b(F)-8 b(or)31 b(example,)f(a)h(program)f(lik)m(e)g(this)f(will)f(not)i(w)m(ork:)570 3565 y Fq(foobar)46 b(\()570 3669 y(#define)g(luser)952 3772 y(hack\))330 3900 y Fy(ISO)40 b(C)h(do)s(es)f(not)i(p)s(ermit)d (suc)m(h)i(a)g(construct.)73 b(It)41 b(w)m(ould)f(mak)m(e)i(sense)f(to) h(supp)s(ort)d(it)i(when)330 4009 y(`)p Fq(-traditional)p Fy(')28 b(is)h(used,)h(but)f(it)h(is)g(to)s(o)h(m)m(uc)m(h)f(w)m(ork)h (to)g(implemen)m(t.)225 4144 y Fx(\017)60 b Fy(K&R)28 b(compilers)f(allo)m(w)h(commen)m(ts)i(to)f(cross)g(o)m(v)m(er)h(an)e (inclusion)e(b)s(oundary)g(\(i.e.)k(started)f(in)e(an)330 4254 y(include)g(\014le)g(and)h(ended)g(in)g(the)h(including)c (\014le\).)40 b(I)28 b(think)g(this)f(w)m(ould)h(b)s(e)g(quite)g(ugly)g (and)g(can't)330 4363 y(imagine)h(it)h(could)g(b)s(e)f(needed.)225 4498 y Fx(\017)60 b Fy(Declarations)28 b(of)h(external)f(v)-5 b(ariables)26 b(and)i(functions)e(within)g(a)i(blo)s(c)m(k)g(apply)e (only)h(to)i(the)f(blo)s(c)m(k)330 4607 y(con)m(taining)39 b(the)h(declaration.)69 b(In)39 b(other)h(w)m(ords,)i(they)e(ha)m(v)m (e)h(the)f(same)h(scop)s(e)e(as)i(an)m(y)f(other)330 4717 y(declaration)30 b(in)f(the)i(same)f(place.)330 4852 y(In)i(some)i(other)f(C)g(compilers,)g(a)g Fq(extern)e Fy(declaration)i(a\013ects)i(all)d(the)h(rest)g(of)h(the)f(\014le)f(ev) m(en)i(if)330 4961 y(it)c(happ)s(ens)e(within)g(a)j(blo)s(c)m(k.)330 5096 y(The)25 b(`)p Fq(-traditional)p Fy(')e(option)j(directs)f(GCC)g (to)i(treat)g(all)e Fq(extern)f Fy(declarations)h(as)h(global,)h(lik)m (e)330 5205 y(traditional)i(compilers.)225 5340 y Fx(\017)60 b Fy(In)30 b(traditional)e(C,)j(y)m(ou)f(can)h(com)m(bine)f Fq(long)p Fy(,)g(etc.,)h(with)f(a)g(t)m(yp)s(edef)h(name,)f(as)h(sho)m (wn)f(here:)p eop %%Page: 280 290 280 289 bop 150 -116 a Fy(280)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))570 299 y Fq(typedef)46 b(int)h(foo;)570 403 y(typedef)f(long)g(foo)h(bar;)330 530 y Fy(In)33 b(ISO)g(C,)h(this)f(is)g(not)h(allo)m(w)m(ed:)48 b Fq(long)33 b Fy(and)g(other)i(t)m(yp)s(e)f(mo)s(di\014ers)e(require)g(an)i (explicit)f Fq(int)p Fy(.)330 640 y(Because)40 b(this)d(criterion)g(is) g(expressed)h(b)m(y)g(Bison)f(grammar)i(rules)d(rather)i(than)g(C)g(co) s(de,)j(the)330 750 y(`)p Fq(-traditional)p Fy(')28 b(\015ag)i(cannot)h (alter)g(it.)225 877 y Fx(\017)60 b Fy(PCC)27 b(allo)m(ws)g(t)m(yp)s (edef)h(names)f(to)i(b)s(e)e(used)g(as)h(function)e(parameters.)41 b(The)27 b(di\016cult)m(y)f(describ)s(ed)330 987 y(immediately)j(ab)s (o)m(v)m(e)i(applies)e(here)h(to)s(o.)225 1115 y Fx(\017)60 b Fy(When)21 b(in)g(`)p Fq(-traditional)p Fy(')d(mo)s(de,)23 b(GCC)f(allo)m(ws)e(the)i(follo)m(wing)e(erroneous)h(pair)g(of)g (declarations)330 1224 y(to)31 b(app)s(ear)f(together)i(in)d(a)i(giv)m (en)f(scop)s(e:)570 1346 y Fq(typedef)46 b(int)h(foo;)570 1450 y(typedef)f(foo)h(foo;)225 1578 y Fx(\017)60 b Fy(GCC)39 b(treats)i(all)e(c)m(haracters)i(of)f(iden)m(ti\014ers)e(as)i (signi\014can)m(t,)h(ev)m(en)g(when)d(in)h(`)p Fq(-traditional)p Fy(')330 1687 y(mo)s(de.)h(According)30 b(to)g(K&R-1)g(\(2.2\),)i(\\No) f(more)f(than)g(the)g(\014rst)f(eigh)m(t)h(c)m(haracters)i(are)e (signi\014-)330 1797 y(can)m(t,)35 b(although)d(more)g(ma)m(y)i(b)s(e)e (used.".)47 b(Also)32 b(according)h(to)g(K&R-1)g(\(2.2\),)i(\\An)e (iden)m(ti\014er)e(is)330 1906 y(a)h(sequence)f(of)h(letters)f(and)g (digits;)g(the)g(\014rst)g(c)m(haracter)i(m)m(ust)e(b)s(e)f(a)i (letter.)44 b(The)31 b(underscore)p 3723 1906 28 4 v 330 2016 a(coun)m(ts)g(as)f(a)h(letter.",)h(but)e(GCC)f(also)i(allo)m (ws)f(dollar)e(signs)i(in)f(iden)m(ti\014ers.)225 2144 y Fx(\017)60 b Fy(PCC)30 b(allo)m(ws)f(whitespace)i(in)e(the)h(middle)e (of)j(comp)s(ound)e(assignmen)m(t)h(op)s(erators)h(suc)m(h)f(as)h(`)p Fq(+=)p Fy('.)330 2253 y(GCC,)f(follo)m(wing)f(the)i(ISO)f(standard,)g (do)s(es)g(not)h(allo)m(w)f(this.)40 b(The)30 b(di\016cult)m(y)f (describ)s(ed)g(imme-)330 2363 y(diately)h(ab)s(o)m(v)m(e)h(applies)e (here)h(to)s(o.)225 2491 y Fx(\017)60 b Fy(GCC)35 b(complains)f(ab)s (out)h(un)m(terminated)g(c)m(haracter)i(constan)m(ts)g(inside)c(of)j (prepro)s(cessing)d(con-)330 2600 y(ditionals)38 b(that)j(fail.)69 b(Some)41 b(programs)f(ha)m(v)m(e)h(English)d(commen)m(ts)k(enclosed)e (in)f(conditionals)330 2710 y(that)28 b(are)g(guaran)m(teed)g(to)g (fail;)f(if)f(these)i(commen)m(ts)g(con)m(tain)g(ap)s(ostrophes,)f(GCC) g(will)e(probably)330 2819 y(rep)s(ort)30 b(an)g(error.)40 b(F)-8 b(or)31 b(example,)g(this)e(co)s(de)i(w)m(ould)e(pro)s(duce)g (an)h(error:)570 2941 y Fq(#if)47 b(0)570 3045 y(You)g(can't)f(expect)g (this)h(to)g(work.)570 3149 y(#endif)330 3277 y Fy(The)42 b(b)s(est)g(solution)f(to)i(suc)m(h)f(a)h(problem)e(is)g(to)j(put)d (the)i(text)g(in)m(to)g(an)f(actual)h(C)f(commen)m(t)330 3386 y(delimited)28 b(b)m(y)i(`)p Fq(/*...)o(*/)p Fy('.)41 b(Ho)m(w)m(ev)m(er,)32 b(`)p Fq(-traditional)p Fy(')c(suppresses)g (these)j(error)f(messages.)225 3514 y Fx(\017)60 b Fy(Man)m(y)31 b(user)f(programs)g(con)m(tain)h(the)g(declaration)f(`)p Fq(long)g(time)f(\(\);)p Fy('.)40 b(In)30 b(the)h(past,)g(the)g(system) 330 3624 y(header)f(\014les)f(on)h(man)m(y)h(systems)f(did)f(not)h (actually)g(declare)g Fq(time)p Fy(,)g(so)g(it)g(did)e(not)j(matter)g (what)330 3733 y(t)m(yp)s(e)h(y)m(our)f(program)h(declared)f(it)g(to)h (return.)44 b(But)32 b(in)e(systems)h(with)g(ISO)f(C)i(headers,)f Fq(time)g Fy(is)330 3843 y(declared)h(to)i(return)d Fq(time_t)p Fy(,)h(and)g(if)g(that)h(is)f(not)h(the)g(same)g(as)g Fq(long)p Fy(,)f(then)h(`)p Fq(long)c(time)h(\(\);)p Fy(')330 3952 y(is)f(erroneous.)330 4080 y(The)i(solution)e(is)h(to)i (c)m(hange)g(y)m(our)f(program)g(to)h(use)f(appropriate)f(system)h (headers)g(\()p Fq()330 4190 y Fy(on)40 b(systems)f(with)g(ISO) f(C)h(headers\))h(and)f(not)h(to)g(declare)g Fq(time)e Fy(if)h(the)h(system)g(header)f(\014les)330 4299 y(declare)30 b(it,)g(or)h(failing)d(that)j(to)g(use)f Fq(time_t)f Fy(as)i(the)f(return)f(t)m(yp)s(e)i(of)f Fq(time)p Fy(.)225 4427 y Fx(\017)60 b Fy(When)44 b(compiling)d(functions)h(that)j(return) d Fq(float)p Fy(,)k(PCC)d(con)m(v)m(erts)i(it)e(to)i(a)f(double.)79 b(GCC)330 4537 y(actually)37 b(returns)g(a)h Fq(float)p Fy(.)62 b(If)38 b(y)m(ou)g(are)g(concerned)g(with)f(PCC)g(compatibilit) m(y)-8 b(,)39 b(y)m(ou)f(should)330 4646 y(declare)30 b(y)m(our)h(functions)e(to)i(return)e Fq(double)p Fy(;)g(y)m(ou)i(migh) m(t)f(as)g(w)m(ell)g(sa)m(y)h(what)f(y)m(ou)h(mean.)225 4774 y Fx(\017)60 b Fy(When)24 b(compiling)e(functions)g(that)j(return) e(structures)g(or)h(unions,)f(GCC)h(output)g(co)s(de)g(normally)330 4883 y(uses)37 b(a)h(metho)s(d)e(di\013eren)m(t)h(from)g(that)h(used)e (on)h(most)h(v)m(ersions)f(of)g(Unix.)61 b(As)37 b(a)h(result,)g(co)s (de)330 4993 y(compiled)h(with)g(GCC)h(cannot)h(call)f(a)h (structure-returning)d(function)h(compiled)g(with)h(PCC,)330 5103 y(and)30 b(vice)g(v)m(ersa.)330 5230 y(The)39 b(metho)s(d)g(used)g (b)m(y)h(GCC)f(is)g(as)h(follo)m(ws:)59 b(a)40 b(structure)f(or)h (union)e(whic)m(h)g(is)h(1,)k(2,)g(4)d(or)g(8)330 5340 y(b)m(ytes)32 b(long)e(is)g(returned)g(lik)m(e)h(a)g(scalar.)43 b(A)31 b(structure)g(or)g(union)e(with)h(an)m(y)h(other)h(size)f(is)f (stored)p eop %%Page: 281 291 281 290 bop 150 -116 a Fy(Chapter)30 b(9:)41 b(Kno)m(wn)30 b(Causes)g(of)g(T)-8 b(rouble)29 b(with)g(GCC)1535 b(281)330 299 y(in)m(to)30 b(an)f(address)g(supplied)e(b)m(y)i(the)h(caller)f (\(usually)f(in)h(a)h(sp)s(ecial,)f(\014xed)g(register,)h(but)f(on)h (some)330 408 y(mac)m(hines)37 b(it)f(is)g(passed)h(on)g(the)g(stac)m (k\).)63 b(The)37 b(mac)m(hine-description)e(macros)i Fq(STRUCT_VALUE)330 518 y Fy(and)30 b Fq(STRUCT_INCOMING_VALUE)24 b Fy(tell)30 b(GCC)g(where)g(to)h(pass)f(this)f(address.)330 658 y(By)34 b(con)m(trast,)i(PCC)d(on)h(most)g(target)i(mac)m(hines)d (returns)g(structures)g(and)g(unions)f(of)i(an)m(y)g(size)330 767 y(b)m(y)g(cop)m(ying)h(the)f(data)h(in)m(to)f(an)h(area)g(of)f (static)h(storage,)i(and)d(then)g(returning)f(the)h(address)g(of)330 877 y(that)39 b(storage)h(as)e(if)f(it)h(w)m(ere)h(a)g(p)s(oin)m(ter)e (v)-5 b(alue.)64 b(The)37 b(caller)h(m)m(ust)g(cop)m(y)h(the)g(data)g (from)e(that)330 986 y(memory)c(area)h(to)f(the)g(place)g(where)f(the)i (v)-5 b(alue)32 b(is)g(w)m(an)m(ted.)49 b(GCC)32 b(do)s(es)h(not)g(use) g(this)e(metho)s(d)330 1096 y(b)s(ecause)f(it)g(is)g(slo)m(w)m(er)g (and)g(nonreen)m(tran)m(t.)330 1236 y(On)d(some)h(new)m(er)g(mac)m (hines,)g(PCC)f(uses)h(a)g(reen)m(tran)m(t)h(con)m(v)m(en)m(tion)g(for) e(all)g(structure)h(and)f(union)330 1345 y(returning.)38 b(GCC)27 b(on)h(most)g(of)g(these)h(mac)m(hines)e(uses)g(a)i (compatible)e(con)m(v)m(en)m(tion)i(when)e(return-)330 1455 y(ing)33 b(structures)f(and)h(unions)e(in)i(memory)-8 b(,)34 b(but)f(still)e(returns)h(small)g(structures)h(and)g(unions)e (in)330 1565 y(registers.)330 1704 y(Y)-8 b(ou)28 b(can)g(tell)f(GCC)g (to)h(use)f(a)h(compatible)f(con)m(v)m(en)m(tion)h(for)g(all)e (structure)h(and)g(union)f(returning)330 1814 y(with)j(the)i(option)e (`)p Fq(-fpcc-struct-return)p Fy('.)225 1953 y Fx(\017)60 b Fy(GCC)24 b(complains)f(ab)s(out)h(program)g(fragmen)m(ts)h(suc)m(h)f (as)h(`)p Fq(0x74ae-0x4000)p Fy(')c(whic)m(h)j(app)s(ear)f(to)j(b)s(e) 330 2063 y(t)m(w)m(o)32 b(hexadecimal)f(constan)m(ts)h(separated)f(b)m (y)g(the)g(min)m(us)f(op)s(erator.)43 b(Actually)-8 b(,)31 b(this)f(string)g(is)g(a)330 2173 y(single)e Fn(prepro)s(cessing)f(tok) m(en)p Fy(.)41 b(Eac)m(h)30 b(suc)m(h)e(tok)m(en)i(m)m(ust)f(corresp)s (ond)f(to)h(one)h(tok)m(en)g(in)d(C.)40 b(Since)330 2282 y(this)e(do)s(es)h(not,)j(GCC)d(prin)m(ts)f(an)i(error)f(message.)68 b(Although)39 b(it)g(ma)m(y)h(app)s(ear)f(ob)m(vious)f(that)330 2392 y(what)31 b(is)f(mean)m(t)i(is)e(an)h(op)s(erator)g(and)g(t)m(w)m (o)h(v)-5 b(alues,)31 b(the)g(ISO)f(C)g(standard)h(sp)s(eci\014cally)d (requires)330 2501 y(that)j(this)e(b)s(e)h(treated)h(as)g(erroneous.) 330 2641 y(A)24 b Fn(prepro)s(cessing)e(tok)m(en)j Fy(is)e(a)h Fn(prepro)s(cessing)e(n)m(um)m(b)s(er)29 b Fy(if)23 b(it)g(b)s(egins)f (with)h(a)h(digit)e(and)h(is)g(follo)m(w)m(ed)330 2751 y(b)m(y)32 b(letters,)i(underscores,)e(digits,)g(p)s(erio)s(ds)f(and)h (`)p Fq(e+)p Fy(',)h(`)p Fq(e-)p Fy(',)g(`)p Fq(E+)p Fy(',)g(`)p Fq(E-)p Fy(',)h(`)p Fq(p+)p Fy(',)f(`)p Fq(p-)p Fy(',)g(`)p Fq(P+)p Fy(',)g(or)g(`)p Fq(P-)p Fy(')330 2860 y(c)m(haracter)c(sequences.)40 b(\(In)26 b(strict)h(C89)h(mo)s (de,)f(the)h(sequences)f(`)p Fq(p+)p Fy(',)h(`)p Fq(p-)p Fy(',)g(`)p Fq(P+)p Fy(')f(and)f(`)p Fq(P-)p Fy(')h(cannot)330 2970 y(app)s(ear)j(in)f(prepro)s(cessing)f(n)m(um)m(b)s(ers.\))330 3109 y(T)-8 b(o)40 b(mak)m(e)h(the)f(ab)s(o)m(v)m(e)h(program)f (fragmen)m(t)g(v)-5 b(alid,)41 b(place)f(whitespace)f(in)g(fron)m(t)h (of)g(the)g(min)m(us)330 3219 y(sign.)g(This)28 b(whitespace)i(will)e (end)i(the)g(prepro)s(cessing)f(n)m(um)m(b)s(er.)150 3502 y Fs(9.6)68 b(Fixed)45 b(Header)h(Files)275 3705 y Fy(GCC)22 b(needs)g(to)i(install)d(corrected)j(v)m(ersions)e(of)h (some)g(system)g(header)g(\014les.)37 b(This)21 b(is)h(b)s(ecause)h (most)150 3815 y(target)32 b(systems)f(ha)m(v)m(e)g(some)g(header)f (\014les)g(that)h(w)m(on't)g(w)m(ork)g(with)e(GCC)h(unless)f(they)h (are)h(c)m(hanged.)150 3924 y(Some)h(ha)m(v)m(e)h(bugs,)f(some)h(are)f (incompatible)e(with)h(ISO)g(C,)h(and)f(some)i(dep)s(end)d(on)i(sp)s (ecial)f(features)150 4034 y(of)g(other)f(compilers.)275 4179 y(Installing)35 b(GCC)i(automatically)h(creates)h(and)e(installs)f (the)i(\014xed)f(header)g(\014les,)i(b)m(y)f(running)d(a)150 4288 y(program)f(called)g Fq(fixincludes)e Fy(\(or)j(for)f(certain)h (targets)h(an)e(alternativ)m(e)h(suc)m(h)g(as)f Fq(fixinc.svr4)p Fy(\).)150 4398 y(Normally)-8 b(,)30 b(y)m(ou)h(don't)g(need)f(to)i(pa) m(y)f(atten)m(tion)g(to)h(this.)40 b(But)31 b(there)g(are)g(cases)g (where)f(it)h(do)s(esn't)f(do)150 4508 y(the)h(righ)m(t)f(thing)f (automatically)-8 b(.)225 4652 y Fx(\017)60 b Fy(If)28 b(y)m(ou)h(up)s(date)e(the)i(system's)f(header)g(\014les,)g(suc)m(h)g (as)h(b)m(y)f(installing)d(a)k(new)f(system)g(v)m(ersion,)h(the)330 4762 y(\014xed)34 b(header)g(\014les)g(of)h(GCC)f(are)h(not)g (automatically)f(up)s(dated.)53 b(The)34 b(easiest)h(w)m(a)m(y)g(to)h (up)s(date)330 4872 y(them)c(is)f(to)i(reinstall)d(GCC.)45 b(\(If)32 b(y)m(ou)g(w)m(an)m(t)h(to)g(b)s(e)e(clev)m(er,)i(lo)s(ok)f (in)f(the)h(mak)m(e\014le)g(and)f(y)m(ou)i(can)330 4981 y(\014nd)c(a)i(shortcut.\))225 5121 y Fx(\017)60 b Fy(On)21 b(some)g(systems,)j(in)c(particular)g(SunOS)f(4,)24 b(header)d(\014le)g (directories)f(con)m(tain)i(mac)m(hine-sp)s(eci\014c)330 5230 y(sym)m(b)s(olic)35 b(links)g(in)h(certain)h(places.)60 b(This)36 b(mak)m(es)i(it)e(p)s(ossible)f(to)j(share)e(most)i(of)f(the) g(header)330 5340 y(\014les)29 b(among)i(hosts)g(running)c(the)k(same)g (v)m(ersion)e(of)i(SunOS)d(4)j(on)f(di\013eren)m(t)g(mac)m(hine)g(mo)s (dels.)p eop %%Page: 282 292 282 291 bop 150 -116 a Fy(282)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))330 299 y(The)40 b(programs)g(that)i(\014x)e(the) g(header)h(\014les)e(do)i(not)g(understand)d(this)i(sp)s(ecial)f(w)m(a) m(y)j(of)e(using)330 408 y(sym)m(b)s(olic)23 b(links;)h(therefore,)i (the)f(directory)f(of)g(\014xed)g(header)g(\014les)f(is)h(go)s(o)s(d)g (only)g(for)g(the)g(mac)m(hine)330 518 y(mo)s(del)29 b(used)h(to)h(build)c(it.)330 651 y(In)c(SunOS)e(4,)k(only)d(programs)h (that)h(lo)s(ok)f(inside)e(the)j(k)m(ernel)f(will)d(notice)k(the)g (di\013erence)e(b)s(et)m(w)m(een)330 760 y(mac)m(hine)30 b(mo)s(dels.)39 b(Therefore,)30 b(for)f(most)i(purp)s(oses,)d(y)m(ou)i (need)g(not)g(b)s(e)f(concerned)h(ab)s(out)g(this.)330 893 y(It)23 b(is)g(p)s(ossible)d(to)k(mak)m(e)g(separate)h(sets)e(of)g (\014xed)g(header)g(\014les)f(for)h(the)g(di\013eren)m(t)g(mac)m(hine)g (mo)s(dels,)330 1003 y(and)33 b(arrange)h(a)g(structure)f(of)h(sym)m(b) s(olic)e(links)g(so)i(as)g(to)g(use)g(the)f(prop)s(er)g(set,)i(but)e(y) m(ou'll)g(ha)m(v)m(e)330 1112 y(to)e(do)f(this)g(b)m(y)g(hand.)225 1245 y Fx(\017)60 b Fy(On)31 b(Lynxos,)g(GCC)g(b)m(y)h(default)e(do)s (es)h(not)h(\014x)f(the)h(header)f(\014les.)43 b(This)30 b(is)g(b)s(ecause)i(bugs)f(in)f(the)330 1355 y(shell)f(cause)i(the)f Fq(fixincludes)d Fy(script)j(to)h(fail.)330 1488 y(This)25 b(means)i(y)m(ou)g(will)d(encoun)m(ter)j(problems)e(due)h(to)i(bugs)e (in)f(the)i(system)g(header)g(\014les.)38 b(It)27 b(ma)m(y)330 1597 y(b)s(e)j(no)g(comfort)h(that)f(they)h(aren't)g(GCC's)e(fault,)h (but)g(it)f(do)s(es)h(mean)h(that)f(there's)h(nothing)e(for)330 1707 y(us)h(to)h(do)f(ab)s(out)g(them.)150 1959 y Fs(9.7)68 b(Standard)45 b(Libraries)275 2150 y Fy(GCC)27 b(b)m(y)g(itself)g (attempts)i(to)f(b)s(e)f(a)h(conforming)f(freestanding)g(implemen)m (tation.)38 b(See)28 b(Chapter)g(2)150 2260 y([Language)33 b(Standards)e(Supp)s(orted)e(b)m(y)j(GCC],)g(page)h(5,)g(for)e(details) g(of)h(what)g(this)f(means.)45 b(Bey)m(ond)150 2369 y(the)25 b(library)e(facilities)g(required)g(of)i(suc)m(h)f(an)h(implemen)m (tation,)g(the)g(rest)g(of)g(the)g(C)g(library)d(is)i(supplied)150 2479 y(b)m(y)f(the)h(v)m(endor)f(of)h(the)g(op)s(erating)e(system.)39 b(If)23 b(that)h(C)f(library)e(do)s(esn't)i(conform)h(to)g(the)g(C)f (standards,)150 2589 y(then)42 b(y)m(our)g(programs)g(migh)m(t)g(get)h (w)m(arnings)e(\(esp)s(ecially)f(when)i(using)e(`)p Fq(-Wall)p Fy('\))i(that)g(y)m(ou)h(don't)150 2698 y(exp)s(ect.)275 2831 y(F)-8 b(or)27 b(example,)h(the)f Fq(sprintf)e Fy(function)g(on)i (SunOS)d(4.1.3)29 b(returns)d Fq(char)j(*)d Fy(while)f(the)i(C)g (standard)150 2941 y(sa)m(ys)36 b(that)f Fq(sprintf)f Fy(returns)g(an)h Fq(int)p Fy(.)54 b(The)35 b Fq(fixincludes)d Fy(program)j(could)f(mak)m(e)i(the)f(protot)m(yp)s(e)150 3050 y(for)28 b(this)g(function)f(matc)m(h)i(the)g(Standard,)e(but)h (that)h(w)m(ould)e(b)s(e)h(wrong,)h(since)f(the)g(function)f(will)f (still)150 3160 y(return)j Fq(char)g(*)p Fy(.)275 3293 y(If)j(y)m(ou)h(need)f(a)h(Standard)f(complian)m(t)g(library)-8 b(,)32 b(then)g(y)m(ou)h(need)g(to)g(\014nd)e(one,)j(as)f(GCC)f(do)s (es)h(not)150 3402 y(pro)m(vide)21 b(one.)38 b(The)21 b(GNU)i(C)e(library)e(\(called)j Fq(glibc)p Fy(\))e(pro)m(vides)h(ISO)g (C,)g(POSIX,)h(BSD,)g(SystemV)g(and)150 3512 y(X/Op)s(en)32 b(compatibilit)m(y)f(for)i(GNU/Lin)m(ux)f(and)g(HURD-based)i(GNU)f (systems;)i(no)e(recen)m(t)g(v)m(ersion)150 3621 y(of)i(it)f(supp)s (orts)e(other)j(systems,)h(though)e(some)h(v)m(ery)g(old)e(v)m(ersions) h(did.)51 b(V)-8 b(ersion)34 b(2.2)i(of)f(the)f(GNU)150 3731 y(C)29 b(library)d(includes)h(nearly)h(complete)i(C99)g(supp)s (ort.)38 b(Y)-8 b(ou)30 b(could)e(also)h(ask)g(y)m(our)g(op)s(erating)g (system)150 3841 y(v)m(endor)h(if)g(new)m(er)g(libraries)d(are)k(a)m(v) -5 b(ailable.)150 4093 y Fs(9.8)68 b(Disapp)t(oin)l(tmen)l(ts)47 b(and)d(Misunderstandings)275 4284 y Fy(These)35 b(problems)e(are)j(p)s (erhaps)e(regrettable,)j(but)e(w)m(e)g(don't)h(kno)m(w)f(an)m(y)h (practical)f(w)m(a)m(y)h(around)150 4394 y(them.)225 4526 y Fx(\017)60 b Fy(Certain)39 b(lo)s(cal)g(v)-5 b(ariables)39 b(aren't)h(recognized)g(b)m(y)g(debuggers)g(when)e(y)m(ou)j(compile)e (with)f(opti-)330 4636 y(mization.)330 4769 y(This)e(o)s(ccurs)i(b)s (ecause)g(sometimes)g(GCC)g(optimizes)f(the)h(v)-5 b(ariable)37 b(out)h(of)g(existence.)64 b(There)330 4878 y(is)31 b(no)i(w)m(a)m(y)g (to)g(tell)f(the)g(debugger)g(ho)m(w)h(to)g(compute)g(the)f(v)-5 b(alue)32 b(suc)m(h)g(a)h(v)-5 b(ariable)31 b(\\w)m(ould)h(ha)m(v)m(e) 330 4988 y(had",)40 b(and)d(it)g(is)g(not)h(clear)g(that)h(w)m(ould)d (b)s(e)i(desirable)e(an)m(yw)m(a)m(y)-8 b(.)65 b(So)37 b(GCC)h(simply)d(do)s(es)j(not)330 5098 y(men)m(tion)30 b(the)h(eliminated)d(v)-5 b(ariable)29 b(when)h(it)f(writes)h (debugging)f(information.)330 5230 y(Y)-8 b(ou)27 b(ha)m(v)m(e)h(to)g (exp)s(ect)f(a)h(certain)e(amoun)m(t)i(of)f(disagreemen)m(t)g(b)s(et)m (w)m(een)g(the)g(executable)h(and)e(y)m(our)330 5340 y(source)31 b(co)s(de,)f(when)g(y)m(ou)g(use)h(optimization.)p eop %%Page: 283 293 283 292 bop 150 -116 a Fy(Chapter)30 b(9:)41 b(Kno)m(wn)30 b(Causes)g(of)g(T)-8 b(rouble)29 b(with)g(GCC)1535 b(283)225 299 y Fx(\017)60 b Fy(Users)30 b(often)h(think)e(it)h(is)f(a)i(bug)f (when)f(GCC)h(rep)s(orts)g(an)g(error)g(for)g(co)s(de)h(lik)m(e)e (this:)570 424 y Fq(int)47 b(foo)g(\(struct)f(mumble)g(*\);)570 631 y(struct)g(mumble)g({)i(...)f(};)570 839 y(int)g(foo)g(\(struct)f (mumble)g(*x\))570 943 y({)h(...)g(})330 1073 y Fy(This)37 b(co)s(de)i(really)e(is)h(erroneous,)j(b)s(ecause)d(the)h(scop)s(e)g (of)g Fq(struct)28 b(mumble)37 b Fy(in)h(the)g(protot)m(yp)s(e)330 1183 y(is)c(limited)f(to)k(the)e(argumen)m(t)h(list)e(con)m(taining)h (it.)55 b(It)36 b(do)s(es)f(not)g(refer)g(to)h(the)g Fq(struct)29 b(mumble)330 1293 y Fy(de\014ned)i(with)h(\014le)f(scop)s (e)i(immediately)e(b)s(elo)m(w|they)h(are)g(t)m(w)m(o)i(unrelated)e(t)m (yp)s(es)g(with)g(similar)330 1402 y(names)e(in)f(di\013eren)m(t)h (scop)s(es.)330 1533 y(But)i(in)e(the)h(de\014nition)e(of)j Fq(foo)p Fy(,)e(the)i(\014le-scop)s(e)f(t)m(yp)s(e)g(is)g(used)f(b)s (ecause)i(that)f(is)g(a)m(v)-5 b(ailable)31 b(to)h(b)s(e)330 1643 y(inherited.)38 b(Th)m(us,)30 b(the)h(de\014nition)d(and)h(the)i (protot)m(yp)s(e)g(do)f(not)h(matc)m(h,)g(and)f(y)m(ou)h(get)g(an)g (error.)330 1773 y(This)21 b(b)s(eha)m(vior)g(ma)m(y)i(seem)g(silly)-8 b(,)22 b(but)g(it's)g(what)g(the)h(ISO)e(standard)h(sp)s(eci\014es.)36 b(It)23 b(is)e(easy)i(enough)330 1883 y(for)30 b(y)m(ou)g(to)h(mak)m(e) g(y)m(our)f(co)s(de)g(w)m(ork)g(b)m(y)g(mo)m(ving)g(the)h(de\014nition) c(of)j Fq(struct)f(mumble)f Fy(ab)s(o)m(v)m(e)k(the)330 1993 y(protot)m(yp)s(e.)41 b(It's)28 b(not)g(w)m(orth)g(b)s(eing)f (incompatible)f(with)h(ISO)g(C)h(just)g(to)g(a)m(v)m(oid)h(an)f(error)g (for)g(the)330 2102 y(example)i(sho)m(wn)g(ab)s(o)m(v)m(e.)225 2233 y Fx(\017)60 b Fy(Accesses)29 b(to)g(bit-\014elds)d(ev)m(en)i(in)f (v)m(olatile)h(ob)5 b(jects)29 b(w)m(orks)f(b)m(y)f(accessing)i(larger) f(ob)5 b(jects,)29 b(suc)m(h)f(as)330 2342 y(a)f(b)m(yte)h(or)f(a)g(w)m (ord.)39 b(Y)-8 b(ou)28 b(cannot)f(rely)f(on)h(what)g(size)g(of)g(ob)5 b(ject)27 b(is)f(accessed)i(in)e(order)g(to)i(read)f(or)330 2452 y(write)g(the)h(bit-\014eld;)f(it)g(ma)m(y)h(ev)m(en)h(v)-5 b(ary)27 b(for)h(a)g(giv)m(en)f(bit-\014eld)f(according)i(to)g(the)g (precise)f(usage.)330 2583 y(If)32 b(y)m(ou)g(care)h(ab)s(out)f(con)m (trolling)f(the)i(amoun)m(t)f(of)h(memory)f(that)g(is)g(accessed,)i (use)e(v)m(olatile)g(but)330 2692 y(do)e(not)h(use)f(bit-\014elds.)225 2823 y Fx(\017)60 b Fy(GCC)39 b(comes)h(with)e(shell)g(scripts)g(to)i (\014x)e(certain)i(kno)m(wn)f(problems)e(in)h(system)i(header)f (\014les.)330 2933 y(They)c(install)e(corrected)j(copies)f(of)g(v)-5 b(arious)34 b(header)h(\014les)f(in)g(a)i(sp)s(ecial)d(directory)i (where)g(only)330 3042 y(GCC)e(will)d(normally)i(lo)s(ok)h(for)g(them.) 49 b(The)33 b(scripts)f(adapt)h(to)h(v)-5 b(arious)33 b(systems)g(b)m(y)g(searc)m(hing)330 3152 y(all)c(the)i(system)f (header)h(\014les)e(for)h(the)h(problem)d(cases)k(that)f(w)m(e)f(kno)m (w)h(ab)s(out.)330 3283 y(If)g(new)f(system)i(header)f(\014les)f(are)h (installed,)f(nothing)g(automatically)h(arranges)g(to)h(up)s(date)f (the)330 3392 y(corrected)44 b(header)f(\014les.)77 b(Y)-8 b(ou)43 b(will)d(ha)m(v)m(e)k(to)g(reinstall)c(GCC)j(to)g(\014x)g(the)g (new)f(header)h(\014les.)330 3502 y(More)i(sp)s(eci\014cally)-8 b(,)46 b(go)f(to)g(the)f(build)d(directory)j(and)f(delete)i(the)f (\014les)f(`)p Fq(stmp-fixinc)p Fy(')f(and)330 3611 y(`)p Fq(stmp-headers)p Fy(',)28 b(and)i(the)g(sub)s(directory)e Fq(include)p Fy(;)h(then)h(do)g(`)p Fq(make)g(install)p Fy(')e(again.)225 3742 y Fx(\017)60 b Fy(On)38 b(68000)i(and)e(x86)i (systems,)g(for)f(instance,)h(y)m(ou)f(can)g(get)g(parado)m(xical)f (results)g(if)f(y)m(ou)i(test)330 3852 y(the)30 b(precise)e(v)-5 b(alues)29 b(of)h(\015oating)f(p)s(oin)m(t)f(n)m(um)m(b)s(ers.)39 b(F)-8 b(or)30 b(example,)g(y)m(ou)g(can)f(\014nd)f(that)i(a)g (\015oating)330 3961 y(p)s(oin)m(t)j(v)-5 b(alue)34 b(whic)m(h)f(is)g (not)i(a)f(NaN)h(is)e(not)i(equal)f(to)h(itself.)51 b(This)32 b(results)h(from)h(the)g(fact)h(that)330 4071 y(the)i(\015oating)g(p)s (oin)m(t)f(registers)h(hold)e(a)j(few)e(more)h(bits)f(of)h(precision)f (than)g(\014t)h(in)f(a)h Fq(double)e Fy(in)330 4181 y(memory)-8 b(.)41 b(Compiled)28 b(co)s(de)i(mo)m(v)m(es)h(v)-5 b(alues)29 b(b)s(et)m(w)m(een)i(memory)f(and)f(\015oating)h(p)s(oin)m(t)f (registers)g(at)330 4290 y(its)h(con)m(v)m(enience,)h(and)f(mo)m(ving)g (them)h(in)m(to)f(memory)g(truncates)h(them.)330 4421 y(Y)-8 b(ou)38 b(can)f(partially)e(a)m(v)m(oid)j(this)e(problem)f(b)m (y)i(using)f(the)h(`)p Fq(-ffloat-store)p Fy(')d(option)i(\(see)i(Sec-) 330 4531 y(tion)30 b(3.10)i([Optimize)d(Options],)g(page)j(50\).)225 4661 y Fx(\017)60 b Fy(On)35 b(the)h(MIPS,)f(v)-5 b(ariable)35 b(argumen)m(t)h(functions)e(using)g(`)p Fq(varargs.h)p Fy(')g(cannot)i(ha)m(v)m(e)h(a)f(\015oating)330 4771 y(p)s(oin)m(t)41 b(v)-5 b(alue)41 b(for)g(the)h(\014rst)f(argumen)m(t.) 74 b(The)41 b(reason)h(for)g(this)e(is)h(that)h(in)e(the)i(absence)g (of)g(a)330 4880 y(protot)m(yp)s(e)36 b(in)e(scop)s(e,)j(if)d(the)i (\014rst)f(argumen)m(t)g(is)g(a)h(\015oating)f(p)s(oin)m(t,)h(it)f(is)f (passed)h(in)f(a)i(\015oating)330 4990 y(p)s(oin)m(t)29 b(register,)i(rather)f(than)g(an)g(in)m(teger)h(register.)330 5121 y(If)40 b(the)g(co)s(de)h(is)e(rewritten)h(to)h(use)f(the)g(ISO)f (standard)h(`)p Fq(stdarg.h)p Fy(')e(metho)s(d)i(of)h(v)-5 b(ariable)39 b(ar-)330 5230 y(gumen)m(ts,)g(and)d(the)i(protot)m(yp)s (e)f(is)f(in)g(scop)s(e)h(at)g(the)h(time)e(of)h(the)h(call,)g(ev)m (erything)f(will)d(w)m(ork)330 5340 y(\014ne.)p eop %%Page: 284 294 284 293 bop 150 -116 a Fy(284)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))225 299 y Fx(\017)60 b Fy(On)26 b(the)g(H8/300)j(and)d(H8/300H,)j(v)-5 b(ariable)25 b(argumen)m(t)i (functions)e(m)m(ust)h(b)s(e)g(implemen)m(ted)e(using)330 408 y(the)43 b(ISO)e(standard)h(`)p Fq(stdarg.h)p Fy(')e(metho)s(d)i (of)h(v)-5 b(ariable)41 b(argumen)m(ts.)77 b(F)-8 b(urthermore,)46 b(calls)41 b(to)330 518 y(functions)c(using)h(`)p Fq(stdarg.h)p Fy(')f(v)-5 b(ariable)37 b(argumen)m(ts)j(m)m(ust)e(ha)m(v)m(e)i(a)g (protot)m(yp)s(e)f(for)g(the)g(called)330 628 y(function)29 b(in)g(scop)s(e)i(at)g(the)f(time)g(of)h(the)f(call.)225 767 y Fx(\017)60 b Fy(On)33 b(AIX)g(and)g(other)h(platforms)e(without)h (w)m(eak)h(sym)m(b)s(ol)e(supp)s(ort,)h(templates)h(need)f(to)h(b)s(e)f (in-)330 876 y(stan)m(tiated)25 b(explicitly)c(and)i(sym)m(b)s(ols)f (for)h(static)h(mem)m(b)s(ers)f(of)h(templates)g(will)d(not)j(b)s(e)f (generated.)150 1157 y Fs(9.9)68 b(Common)45 b(Misunderstandings)g (with)h(GNU)f(C)p Ft(++)275 1360 y Fy(C)p Fq(++)23 b Fy(is)g(a)h(complex)g(language)g(and)g(an)g(ev)m(olving)g(one,)h(and)f (its)f(standard)h(de\014nition)d(\(the)k(ISO)e(C)p Fq(++)150 1469 y Fy(standard\))35 b(w)m(as)g(only)g(recen)m(tly)g(completed.)55 b(As)36 b(a)f(result,)h(y)m(our)f(C)p Fq(++)f Fy(compiler)g(ma)m(y)i(o) s(ccasionally)150 1579 y(surprise)j(y)m(ou,)45 b(ev)m(en)d(when)f(its)g (b)s(eha)m(vior)g(is)f(correct.)76 b(This)39 b(section)j(discusses)e (some)i(areas)g(that)150 1688 y(frequen)m(tly)30 b(giv)m(e)g(rise)g(to) h(questions)e(of)i(this)e(sort.)150 1931 y Fg(9.9.1)63 b(Declare)40 b Fb(and)52 b Fg(De\014ne)41 b(Static)f(Mem)m(b)s(ers)275 2133 y Fy(When)34 b(a)i(class)e(has)h(static)h(data)f(mem)m(b)s(ers,)h (it)e(is)g(not)i(enough)e(to)i Fr(de)-5 b(clar)g(e)44 b Fy(the)35 b(static)g(mem)m(b)s(er;)150 2243 y(y)m(ou)c(m)m(ust)f (also)g Fr(de\014ne)38 b Fy(it.)i(F)-8 b(or)31 b(example:)390 2381 y Fq(class)46 b(Foo)390 2485 y({)485 2589 y(...)485 2693 y(void)h(method\(\);)485 2796 y(static)g(int)f(bar;)390 2900 y(};)275 3044 y Fy(This)28 b(declaration)h(only)g(establishes)g (that)h(the)g(class)g Fq(Foo)f Fy(has)g(an)h Fq(int)f Fy(named)g Fq(Foo::bar)p Fy(,)f(and)i(a)150 3154 y(mem)m(b)s(er)k (function)f(named)h Fq(Foo::method)p Fy(.)50 b(But)35 b(y)m(ou)g(still)d(need)i(to)i(de\014ne)d Fr(b)-5 b(oth)43 b Fq(method)33 b Fy(and)h Fq(bar)150 3263 y Fy(elsewhere.)40 b(According)30 b(to)h(the)g(ISO)e(standard,)g(y)m(ou)i(m)m(ust)f (supply)e(an)i(initializer)d(in)i(one)i(\(and)f(only)150 3373 y(one\))h(source)g(\014le,)e(suc)m(h)h(as:)390 3511 y Fq(int)47 b(Foo::bar)e(=)j(0;)275 3655 y Fy(Other)32 b(C)p Fq(++)g Fy(compilers)f(ma)m(y)i(not)g(correctly)g(implemen)m(t)e (the)i(standard)f(b)s(eha)m(vior.)47 b(As)33 b(a)g(result,)150 3765 y(when)40 b(y)m(ou)g(switc)m(h)h(to)g Fq(g++)e Fy(from)i(one)f(of) h(these)g(compilers,)h(y)m(ou)f(ma)m(y)g(disco)m(v)m(er)g(that)g(a)g (program)150 3874 y(that)34 b(app)s(eared)f(to)h(w)m(ork)f(correctly)h (in)e(fact)j(do)s(es)e(not)g(conform)h(to)g(the)g(standard:)45 b Fq(g++)33 b Fy(rep)s(orts)g(as)150 3984 y(unde\014ned)28 b(sym)m(b)s(ols)h(an)m(y)i(static)g(data)g(mem)m(b)s(ers)e(that)i(lac)m (k)g(de\014nitions.)150 4227 y Fg(9.9.2)63 b(T)-10 b(emp)s(oraries)41 b(Ma)m(y)g(V)-10 b(anish)41 b(Before)g(Y)-10 b(ou)41 b(Exp)s(ect)275 4429 y Fy(It)e(is)g(dangerous)g(to)i(use)e(p)s(oin)m (ters)g(or)h(references)g(to)g Fr(p)-5 b(ortions)50 b Fy(of)39 b(a)i(temp)s(orary)e(ob)5 b(ject.)69 b(The)150 4538 y(compiler)43 b(ma)m(y)i(v)m(ery)g(w)m(ell)f(delete)h(the)g(ob)5 b(ject)45 b(b)s(efore)g(y)m(ou)g(exp)s(ect)g(it)f(to,)49 b(lea)m(ving)c(a)g(p)s(oin)m(ter)e(to)150 4648 y(garbage.)75 b(The)41 b(most)g(common)h(place)f(where)g(this)f(problem)g(crops)h(up) g(is)f(in)g(classes)h(lik)m(e)g(string)150 4758 y(classes,)30 b(esp)s(ecially)d(ones)i(that)h(de\014ne)e(a)h(con)m(v)m(ersion)h (function)d(to)j(t)m(yp)s(e)f Fq(char)h(*)e Fy(or)h Fq(const)g(char)g (*)p Fy(|)150 4867 y(whic)m(h)g(is)h(one)h(reason)g(wh)m(y)f(the)h (standard)f Fq(string)f Fy(class)i(requires)e(y)m(ou)i(to)g(call)f(the) h Fq(c_str)f Fy(mem)m(b)s(er)150 4977 y(function.)38 b(Ho)m(w)m(ev)m(er,)29 b(an)m(y)e(class)f(that)g(returns)f(a)i(p)s(oin) m(ter)e(to)i(some)f(in)m(ternal)f(structure)h(is)f(p)s(oten)m(tially) 150 5086 y(sub)5 b(ject)30 b(to)h(this)f(problem.)275 5230 y(F)-8 b(or)33 b(example,)g(a)g(program)f(ma)m(y)i(use)e(a)h (function)e Fq(strfunc)g Fy(that)i(returns)e Fq(string)g Fy(ob)5 b(jects,)35 b(and)150 5340 y(another)c(function)e Fq(charfunc)f Fy(that)j(op)s(erates)g(on)f(p)s(oin)m(ters)f(to)i Fq(char)p Fy(:)p eop %%Page: 285 295 285 294 bop 150 -116 a Fy(Chapter)30 b(9:)41 b(Kno)m(wn)30 b(Causes)g(of)g(T)-8 b(rouble)29 b(with)g(GCC)1535 b(285)390 299 y Fq(string)46 b(strfunc)g(\(\);)390 403 y(void)h(charfunc)e (\(const)h(char)h(*\);)390 610 y(void)390 714 y(f)g(\(\))390 818 y({)485 922 y(const)g(char)f(*p)i(=)f(strfunc\(\).c_str\(\);)485 1025 y(...)485 1129 y(charfunc)f(\(p\);)485 1233 y(...)485 1337 y(charfunc)g(\(p\);)390 1440 y(})150 1583 y Fy(In)40 b(this)f(situation,)k(it)d(ma)m(y)h(seem)g(reasonable)g(to)g(sa)m(v)m (e)h(a)f(p)s(oin)m(ter)f(to)h(the)g(C)f(string)g(returned)f(b)m(y)150 1693 y(the)32 b Fq(c_str)f Fy(mem)m(b)s(er)h(function)f(and)g(use)h (that)h(rather)f(than)g(call)f Fq(c_str)g Fy(rep)s(eatedly)-8 b(.)46 b(Ho)m(w)m(ev)m(er,)35 b(the)150 1802 y(temp)s(orary)29 b(string)f(created)j(b)m(y)e(the)g(call)g(to)h Fq(strfunc)e Fy(is)g(destro)m(y)m(ed)i(after)g Fq(p)f Fy(is)f(initialized,)f(at)j (whic)m(h)150 1912 y(p)s(oin)m(t)f Fq(p)h Fy(is)g(left)g(p)s(oin)m (ting)e(to)k(freed)e(memory)-8 b(.)275 2055 y(Co)s(de)37 b(lik)m(e)g(this)f(ma)m(y)i(run)e(successfully)g(under)g(some)i(other)g (compilers,)g(particularly)d(obsolete)150 2164 y(cfron)m(t-based)42 b(compilers)d(that)j(delete)f(temp)s(oraries)g(along)g(with)f(normal)g (lo)s(cal)g(v)-5 b(ariables.)72 b(Ho)m(w-)150 2274 y(ev)m(er,)38 b(the)d(GNU)h(C)p Fq(++)e Fy(b)s(eha)m(vior)g(is)h (standard-conforming,)g(so)h(if)e(y)m(our)h(program)g(dep)s(ends)e(on)j (late)150 2383 y(destruction)30 b(of)g(temp)s(oraries)g(it)f(is)h(not)g (p)s(ortable.)275 2526 y(The)38 b(safe)h(w)m(a)m(y)h(to)f(write)f(suc)m (h)g(co)s(de)h(is)f(to)i(giv)m(e)f(the)g(temp)s(orary)f(a)h(name,)i (whic)m(h)d(forces)h(it)f(to)150 2636 y(remain)29 b(un)m(til)g(the)h (end)g(of)h(the)f(scop)s(e)h(of)f(the)h(name.)41 b(F)-8 b(or)31 b(example:)390 2773 y Fq(string&)46 b(tmp)h(=)g(strfunc)f (\(\);)390 2876 y(charfunc)g(\(tmp.c_str)f(\(\)\);)150 3117 y Fg(9.9.3)63 b(Implicit)39 b(Cop)m(y-Assignmen)m(t)i(for)f (Virtual)h(Bases)275 3318 y Fy(When)35 b(a)g(base)h(class)f(is)f (virtual,)h(only)f(one)i(sub)s(ob)5 b(ject)34 b(of)i(the)f(base)h (class)f(b)s(elongs)f(to)i(eac)m(h)g(full)150 3427 y(ob)5 b(ject.)51 b(Also,)34 b(the)g(constructors)f(and)g(destructors)h(are)g (in)m(v)m(ok)m(ed)f(only)g(once,)i(and)e(called)g(from)g(the)150 3537 y(most-deriv)m(ed)39 b(class.)66 b(Ho)m(w)m(ev)m(er,)43 b(suc)m(h)c(ob)5 b(jects)39 b(b)s(eha)m(v)m(e)h(unsp)s(eci\014ed)c (when)i(b)s(eing)g(assigned.)65 b(F)-8 b(or)150 3646 y(example:)390 3783 y Fq(struct)46 b(Base{)485 3887 y(char)h(*name;)485 3991 y(Base\(char)f(*n\))h(:)g(name\(strdup\(n\)\){})485 4095 y(Base&)g(operator=)e(\(const)h(Base&)h(other\){)533 4198 y(free)g(\(name\);)533 4302 y(name)g(=)g(strdup)f(\(other.name\);) 485 4406 y(})390 4510 y(};)390 4717 y(struct)g(A:virtual)f(Base{)485 4821 y(int)i(val;)485 4925 y(A\(\):Base\("A"\){})390 5029 y(};)390 5236 y(struct)f(B:virtual)f(Base{)485 5340 y(int)i(bval;)p eop %%Page: 286 296 286 295 bop 150 -116 a Fy(286)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))485 299 y Fq(B\(\):Base\("B"\){})390 403 y(};)390 610 y(struct)46 b(Derived:public)e(A,)j(public)f(B{)485 714 y(Derived\(\):Base\("Derived"\){)o(})390 818 y(};)390 1025 y(void)h(func\(Derived)d(&d1,)j(Derived)f(&d2\))390 1129 y({)485 1233 y(d1)i(=)f(d2;)390 1337 y(})275 1466 y Fy(The)31 b(C)p Fq(++)f Fy(standard)h(sp)s(eci\014es)g(that)h(`)p Fq(Base::Base)p Fy(')d(is)i(only)g(called)g(once)h(when)f(constructing) g(or)150 1576 y(cop)m(y-constructing)i(a)f(Deriv)m(ed)h(ob)5 b(ject.)47 b(It)32 b(is)f(unsp)s(eci\014ed)e(whether)j(`)p Fq(Base::operator=)p Fy(')d(is)i(called)150 1685 y(more)i(than)g(once)h (when)e(the)h(implicit)d(cop)m(y-assignmen)m(t)k(for)f(Deriv)m(ed)g(ob) 5 b(jects)33 b(is)f(in)m(v)m(ok)m(ed)i(\(as)f(it)g(is)150 1795 y(inside)28 b(`)p Fq(func)p Fy(')i(in)f(the)h(example\).)275 1924 y(g)p Fq(++)35 b Fy(implemen)m(ts)f(the)i(\\in)m(tuitiv)m(e")f (algorithm)g(for)g(cop)m(y-assignmen)m(t:)52 b(assign)35 b(all)g(direct)g(bases,)150 2034 y(then)29 b(assign)g(all)g(mem)m(b)s (ers.)39 b(In)29 b(that)h(algorithm,)f(the)h(virtual)e(base)i(sub)s(ob) 5 b(ject)29 b(can)h(b)s(e)e(encoun)m(tered)150 2143 y(man)m(y)38 b(times.)63 b(In)37 b(the)h(example,)h(cop)m(ying)f(pro)s(ceeds)f(in)g (the)h(follo)m(wing)e(order:)55 b(`)p Fq(val)p Fy(',)40 b(`)p Fq(name)p Fy(')d(\(via)150 2253 y Fq(strdup)p Fy(\),)29 b(`)p Fq(bval)p Fy(',)h(and)g(`)p Fq(name)p Fy(')g(again.)275 2382 y(If)k(application)f(co)s(de)i(relies)f(on)h(cop)m(y-assignmen)m (t,)i(a)e(user-de\014ned)f(cop)m(y-assignmen)m(t)i(op)s(erator)150 2492 y(remo)m(v)m(es)c(an)m(y)e(uncertain)m(ties.)40 b(With)30 b(suc)m(h)g(an)g(op)s(erator,)h(the)f(application)f(can)h (de\014ne)g(whether)g(and)150 2601 y(ho)m(w)g(the)h(virtual)e(base)h (sub)s(ob)5 b(ject)30 b(is)f(assigned.)150 2843 y Fs(9.10)68 b(Ca)l(v)l(eats)47 b(of)e(using)g Ft(protoize)275 3030 y Fy(The)27 b(con)m(v)m(ersion)h(programs)f Fq(protoize)f Fy(and)h Fq(unprotoize)e Fy(can)j(sometimes)g(c)m(hange)h(a)f(source)g (\014le)150 3140 y(in)h(a)i(w)m(a)m(y)g(that)g(w)m(on't)g(w)m(ork)g (unless)d(y)m(ou)j(rearrange)g(it.)225 3269 y Fx(\017)60 b Fq(protoize)29 b Fy(can)j(insert)f(references)g(to)i(a)f(t)m(yp)s(e)f (name)h(or)g(t)m(yp)s(e)f(tag)i(b)s(efore)e(the)h(de\014nition,)e(or)h (in)330 3379 y(a)g(\014le)e(where)h(they)h(are)f(not)h(de\014ned.)330 3508 y(If)25 b(this)f(happ)s(ens,)h(compiler)f(error)h(messages)i (should)c(sho)m(w)i(y)m(ou)h(where)f(the)h(new)f(references)g(are,)330 3617 y(so)31 b(\014xing)e(the)h(\014le)g(b)m(y)g(hand)f(is)h(straigh)m (tforw)m(ard.)225 3747 y Fx(\017)60 b Fy(There)29 b(are)i(some)f(C)f (constructs)h(whic)m(h)f Fq(protoize)f Fy(cannot)i(\014gure)f(out.)41 b(F)-8 b(or)31 b(example,)f(it)f(can't)330 3856 y(determine)35 b(argumen)m(t)g(t)m(yp)s(es)h(for)f(declaring)f(a)i(p)s(oin)m (ter-to-function)f(v)-5 b(ariable;)37 b(this)d(y)m(ou)i(m)m(ust)330 3966 y(do)h(b)m(y)f(hand.)58 b Fq(protoize)35 b Fy(inserts)g(a)i (commen)m(t)h(con)m(taining)e(`)p Fq(???)p Fy(')g(eac)m(h)i(time)e(it)g (\014nds)f(suc)m(h)i(a)330 4075 y(v)-5 b(ariable;)28 b(so)g(y)m(ou)g(can)g(\014nd)f(all)g(suc)m(h)g(v)-5 b(ariables)27 b(b)m(y)h(searc)m(hing)f(for)h(this)f(string.)39 b(ISO)27 b(C)g(do)s(es)h(not)330 4185 y(require)h(declaring)g(the)i(argumen)m(t) g(t)m(yp)s(es)f(of)h(p)s(oin)m(ter-to-function)e(t)m(yp)s(es.)225 4314 y Fx(\017)60 b Fy(Using)43 b Fq(unprotoize)f Fy(can)i(easily)f(in) m(tro)s(duce)h(bugs.)81 b(If)44 b(the)g(program)g(relied)e(on)j(protot) m(yp)s(es)330 4424 y(to)38 b(bring)d(ab)s(out)i(con)m(v)m(ersion)h(of)f (argumen)m(ts,)j(these)d(con)m(v)m(ersions)h(will)c(not)k(tak)m(e)h (place)e(in)f(the)330 4534 y(program)f(without)g(protot)m(yp)s(es.)56 b(One)35 b(case)h(in)e(whic)m(h)g(y)m(ou)i(can)g(b)s(e)f(sure)f Fq(unprotoize)f Fy(is)i(safe)330 4643 y(is)e(when)h(y)m(ou)g(are)h (remo)m(ving)f(protot)m(yp)s(es)h(that)g(w)m(ere)g(made)f(with)f Fq(protoize)p Fy(;)h(if)g(the)g(program)330 4753 y(w)m(ork)m(ed)d(b)s (efore)f(without)f(an)m(y)i(protot)m(yp)s(es,)g(it)f(will)e(w)m(ork)i (again)g(without)g(them.)330 4882 y(Y)-8 b(ou)43 b(can)h(\014nd)d(all)h (the)h(places)g(where)f(this)g(problem)f(migh)m(t)i(o)s(ccur)g(b)m(y)f (compiling)f(the)i(pro-)330 4992 y(gram)36 b(with)f(the)h(`)p Fq(-Wconversion)p Fy(')d(option.)57 b(It)36 b(prin)m(ts)e(a)i(w)m (arning)f(whenev)m(er)h(an)g(argumen)m(t)g(is)330 5101 y(con)m(v)m(erted.)225 5230 y Fx(\017)60 b Fy(Both)33 b(con)m(v)m(ersion)g(programs)f(can)h(b)s(e)e(confused)h(if)f(there)i (are)g(macro)g(calls)e(in)h(and)f(around)h(the)330 5340 y(text)25 b(to)f(b)s(e)g(con)m(v)m(erted.)40 b(In)23 b(other)h(w)m(ords,)h(the)f(standard)f(syn)m(tax)h(for)g(a)g (declaration)f(or)h(de\014nition)p eop %%Page: 287 297 287 296 bop 150 -116 a Fy(Chapter)30 b(9:)41 b(Kno)m(wn)30 b(Causes)g(of)g(T)-8 b(rouble)29 b(with)g(GCC)1535 b(287)330 299 y(m)m(ust)32 b(not)g(result)f(from)g(expanding)f(a)i(macro.)46 b(This)30 b(problem)g(is)h(inheren)m(t)g(in)g(the)h(design)e(of)i(C)330 408 y(and)c(cannot)h(b)s(e)f(\014xed.)39 b(If)28 b(only)g(a)h(few)f (functions)f(ha)m(v)m(e)j(confusing)d(macro)i(calls,)f(y)m(ou)h(can)g (easily)330 518 y(con)m(v)m(ert)j(them)e(man)m(ually)-8 b(.)225 653 y Fx(\017)60 b Fq(protoize)26 b Fy(cannot)j(get)g(the)g (argumen)m(t)g(t)m(yp)s(es)f(for)g(a)h(function)e(whose)h(de\014nition) e(w)m(as)i(not)h(actu-)330 763 y(ally)22 b(compiled)f(due)h(to)i (prepro)s(cessing)d(conditionals.)36 b(When)23 b(this)f(happ)s(ens,)g Fq(protoize)f Fy(c)m(hanges)330 873 y(nothing)k(in)h(regard)g(to)h(suc) m(h)g(a)g(function.)38 b Fq(protoize)24 b Fy(tries)i(to)h(detect)h(suc) m(h)e(instances)g(and)g(w)m(arn)330 982 y(ab)s(out)k(them.)330 1118 y(Y)-8 b(ou)41 b(can)f(generally)g(w)m(ork)g(around)f(this)h (problem)e(b)m(y)i(using)f Fq(protoize)f Fy(step)j(b)m(y)f(step,)j(eac) m(h)330 1227 y(time)30 b(sp)s(ecifying)d(a)k(di\013eren)m(t)e(set)i(of) f(`)p Fq(-D)p Fy(')f(options)h(for)f(compilation,)g(un)m(til)f(all)h (of)h(the)g(functions)330 1337 y(ha)m(v)m(e)i(b)s(een)d(con)m(v)m (erted.)43 b(There)30 b(is)g(no)g(automatic)h(w)m(a)m(y)h(to)f(v)m (erify)f(that)h(y)m(ou)g(ha)m(v)m(e)h(got)f(them)g(all,)330 1446 y(ho)m(w)m(ev)m(er.)225 1582 y Fx(\017)60 b Fy(Confusion)32 b(ma)m(y)j(result)e(if)g(there)h(is)g(an)g(o)s(ccasion)g(to)h(con)m(v)m (ert)h(a)e(function)f(declaration)h(or)g(def-)330 1691 y(inition)d(in)i(a)h(region)f(of)h(source)g(co)s(de)g(where)f(there)h (is)f(more)h(than)f(one)h(formal)f(parameter)h(list)330 1801 y(presen)m(t.)47 b(Th)m(us,)31 b(attempts)j(to)f(con)m(v)m(ert)h (co)s(de)e(con)m(taining)g(m)m(ultiple)e(\(conditionally)g(compiled\)) 330 1911 y(v)m(ersions)d(of)i(a)f(single)f(function)f(header)i(\(in)f (the)h(same)h(vicinit)m(y\))e(ma)m(y)h(not)g(pro)s(duce)f(the)h (desired)330 2020 y(\(or)j(exp)s(ected\))g(results.)330 2156 y(If)43 b(y)m(ou)h(plan)f(on)g(con)m(v)m(erting)i(source)f (\014les)f(whic)m(h)f(con)m(tain)i(suc)m(h)g(co)s(de,)j(it)c(is)g (recommended)330 2265 y(that)32 b(y)m(ou)f(\014rst)g(mak)m(e)h(sure)f (that)g(eac)m(h)i(conditionally)c(compiled)g(region)i(of)g(source)h(co) s(de)f(whic)m(h)330 2375 y(con)m(tains)37 b(an)f(alternativ)m(e)h (function)f(header)g(also)h(con)m(tains)g(at)g(least)g(one)g (additional)d(follo)m(w)m(er)330 2484 y(tok)m(en)29 b(\(past)g(the)g (\014nal)e(righ)m(t)h(paren)m(thesis)f(of)i(the)f(function)f(header\).) 40 b(This)27 b(should)f(circum)m(v)m(en)m(t)330 2594 y(the)31 b(problem.)225 2729 y Fx(\017)60 b Fq(unprotoize)28 b Fy(can)i(b)s(ecome)h(confused)f(when)f(trying)g(to)i(con)m(v)m(ert)h (a)f(function)e(de\014nition)f(or)i(dec-)330 2839 y(laration)g(whic)m (h)f(con)m(tains)i(a)g(declaration)f(for)g(a)h(p)s(oin)m (ter-to-function)f(formal)f(argumen)m(t)i(whic)m(h)330 2949 y(has)24 b(the)h(same)g(name)f(as)h(the)f(function)f(b)s(eing)g (de\014ned)g(or)i(declared.)38 b(W)-8 b(e)26 b(recommend)e(y)m(ou)g(a)m (v)m(oid)330 3058 y(suc)m(h)30 b(c)m(hoices)h(of)g(formal)e(parameter)i (names.)225 3194 y Fx(\017)60 b Fy(Y)-8 b(ou)31 b(migh)m(t)f(also)h(w)m (an)m(t)g(to)h(correct)g(some)f(of)f(the)h(inden)m(tation)f(b)m(y)g (hand)g(and)g(break)g(long)g(lines.)330 3303 y(\(The)f(con)m(v)m (ersion)h(programs)f(don't)h(write)e(lines)g(longer)h(than)g(eigh)m(t)m (y)h(c)m(haracters)h(in)d(an)m(y)i(case.\))150 3565 y Fs(9.11)68 b(Certain)46 b(Changes)g(W)-11 b(e)45 b(Don't)g(W)-11 b(an)l(t)45 b(to)h(Mak)l(e)275 3759 y Fy(This)38 b(section)i(lists)f(c) m(hanges)i(that)g(p)s(eople)f(frequen)m(tly)f(request,)k(but)d(whic)m (h)f(w)m(e)h(do)g(not)h(mak)m(e)150 3869 y(b)s(ecause)30 b(w)m(e)h(think)e(GCC)h(is)f(b)s(etter)i(without)e(them.)225 4005 y Fx(\017)60 b Fy(Chec)m(king)30 b(the)g(n)m(um)m(b)s(er)f(and)g (t)m(yp)s(e)h(of)h(argumen)m(ts)f(to)h(a)f(function)f(whic)m(h)g(has)h (an)g(old-fashioned)330 4115 y(de\014nition)e(and)i(no)g(protot)m(yp)s (e.)330 4250 y(Suc)m(h)35 b(a)h(feature)g(w)m(ould)e(w)m(ork)h(only)g (o)s(ccasionally|only)f(for)h(calls)g(that)h(app)s(ear)f(in)f(the)i (same)330 4360 y(\014le)j(as)i(the)f(called)g(function,)i(follo)m(wing) c(the)j(de\014nition.)68 b(The)40 b(only)f(w)m(a)m(y)j(to)f(c)m(hec)m (k)h(all)d(calls)330 4470 y(reliably)28 b(is)i(to)i(add)e(a)h(protot)m (yp)s(e)h(for)e(the)i(function.)40 b(But)31 b(adding)f(a)h(protot)m(yp) s(e)g(eliminates)f(the)330 4579 y(motiv)-5 b(ation)30 b(for)g(this)f(feature.)42 b(So)30 b(the)g(feature)h(is)f(not)g(w)m (orth)m(while.)225 4715 y Fx(\017)60 b Fy(W)-8 b(arning)30 b(ab)s(out)g(using)f(an)h(expression)f(whose)h(t)m(yp)s(e)h(is)e (signed)h(as)g(a)h(shift)e(coun)m(t.)330 4850 y(Shift)34 b(coun)m(t)i(op)s(erands)f(are)h(probably)e(signed)g(more)i(often)g (than)f(unsigned.)55 b(W)-8 b(arning)35 b(ab)s(out)330 4960 y(this)29 b(w)m(ould)g(cause)i(far)f(more)h(anno)m(y)m(ance)h (than)e(go)s(o)s(d.)225 5095 y Fx(\017)60 b Fy(W)-8 b(arning)30 b(ab)s(out)g(assigning)f(a)i(signed)e(v)-5 b(alue)30 b(to)h(an)f(unsigned)e(v)-5 b(ariable.)330 5230 y(Suc)m(h)34 b(assignmen)m(ts)h(m)m(ust)g(b)s(e)f(v)m(ery)i(common;)i(w)m(arning)33 b(ab)s(out)i(them)g(w)m(ould)f(cause)i(more)f(an-)330 5340 y(no)m(y)m(ance)d(than)e(go)s(o)s(d.)p eop %%Page: 288 298 288 297 bop 150 -116 a Fy(288)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))225 299 y Fx(\017)60 b Fy(W)-8 b(arning)30 b(when)f(a)i(non-v)m(oid)f(function)f(v)-5 b(alue)30 b(is)f(ignored.)330 442 y(Coming)37 b(as)i(I)f(do)g(from)g(a) g(Lisp)f(bac)m(kground,)j(I)e(balk)g(at)h(the)f(idea)g(that)h(there)f (is)f(something)330 552 y(dangerous)43 b(ab)s(out)g(discarding)e(a)i(v) -5 b(alue.)79 b(There)43 b(are)g(functions)f(that)i(return)e(v)-5 b(alues)42 b(whic)m(h)330 661 y(some)34 b(callers)e(ma)m(y)i(\014nd)e (useful;)h(it)g(mak)m(es)i(no)e(sense)g(to)h(clutter)f(the)h(program)f (with)f(a)i(cast)g(to)330 771 y Fq(void)29 b Fy(whenev)m(er)h(the)h(v) -5 b(alue)30 b(isn't)f(useful.)225 914 y Fx(\017)60 b Fy(Making)30 b(`)p Fq(-fshort-enums)p Fy(')e(the)i(default.)330 1058 y(This)c(w)m(ould)g(cause)j(storage)g(la)m(y)m(out)g(to)f(b)s(e)f (incompatible)f(with)g(most)i(other)g(C)g(compilers.)38 b(And)330 1167 y(it)31 b(do)s(esn't)g(seem)h(v)m(ery)f(imp)s(ortan)m (t,)g(giv)m(en)h(that)g(y)m(ou)f(can)h(get)h(the)e(same)h(result)e(in)g (other)i(w)m(a)m(ys.)330 1277 y(The)43 b(case)h(where)f(it)f(matters)i (most)g(is)e(when)g(the)h(en)m(umeration-v)-5 b(alued)42 b(ob)5 b(ject)44 b(is)f(inside)e(a)330 1386 y(structure,)30 b(and)g(in)f(that)i(case)g(y)m(ou)g(can)g(sp)s(ecify)e(a)i(\014eld)d (width)h(explicitly)-8 b(.)225 1530 y Fx(\017)60 b Fy(Making)22 b(bit-\014elds)f(unsigned)f(b)m(y)j(default)e(on)i(particular)d(mac)m (hines)i(where)g(\\the)h(ABI)g(standard")330 1639 y(sa)m(ys)31 b(to)g(do)f(so.)330 1783 y(The)36 b(ISO)g(C)g(standard)g(lea)m(v)m(es)i (it)e(up)g(to)h(the)g(implemen)m(tation)f(whether)g(a)h(bit-\014eld)d (declared)330 1892 y(plain)28 b Fq(int)i Fy(is)f(signed)g(or)i(not.)41 b(This)28 b(in)h(e\013ect)j(creates)g(t)m(w)m(o)g(alternativ)m(e)f (dialects)e(of)i(C.)330 2035 y(The)i(GNU)i(C)e(compiler)f(supp)s(orts)g (b)s(oth)h(dialects;)i(y)m(ou)f(can)g(sp)s(ecify)e(the)i(signed)f (dialect)g(with)330 2145 y(`)p Fq(-fsigned-bitfields)p Fy(')24 b(and)k(the)h(unsigned)e(dialect)h(with)g(`)p Fq(-funsigned-bitfields)p Fy('.)35 b(Ho)m(w-)330 2255 y(ev)m(er,)c(this)f(lea)m(v)m(es)h(op)s(en)f(the)h(question)e(of)i (whic)m(h)e(dialect)h(to)h(use)f(b)m(y)g(default.)330 2398 y(Curren)m(tly)-8 b(,)31 b(the)h(preferred)f(dialect)h(mak)m(es)g (plain)e(bit-\014elds)g(signed,)i(b)s(ecause)g(this)f(is)g(simplest.) 330 2508 y(Since)g Fq(int)f Fy(is)h(the)h(same)g(as)g Fq(signed)d(int)h Fy(in)h(ev)m(ery)h(other)g(con)m(text,)i(it)d(is)g (cleanest)h(for)g(them)f(to)330 2617 y(b)s(e)f(the)g(same)h(in)e (bit-\014elds)f(as)j(w)m(ell.)330 2760 y(Some)g(computer)g(man)m (ufacturers)f(ha)m(v)m(e)i(published)27 b(Application)i(Binary)h(In)m (terface)i(standards)330 2870 y(whic)m(h)d(sp)s(ecify)g(that)h(plain)e (bit-\014elds)g(should)h(b)s(e)g(unsigned.)39 b(It)30 b(is)f(a)i(mistak)m(e,)g(ho)m(w)m(ev)m(er,)g(to)g(sa)m(y)330 2980 y(an)m(ything)k(ab)s(out)g(this)g(issue)f(in)g(an)h(ABI.)57 b(This)33 b(is)i(b)s(ecause)g(the)h(handling)d(of)j(plain)d (bit-\014elds)330 3089 y(distinguishes)23 b(t)m(w)m(o)k(dialects)f(of)g (C.)39 b(Both)27 b(dialects)f(are)g(meaningful)e(on)i(ev)m(ery)h(t)m (yp)s(e)g(of)f(mac)m(hine.)330 3199 y(Whether)32 b(a)h(particular)d(ob) 5 b(ject)33 b(\014le)e(w)m(as)i(compiled)d(using)h(signed)g (bit-\014elds)f(or)i(unsigned)e(is)h(of)330 3308 y(no)26 b(concern)h(to)g(other)g(ob)5 b(ject)28 b(\014les,)e(ev)m(en)h(if)f (they)g(access)i(the)f(same)g(bit-\014elds)d(in)i(the)g(same)h(data)330 3418 y(structures.)330 3561 y(A)39 b(giv)m(en)f(program)h(is)e(written) h(in)f(one)i(or)f(the)h(other)g(of)g(these)g(t)m(w)m(o)g(dialects.)65 b(The)38 b(program)330 3671 y(stands)28 b(a)g(c)m(hance)h(to)g(w)m(ork) f(on)g(most)g(an)m(y)h(mac)m(hine)e(if)g(it)h(is)f(compiled)g(with)f (the)j(prop)s(er)d(dialect.)330 3780 y(It)k(is)g(unlik)m(ely)e(to)j(w)m (ork)f(at)i(all)d(if)g(compiled)g(with)g(the)i(wrong)f(dialect.)330 3924 y(Man)m(y)d(users)e(appreciate)h(the)g(GNU)h(C)f(compiler)e(b)s (ecause)i(it)g(pro)m(vides)f(an)h(en)m(vironmen)m(t)f(that)i(is)330 4033 y(uniform)g(across)i(mac)m(hines.)40 b(These)29 b(users)f(w)m(ould)g(b)s(e)h(incon)m(v)m(enienced)f(if)g(the)h (compiler)f(treated)330 4143 y(plain)g(bit-\014elds)h(di\013eren)m(tly) g(on)h(certain)g(mac)m(hines.)330 4286 y(Occasionally)38 b(users)f(write)h(programs)h(in)m(tended)e(only)h(for)g(a)i(particular) d(mac)m(hine)h(t)m(yp)s(e.)66 b(On)330 4396 y(these)39 b(o)s(ccasions,)i(the)e(users)f(w)m(ould)f(b)s(ene\014t)h(if)f(the)i (GNU)g(C)g(compiler)e(w)m(ere)i(to)g(supp)s(ort)e(b)m(y)330 4505 y(default)26 b(the)g(same)h(dialect)f(as)h(the)f(other)h (compilers)e(on)h(that)h(mac)m(hine.)39 b(But)27 b(suc)m(h)f (applications)330 4615 y(are)g(rare.)39 b(And)24 b(users)h(writing)e(a) i(program)g(to)i(run)c(on)i(more)h(than)f(one)g(t)m(yp)s(e)h(of)f(mac)m (hine)g(cannot)330 4725 y(p)s(ossibly)i(b)s(ene\014t)j(from)g(this)f (kind)g(of)h(compatibilit)m(y)-8 b(.)330 4868 y(This)32 b(is)h(wh)m(y)g(GCC)g(do)s(es)h(and)f(will)e(treat)k(plain)d (bit-\014elds)f(in)i(the)h(same)g(fashion)f(on)g(all)g(t)m(yp)s(es)330 4977 y(of)e(mac)m(hines)e(\(b)m(y)i(default\).)330 5121 y(There)j(are)h(some)g(argumen)m(ts)g(for)f(making)g(bit-\014elds)f (unsigned)f(b)m(y)i(default)g(on)h(all)e(mac)m(hines.)330 5230 y(If,)38 b(for)f(example,)i(this)d(b)s(ecomes)h(a)g(univ)m(ersal)f (de)g(facto)j(standard,)f(it)e(w)m(ould)g(mak)m(e)i(sense)f(for)330 5340 y(GCC)30 b(to)h(go)g(along)g(with)e(it.)40 b(This)29 b(is)g(something)h(to)h(b)s(e)f(considered)f(in)g(the)i(future.)p eop %%Page: 289 299 289 298 bop 150 -116 a Fy(Chapter)30 b(9:)41 b(Kno)m(wn)30 b(Causes)g(of)g(T)-8 b(rouble)29 b(with)g(GCC)1535 b(289)330 299 y(\(Of)24 b(course,)h(users)e(strongly)g(concerned)h(ab)s(out)g(p)s (ortabilit)m(y)d(should)h(indicate)h(explicitly)e(in)i(eac)m(h)330 408 y(bit-\014eld)31 b(whether)h(it)g(is)f(signed)h(or)g(not.)48 b(In)32 b(this)f(w)m(a)m(y)-8 b(,)35 b(they)e(write)e(programs)i(whic)m (h)e(ha)m(v)m(e)j(the)330 518 y(same)d(meaning)e(in)g(b)s(oth)h(C)g (dialects.\))225 645 y Fx(\017)60 b Fy(Unde\014ning)28 b Fq(__STDC__)g Fy(when)i(`)p Fq(-ansi)p Fy(')f(is)g(not)i(used.)330 771 y(Curren)m(tly)-8 b(,)47 b(GCC)e(de\014nes)f Fq(__STDC__)e Fy(as)j(long)g(as)g(y)m(ou)g(don't)g(use)f(`)p Fq(-traditional)p Fy('.)82 b(This)330 881 y(pro)m(vides)29 b(go)s(o)s(d)i(results)e(in)g (practice.)330 1007 y(Programmers)34 b(normally)f(use)h(conditionals)f (on)i Fq(__STDC__)d Fy(to)j(ask)g(whether)f(it)g(is)g(safe)h(to)g(use) 330 1117 y(certain)40 b(features)h(of)g(ISO)e(C,)i(suc)m(h)f(as)h (function)e(protot)m(yp)s(es)i(or)f(ISO)g(tok)m(en)h(concatenation.)330 1226 y(Since)23 b(plain)f Fq(gcc)h Fy(supp)s(orts)f(all)h(the)h (features)g(of)g(ISO)f(C,)h(the)g(correct)h(answ)m(er)f(to)g(these)h (questions)330 1336 y(is)k(\\y)m(es".)330 1462 y(Some)e(users)f(try)g (to)i(use)e Fq(__STDC__)f Fy(to)i(c)m(hec)m(k)h(for)f(the)g(a)m(v)-5 b(ailabilit)m(y)25 b(of)i(certain)f(library)e(facilities.)330 1572 y(This)g(is)h(actually)g(incorrect)g(usage)i(in)d(an)i(ISO)e(C)h (program,)i(b)s(ecause)f(the)g(ISO)e(C)i(standard)e(sa)m(ys)330 1681 y(that)k(a)g(conforming)f(freestanding)g(implemen)m(tation)f (should)g(de\014ne)h Fq(__STDC__)f Fy(ev)m(en)i(though)f(it)330 1791 y(do)s(es)22 b(not)g(ha)m(v)m(e)i(the)e(library)e(facilities.)36 b(`)p Fq(gcc)30 b(-ansi)f(-pedantic)p Fy(')20 b(is)h(a)i(conforming)e (freestanding)330 1901 y(implemen)m(tation,)35 b(and)f(it)h(is)e (therefore)j(required)d(to)j(de\014ne)e Fq(__STDC__)p Fy(,)g(ev)m(en)h(though)g(it)f(do)s(es)330 2010 y(not)d(come)g(with)e (an)h(ISO)g(C)g(library)-8 b(.)330 2137 y(Sometimes)32 b(p)s(eople)g(sa)m(y)i(that)f(de\014ning)e Fq(__STDC__)f Fy(in)i(a)h(compiler)e(that)j(do)s(es)e(not)h(completely)330 2246 y(conform)f(to)h(the)f(ISO)f(C)g(standard)g(someho)m(w)i(violates) f(the)g(standard.)45 b(This)30 b(is)h(illogical.)43 b(The)330 2356 y(standard)21 b(is)h(a)g(standard)g(for)g(compilers)f(that)i (claim)e(to)i(supp)s(ort)e(ISO)g(C,)h(suc)m(h)g(as)g(`)p Fq(gcc)30 b(-ansi)p Fy('|)330 2465 y(not)45 b(for)g(other)h(compilers)d (suc)m(h)i(as)h(plain)d Fq(gcc)p Fy(.)84 b(Whatev)m(er)47 b(the)e(ISO)f(C)h(standard)f(sa)m(ys)i(is)330 2575 y(relev)-5 b(an)m(t)32 b(to)g(the)f(design)f(of)i(plain)d Fq(gcc)h Fy(without)g(`)p Fq(-ansi)p Fy(')h(only)f(for)h(pragmatic)g(reasons,)h (not)g(as)330 2685 y(a)f(requiremen)m(t.)330 2811 y(GCC)h(normally)e (de\014nes)h Fq(__STDC__)f Fy(to)i(b)s(e)g(1,)h(and)e(in)g(addition)f (de\014nes)h Fq(__STRICT_ANSI__)d Fy(if)330 2921 y(y)m(ou)23 b(sp)s(ecify)f(the)h(`)p Fq(-ansi)p Fy(')f(option,)j(or)e(a)g(`)p Fq(-std)p Fy(')f(option)h(for)g(strict)g(conformance)g(to)h(some)f(v)m (ersion)330 3030 y(of)g(ISO)e(C.)38 b(On)21 b(some)i(hosts,)h(system)f (include)d(\014les)i(use)g(a)h(di\013eren)m(t)e(con)m(v)m(en)m(tion,)26 b(where)c Fq(__STDC_)330 3140 y(_)h Fy(is)g(normally)e(0,)26 b(but)c(is)h(1)g(if)g(the)g(user)g(sp)s(eci\014es)f(strict)h (conformance)h(to)h(the)e(C)g(Standard.)37 b(GCC)330 3249 y(follo)m(ws)30 b(the)h(host)f(con)m(v)m(en)m(tion)i(when)e(pro)s (cessing)f(system)i(include)e(\014les,)h(but)g(when)f(pro)s(cessing)330 3359 y(user)h(\014les)f(it)h(follo)m(ws)f(the)i(usual)e(GNU)i(C)f(con)m (v)m(en)m(tion.)225 3485 y Fx(\017)60 b Fy(Unde\014ning)28 b Fq(__STDC__)g Fy(in)h(C)p Fq(++)p Fy(.)330 3612 y(Programs)e(written) f(to)i(compile)e(with)f(C)p Fq(++)p Fy(-to-C)i(translators)g(get)h(the) f(v)-5 b(alue)27 b(of)g Fq(__STDC__)d Fy(that)330 3721 y(go)s(es)h(with)d(the)j(C)e(compiler)g(that)h(is)f(subsequen)m(tly)g (used.)38 b(These)23 b(programs)h(m)m(ust)g(test)h Fq(__STDC_)330 3831 y(_)33 b Fy(to)i(determine)d(what)i(kind)e(of)h(C)g(prepro)s (cessor)g(that)h(compiler)e(uses:)47 b(whether)33 b(they)h(should)330 3941 y(concatenate)f(tok)m(ens)e(in)e(the)i(ISO)e(C)h(fashion)f(or)i (in)e(the)h(traditional)f(fashion.)330 4067 y(These)e(programs)h(w)m (ork)g(prop)s(erly)d(with)h(GNU)j(C)p Fq(++)e Fy(if)f Fq(__STDC__)g Fy(is)g(de\014ned.)39 b(They)27 b(w)m(ould)g(not)330 4177 y(w)m(ork)j(otherwise.)330 4303 y(In)j(addition,)g(man)m(y)h (header)g(\014les)e(are)i(written)f(to)i(pro)m(vide)e(protot)m(yp)s(es) h(in)e(ISO)h(C)g(but)g(not)h(in)330 4413 y(traditional)i(C.)60 b(Man)m(y)38 b(of)g(these)f(header)g(\014les)g(can)g(w)m(ork)h(without) e(c)m(hange)i(in)e(C)p Fq(++)g Fy(pro)m(vided)330 4522 y Fq(__STDC__)29 b Fy(is)i(de\014ned.)44 b(If)31 b Fq(__STDC__)e Fy(is)i(not)h(de\014ned,)f(they)h(will)d(all)h(fail,)h(and)g(will)e (all)i(need)g(to)330 4632 y(b)s(e)f(c)m(hanged)h(to)g(test)g (explicitly)d(for)i(C)p Fq(++)g Fy(as)g(w)m(ell.)225 4758 y Fx(\017)60 b Fy(Deleting)30 b(\\empt)m(y")i(lo)s(ops.)330 4885 y(Historically)-8 b(,)29 b(GCC)i(has)f(not)h(deleted)f(\\empt)m (y")i(lo)s(ops)d(under)g(the)i(assumption)e(that)i(the)g(most)330 4994 y(lik)m(ely)e(reason)i(y)m(ou)h(w)m(ould)d(put)i(one)g(in)e(a)j (program)e(is)g(to)i(ha)m(v)m(e)g(a)f(dela)m(y)-8 b(,)32 b(so)f(deleting)f(them)h(will)330 5104 y(not)g(mak)m(e)g(real)f (programs)g(run)f(an)m(y)i(faster.)330 5230 y(Ho)m(w)m(ev)m(er,)39 b(the)c(rationale)g(here)g(is)g(that)g(optimization)g(of)g(a)h(nonempt) m(y)f(lo)s(op)f(cannot)i(pro)s(duce)330 5340 y(an)30 b(empt)m(y)h(one,)g(whic)m(h)e(holds)g(for)h(C)g(but)g(is)f(not)i(alw)m (a)m(ys)g(the)f(case)i(for)e(C)p Fq(++)p Fy(.)p eop %%Page: 290 300 290 299 bop 150 -116 a Fy(290)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))330 299 y(Moreo)m(v)m(er,)45 b(with)38 b(`)p Fq(-funroll-loops)p Fy(')f(small)h(\\empt)m(y")j(lo)s(ops)e(are)i (already)e(remo)m(v)m(ed,)44 b(so)c(the)330 408 y(curren)m(t)30 b(b)s(eha)m(vior)g(is)f(b)s(oth)h(sub-optimal)e(and)i(inconsisten)m(t)f (and)h(will)e(c)m(hange)j(in)e(the)i(future.)225 543 y Fx(\017)60 b Fy(Making)30 b(side)g(e\013ects)h(happ)s(en)e(in)g(the)i (same)f(order)g(as)h(in)e(some)i(other)f(compiler.)330 677 y(It)38 b(is)e(nev)m(er)i(safe)g(to)h(dep)s(end)d(on)h(the)h(order) f(of)h(ev)-5 b(aluation)37 b(of)h(side)f(e\013ects.)64 b(F)-8 b(or)38 b(example,)i(a)330 786 y(function)29 b(call)h(lik)m(e)f (this)h(ma)m(y)h(v)m(ery)f(w)m(ell)g(b)s(eha)m(v)m(e)h(di\013eren)m (tly)e(from)h(one)g(compiler)f(to)i(another:)570 914 y Fq(void)47 b(func)f(\(int,)h(int\);)570 1122 y(int)g(i)g(=)h(2;)570 1226 y(func)f(\(i++,)f(i++\);)330 1360 y Fy(There)20 b(is)g(no)g(guaran)m(tee)j(\(in)c(either)i(the)f(C)h(or)f(the)h(C)p Fq(++)f Fy(standard)g(language)h(de\014nitions\))d(that)k(the)330 1469 y(incremen)m(ts)33 b(will)d(b)s(e)j(ev)-5 b(aluated)33 b(in)f(an)m(y)i(particular)e(order.)49 b(Either)32 b(incremen)m(t)h (migh)m(t)g(happ)s(en)330 1579 y(\014rst.)40 b Fq(func)29 b Fy(migh)m(t)h(get)i(the)e(argumen)m(ts)h(`)p Fq(2,)f(3)p Fy(',)h(or)f(it)g(migh)m(t)g(get)h(`)p Fq(3,)f(2)p Fy(',)h(or)f(ev)m (en)h(`)p Fq(2,)f(2)p Fy('.)225 1713 y Fx(\017)60 b Fy(Not)31 b(allo)m(wing)e(structures)h(with)f(v)m(olatile)h(\014elds)f(in)g (registers.)330 1847 y(Strictly)c(sp)s(eaking,)i(there)g(is)f(no)h (prohibition)c(in)i(the)i(ISO)f(C)g(standard)g(against)h(allo)m(wing)f (struc-)330 1957 y(tures)36 b(with)g(v)m(olatile)h(\014elds)e(in)g (registers,)k(but)d(it)g(do)s(es)g(not)h(seem)h(to)f(mak)m(e)h(an)m(y)f (sense)g(and)f(is)330 2066 y(probably)f(not)i(what)f(y)m(ou)h(w)m(an)m (ted)h(to)f(do.)60 b(So)36 b(the)h(compiler)e(will)f(giv)m(e)k(an)e (error)g(message)i(in)330 2176 y(this)29 b(case.)225 2310 y Fx(\017)60 b Fy(Making)30 b(certain)h(w)m(arnings)e(in)m(to)h (errors)g(b)m(y)g(default.)330 2444 y(Some)42 b(ISO)e(C)h(testsuites)h (rep)s(ort)f(failure)f(when)g(the)i(compiler)e(do)s(es)i(not)f(pro)s (duce)g(an)g(error)330 2553 y(message)31 b(for)g(a)f(certain)h (program.)330 2687 y(ISO)40 b(C)g(requires)f(a)i(\\diagnostic")g (message)g(for)g(certain)f(kinds)f(of)i(in)m(v)-5 b(alid)38 b(programs,)43 b(but)d(a)330 2797 y(w)m(arning)31 b(is)g(de\014ned)g(b) m(y)i(GCC)e(to)i(coun)m(t)g(as)g(a)f(diagnostic.)46 b(If)32 b(GCC)g(pro)s(duces)f(a)i(w)m(arning)e(but)330 2907 y(not)25 b(an)f(error,)i(that)f(is)f(correct)i(ISO)e(C)g(supp)s(ort.)37 b(If)24 b(test)i(suites)d(call)h(this)g(\\failure",)h(they)g(should)330 3016 y(b)s(e)j(run)f(with)g(the)i(GCC)f(option)f(`)p Fq(-pedantic-errors)p Fy(',)f(whic)m(h)h(will)f(turn)h(these)i(w)m (arnings)e(in)m(to)330 3126 y(errors.)150 3382 y Fs(9.12)68 b(W)-11 b(arning)45 b(Messages)h(and)f(Error)g(Messages)275 3574 y Fy(The)36 b(GNU)i(compiler)e(can)i(pro)s(duce)e(t)m(w)m(o)i (kinds)e(of)h(diagnostics:)54 b(errors)37 b(and)f(w)m(arnings.)60 b(Eac)m(h)150 3684 y(kind)29 b(has)h(a)g(di\013eren)m(t)g(purp)s(ose:) 330 3818 y Fn(Errors)d Fy(rep)s(ort)e(problems)e(that)i(mak)m(e)h(it)e (imp)s(ossible)e(to)j(compile)f(y)m(our)h(program.)38 b(GCC)25 b(rep)s(orts)330 3927 y(errors)30 b(with)f(the)h(source)h (\014le)e(name)i(and)f(line)e(n)m(um)m(b)s(er)h(where)h(the)h(problem)e (is)g(apparen)m(t.)330 4061 y Fn(W)-8 b(arnings)37 b Fy(rep)s(ort)32 b(other)i(un)m(usual)d(conditions)h(in)g(y)m(our)h(co)s (de)h(that)g Fr(may)42 b Fy(indicate)33 b(a)g(problem,)330 4171 y(although)24 b(compilation)f(can)i(\(and)f(do)s(es\))g(pro)s (ceed.)39 b(W)-8 b(arning)24 b(messages)h(also)f(rep)s(ort)g(the)h (source)330 4280 y(\014le)33 b(name)h(and)g(line)e(n)m(um)m(b)s(er,)i (but)g(include)d(the)k(text)g(`)p Fq(warning:)p Fy(')d(to)j (distinguish)30 b(them)k(from)330 4390 y(error)c(messages.)275 4548 y(W)-8 b(arnings)35 b(ma)m(y)i(indicate)e(danger)h(p)s(oin)m(ts)f (where)h(y)m(ou)h(should)d(c)m(hec)m(k)k(to)e(mak)m(e)i(sure)d(that)i (y)m(our)150 4658 y(program)27 b(really)g(do)s(es)g(what)h(y)m(ou)g(in) m(tend;)g(or)g(the)f(use)h(of)g(obsolete)g(features;)h(or)f(the)g(use)f (of)h(nonstan-)150 4768 y(dard)j(features)h(of)f(GNU)i(C)e(or)h(C)p Fq(++)p Fy(.)43 b(Man)m(y)33 b(w)m(arnings)d(are)i(issued)e(only)h(if)g (y)m(ou)h(ask)g(for)f(them,)h(with)150 4877 y(one)f(of)f(the)h(`)p Fq(-W)p Fy(')f(options)g(\(for)g(instance,)h(`)p Fq(-Wall)p Fy(')e(requests)h(a)h(v)-5 b(ariet)m(y)31 b(of)f(useful)f(w)m (arnings\).)275 5011 y(GCC)38 b(alw)m(a)m(ys)h(tries)e(to)j(compile)d (y)m(our)h(program)h(if)e(p)s(ossible;)j(it)e(nev)m(er)h(gratuitously)e (rejects)j(a)150 5121 y(program)k(whose)h(meaning)f(is)f(clear)i (merely)f(b)s(ecause)h(\(for)f(instance\))h(it)f(fails)f(to)j(conform)e (to)i(a)150 5230 y(standard.)39 b(In)27 b(some)i(cases,)g(ho)m(w)m(ev)m (er,)h(the)f(C)e(and)g(C)p Fq(++)g Fy(standards)g(sp)s(ecify)g(that)i (certain)e(extensions)150 5340 y(are)h(forbidden,)e(and)h(a)h (diagnostic)f Fr(must)36 b Fy(b)s(e)27 b(issued)f(b)m(y)i(a)g (conforming)e(compiler.)39 b(The)27 b(`)p Fq(-pedantic)p Fy(')p eop %%Page: 291 301 291 300 bop 150 -116 a Fy(Chapter)30 b(9:)41 b(Kno)m(wn)30 b(Causes)g(of)g(T)-8 b(rouble)29 b(with)g(GCC)1535 b(291)150 299 y(option)32 b(tells)f(GCC)h(to)i(issue)d(w)m(arnings)g(in)g(suc)m (h)h(cases;)j(`)p Fq(-pedantic-errors)p Fy(')28 b(sa)m(ys)33 b(to)h(mak)m(e)f(them)150 408 y(errors)d(instead.)40 b(This)28 b(do)s(es)i(not)h(mean)f(that)h Fr(al)5 b(l)41 b Fy(non-ISO)29 b(constructs)h(get)i(w)m(arnings)d(or)h(errors.)275 543 y(See)g(Section)g(3.8)i([Options)d(to)i(Request)g(or)g(Suppress)d (W)-8 b(arnings],)30 b(page)h(31,)h(for)e(more)g(detail)g(on)150 653 y(these)h(and)f(related)g(command-line)f(options.)p eop %%Page: 292 302 292 301 bop 150 -116 a Fy(292)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 293 303 293 302 bop 150 -116 a Fy(Chapter)30 b(10:)41 b(Rep)s(orting)30 b(Bugs)2329 b(293)150 299 y Fv(10)80 b(Rep)t(orting)54 b(Bugs)275 540 y Fy(Y)-8 b(our)30 b(bug)g(rep)s(orts)f(pla)m(y)h(an)h (essen)m(tial)f(role)g(in)f(making)h(GCC)f(reliable.)275 676 y(When)e(y)m(ou)h(encoun)m(ter)h(a)f(problem,)f(the)h(\014rst)f (thing)g(to)i(do)f(is)f(to)h(see)h(if)d(it)i(is)f(already)g(kno)m(wn.) 40 b(See)150 786 y(Chapter)30 b(9)h([T)-8 b(rouble],)29 b(page)j(273.)42 b(If)29 b(it)h(isn't)g(kno)m(wn,)g(then)g(y)m(ou)h (should)d(rep)s(ort)i(the)h(problem.)275 923 y(Rep)s(orting)i(a)i(bug)f (ma)m(y)i(help)d(y)m(ou)i(b)m(y)g(bringing)d(a)j(solution)e(to)j(y)m (our)f(problem,)f(or)h(it)f(ma)m(y)h(not.)150 1032 y(\(If)h(it)g(do)s (es)g(not,)i(lo)s(ok)d(in)g(the)i(service)f(directory;)i(see)f(Chapter) f(11)h([Service],)h(page)e(299.\))60 b(In)36 b(an)m(y)150 1142 y(case,)c(the)f(principal)c(function)i(of)i(a)f(bug)g(rep)s(ort)g (is)g(to)h(help)e(the)i(en)m(tire)f(comm)m(unit)m(y)h(b)m(y)f(making)g (the)150 1252 y(next)f(v)m(ersion)e(of)i(GCC)f(w)m(ork)h(b)s(etter.)40 b(Bug)28 b(rep)s(orts)g(are)h(y)m(our)f(con)m(tribution)f(to)i(the)g (main)m(tenance)g(of)150 1361 y(GCC.)275 1498 y(Since)24 b(the)i(main)m(tainers)e(are)i(v)m(ery)f(o)m(v)m(erloaded,)j(w)m(e)e (cannot)g(resp)s(ond)d(to)k(ev)m(ery)f(bug)e(rep)s(ort.)39 b(Ho)m(w-)150 1608 y(ev)m(er,)31 b(if)d(the)h(bug)g(has)g(not)h(b)s (een)e(\014xed,)i(w)m(e)f(are)h(lik)m(ely)e(to)i(send)f(y)m(ou)g(a)h (patc)m(h)g(and)f(ask)g(y)m(ou)h(to)g(tell)f(us)150 1717 y(whether)h(it)g(w)m(orks.)275 1854 y(In)36 b(order)g(for)g(a)i(bug)e (rep)s(ort)g(to)h(serv)m(e)h(its)e(purp)s(ose,)h(y)m(ou)g(m)m(ust)g (include)d(the)j(information)e(that)150 1963 y(mak)m(es)c(for)f (\014xing)f(the)i(bug.)150 2226 y Fs(10.1)68 b(Ha)l(v)l(e)47 b(Y)-11 b(ou)44 b(F)-11 b(ound)43 b(a)j(Bug?)275 2421 y Fy(If)29 b(y)m(ou)i(are)g(not)g(sure)e(whether)h(y)m(ou)h(ha)m(v)m(e) g(found)e(a)i(bug,)f(here)g(are)h(some)g(guidelines:)225 2611 y Fx(\017)60 b Fy(If)41 b(the)h(compiler)e(gets)j(a)f(fatal)g (signal,)h(for)f(an)m(y)g(input)e(whatev)m(er,)45 b(that)d(is)f(a)h (compiler)e(bug.)330 2721 y(Reliable)29 b(compilers)g(nev)m(er)h (crash.)225 2856 y Fx(\017)60 b Fy(If)42 b(the)h(compiler)e(pro)s (duces)g(in)m(v)-5 b(alid)41 b(assem)m(bly)h(co)s(de,)k(for)c(an)m(y)h (input)e(whatev)m(er)i(\(except)h(an)330 2966 y Fq(asm)38 b Fy(statemen)m(t\),)44 b(that)c(is)e(a)h(compiler)f(bug,)j(unless)c (the)i(compiler)f(rep)s(orts)g(errors)h(\(not)h(just)330 3076 y(w)m(arnings\))29 b(whic)m(h)h(w)m(ould)f(ordinarily)e(prev)m(en) m(t)k(the)f(assem)m(bler)g(from)g(b)s(eing)f(run.)225 3211 y Fx(\017)60 b Fy(If)28 b(the)g(compiler)f(pro)s(duces)g(v)-5 b(alid)27 b(assem)m(bly)g(co)s(de)i(that)g(do)s(es)f(not)g(correctly)h (execute)g(the)g(input)330 3321 y(source)i(co)s(de,)f(that)h(is)f(a)h (compiler)d(bug.)330 3456 y(Ho)m(w)m(ev)m(er,)48 b(y)m(ou)43 b(m)m(ust)f(double-c)m(hec)m(k)i(to)f(mak)m(e)g(sure,)j(b)s(ecause)c(y) m(ou)h(ma)m(y)g(ha)m(v)m(e)h(run)d(in)m(to)i(an)330 3566 y(incompatibilit)m(y)27 b(b)s(et)m(w)m(een)j(GNU)g(C)g(and)f (traditional)f(C)h(\(see)i(Section)f(9.5)h([Incompatibilities],)330 3676 y(page)e(278\).)42 b(These)28 b(incompatibilities)c(migh)m(t)29 b(b)s(e)e(considered)h(bugs,)g(but)g(they)g(are)h(inescapable)330 3785 y(consequences)i(of)g(v)-5 b(aluable)29 b(features.)330 3921 y(Or)j(y)m(ou)h(ma)m(y)g(ha)m(v)m(e)h(a)g(program)e(whose)h(b)s (eha)m(vior)f(is)f(unde\014ned,)h(whic)m(h)f(happ)s(ened)g(b)m(y)i(c)m (hance)330 4030 y(to)e(giv)m(e)g(the)g(desired)d(results)i(with)f (another)h(C)g(or)h(C)p Fq(++)e Fy(compiler.)330 4166 y(F)-8 b(or)42 b(example,)i(in)c(man)m(y)i(nonoptimizing)d(compilers,)k (y)m(ou)f(can)f(write)g(`)p Fq(x;)p Fy(')g(at)i(the)e(end)g(of)h(a)330 4276 y(function)33 b(instead)g(of)h(`)p Fq(return)29 b(x;)p Fy(',)35 b(with)d(the)j(same)f(results.)50 b(But)34 b(the)h(v)-5 b(alue)33 b(of)h(the)g(function)330 4385 y(is)27 b(unde\014ned)f(if)h Fq(return)g Fy(is)g(omitted;)i(it)f(is)f (not)h(a)h(bug)f(when)f(GCC)g(pro)s(duces)g(di\013eren)m(t)h(results.) 330 4521 y(Problems)k(often)i(result)f(from)g(expressions)f(with)g(t)m (w)m(o)j(incremen)m(t)f(op)s(erators,)g(as)g(in)f Fq(f)d(\(*p++,)330 4630 y(*p++\))p Fy(.)64 b(Y)-8 b(our)39 b(previous)e(compiler)g(migh)m (t)i(ha)m(v)m(e)h(in)m(terpreted)d(that)j(expression)d(the)i(w)m(a)m(y) h(y)m(ou)330 4740 y(in)m(tended;)29 b(GCC)h(migh)m(t)g(in)m(terpret)g (it)f(another)i(w)m(a)m(y)-8 b(.)42 b(Neither)29 b(compiler)g(is)g (wrong.)41 b(The)29 b(bug)h(is)330 4850 y(in)f(y)m(our)h(co)s(de.)330 4985 y(After)f(y)m(ou)f(ha)m(v)m(e)i(lo)s(calized)d(the)i(error)f(to)h (a)g(single)e(source)h(line,)g(it)g(should)e(b)s(e)i(easy)h(to)g(c)m (hec)m(k)h(for)330 5095 y(these)35 b(things.)53 b(If)34 b(y)m(our)h(program)f(is)g(correct)i(and)e(w)m(ell)g(de\014ned,)h(y)m (ou)g(ha)m(v)m(e)h(found)d(a)i(compiler)330 5204 y(bug.)225 5340 y Fx(\017)60 b Fy(If)30 b(the)g(compiler)f(pro)s(duces)g(an)i (error)f(message)h(for)f(v)-5 b(alid)29 b(input,)g(that)i(is)e(a)i (compiler)e(bug.)p eop %%Page: 294 304 294 303 bop 150 -116 a Fy(294)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))225 299 y Fx(\017)60 b Fy(If)29 b(the)h(compiler)e(do)s(es)i(not)g(pro)s(duce)e(an)i(error)f(message)i (for)e(in)m(v)-5 b(alid)27 b(input,)h(that)j(is)d(a)i(compiler)330 408 y(bug.)45 b(Ho)m(w)m(ev)m(er,)35 b(y)m(ou)d(should)e(note)i(that)h (y)m(our)f(idea)g(of)g(\\in)m(v)-5 b(alid)30 b(input")g(migh)m(t)i(b)s (e)f(m)m(y)h(idea)g(of)330 518 y(\\an)f(extension")f(or)h(\\supp)s(ort) e(for)h(traditional)f(practice".)225 658 y Fx(\017)60 b Fy(If)27 b(y)m(ou)h(are)g(an)g(exp)s(erienced)e(user)h(of)h(one)g(of) g(the)g(languages)g(GCC)f(supp)s(orts,)f(y)m(our)i(suggestions)330 767 y(for)i(impro)m(v)m(emen)m(t)h(of)f(GCC)g(are)h(w)m(elcome)g(in)e (an)m(y)i(case.)150 1051 y Fs(10.2)68 b(Where)45 b(to)h(Rep)t(ort)f (Bugs)275 1254 y Fy(Send)32 b(bug)i(rep)s(orts)f(for)h(the)g(GNU)g (Compiler)e(Collection)h(to)i Fq(gcc-bugs@gcc.gnu.org)p Fy(.)46 b(In)33 b(ac-)150 1363 y(cordance)k(with)e(the)h(GNU-wide)h (con)m(v)m(en)m(tion,)i(in)c(whic)m(h)g(bug)g(rep)s(orts)h(for)g(to)s (ol)g(\\fo)s(o")i(are)e(sen)m(t)h(to)150 1473 y(`)p Fq(bug-foo@gnu.org) p Fy(',)26 b(the)j(address)e Fq(bug-gcc@gnu.org)e Fy(ma)m(y)k(also)g(b) s(e)f(used;)h(it)f(will)e(forw)m(ard)i(to)i(the)150 1582 y(address)f(giv)m(en)i(ab)s(o)m(v)m(e.)275 1727 y(Please)22 b(read)h Fq(http://gcc.gnu.org/bugs)o(.ht)o(ml)16 b Fy(for)23 b(additional)d(and/or)i(more)h(up-to-date)h(bug)150 1837 y(rep)s(orting)29 b(instructions)f(b)s(efore)i(y)m(ou)h(p)s(ost)f(a)h (bug)e(rep)s(ort.)150 2120 y Fs(10.3)68 b(Ho)l(w)46 b(to)f(Rep)t(ort)h (Bugs)275 2323 y Fy(The)29 b(fundamen)m(tal)f(principle)e(of)k(rep)s (orting)e(bugs)g(usefully)f(is)i(this:)39 b Fl(rep)s(ort)30 b(all)g(the)g(facts)p Fy(.)41 b(If)29 b(y)m(ou)150 2433 y(are)i(not)f(sure)g(whether)g(to)h(state)h(a)e(fact)i(or)e(lea)m(v)m (e)i(it)e(out,)h(state)g(it!)275 2578 y(Often)39 b(p)s(eople)g(omit)g (facts)i(b)s(ecause)f(they)g(think)e(they)i(kno)m(w)g(what)f(causes)h (the)g(problem)f(and)150 2687 y(they)c(conclude)f(that)h(some)g (details)e(don't)h(matter.)54 b(Th)m(us,)35 b(y)m(ou)g(migh)m(t)f (assume)g(that)i(the)e(name)h(of)150 2797 y(the)j(v)-5 b(ariable)37 b(y)m(ou)i(use)f(in)e(an)i(example)g(do)s(es)g(not)g (matter.)65 b(W)-8 b(ell,)40 b(probably)c(it)i(do)s(esn't,)i(but)e(one) 150 2906 y(cannot)31 b(b)s(e)f(sure.)42 b(P)m(erhaps)30 b(the)h(bug)f(is)g(a)h(stra)m(y)g(memory)g(reference)g(whic)m(h)e(happ) s(ens)g(to)j(fetc)m(h)f(from)150 3016 y(the)e(lo)s(cation)f(where)h (that)g(name)g(is)f(stored)h(in)f(memory;)h(p)s(erhaps,)f(if)g(the)h (name)g(w)m(ere)g(di\013eren)m(t,)g(the)150 3126 y(con)m(ten)m(ts)f(of) f(that)g(lo)s(cation)g(w)m(ould)e(fo)s(ol)h(the)h(compiler)e(in)m(to)i (doing)f(the)h(righ)m(t)f(thing)g(despite)f(the)i(bug.)150 3235 y(Pla)m(y)k(it)g(safe)h(and)f(giv)m(e)h(a)g(sp)s(eci\014c,)e (complete)i(example.)44 b(That)31 b(is)g(the)g(easiest)h(thing)f(for)g (y)m(ou)h(to)g(do,)150 3345 y(and)e(the)g(most)h(helpful.)275 3490 y(Keep)f(in)g(mind)f(that)j(the)f(purp)s(ose)e(of)i(a)g(bug)g(rep) s(ort)f(is)g(to)i(enable)e(someone)i(to)g(\014x)e(the)h(bug)f(if)g(it) 150 3599 y(is)c(not)h(kno)m(wn.)39 b(It)27 b(isn't)e(v)m(ery)j(imp)s (ortan)m(t)e(what)g(happ)s(ens)f(if)h(the)h(bug)f(is)g(already)g(kno)m (wn.)39 b(Therefore,)150 3709 y(alw)m(a)m(ys)31 b(write)e(y)m(our)i (bug)f(rep)s(orts)f(on)h(the)h(assumption)e(that)i(the)f(bug)g(is)g (not)g(kno)m(wn.)275 3854 y(Sometimes)c(p)s(eople)g(giv)m(e)i(a)f(few)g (sk)m(etc)m(h)m(y)i(facts)f(and)e(ask,)i(\\Do)s(es)g(this)e(ring)g(a)h (b)s(ell?")38 b(This)25 b(cannot)150 3963 y(help)37 b(us)h(\014x)g(a)h (bug,)h(so)f(it)f(is)g(basically)f(useless.)64 b(W)-8 b(e)40 b(resp)s(ond)d(b)m(y)h(asking)g(for)g(enough)h(details)e(to)150 4073 y(enable)i(us)g(to)h(in)m(v)m(estigate.)70 b(Y)-8 b(ou)40 b(migh)m(t)f(as)h(w)m(ell)f(exp)s(edite)g(matters)h(b)m(y)f (sending)f(them)i(to)g(b)s(egin)150 4182 y(with.)275 4327 y(T)-8 b(ry)21 b(to)h(mak)m(e)h(y)m(our)e(bug)g(rep)s(ort)g (self-con)m(tained.)38 b(If)21 b(w)m(e)h(ha)m(v)m(e)g(to)h(ask)f(y)m (ou)f(for)h(more)g(information,)f(it)150 4437 y(is)h(b)s(est)g(if)f(y)m (ou)i(include)d(all)i(the)g(previous)f(information)g(in)g(y)m(our)i (resp)s(onse,)g(as)g(w)m(ell)e(as)i(the)g(information)150 4546 y(that)31 b(w)m(as)g(missing.)275 4691 y(Please)c(rep)s(ort)g(eac) m(h)i(bug)e(in)g(a)h(separate)g(message.)41 b(This)26 b(mak)m(es)j(it)e(easier)h(for)f(us)g(to)h(trac)m(k)h(whic)m(h)150 4801 y(bugs)h(ha)m(v)m(e)h(b)s(een)f(\014xed)g(and)f(to)i(forw)m(ard)f (y)m(our)h(bugs)e(rep)s(orts)h(to)h(the)g(appropriate)e(main)m(tainer.) 275 4946 y(T)-8 b(o)30 b(enable)g(someone)h(to)g(in)m(v)m(estigate)h (the)f(bug,)f(y)m(ou)g(should)f(include)f(all)h(these)i(things:)225 5091 y Fx(\017)60 b Fy(The)30 b(v)m(ersion)g(of)g(GCC.)41 b(Y)-8 b(ou)30 b(can)h(get)h(this)d(b)m(y)h(running)e(it)i(with)f(the)h (`)p Fq(-v)p Fy(')h(option.)330 5230 y(Without)g(this,)g(w)m(e)h(w)m (on't)h(kno)m(w)e(whether)g(there)h(is)e(an)m(y)i(p)s(oin)m(t)f(in)f (lo)s(oking)g(for)i(the)g(bug)e(in)h(the)330 5340 y(curren)m(t)f(v)m (ersion)g(of)h(GCC.)p eop %%Page: 295 305 295 304 bop 150 -116 a Fy(Chapter)30 b(10:)41 b(Rep)s(orting)30 b(Bugs)2329 b(295)225 299 y Fx(\017)60 b Fy(A)30 b(complete)h(input)d (\014le)h(that)i(will)c(repro)s(duce)i(the)h(bug.)40 b(If)30 b(the)g(bug)g(is)f(in)g(the)h(C)g(prepro)s(cessor,)330 408 y(send)35 b(a)h(source)h(\014le)e(and)g(an)m(y)h(header)g(\014les)f (that)h(it)g(requires.)56 b(If)35 b(the)h(bug)g(is)f(in)f(the)i (compiler)330 518 y(prop)s(er)23 b(\(`)p Fq(cc1)p Fy('\),)k(send)d(the) h(prepro)s(cessor)f(output)h(generated)h(b)m(y)e(adding)g(`)p Fq(-save-temps)p Fy(')e(to)k(the)330 628 y(compilation)33 b(command)h(\(see)i(Section)e(3.9)h([Debugging)g(Options],)g(page)g (43\).)54 b(When)34 b(y)m(ou)h(do)330 737 y(this,)30 b(use)g(the)g(same)h(`)p Fq(-I)p Fy(',)f(`)p Fq(-D)p Fy(')h(or)f(`)p Fq(-U)p Fy(')g(options)g(that)h(y)m(ou)f(used)g(in)f (actual)i(compilation.)39 b(Then)330 847 y(send)30 b(the)g Fn(input)p Fy(.i)e(or)i Fn(input)p Fy(.ii)e(\014les)h(generated.)330 990 y(A)38 b(single)f(statemen)m(t)i(is)e(not)h(enough)g(of)g(an)g (example.)63 b(In)37 b(order)g(to)i(compile)e(it,)i(it)f(m)m(ust)g(b)s (e)330 1100 y(em)m(b)s(edded)23 b(in)g(a)i(complete)g(\014le)e(of)i (compiler)e(input;)h(and)g(the)h(bug)e(migh)m(t)i(dep)s(end)d(on)i(the) h(details)330 1209 y(of)31 b(ho)m(w)f(this)f(is)h(done.)330 1353 y(Without)j(a)h(real)f(example)g(one)h(can)g(compile,)f(all)g(an)m (y)m(one)h(can)g(do)g(ab)s(out)f(y)m(our)g(bug)g(rep)s(ort)g(is)330 1462 y(wish)26 b(y)m(ou)i(luc)m(k.)40 b(It)28 b(w)m(ould)f(b)s(e)g (futile)f(to)j(try)f(to)h(guess)f(ho)m(w)f(to)i(pro)m(v)m(ok)m(e)h(the) e(bug.)39 b(F)-8 b(or)29 b(example,)330 1572 y(bugs)f(in)f(register)i (allo)s(cation)f(and)g(reloading)g(frequen)m(tly)f(dep)s(end)g(on)i(ev) m(ery)h(little)d(detail)h(of)h(the)330 1681 y(function)g(they)i(happ)s (en)d(in.)330 1825 y(Ev)m(en)k(if)e(the)i(input)d(\014le)i(that)h (fails)e(comes)i(from)f(a)h(GNU)g(program,)g(y)m(ou)g(should)e(still)f (send)i(the)330 1934 y(complete)g(test)h(case.)42 b(Don't)32 b(ask)e(the)h(GCC)f(main)m(tainers)g(to)h(do)g(the)f(extra)i(w)m(ork)e (of)h(obtaining)330 2044 y(the)42 b(program)g(in)f(question|they)g(are) h(all)f(o)m(v)m(erw)m(ork)m(ed)j(as)e(it)g(is.)74 b(Also,)45 b(the)d(problem)e(ma)m(y)330 2153 y(dep)s(end)e(on)i(what)g(is)g(in)e (the)j(header)f(\014les)f(on)h(y)m(our)g(system;)45 b(it)40 b(is)f(unreliable)e(for)j(the)g(GCC)330 2263 y(main)m(tainers)22 b(to)i(try)f(the)g(problem)f(with)g(the)h(header)g(\014les)f(a)m(v)-5 b(ailable)22 b(to)i(them.)39 b(By)23 b(sending)f(CPP)330 2373 y(output,)33 b(y)m(ou)g(can)g(eliminate)e(this)h(source)h(of)g (uncertain)m(t)m(y)g(and)f(sa)m(v)m(e)i(us)e(a)h(certain)g(p)s(ercen)m (tage)330 2482 y(of)e(wild)d(go)s(ose)j(c)m(hases.)225 2626 y Fx(\017)60 b Fy(The)25 b(command)h(argumen)m(ts)g(y)m(ou)g(ga)m (v)m(e)i(GCC)d(to)i(compile)e(that)h(example)g(and)f(observ)m(e)h(the)g (bug.)330 2735 y(F)-8 b(or)28 b(example,)g(did)e(y)m(ou)i(use)f(`)p Fq(-O)p Fy('?)39 b(T)-8 b(o)28 b(guaran)m(tee)h(y)m(ou)f(w)m(on't)g (omit)f(something)g(imp)s(ortan)m(t,)g(list)330 2845 y(all)i(the)i(options.)330 2988 y(If)d(w)m(e)h(w)m(ere)g(to)h(try)e(to) h(guess)g(the)g(argumen)m(ts,)g(w)m(e)g(w)m(ould)f(probably)e(guess)j (wrong)f(and)g(then)g(w)m(e)330 3098 y(w)m(ould)h(not)i(encoun)m(ter)g (the)f(bug.)225 3241 y Fx(\017)60 b Fy(The)22 b(t)m(yp)s(e)g(of)g(mac)m (hine)g(y)m(ou)h(are)f(using,)h(and)e(the)i(op)s(erating)e(system)i (name)f(and)f(v)m(ersion)h(n)m(um)m(b)s(er.)225 3384 y Fx(\017)60 b Fy(The)30 b(op)s(erands)f(y)m(ou)i(ga)m(v)m(e)h(to)f (the)g Fq(configure)d Fy(command)i(when)f(y)m(ou)i(installed)d(the)j (compiler.)225 3528 y Fx(\017)60 b Fy(A)29 b(complete)g(list)f(of)g(an) m(y)i(mo)s(di\014cations)d(y)m(ou)i(ha)m(v)m(e)h(made)e(to)i(the)f (compiler)e(source.)41 b(\(W)-8 b(e)30 b(don't)330 3637 y(promise)37 b(to)j(in)m(v)m(estigate)g(the)f(bug)f(unless)f(it)h(happ) s(ens)f(in)h(an)g(unmo)s(di\014ed)e(compiler.)64 b(But)39 b(if)330 3747 y(y)m(ou'v)m(e)34 b(made)f(mo)s(di\014cations)d(and)i (don't)h(tell)f(us,)g(then)h(y)m(ou)g(are)f(sending)f(us)h(on)h(a)g (wild)d(go)s(ose)330 3856 y(c)m(hase.\))330 4000 y(Be)25 b(precise)e(ab)s(out)h(these)h(c)m(hanges.)40 b(A)24 b(description)e(in)h(English)f(is)h(not)h(enough|send)g(a)g(con)m(text) 330 4109 y(di\013)29 b(for)h(them.)330 4253 y(Adding)21 b(\014les)h(of)g(y)m(our)h(o)m(wn)f(\(suc)m(h)h(as)g(a)g(mac)m(hine)f (description)f(for)h(a)h(mac)m(hine)g(w)m(e)g(don't)f(supp)s(ort\))330 4362 y(is)29 b(a)i(mo)s(di\014cation)e(of)h(the)h(compiler)e(source.) 225 4505 y Fx(\017)60 b Fy(Details)30 b(of)h(an)m(y)g(other)f (deviations)g(from)f(the)i(standard)f(pro)s(cedure)f(for)h(installing)d (GCC.)225 4649 y Fx(\017)60 b Fy(A)28 b(description)e(of)i(what)g(b)s (eha)m(vior)e(y)m(ou)j(observ)m(e)f(that)h(y)m(ou)f(b)s(eliev)m(e)f(is) g(incorrect.)39 b(F)-8 b(or)29 b(example,)330 4758 y(\\The)37 b(compiler)e(gets)j(a)f(fatal)g(signal,")h(or,)h(\\The)d(assem)m(bler)h (instruction)d(at)k(line)d(208)j(in)e(the)330 4868 y(output)30 b(is)f(incorrect.")330 5011 y(Of)36 b(course,)j(if)d(the)g(bug)h(is)e (that)j(the)e(compiler)g(gets)h(a)h(fatal)e(signal,)i(then)e(one)h (can't)h(miss)d(it.)330 5121 y(But)26 b(if)e(the)i(bug)f(is)f (incorrect)i(output,)g(the)g(main)m(tainer)e(migh)m(t)i(not)f(notice)h (unless)e(it)h(is)g(glaringly)330 5230 y(wrong.)42 b(None)31 b(of)g(us)f(has)g(time)h(to)g(study)f(all)g(the)h(assem)m(bler)f(co)s (de)h(from)f(a)h(50-line)g(C)f(program)330 5340 y(just)f(on)h(the)g(c)m (hance)h(that)g(one)f(instruction)e(migh)m(t)i(b)s(e)f(wrong.)40 b(W)-8 b(e)31 b(need)f Fr(you)37 b Fy(to)31 b(do)f(this)f(part!)p eop %%Page: 296 306 296 305 bop 150 -116 a Fy(296)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))330 299 y(Ev)m(en)j(if)e(the)i(problem)e(y)m(ou)i (exp)s(erience)f(is)g(a)h(fatal)f(signal,)h(y)m(ou)f(should)f(still)g (sa)m(y)i(so)g(explicitly)-8 b(.)330 408 y(Supp)s(ose)36 b(something)g(strange)i(is)f(going)g(on,)i(suc)m(h)e(as,)j(y)m(our)d (cop)m(y)h(of)f(the)h(compiler)e(is)g(out)i(of)330 518 y(sync)m(h,)44 b(or)d(y)m(ou)h(ha)m(v)m(e)h(encoun)m(tered)e(a)h(bug)f (in)f(the)h(C)g(library)e(on)i(y)m(our)h(system.)73 b(\(This)40 b(has)330 628 y(happ)s(ened!\))f(Y)-8 b(our)28 b(cop)m(y)h(migh)m(t)f (crash)g(and)g(the)g(cop)m(y)h(here)f(w)m(ould)f(not.)40 b(If)28 b(y)m(ou)h Fr(said)38 b Fy(to)29 b(exp)s(ect)330 737 y(a)23 b(crash,)i(then)d(when)g(the)h(compiler)f(here)h(fails)e(to) j(crash,)g(w)m(e)g(w)m(ould)d(kno)m(w)i(that)h(the)f(bug)f(w)m(as)i (not)330 847 y(happ)s(ening.)36 b(If)23 b(y)m(ou)g(don't)g(sa)m(y)h(to) g(exp)s(ect)g(a)f(crash,)i(then)e(w)m(e)g(w)m(ould)f(not)i(kno)m(w)f (whether)f(the)i(bug)330 956 y(w)m(as)31 b(happ)s(ening.)38 b(W)-8 b(e)32 b(w)m(ould)d(not)h(b)s(e)g(able)g(to)h(dra)m(w)f(an)m(y)h (conclusion)e(from)h(our)g(observ)-5 b(ations.)330 1093 y(If)41 b(the)g(problem)f(is)g(a)i(diagnostic)e(when)h(compiling)e(GCC) h(with)g(some)i(other)f(compiler,)i(sa)m(y)330 1203 y(whether)30 b(it)g(is)f(a)i(w)m(arning)e(or)h(an)h(error.)330 1340 y(Often)25 b(the)h(observ)m(ed)f(symptom)g(is)g(incorrect)g(output)g (when)f(y)m(our)i(program)f(is)f(run.)38 b(Sad)24 b(to)j(sa)m(y)-8 b(,)330 1449 y(this)28 b(is)h(not)h(enough)f(information)f(unless)g (the)h(program)h(is)e(short)h(and)g(simple.)39 b(None)30 b(of)f(us)g(has)330 1559 y(time)34 b(to)i(study)e(a)h(large)f(program)h (to)g(\014gure)f(out)h(ho)m(w)g(it)f(w)m(ould)f(w)m(ork)i(if)f (compiled)f(correctly)-8 b(,)330 1668 y(m)m(uc)m(h)35 b(less)g(whic)m(h)f(line)f(of)j(it)f(w)m(as)g(compiled)f(wrong.)55 b(So)35 b(y)m(ou)g(will)e(ha)m(v)m(e)j(to)g(do)g(that.)55 b(T)-8 b(ell)35 b(us)330 1778 y(whic)m(h)d(source)h(line)f(it)h(is,)g (and)f(what)h(incorrect)h(result)e(happ)s(ens)f(when)h(that)i(line)e (is)g(executed.)330 1888 y(A)g(p)s(erson)e(who)h(understands)f(the)h (program)h(can)g(\014nd)e(this)g(as)i(easily)f(as)g(\014nding)f(a)i (bug)e(in)h(the)330 1997 y(program)f(itself.)225 2134 y Fx(\017)60 b Fy(If)36 b(y)m(ou)g(send)f(examples)h(of)g(assem)m(bler) g(co)s(de)g(output)g(from)g(GCC,)g(please)g(use)f(`)p Fq(-g)p Fy(')h(when)g(y)m(ou)330 2244 y(mak)m(e)30 b(them.)41 b(The)29 b(debugging)f(information)g(includes)f(source)i(line)f(n)m(um) m(b)s(ers)g(whic)m(h)g(are)i(essen-)330 2353 y(tial)g(for)g (correlating)g(the)g(output)g(with)f(the)i(input.)225 2490 y Fx(\017)60 b Fy(If)26 b(y)m(ou)h(wish)e(to)i(men)m(tion)f (something)h(in)e(the)i(GCC)f(source,)i(refer)e(to)h(it)f(b)m(y)h(con)m (text,)i(not)e(b)m(y)g(line)330 2599 y(n)m(um)m(b)s(er.)330 2736 y(The)i(line)e(n)m(um)m(b)s(ers)h(in)f(the)j(dev)m(elopmen)m(t)f (sources)g(don't)g(matc)m(h)h(those)g(in)d(y)m(our)j(sources.)40 b(Y)-8 b(our)330 2846 y(line)29 b(n)m(um)m(b)s(ers)g(w)m(ould)g(con)m (v)m(ey)j(no)e(useful)f(information)f(to)j(the)g(main)m(tainers.)225 2983 y Fx(\017)60 b Fy(Additional)34 b(information)g(from)i(a)h (debugger)f(migh)m(t)g(enable)f(someone)i(to)g(\014nd)e(a)h(problem)f (on)330 3092 y(a)j(mac)m(hine)f(whic)m(h)f(he)i(do)s(es)f(not)h(ha)m(v) m(e)g(a)m(v)-5 b(ailable.)62 b(Ho)m(w)m(ev)m(er,)42 b(y)m(ou)37 b(need)h(to)g(think)e(when)h(y)m(ou)330 3202 y(collect)31 b(this)e(information)g(if)g(y)m(ou)i(w)m(an)m(t)g(it)f(to)h(ha)m(v)m(e) h(an)m(y)e(c)m(hance)i(of)e(b)s(eing)f(useful.)330 3339 y(F)-8 b(or)41 b(example,)i(man)m(y)d(p)s(eople)g(send)f(just)h(a)h (bac)m(ktrace,)k(but)40 b(that)h(is)e(nev)m(er)i(useful)e(b)m(y)h (itself.)330 3448 y(A)31 b(simple)f(bac)m(ktrace)j(with)d(argumen)m(ts) i(con)m(v)m(eys)h(little)d(ab)s(out)h(GCC)g(b)s(ecause)g(the)h (compiler)e(is)330 3558 y(largely)24 b(data-driv)m(en;)j(the)e(same)g (functions)e(are)i(called)f(o)m(v)m(er)i(and)e(o)m(v)m(er)j(for)d (di\013eren)m(t)g(R)-8 b(TL)25 b(insns,)330 3667 y(doing)k(di\013eren)m (t)h(things)g(dep)s(ending)d(on)k(the)f(details)g(of)g(the)h(insn.)330 3804 y(Most)h(of)e(the)h(argumen)m(ts)g(listed)e(in)g(the)i(bac)m (ktrace)i(are)e(useless)e(b)s(ecause)i(they)g(are)g(p)s(oin)m(ters)e (to)330 3914 y(R)-8 b(TL)33 b(list)g(structure.)50 b(The)33 b(n)m(umeric)f(v)-5 b(alues)33 b(of)h(the)g(p)s(oin)m(ters,)g(whic)m(h) e(the)i(debugger)f(prin)m(ts)f(in)330 4023 y(the)38 b(bac)m(ktrace,)k (ha)m(v)m(e)d(no)f(signi\014cance)f(whatev)m(er;)43 b(all)37 b(that)h(matters)h(is)e(the)h(con)m(ten)m(ts)i(of)e(the)330 4133 y(ob)5 b(jects)31 b(they)g(p)s(oin)m(t)e(to)i(\(and)f(most)h(of)g (the)f(con)m(ten)m(ts)i(are)f(other)g(suc)m(h)f(p)s(oin)m(ters\).)330 4270 y(In)e(addition,)g(most)i(compiler)e(passes)h(consist)g(of)g(one)h (or)f(more)g(lo)s(ops)f(that)i(scan)g(the)f(R)-8 b(TL)29 b(insn)330 4379 y(sequence.)59 b(The)36 b(most)g(vital)g(piece)g(of)h (information)d(ab)s(out)i(suc)m(h)g(a)h(lo)s(op|whic)m(h)d(insn)g(it)i (has)330 4489 y(reac)m(hed|is)30 b(usually)e(in)h(a)i(lo)s(cal)f(v)-5 b(ariable,)29 b(not)i(in)e(an)h(argumen)m(t.)330 4626 y(What)24 b(y)m(ou)f(need)g(to)h(pro)m(vide)f(in)e(addition)h(to)i(a)f (bac)m(ktrace)j(are)d(the)h(v)-5 b(alues)22 b(of)h(the)h(lo)s(cal)e(v) -5 b(ariables)330 4735 y(for)38 b(sev)m(eral)g(stac)m(k)h(frames)f(up.) 62 b(When)37 b(a)h(lo)s(cal)g(v)-5 b(ariable)36 b(or)i(an)g(argumen)m (t)g(is)f(an)g(R)-8 b(TX,)39 b(\014rst)330 4845 y(prin)m(t)27 b(its)g(v)-5 b(alue)27 b(and)g(then)h(use)g(the)g(GDB)h(command)e Fq(pr)g Fy(to)i(prin)m(t)e(the)h(R)-8 b(TL)27 b(expression)g(that)h(it) 330 4954 y(p)s(oin)m(ts)c(to.)40 b(\(If)25 b(GDB)h(do)s(esn't)f(run)f (on)h(y)m(our)g(mac)m(hine,)h(use)f(y)m(our)g(debugger)g(to)h(call)f (the)g(function)330 5064 y Fq(debug_rtx)c Fy(with)i(the)h(R)-8 b(TX)24 b(as)g(an)f(argumen)m(t.\))40 b(In)23 b(general,)i(whenev)m(er) f(a)g(v)-5 b(ariable)23 b(is)f(a)j(p)s(oin)m(ter,)330 5174 y(its)30 b(v)-5 b(alue)30 b(is)f(no)h(use)g(without)g(the)g(data)h (it)f(p)s(oin)m(ts)g(to.)275 5340 y(Here)g(are)h(some)g(things)e(that)i (are)g(not)g(necessary:)p eop %%Page: 297 307 297 306 bop 150 -116 a Fy(Chapter)30 b(10:)41 b(Rep)s(orting)30 b(Bugs)2329 b(297)225 299 y Fx(\017)60 b Fy(A)30 b(description)f(of)h (the)h(en)m(v)m(elop)s(e)g(of)f(the)h(bug.)330 426 y(Often)h(p)s(eople) f(who)h(encoun)m(ter)g(a)h(bug)e(sp)s(end)g(a)h(lot)g(of)g(time)g(in)m (v)m(estigating)g(whic)m(h)f(c)m(hanges)i(to)330 535 y(the)e(input)d(\014le)h(will)f(mak)m(e)k(the)e(bug)g(go)h(a)m(w)m(a)m (y)h(and)e(whic)m(h)f(c)m(hanges)j(will)27 b(not)k(a\013ect)h(it.)330 662 y(This)k(is)i(often)g(time)g(consuming)f(and)h(not)g(v)m(ery)h (useful,)f(b)s(ecause)g(the)h(w)m(a)m(y)g(w)m(e)g(will)c(\014nd)i(the) 330 771 y(bug)30 b(is)g(b)m(y)h(running)d(a)k(single)d(example)i(under) e(the)i(debugger)g(with)f(breakp)s(oin)m(ts,)g(not)h(b)m(y)g(pure)330 881 y(deduction)h(from)g(a)h(series)f(of)h(examples.)48 b(Y)-8 b(ou)34 b(migh)m(t)e(as)h(w)m(ell)f(sa)m(v)m(e)i(y)m(our)f(time) g(for)f(something)330 991 y(else.)330 1117 y(Of)d(course,)h(if)e(y)m (ou)h(can)h(\014nd)e(a)h(simpler)e(example)i(to)h(rep)s(ort)f Fr(inste)-5 b(ad)40 b Fy(of)29 b(the)h(original)d(one,)j(that)330 1227 y(is)36 b(a)i(con)m(v)m(enience.)63 b(Errors)36 b(in)g(the)h(output)g(will)e(b)s(e)i(easier)g(to)h(sp)s(ot,)h(running)c (under)g(the)j(de-)330 1336 y(bugger)30 b(will)e(tak)m(e)k(less)e (time,)g(etc.)42 b(Most)32 b(GCC)e(bugs)g(in)m(v)m(olv)m(e)g(just)g (one)h(function,)e(so)i(the)g(most)330 1446 y(straigh)m(tforw)m(ard)f (w)m(a)m(y)h(to)g(simplify)26 b(an)k(example)g(is)f(to)i(delete)f(all)f (the)h(function)f(de\014nitions)e(ex-)330 1556 y(cept)e(the)f(one)h (where)e(the)i(bug)e(o)s(ccurs.)39 b(Those)24 b(earlier)f(in)f(the)j (\014le)e(ma)m(y)i(b)s(e)e(replaced)h(b)m(y)g(external)330 1665 y(declarations)j(if)g(the)h(crucial)f(function)f(dep)s(ends)g(on)i (them.)40 b(\(Exception:)f(inline)25 b(functions)h(ma)m(y)330 1775 y(a\013ect)32 b(compilation)d(of)h(functions)f(de\014ned)g(later)i (in)e(the)h(\014le.\))330 1901 y(Ho)m(w)m(ev)m(er,)e(simpli\014cation) 22 b(is)i(not)h(vital;)h(if)d(y)m(ou)j(don't)e(w)m(an)m(t)i(to)f(do)g (this,)g(rep)s(ort)f(the)h(bug)g(an)m(yw)m(a)m(y)330 2011 y(and)30 b(send)f(the)i(en)m(tire)f(test)h(case)h(y)m(ou)f(used.) 225 2138 y Fx(\017)60 b Fy(In)28 b(particular,)g(some)i(p)s(eople)e (insert)g(conditionals)f(`)p Fq(#ifdef)i(BUG)p Fy(')f(around)h(a)g (statemen)m(t)i(whic)m(h,)330 2247 y(if)42 b(remo)m(v)m(ed,)48 b(mak)m(es)c(the)f(bug)g(not)h(happ)s(en.)77 b(These)43 b(are)h(just)f(clutter;)49 b(w)m(e)44 b(w)m(on't)g(pa)m(y)g(an)m(y)330 2357 y(atten)m(tion)c(to)g(them)f(an)m(yw)m(a)m(y)-8 b(.)68 b(Besides,)41 b(y)m(ou)e(should)e(send)h(us)h(cpp)f(output,)j (and)d(that)i(can't)330 2466 y(ha)m(v)m(e)32 b(conditionals.)225 2593 y Fx(\017)60 b Fy(A)30 b(patc)m(h)h(for)g(the)f(bug.)330 2720 y(A)e(patc)m(h)g(for)g(the)g(bug)f(is)g(useful)f(if)h(it)g(is)g(a) h(go)s(o)s(d)g(one.)40 b(But)28 b(don't)g(omit)g(the)g(necessary)g (informa-)330 2829 y(tion,)34 b(suc)m(h)g(as)g(the)g(test)h(case,)h(on) e(the)g(assumption)e(that)j(a)f(patc)m(h)g(is)f(all)g(w)m(e)h(need.)51 b(W)-8 b(e)35 b(migh)m(t)330 2939 y(see)c(problems)e(with)g(y)m(our)i (patc)m(h)g(and)f(decide)g(to)i(\014x)e(the)g(problem)f(another)i(w)m (a)m(y)-8 b(,)33 b(or)d(w)m(e)h(migh)m(t)330 3048 y(not)g(understand)d (it)i(at)h(all.)330 3175 y(Sometimes)41 b(with)f(a)i(program)f(as)h (complicated)f(as)h(GCC)f(it)g(is)g(v)m(ery)g(hard)g(to)h(construct)g (an)330 3285 y(example)37 b(that)g(will)e(mak)m(e)j(the)f(program)g (follo)m(w)f(a)h(certain)g(path)g(through)f(the)h(co)s(de.)61 b(If)37 b(y)m(ou)330 3394 y(don't)i(send)f(the)i(example,)h(w)m(e)e(w)m (on't)h(b)s(e)e(able)h(to)h(construct)f(one,)j(so)d(w)m(e)h(w)m(on't)f (b)s(e)g(able)f(to)330 3504 y(v)m(erify)30 b(that)h(the)f(bug)g(is)f (\014xed.)330 3631 y(And)i(if)f(w)m(e)i(can't)h(understand)c(what)j (bug)f(y)m(ou)g(are)h(trying)f(to)h(\014x,)g(or)f(wh)m(y)g(y)m(our)h (patc)m(h)g(should)330 3740 y(b)s(e)e(an)g(impro)m(v)m(emen)m(t,)h(w)m (e)g(w)m(on't)g(install)d(it.)40 b(A)31 b(test)g(case)g(will)d(help)h (us)h(to)h(understand.)330 3867 y(See)e Fq(http://gcc.gnu.org/contr)o (ibut)o(e.h)o(tml)22 b Fy(for)29 b(guidelines)d(on)i(ho)m(w)h(to)g(mak) m(e)h(it)e(easy)h(for)330 3976 y(us)h(to)h(understand)d(and)i(install)e (y)m(our)j(patc)m(hes.)225 4103 y Fx(\017)60 b Fy(A)30 b(guess)h(ab)s(out)f(what)g(the)h(bug)f(is)f(or)h(what)h(it)f(dep)s (ends)e(on.)330 4230 y(Suc)m(h)36 b(guesses)g(are)h(usually)d(wrong.)59 b(Ev)m(en)36 b(I)h(can't)g(guess)f(righ)m(t)g(ab)s(out)h(suc)m(h)f (things)f(without)330 4339 y(\014rst)30 b(using)f(the)h(debugger)g(to)h (\014nd)e(the)i(facts.)225 4466 y Fx(\017)60 b Fy(A)30 b(core)i(dump)c(\014le.)330 4593 y(W)-8 b(e)37 b(ha)m(v)m(e)g(no)e(w)m (a)m(y)i(of)f(examining)e(a)i(core)h(dump)c(for)j(y)m(our)g(t)m(yp)s(e) f(of)h(mac)m(hine)g(unless)e(w)m(e)i(ha)m(v)m(e)330 4702 y(an)31 b(iden)m(tical)e(system|and)i(if)f(w)m(e)h(do)g(ha)m(v)m(e)h (one,)g(w)m(e)f(should)e(b)s(e)h(able)h(to)g(repro)s(duce)f(the)h (crash)330 4812 y(ourselv)m(es.)150 5046 y Fs(10.4)68 b(The)45 b(gccbug)f(script)275 5230 y Fy(T)-8 b(o)32 b(simplify)d(creation)j(of)h(bug)e(rep)s(orts,)h(and)g(to)h(allo)m(w)e (b)s(etter)h(trac)m(king)h(of)f(rep)s(orts,)g(w)m(e)h(use)f(the)150 5340 y(GNA)-8 b(TS)27 b(bug)g(trac)m(king)g(system.)40 b(P)m(art)27 b(of)h(that)f(system)g(is)f(the)h Fq(gccbug)f Fy(script.)38 b(This)25 b(is)i(a)g(Unix)f(shell)p eop %%Page: 298 308 298 307 bop 150 -116 a Fy(298)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y(script,)36 b(so)f(y)m(ou)h(need)f(a)g (shell)e(to)j(run)e(it.)55 b(It)35 b(is)f(normally)g(installed)f(in)h (the)h(same)h(directory)e(where)150 408 y Fq(gcc)29 b Fy(is)h(installed.)275 543 y(The)e(gccbug)h(script)e(is)h(deriv)m(ed)f (from)h(send-pr,)g(see)h(section)g(\\Creating)g(new)f(Problem)f(Rep)s (orts")150 653 y(in)f Fn(Rep)s(orting)g(Problems)t Fy(.)38 b(When)27 b(in)m(v)m(ok)m(ed,)h(it)f(starts)h(a)f(text)h(editor)f(so)g (y)m(ou)h(can)f(\014ll)e(out)j(the)f(v)-5 b(arious)150 762 y(\014elds)30 b(of)i(the)g(rep)s(ort.)45 b(When)31 b(the)h(y)m(ou)h(quit)d(the)i(editor,)g(the)g(rep)s(ort)g(is)e (automatically)i(send)f(to)i(the)150 872 y(bug)d(rep)s(orting)f (address.)275 1006 y(A)37 b(n)m(um)m(b)s(er)e(of)i(\014elds)f(in)g (this)f(bug)i(rep)s(ort)f(form)h(are)g(sp)s(eci\014c)f(to)h(GCC,)g(and) g(are)g(explained)e(at)150 1116 y Fq(http://gcc.gnu.org/gnats)o(.htm)o (l)p Fy(.)p eop %%Page: 299 309 299 308 bop 150 -116 a Fy(Chapter)30 b(11:)41 b(Ho)m(w)31 b(T)-8 b(o)31 b(Get)h(Help)d(with)g(GCC)1811 b(299)150 299 y Fv(11)80 b(Ho)l(w)53 b(T)-13 b(o)53 b(Get)g(Help)h(with)g(GCC)275 533 y Fy(If)29 b(y)m(ou)i(need)f(help)f(installing,)f(using)h(or)h(c)m (hanging)h(GCC,)f(there)g(are)h(t)m(w)m(o)h(w)m(a)m(ys)f(to)g(\014nd)e (it:)225 667 y Fx(\017)60 b Fy(Send)20 b(a)h(message)g(to)h(a)f (suitable)e(net)m(w)m(ork)i(mailing)e(list.)36 b(First)20 b(try)h Fq(gcc-help@gcc.gnu.org)15 b Fy(\(for)330 777 y(help)33 b(installing)e(or)j(using)f(GCC\),)h(and)f(if)h(that)g (brings)e(no)i(resp)s(onse,)h(try)f Fq(gcc@gcc.gnu.org)p Fy(.)330 887 y(F)-8 b(or)32 b(help)e(c)m(hanging)h(GCC,)g(ask)g Fq(gcc@gcc.gnu.org)p Fy(.)39 b(If)30 b(y)m(ou)i(think)e(y)m(ou)h(ha)m (v)m(e)h(found)e(a)i(bug)e(in)330 996 y(GCC,)35 b(please)g(rep)s(ort)g (it)f(follo)m(wing)g(the)h(instructions)e(at)j(see)g(Section)f(10.3)i ([Bug)f(Rep)s(orting],)330 1106 y(page)31 b(294.)225 1240 y Fx(\017)60 b Fy(Lo)s(ok)35 b(in)f(the)h(service)g(directory)g (for)g(someone)g(who)g(migh)m(t)g(help)e(y)m(ou)j(for)f(a)g(fee.)56 b(The)34 b(service)330 1350 y(directory)c(is)f(found)g(at)i Fq(http://www.gnu.org/prep/se)o(rvic)o(e.h)o(tml)p Fy(.)p eop %%Page: 300 310 300 309 bop 150 -116 a Fy(300)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 301 311 301 310 bop 150 -116 a Fy(Chapter)30 b(12:)41 b(Con)m(tributing)29 b(to)i(GCC)f(Dev)m(elopmen)m(t)1551 b(301)150 299 y Fv(12)80 b(Con)l(tributing)52 b(to)h(GCC)g(Dev)l(elopmen)l(t)275 533 y Fy(If)29 b(y)m(ou)g(w)m(ould)g(lik)m(e)f(to)j(help)d(pretest)i (GCC)f(releases)g(to)h(assure)f(they)h(w)m(ork)g(w)m(ell,)f(our)g (curren)m(t)g(de-)150 643 y(v)m(elopmen)m(t)e(sources)g(are)g(a)m(v)-5 b(ailable)27 b(b)m(y)f(CVS)h(\(see)g Fq(http://gcc.gnu.org/cvs.htm)o(l) p Fy(\).)34 b(Source)27 b(and)150 752 y(binary)i(snapshots)g(are)i (also)f(a)m(v)-5 b(ailable)30 b(for)g(FTP;)h(see)g Fq (http://gcc.gnu.org/snap)o(shot)o(s.h)o(tml)p Fy(.)275 887 y(If)39 b(y)m(ou)i(w)m(ould)e(lik)m(e)h(to)h(w)m(ork)f(on)h(impro)m (v)m(emen)m(ts)f(to)h(GCC,)f(please)g(read)h(the)f(advice)g(at)h(these) 150 996 y(URLs:)390 1125 y Fq(http://gcc.gnu.org/contr)o(ibut)o(e.ht)o (ml)390 1229 y(http://gcc.gnu.org/contr)o(ibut)o(ewhy)o(.ht)o(ml)150 1363 y Fy(for)33 b(information)e(on)j(ho)m(w)f(to)h(mak)m(e)g(useful)d (con)m(tributions)h(and)h(a)m(v)m(oid)g(duplication)e(of)i(e\013ort.)50 b(Sug-)150 1473 y(gested)31 b(pro)5 b(jects)31 b(are)g(listed)e(at)i Fq(http://gcc.gnu.org/proje)o(cts)o(/)p Fy(.)p eop %%Page: 302 312 302 311 bop 150 -116 a Fy(302)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 303 313 303 312 bop 150 -116 a Fy(Chapter)30 b(13:)41 b(Using)30 b(GCC)g(on)g(VMS)2137 b(303)150 299 y Fv(13)80 b(Using)54 b(GCC)f(on)g(VMS)275 543 y Fy(Here)30 b(is)g(ho)m(w)g(to)h(use)f(GCC)g (on)h(VMS.)150 809 y Fs(13.1)68 b(Include)45 b(Files)g(and)g(VMS)275 1005 y Fy(Due)d(to)h(the)g(di\013erences)e(b)s(et)m(w)m(een)i(the)g (\014lesystems)e(of)i(Unix)e(and)h(VMS,)g(GCC)g(attempts)h(to)150 1114 y(translate)24 b(\014le)e(names)i(in)e(`)p Fq(#include)p Fy(')g(in)m(to)i(names)f(that)h(VMS)g(will)d(understand.)36 b(The)24 b(basic)f(strategy)150 1224 y(is)30 b(to)i(prep)s(end)d(a)i (pre\014x)f(to)i(the)f(sp)s(eci\014cation)f(of)h(the)g(include)e (\014le,)h(con)m(v)m(ert)j(the)e(whole)f(\014lename)g(to)150 1333 y(a)g(VMS)f(\014lename,)g(and)g(then)g(try)g(to)h(op)s(en)f(the)g (\014le.)40 b(GCC)29 b(tries)f(v)-5 b(arious)29 b(pre\014xes)f(one)i(b) m(y)f(one)h(un)m(til)150 1443 y(one)h(of)f(them)h(succeeds:)199 1581 y(1.)61 b(The)34 b(\014rst)g(pre\014x)f(is)g(the)i(`)p Fq(GNU_CC_INCLUDE:)p Fy(')c(logical)j(name:)48 b(this)34 b(is)f(where)h(GNU)h(C)f(header)330 1690 y(\014les)24 b(are)i(traditionally)c(stored.)39 b(If)25 b(y)m(ou)g(wish)f(to)i (store)f(header)g(\014les)f(in)g(non-standard)g(lo)s(cations,)330 1800 y(then)d(y)m(ou)h(can)h(assign)e(the)g(logical)h(`)p Fq(GNU_CC_INCLUDE)p Fy(')c(to)k(b)s(e)g(a)g(searc)m(h)g(list,)g(where)g (eac)m(h)g(elemen)m(t)330 1910 y(of)31 b(the)f(list)f(is)h(suitable)e (for)j(use)f(with)f(a)h(ro)s(oted)h(logical.)199 2046 y(2.)61 b(The)31 b(next)h(pre\014x)f(tried)g(is)g(`)p Fq(SYS$SYSROOT:[SYSLIB.])p Fy('.)39 b(This)30 b(is)h(where)g(V)-10 b(AX-C)32 b(header)g(\014les)330 2155 y(are)f(traditionally)d(stored.) 199 2291 y(3.)61 b(If)29 b(the)h(include)d(\014le)h(sp)s(eci\014cation) h(b)m(y)g(itself)f(is)h(a)h(v)-5 b(alid)27 b(VMS)j(\014lename,)f(the)h (prepro)s(cessor)e(then)330 2401 y(uses)i(this)f(name)i(with)e(no)h (pre\014x)f(in)g(an)i(attempt)g(to)g(op)s(en)f(the)g(include)f(\014le.) 199 2537 y(4.)61 b(If)34 b(the)h(\014le)f(sp)s(eci\014cation)f(is)h (not)g(a)h(v)-5 b(alid)33 b(VMS)i(\014lename)f(\(i.e.)h(do)s(es)f(not)h (con)m(tain)g(a)f(device)h(or)330 2647 y(a)c(directory)g(sp)s (eci\014er,)f(and)g(con)m(tains)h(a)h(`)p Fq(/)p Fy(')f(c)m (haracter\),)i(the)e(prepro)s(cessor)g(tries)f(to)i(con)m(v)m(ert)g(it) 330 2756 y(from)e(Unix)f(syn)m(tax)i(to)g(VMS)f(syn)m(tax.)330 2892 y(Con)m(v)m(ersion)39 b(w)m(orks)f(lik)m(e)h(this:)57 b(the)39 b(\014rst)f(directory)g(name)h(b)s(ecomes)h(a)f(device,)i(and) e(the)g(rest)330 3002 y(of)d(the)g(directories)f(are)h(con)m(v)m(erted) h(in)m(to)f(VMS-format)h(directory)e(names.)57 b(F)-8 b(or)37 b(example,)g(the)330 3112 y(name)44 b(`)p Fq(X11/foobar.h)p Fy(')d(is)j(translated)f(to)i(`)p Fq(X11:[000000]foobar.h)p Fy(')39 b(or)45 b(`)p Fq(X11:foobar.h)p Fy(',)330 3221 y(whic)m(hev)m(er)38 b(one)h(can)g(b)s(e)f(op)s(ened.)65 b(This)36 b(strategy)k(allo)m(ws)e(y)m(ou)h(to)h(assign)e(a)g(logical)h (name)f(to)330 3331 y(p)s(oin)m(t)29 b(to)i(the)g(actual)g(lo)s(cation) f(of)g(the)h(header)f(\014les.)199 3467 y(5.)61 b(If)30 b(none)g(of)h(these)f(strategies)i(succeeds,)f(the)f(`)p Fq(#include)p Fy(')f(fails.)275 3631 y(Include)f(directiv)m(es)i(of)h (the)f(form:)390 3763 y Fq(#include)46 b(foobar)150 3901 y Fy(are)c(a)f(common)h(source)f(of)h(incompatibilit)m(y)c(b)s(et)m(w)m (een)k(V)-10 b(AX-C)41 b(and)g(GCC.)73 b(V)-10 b(AX-C)42 b(treats)g(this)150 4011 y(m)m(uc)m(h)33 b(lik)m(e)f(a)i(standard)e Fq(#include)c()i Fy(directiv)m(e.)49 b(That)33 b(is)f(incompatible)f(with)h(the)h(ISO)150 4120 y(C)22 b(b)s(eha)m(vior)g(implemen)m(ted)g(b)m(y)g(GCC:)h(to)h(expand)e(the)h (name)g Fq(foobar)e Fy(as)i(a)g(macro.)39 b(Macro)24 b(expansion)150 4230 y(should)k(ev)m(en)m(tually)j(yield)d(one)j(of)g (the)f(t)m(w)m(o)i(standard)d(formats)i(for)f Fq(#include)p Fy(:)390 4362 y Fq(#include)46 b(")p Fn(\014le)5 b Fq(")390 4466 y(#include)46 b(<)p Fn(\014le)5 b Fq(>)275 4604 y Fy(If)46 b(y)m(ou)h(ha)m(v)m(e)h(this)e(problem,)j(the)e(b)s(est)f (solution)g(is)g(to)h(mo)s(dify)e(the)i(source)g(to)g(con)m(v)m(ert)i (the)150 4713 y Fq(#include)36 b Fy(directiv)m(es)i(to)h(one)g(of)g (the)f(t)m(w)m(o)i(standard)e(forms.)64 b(That)39 b(will)c(w)m(ork)k (with)e(either)h(com-)150 4823 y(piler.)57 b(If)35 b(y)m(ou)i(w)m(an)m (t)g(a)g(quic)m(k)f(and)g(dirt)m(y)f(\014x,)j(de\014ne)d(the)i(\014le)e (names)h(as)h(macros)g(with)e(the)h(prop)s(er)150 4932 y(expansion,)29 b(lik)m(e)h(this:)390 5064 y Fq(#define)46 b(stdio)g()150 5202 y Fy(This)29 b(will)e(w)m(ork,)k(as)g (long)f(as)g(the)h(name)f(do)s(esn't)g(con\015ict)h(with)e(an)m(ything) g(else)i(in)e(the)h(program.)275 5340 y(Another)g(source)g(of)h (incompatibilit)m(y)c(is)j(that)h(V)-10 b(AX-C)30 b(assumes)g(that:)p eop %%Page: 304 314 304 313 bop 150 -116 a Fy(304)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))390 299 y Fq(#include)46 b("foobar")150 453 y Fy(is)26 b(actually)h(asking)g(for)h(the)f(\014le)g(`)p Fq(foobar.h)p Fy('.)38 b(GCC)27 b(do)s(es)g(not)g(mak)m(e)i(this)d (assumption,)h(and)g(instead)150 562 y(tak)m(es)37 b(what)f(y)m(ou)h (ask)f(for)f(literally;)i(it)f(tries)f(to)i(read)e(the)i(\014le)e(`)p Fq(foobar)p Fy('.)56 b(The)35 b(b)s(est)h(w)m(a)m(y)h(to)f(a)m(v)m(oid) 150 672 y(this)29 b(problem)g(is)g(to)j(alw)m(a)m(ys)e(sp)s(ecify)g (the)g(desired)f(\014le)g(extension)h(in)f(y)m(our)i(include)d (directiv)m(es.)275 825 y(GCC)g(for)i(VMS)f(is)f(distributed)f(with)h (a)h(set)h(of)g(include)d(\014les)h(that)i(is)e(su\016cien)m(t)h(to)h (compile)f(most)150 935 y(general)41 b(purp)s(ose)e(programs.)72 b(Ev)m(en)41 b(though)g(the)g(GCC)g(distribution)c(do)s(es)k(not)g(con) m(tain)g(header)150 1045 y(\014les)d(to)j(de\014ne)d(constan)m(ts)j (and)e(structures)g(for)g(some)h(VMS)f(system-sp)s(eci\014c)g (functions,)h(there)g(is)150 1154 y(no)e(reason)g(wh)m(y)f(y)m(ou)h (cannot)h(use)e(GCC)h(with)e(an)m(y)i(of)g(these)h(functions.)61 b(Y)-8 b(ou)39 b(\014rst)e(ma)m(y)h(ha)m(v)m(e)h(to)150 1264 y(generate)32 b(or)f(create)i(header)e(\014les,)f(either)g(b)m(y)h (using)f(the)h(public)d(domain)i(utilit)m(y)f Fq(UNSDL)h Fy(\(whic)m(h)g(can)150 1373 y(b)s(e)e(found)f(on)h(a)h(DECUS)f(tap)s (e\),)h(or)g(b)m(y)f(extracting)h(the)g(relev)-5 b(an)m(t)28 b(mo)s(dules)f(from)h(one)h(of)f(the)h(system)150 1483 y(macro)i(libraries,)d(and)h(using)g(an)i(editor)f(to)h(construct)f(a)h (C)f(header)g(\014le.)275 1637 y(A)d Fq(#include)f Fy(\014le)g(name)i (cannot)g(con)m(tain)g(a)g(DECNET)f(no)s(de)g(name.)40 b(The)27 b(prepro)s(cessor)g(rep)s(orts)150 1746 y(an)40 b(I/O)g(error)g(if)g(y)m(ou)g(attempt)i(to)f(use)f(a)g(no)s(de)g(name,) j(whether)d(explicitly)-8 b(,)41 b(or)f(implicitly)d(via)j(a)150 1856 y(logical)30 b(name.)150 2161 y Fs(13.2)68 b(Global)46 b(Declarations)h(and)d(VMS)275 2373 y Fy(GCC)29 b(do)s(es)h(not)g(pro)m (vide)f(the)h Fq(globalref)p Fy(,)e Fq(globaldef)g Fy(and)h Fq(globalvalue)e Fy(k)m(eyw)m(ords)j(of)g(V)-10 b(AX-)150 2482 y(C.)40 b(Y)-8 b(ou)28 b(can)h(get)g(the)f(same)h(e\013ect)g(with) e(an)h(obscure)g(feature)g(of)h(GAS,)f(the)g(GNU)h(assem)m(bler.)39 b(\(This)150 2592 y(requires)31 b(GAS)h(v)m(ersion)f(1.39)j(or)e (later.\))46 b(The)32 b(follo)m(wing)e(macros)j(allo)m(w)f(y)m(ou)g(to) h(use)f(this)f(feature)h(in)150 2701 y(a)f(fairly)d(natural)i(w)m(a)m (y:)390 2849 y Fq(#ifdef)46 b(__GNUC__)390 2953 y(#define)g (GLOBALREF\(TYPE,NAME\))1044 b(\\)485 3057 y(TYPE)47 b(NAME)1860 b(\\)485 3161 y(asm)47 b(\("_$$PsectAttributes_GLOBA)o(LSY) o(MBOL)o($$")41 b(#NAME\))390 3264 y(#define)46 b (GLOBALDEF\(TYPE,NAME,VALU)o(E\))757 b(\\)485 3368 y(TYPE)47 b(NAME)1860 b(\\)485 3472 y(asm)47 b(\("_$$PsectAttributes_GLOBA)o(LSY) o(MBOL)o($$")41 b(#NAME\))46 b(\\)581 3576 y(=)h(VALUE)390 3680 y(#define)f(GLOBALVALUEREF\(TYPE,NAME)o(\))805 b(\\)485 3783 y(const)47 b(TYPE)f(NAME[1])1430 b(\\)485 3887 y(asm)47 b(\("_$$PsectAttributes_GLOBA)o(LVA)o(LUE$)o($")42 b(#NAME\))390 3991 y(#define)k(GLOBALVALUEDEF\(TYPE,NAME)o(,VA)o(LUE\))518 b(\\)485 4095 y(const)47 b(TYPE)f(NAME[1])1430 b(\\)485 4198 y(asm)47 b(\("_$$PsectAttributes_GLOBA)o(LVA)o(LUE$)o($")42 b(#NAME\))93 b(\\)581 4302 y(=)47 b({VALUE})390 4406 y(#else)390 4510 y(#define)f(GLOBALREF\(TYPE,NAME\))c(\\)485 4614 y(globalref)k(TYPE)g(NAME)390 4717 y(#define)g (GLOBALDEF\(TYPE,NAME,VALU)o(E\))41 b(\\)485 4821 y(globaldef)46 b(TYPE)g(NAME)h(=)g(VALUE)390 4925 y(#define)f (GLOBALVALUEDEF\(TYPE,NAME)o(,VA)o(LUE\))41 b(\\)485 5029 y(globalvalue)k(TYPE)i(NAME)f(=)i(VALUE)390 5132 y(#define)e(GLOBALVALUEREF\(TYPE,NAME)o(\))c(\\)485 5236 y(globalvalue)j(TYPE)i(NAME)390 5340 y(#endif)p eop %%Page: 305 315 305 314 bop 150 -116 a Fy(Chapter)30 b(13:)41 b(Using)30 b(GCC)g(on)g(VMS)2137 b(305)150 299 y(\(The)23 b Fq (_$$PsectAttributes_GLOBALS)o(YMBO)o(L)18 b Fy(pre\014x)k(at)j(the)e (start)i(of)e(the)h(name)g(is)f(remo)m(v)m(ed)h(b)m(y)g(the)150 408 y(assem)m(bler,)33 b(after)g(it)g(has)f(mo)s(di\014ed)f(the)i (attributes)f(of)h(the)g(sym)m(b)s(ol\).)47 b(These)33 b(macros)g(are)g(pro)m(vided)150 518 y(in)e(the)h(VMS)g(binaries)d (distribution)g(in)h(a)i(header)g(\014le)f(`)p Fq(GNU_HACKS.H)p Fy('.)43 b(An)32 b(example)f(of)h(the)g(usage)150 628 y(is:)390 751 y Fq(GLOBALREF)45 b(\(int,)i(ijk\);)390 855 y(GLOBALDEF)e(\(int,)i(jkl,)f(0\);)275 985 y Fy(The)d(macros)h Fq(GLOBALREF)d Fy(and)i Fq(GLOBALDEF)e Fy(cannot)j(b)s(e)f(used)g (straigh)m(tforw)m(ardly)g(for)g(arra)m(ys,)150 1094 y(since)31 b(there)i(is)e(no)h(w)m(a)m(y)h(to)g(insert)e(the)h(arra)m (y)h(dimension)d(in)m(to)i(the)g(declaration)g(at)h(the)f(righ)m(t)g (place.)150 1204 y(Ho)m(w)m(ev)m(er,)39 b(y)m(ou)c(can)h(declare)f(an)g (arra)m(y)h(with)e(these)i(macros)f(if)f(y)m(ou)i(\014rst)f(de\014ne)f (a)i(t)m(yp)s(edef)f(for)g(the)150 1314 y(arra)m(y)c(t)m(yp)s(e,)g(lik) m(e)e(this:)390 1437 y Fq(typedef)46 b(int)h(intvector[10];)390 1541 y(GLOBALREF)e(\(intvector,)g(foo\);)275 1671 y Fy(Arra)m(y)29 b(and)f(structure)g(initializers)e(will)g(also)j(break)g(the)g(macros;) h(y)m(ou)g(can)f(de\014ne)f(the)h(initializer)150 1780 y(to)i(b)s(e)e(a)h(macro)h(of)f(its)f(o)m(wn,)i(or)e(y)m(ou)i(can)f (expand)f(the)h Fq(GLOBALDEF)e Fy(macro)i(b)m(y)g(hand.)40 b(Y)-8 b(ou)30 b(ma)m(y)g(\014nd)150 1890 y(a)39 b(case)i(where)d(y)m (ou)i(wish)d(to)j(use)e(the)i Fq(GLOBALDEF)c Fy(macro)k(with)d(a)j (large)f(arra)m(y)-8 b(,)42 b(but)d(y)m(ou)g(are)h(not)150 1999 y(in)m(terested)32 b(in)f(explicitly)e(initializing)g(eac)m(h)k (elemen)m(t)f(of)h(the)f(arra)m(y)-8 b(.)47 b(In)31 b(suc)m(h)h(cases)h (y)m(ou)f(can)g(use)g(an)150 2109 y(initializer)27 b(lik)m(e:)40 b Fq({0,})p Fy(,)30 b(whic)m(h)f(will)f(initialize)f(the)k(en)m(tire)f (arra)m(y)h(to)g Fq(0)p Fy(.)275 2239 y(A)e(shortcoming)g(of)h(this)f (implemen)m(tation)f(is)h(that)h(a)g(v)-5 b(ariable)28 b(declared)h(with)g Fq(GLOBALVALUEREF)150 2348 y Fy(or)h Fq(GLOBALVALUEDEF)d Fy(is)i(alw)m(a)m(ys)i(an)f(arra)m(y)-8 b(.)42 b(F)-8 b(or)31 b(example,)g(the)f(declaration:)390 2472 y Fq(GLOBALVALUEREF\(int,)43 b(ijk\);)150 2602 y Fy(declares)33 b(the)g(v)-5 b(ariable)32 b Fq(ijk)h Fy(as)g(an)g(arra)m (y)h(of)f(t)m(yp)s(e)h Fq(int)29 b([1])p Fy(.)49 b(This)31 b(is)h(done)h(b)s(ecause)g(a)h(globalv)-5 b(alue)150 2711 y(is)34 b(actually)h(a)g(constan)m(t;)k(its)34 b(\\v)-5 b(alue")36 b(is)e(what)h(the)g(link)m(er)f(w)m(ould)f(normally)h (consider)g(an)h(address.)150 2821 y(That)30 b(is)f(not)h(ho)m(w)g(an)f (in)m(teger)i(v)-5 b(alue)29 b(w)m(orks)h(in)e(C,)i(but)f(it)g(is)g(ho) m(w)h(an)g(arra)m(y)g(w)m(orks.)41 b(So)30 b(treating)g(the)150 2930 y(sym)m(b)s(ol)e(as)i(an)f(arra)m(y)h(name)g(giv)m(es)g(consisten) m(t)g(results|with)d(the)i(exception)h(that)g(the)g(v)-5 b(alue)29 b(seems)150 3040 y(to)34 b(ha)m(v)m(e)g(the)f(wrong)g(t)m(yp) s(e.)49 b Fl(Don't)33 b(try)g(to)h(access)g(an)f(elemen)m(t)h(of)g(the) f(arra)m(y)-8 b(.)49 b Fy(It)34 b(do)s(esn't)e(ha)m(v)m(e)j(an)m(y)150 3150 y(elemen)m(ts.)41 b(The)30 b(arra)m(y)h(\\address")f(ma)m(y)h(not) g(b)s(e)f(the)g(address)g(of)g(actual)h(storage.)275 3279 y(The)i(fact)h(that)h(the)e(sym)m(b)s(ol)g(is)f(an)i(arra)m(y)g (ma)m(y)g(lead)g(to)g(w)m(arnings)e(where)h(the)h(v)-5 b(ariable)33 b(is)f(used.)150 3389 y(Insert)e(t)m(yp)s(e)h(casts)g(to)h (a)m(v)m(oid)f(the)g(w)m(arnings.)40 b(Here)31 b(is)f(an)h(example;)f (it)h(tak)m(es)h(adv)-5 b(an)m(tage)32 b(of)f(the)g(ISO)150 3498 y(C)f(feature)h(allo)m(wing)e(macros)i(that)g(expand)e(to)i(use)f (the)h(same)g(name)f(as)h(the)f(macro)h(itself.)390 3622 y Fq(GLOBALVALUEREF)44 b(\(int,)i(ss$_normal\);)390 3726 y(GLOBALVALUEDEF)e(\(int,)i(xyzzy,123\);)390 3830 y(#ifdef)g(__GNUC__) 390 3933 y(#define)g(ss$_normal)f(\(\(int\))h(ss$_normal\))390 4037 y(#define)g(xyzzy)g(\(\(int\))g(xyzzy\))390 4141 y(#endif)275 4271 y Fy(Don't)30 b(use)g Fq(globaldef)d Fy(or)j Fq(globalref)e Fy(with)g(a)j(v)-5 b(ariable)28 b(whose)i(t)m(yp)s(e)g(is)f(an)h(en)m(umeration)g(t)m(yp)s(e;)150 4380 y(this)e(is)g(not)h(implemen)m(ted.)39 b(Instead,)30 b(mak)m(e)g(the)f(v)-5 b(ariable)28 b(an)h(in)m(teger,)h(and)f(use)f(a) i Fq(globalvaluedef)150 4490 y Fy(for)g(eac)m(h)i(of)e(the)h(en)m (umeration)f(v)-5 b(alues.)40 b(An)30 b(example)g(of)g(this)g(w)m(ould) f(b)s(e:)390 4614 y Fq(#ifdef)46 b(__GNUC__)390 4717 y(GLOBALDEF)f(\(int,)i(color,)f(0\);)390 4821 y(GLOBALVALUEDEF)e (\(int,)i(RED,)h(0\);)390 4925 y(GLOBALVALUEDEF)d(\(int,)i(BLUE,)h (1\);)390 5029 y(GLOBALVALUEDEF)d(\(int,)i(GREEN,)g(3\);)390 5132 y(#else)390 5236 y(enum)h(globaldef)e(color)h({RED,)h(BLUE,)f (GREEN)g(=)i(3};)390 5340 y(#endif)p eop %%Page: 306 316 306 315 bop 150 -116 a Fy(306)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fs(13.3)68 b(Other)46 b(VMS)d(Issues)275 497 y Fy(GCC)38 b(automatically)h(arranges)g(for)g Fq(main)f Fy(to)i(return)e(1)h(b)m(y)g(default)f(if)g(y)m(ou)i(fail)e (to)h(sp)s(ecify)f(an)150 606 y(explicit)26 b(return)g(v)-5 b(alue.)39 b(This)26 b(will)f(b)s(e)i(in)m(terpreted)f(b)m(y)i(VMS)f (as)h(a)f(status)h(co)s(de)g(indicating)d(a)j(normal)150 716 y(successful)h(completion.)40 b(V)-8 b(ersion)30 b(1)h(of)f(GCC)g(did)f(not)i(pro)m(vide)e(this)g(default.)275 855 y(GCC)c(on)h(VMS)g(w)m(orks)g(only)f(with)f(the)j(GNU)f(assem)m (bler,)h(GAS.)39 b(Y)-8 b(ou)26 b(need)g(v)m(ersion)f(1.37)j(or)e (later)150 965 y(of)34 b(GAS)g(in)f(order)h(to)g(pro)s(duce)f(v)-5 b(alue)34 b(debugging)f(information)f(for)i(the)h(VMS)f(debugger.)51 b(Use)35 b(the)150 1075 y(ordinary)29 b(VMS)h(link)m(er)f(with)g(the)h (ob)5 b(ject)32 b(\014les)d(pro)s(duced)g(b)m(y)h(GAS.)275 1214 y(Under)39 b(previous)f(v)m(ersions)h(of)h(GCC,)g(the)g(generated) h(co)s(de)f(w)m(ould)f(o)s(ccasionally)g(giv)m(e)h(strange)150 1324 y(results)29 b(when)h(link)m(ed)e(to)j(the)g(sharable)e(`)p Fq(VAXCRTL)p Fy(')g(library)-8 b(.)39 b(No)m(w)31 b(this)e(should)g(w)m (ork.)275 1464 y(A)d(ca)m(v)m(eat)i(for)e(use)f(of)i Fq(const)d Fy(global)h(v)-5 b(ariables:)37 b(the)26 b Fq(const)f Fy(mo)s(di\014er)e(m)m(ust)j(b)s(e)f(sp)s(eci\014ed)g(in)f (ev)m(ery)150 1573 y(external)f(declaration)g(of)g(the)h(v)-5 b(ariable)22 b(in)f(all)h(of)i(the)f(source)h(\014les)e(that)h(use)g (that)h(v)-5 b(ariable.)37 b(Otherwise)150 1683 y(the)f(link)m(er)d (will)g(issue)h(w)m(arnings)h(ab)s(out)g(con\015icting)f(attributes)h (for)g(the)h(v)-5 b(ariable.)55 b(Y)-8 b(our)35 b(program)150 1792 y(will)28 b(still)g(w)m(ork)i(despite)g(the)h(w)m(arnings,)e(but)h (the)g(v)-5 b(ariable)29 b(will)f(b)s(e)i(placed)g(in)f(writable)f (storage.)275 1932 y(Although)23 b(the)i(VMS)g(link)m(er)e(do)s(es)h (distinguish)d(b)s(et)m(w)m(een)26 b(upp)s(er)c(and)j(lo)m(w)m(er)g (case)g(letters)g(in)f(global)150 2042 y(sym)m(b)s(ols,)k(most)i(VMS)g (compilers)e(con)m(v)m(ert)j(all)d(suc)m(h)h(sym)m(b)s(ols)f(in)m(to)i (upp)s(er)d(case)k(and)d(most)i(run-time)150 2151 y(library)25 b(routines)i(also)g(ha)m(v)m(e)i(upp)s(er)d(case)i(names.)40 b(T)-8 b(o)28 b(b)s(e)f(able)g(to)i(reliably)c(call)i(suc)m(h)g (routines,)g(GCC)150 2261 y(\(b)m(y)32 b(means)f(of)h(the)g(assem)m (bler)f(GAS\))h(con)m(v)m(erts)h(global)e(sym)m(b)s(ols)f(in)m(to)h (upp)s(er)f(case)i(lik)m(e)f(other)h(VMS)150 2370 y(compilers.)54 b(Ho)m(w)m(ev)m(er,)39 b(since)c(the)g(usual)f(practice)i(in)e(C)h(is)f (to)i(distinguish)c(case,)37 b(GCC)e(\(via)h(GAS\))150 2480 y(tries)26 b(to)h(preserv)m(e)g(usual)e(C)h(b)s(eha)m(vior)g(b)m (y)g(augmen)m(ting)h(eac)m(h)h(name)e(that)i(is)d(not)i(all)e(lo)m(w)m (er)i(case.)41 b(This)150 2590 y(means)34 b(truncating)g(the)h(name)f (to)h(at)g(most)g(23)g(c)m(haracters)h(and)e(then)g(adding)f(more)h(c)m (haracters)i(at)150 2699 y(the)27 b(end)f(whic)m(h)g(enco)s(de)h(the)g (case)h(pattern)f(of)g(those)g(23.)40 b(Names)28 b(whic)m(h)d(con)m (tain)j(at)f(least)g(one)g(dollar)150 2809 y(sign)i(are)i(an)f (exception;)h(they)g(are)g(con)m(v)m(erted)g(directly)e(in)m(to)i(upp)s (er)d(case)k(without)d(augmen)m(tation.)275 2948 y(Name)e(augmen)m (tation)g(yields)e(bad)h(results)f(for)h(programs)g(that)i(use)e (precompiled)e(libraries)g(\(suc)m(h)150 3058 y(as)45 b(Xlib\))e(whic)m(h)h(w)m(ere)h(generated)h(b)m(y)f(another)g (compiler.)82 b(Y)-8 b(ou)46 b(can)f(use)f(the)h(compiler)e(option)150 3168 y(`)p Fq(/NOCASE_HACK)p Fy(')27 b(to)k(inhibit)26 b(augmen)m(tation;)31 b(it)f(mak)m(es)g(external)g(C)f(functions)g(and) g(v)-5 b(ariables)29 b(case-)150 3277 y(indep)s(enden)m(t)h(as)i(is)f (usual)f(on)i(VMS.)45 b(Alternativ)m(ely)-8 b(,)32 b(y)m(ou)g(could)f (write)g(all)g(references)h(to)g(the)h(func-)150 3387 y(tions)k(and)h(v)-5 b(ariables)36 b(in)h(suc)m(h)h(libraries)d(using)h (lo)m(w)m(er)i(case;)43 b(this)37 b(will)e(w)m(ork)j(on)g(VMS,)g(but)g (is)f(not)150 3496 y(p)s(ortable)32 b(to)h(other)g(systems.)47 b(The)33 b(compiler)e(option)h(`)p Fq(/NAMES)p Fy(')f(also)i(pro)m (vides)f(con)m(trol)h(o)m(v)m(er)h(global)150 3606 y(name)c(handling.) 275 3746 y(F)-8 b(unction)23 b(and)g(v)-5 b(ariable)22 b(names)h(are)h(handled)e(somewhat)h(di\013eren)m(tly)g(with)f(G)p Fq(++)p Fy(.)38 b(The)23 b(GNU)h(C)p Fq(++)150 3855 y Fy(compiler)e(p)s(erforms)g Fn(name)i(mangling)30 b Fy(on)23 b(function)g(names,)i(whic)m(h)d(means)h(that)i(it)e(adds)g (information)150 3965 y(to)33 b(the)f(function)f(name)h(to)h(describ)s (e)e(the)h(data)h(t)m(yp)s(es)f(of)g(the)h(argumen)m(ts)f(that)h(the)f (function)f(tak)m(es.)150 4074 y(One)37 b(result)f(of)h(this)g(is)f (that)i(the)f(name)g(of)h(a)g(function)d(can)j(b)s(ecome)g(v)m(ery)f (long.)61 b(Since)37 b(the)g(VMS)150 4184 y(link)m(er)e(only)h (recognizes)i(the)f(\014rst)f(31)h(c)m(haracters)i(in)c(a)i(name,)i(sp) s(ecial)c(action)i(is)f(tak)m(en)i(to)g(ensure)150 4294 y(that)26 b(eac)m(h)g(function)e(and)h(v)-5 b(ariable)24 b(has)h(a)g(unique)f(name)h(that)h(can)f(b)s(e)g(represen)m(ted)g(in)f (31)i(c)m(haracters.)275 4433 y(If)h(the)h(name)g(\(plus)e(a)i(name)g (augmen)m(tation,)h(if)e(required\))f(is)h(less)g(than)h(32)h(c)m (haracters)g(in)d(length,)150 4543 y(then)h(no)f(sp)s(ecial)g(action)h (is)f(p)s(erformed.)38 b(If)27 b(the)g(name)g(is)f(longer)g(than)h(31)h (c)m(haracters,)h(the)e(assem)m(bler)150 4652 y(\(GAS\))40 b(will)c(generate)41 b(a)f(hash)e(string)g(based)h(up)s(on)f(the)h (function)f(name,)k(truncate)e(the)f(function)150 4762 y(name)24 b(to)g(23)g(c)m(haracters,)j(and)22 b(app)s(end)g(the)i(hash) f(string)f(to)i(the)g(truncated)g(name.)38 b(If)23 b(the)h(`)p Fq(/VERBOSE)p Fy(')150 4872 y(compiler)k(option)g(is)g(used,)h(the)g (assem)m(bler)g(will)d(prin)m(t)i(b)s(oth)g(the)h(full)e(and)i (truncated)g(names)g(of)g(eac)m(h)150 4981 y(sym)m(b)s(ol)g(that)i(is)e (truncated.)275 5121 y(The)35 b(`)p Fq(/NOCASE_HACK)p Fy(')e(compiler)h(option)h(should)f(not)i(b)s(e)f(used)g(when)g(y)m(ou) h(are)h(compiling)c(pro-)150 5230 y(grams)f(that)h(use)f(libg)p Fq(++)p Fy(.)44 b(libg)p Fq(++)30 b Fy(has)h(sev)m(eral)i(instances)f (of)g(ob)5 b(jects)33 b(\(i.e.)46 b Fq(Filebuf)30 b Fy(and)i Fq(filebuf)p Fy(\))150 5340 y(whic)m(h)23 b(b)s(ecome)h (indistinguishable)19 b(in)k(a)i(case-insensitiv)m(e)e(en)m(vironmen)m (t.)39 b(This)22 b(leads)h(to)i(cases)g(where)p eop %%Page: 307 317 307 316 bop 150 -116 a Fy(Chapter)30 b(13:)41 b(Using)30 b(GCC)g(on)g(VMS)2137 b(307)150 299 y(y)m(ou)28 b(need)f(to)i(inhibit) 24 b(augmen)m(tation)29 b(selectiv)m(ely)e(\(if)g(y)m(ou)h(w)m(ere)h (using)d(libg)p Fq(++)f Fy(and)i(Xlib)f(in)h(the)h(same)150 408 y(program,)f(for)f(example\).)39 b(There)26 b(is)f(no)h(sp)s(ecial) f(feature)i(for)f(doing)f(this,)h(but)f(y)m(ou)i(can)f(get)i(the)e (result)150 518 y(b)m(y)e(de\014ning)f(a)i(macro)g(for)g(eac)m(h)g (mixed)f(case)i(sym)m(b)s(ol)d(for)h(whic)m(h)g(y)m(ou)h(wish)d(to)k (inhibit)21 b(augmen)m(tation.)150 628 y(The)30 b(macro)h(should)d (expand)i(in)m(to)g(the)h(lo)m(w)m(er)f(case)i(equiv)-5 b(alen)m(t)30 b(of)g(itself.)40 b(F)-8 b(or)31 b(example:)390 756 y Fq(#define)46 b(StuDlyCapS)f(studlycaps)275 891 y Fy(These)24 b(macro)g(de\014nitions)e(can)j(b)s(e)e(placed)h(in)f(a)h (header)g(\014le)g(to)h(minimize)c(the)k(n)m(um)m(b)s(er)e(of)h(c)m (hanges)150 1000 y(to)31 b(y)m(our)f(source)h(co)s(de.)p eop %%Page: 308 318 308 317 bop 150 -116 a Fy(308)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 309 319 309 318 bop 150 -116 a Fy(F)-8 b(unding)29 b(F)-8 b(ree)31 b(Soft)m(w)m(are)2571 b(309)150 299 y Fv(F)-13 b(unding)53 b(F)-13 b(ree)53 b(Soft)l(w)l(are)275 533 y Fy(If)31 b(y)m(ou)g(w)m(an)m(t)i(to)f(ha)m(v)m(e)g(more)g(free)g(soft)m(w)m(are) g(a)g(few)f(y)m(ears)i(from)e(no)m(w,)h(it)f(mak)m(es)h(sense)f(for)g (y)m(ou)h(to)150 643 y(help)24 b(encourage)j(p)s(eople)e(to)i(con)m (tribute)e(funds)f(for)i(its)f(dev)m(elopmen)m(t.)40 b(The)25 b(most)h(e\013ectiv)m(e)i(approac)m(h)150 752 y(kno)m(wn)i(is)f(to)i(encourage)h(commercial)e(redistributors)d(to)k (donate.)275 887 y(Users)f(of)g(free)h(soft)m(w)m(are)h(systems)e(can)h (b)s(o)s(ost)f(the)h(pace)g(of)g(dev)m(elopmen)m(t)f(b)m(y)h (encouraging)f(for-a-)150 996 y(fee)36 b(distributors)d(to)k(donate)f (part)g(of)g(their)f(selling)f(price)h(to)h(free)g(soft)m(w)m(are)h (dev)m(elop)s(ers|the)f(F)-8 b(ree)150 1106 y(Soft)m(w)m(are)31 b(F)-8 b(oundation,)31 b(and)f(others.)275 1240 y(The)c(w)m(a)m(y)i(to) g(con)m(vince)g(distributors)c(to)k(do)f(this)f(is)g(to)i(demand)e(it)h (and)f(exp)s(ect)i(it)f(from)f(them.)40 b(So)150 1350 y(when)29 b(y)m(ou)i(compare)g(distributors,)d(judge)i(them)g(partly)g (b)m(y)g(ho)m(w)h(m)m(uc)m(h)f(they)h(giv)m(e)g(to)g(free)f(soft)m(w)m (are)150 1460 y(dev)m(elopmen)m(t.)41 b(Sho)m(w)30 b(distributors)d (they)k(m)m(ust)f(comp)s(ete)h(to)g(b)s(e)f(the)h(one)f(who)g(giv)m(es) h(the)g(most.)275 1594 y(T)-8 b(o)25 b(mak)m(e)h(this)e(approac)m(h)i (w)m(ork,)g(y)m(ou)g(m)m(ust)e(insist)g(on)h(n)m(um)m(b)s(ers)e(that)j (y)m(ou)f(can)h(compare,)h(suc)m(h)d(as,)150 1704 y(\\W)-8 b(e)34 b(will)c(donate)j(ten)f(dollars)f(to)i(the)f(F)-8 b(robnitz)32 b(pro)5 b(ject)33 b(for)f(eac)m(h)i(disk)d(sold.")46 b(Don't)33 b(b)s(e)f(satis\014ed)150 1813 y(with)e(a)i(v)-5 b(ague)32 b(promise,)e(suc)m(h)h(as)h(\\A)g(p)s(ortion)d(of)j(the)f (pro\014ts)g(are)h(donated,")g(since)f(it)f(do)s(esn't)h(giv)m(e)150 1923 y(a)g(basis)e(for)h(comparison.)275 2057 y(Ev)m(en)43 b(a)g(precise)g(fraction)g(\\of)h(the)f(pro\014ts)f(from)h(this)f (disk")g(is)g(not)i(v)m(ery)f(meaningful,)i(since)150 2167 y(creativ)m(e)32 b(accoun)m(ting)g(and)f(unrelated)f(business)f (decisions)h(can)h(greatly)h(alter)f(what)g(fraction)g(of)h(the)150 2276 y(sales)c(price)f(coun)m(ts)h(as)g(pro\014t.)39 b(If)28 b(the)g(price)f(y)m(ou)h(pa)m(y)g(is)f($50,)j(ten)e(p)s(ercen)m (t)g(of)g(the)g(pro\014t)f(is)g(probably)150 2386 y(less)j(than)g(a)h (dollar;)e(it)h(migh)m(t)g(b)s(e)f(a)i(few)f(cen)m(ts,)i(or)e(nothing)g (at)h(all.)275 2521 y(Some)37 b(redistributors)d(do)j(dev)m(elopmen)m (t)h(w)m(ork)f(themselv)m(es.)62 b(This)35 b(is)i(useful)e(to)s(o;)42 b(but)36 b(to)i(k)m(eep)150 2630 y(ev)m(ery)m(one)h(honest,)h(y)m(ou)d (need)h(to)g(inquire)d(ho)m(w)i(m)m(uc)m(h)h(they)f(do,)j(and)c(what)i (kind.)60 b(Some)37 b(kinds)f(of)150 2740 y(dev)m(elopmen)m(t)31 b(mak)m(e)h(m)m(uc)m(h)f(more)g(long-term)g(di\013erence)f(than)h (others.)42 b(F)-8 b(or)32 b(example,)f(main)m(taining)150 2849 y(a)37 b(separate)h(v)m(ersion)e(of)h(a)g(program)g(con)m (tributes)f(v)m(ery)h(little;)j(main)m(taining)35 b(the)h(standard)g(v) m(ersion)150 2959 y(of)29 b(a)h(program)f(for)g(the)h(whole)e(comm)m (unit)m(y)i(con)m(tributes)f(m)m(uc)m(h.)40 b(Easy)29 b(new)g(p)s(orts)g(con)m(tribute)g(little,)150 3068 y(since)i(someone)h (else)f(w)m(ould)f(surely)g(do)h(them;)h(di\016cult)e(p)s(orts)g(suc)m (h)h(as)h(adding)e(a)i(new)f(CPU)g(to)h(the)150 3178 y(GNU)f(Compiler)e(Collection)h(con)m(tribute)h(more;)g(ma)5 b(jor)31 b(new)f(features)i(or)e(pac)m(k)-5 b(ages)33 b(con)m(tribute)e(the)150 3288 y(most.)275 3422 y(By)38 b(establishing)e(the)j(idea)f(that)h(supp)s(orting)d(further)h(dev)m (elopmen)m(t)i(is)f(\\the)h(prop)s(er)e(thing)g(to)150 3532 y(do")31 b(when)f(distributing)e(free)j(soft)m(w)m(are)i(for)d(a)i (fee,)g(w)m(e)f(can)h(assure)f(a)g(steady)h(\015o)m(w)f(of)g(resources) g(in)m(to)150 3641 y(making)f(more)g(free)h(soft)m(w)m(are.)390 3770 y(Cop)m(yrigh)m(t)842 3767 y(c)817 3770 y Fx(\015)f Fy(1994)i(F)-8 b(ree)32 b(Soft)m(w)m(are)f(F)-8 b(oundation,)31 b(Inc.)390 3874 y(V)-8 b(erbatim)30 b(cop)m(ying)h(and)e (redistribution)e(of)k(this)e(section)h(is)g(p)s(ermitted)390 3978 y(without)f(ro)m(y)m(alt)m(y;)j(alteration)f(is)e(not)i(p)s (ermitted.)p eop %%Page: 310 320 310 319 bop 150 -116 a Fy(310)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 311 321 311 320 bop 150 -116 a Fy(The)30 b(GNU)h(Pro)5 b(ject)31 b(and)f(GNU/Lin)m(ux)2058 b(311)150 299 y Fv(The)53 b(GNU)h(Pro)9 b(ject)53 b(and)h(GNU/Lin)l(ux)275 533 y Fy(The)21 b(GNU)h(Pro)5 b(ject)23 b(w)m(as)f(launc)m(hed)f(in)f(1984)k(to)e(dev)m(elop)g(a)g (complete)g(Unix-lik)m(e)f(op)s(erating)g(system)150 643 y(whic)m(h)37 b(is)g(free)h(soft)m(w)m(are:)57 b(the)38 b(GNU)h(system.)63 b(\(GNU)39 b(is)e(a)h(recursiv)m(e)g(acron)m(ym)g (for)g(\\GNU's)h(Not)150 752 y(Unix";)25 b(it)c(is)h(pronounced)f (\\guh-NEW".\))40 b(V)-8 b(arian)m(ts)22 b(of)h(the)f(GNU)h(op)s (erating)f(system,)j(whic)m(h)c(use)h(the)150 862 y(k)m(ernel)32 b(Lin)m(ux,)f(are)h(no)m(w)g(widely)e(used;)j(though)e(these)i(systems) f(are)g(often)h(referred)e(to)i(as)f(\\Lin)m(ux",)150 971 y(they)f(are)f(more)h(accurately)g(called)f(GNU/Lin)m(ux)g (systems.)275 1106 y(F)-8 b(or)31 b(more)f(information,)f(see:)390 1235 y Fq(http://www.gnu.org/)390 1338 y(http://www.gnu.org/gnu/l)o (inux)o(-and)o(-gn)o(u.ht)o(ml)p eop %%Page: 312 322 312 321 bop 150 -116 a Fy(312)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 313 323 313 322 bop 150 -116 a Fy(GNU)31 b(GENERAL)f(PUBLIC)h(LICENSE)1961 b(313)150 299 y Fv(GNU)54 b(GENERAL)g(PUBLIC)f(LICENSE)1537 564 y Fy(V)-8 b(ersion)30 b(2,)h(June)f(1991)390 720 y(Cop)m(yrigh)m(t)842 717 y(c)817 720 y Fx(\015)g Fy(1989,)j(1991)f(F) -8 b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)30 b(Inc.)390 824 y(59)h(T)-8 b(emple)30 b(Place)h(-)f(Suite)g(330,)h(Boston,)h(MA)f (02111-1307,)k(USA)390 1032 y(Ev)m(ery)m(one)c(is)f(p)s(ermitted)f(to)i (cop)m(y)g(and)f(distribute)e(v)m(erbatim)i(copies)390 1135 y(of)h(this)e(license)g(do)s(cumen)m(t,)i(but)e(c)m(hanging)i(it)f (is)f(not)i(allo)m(w)m(ed.)150 1462 y Fs(Pream)l(ble)275 1683 y Fy(The)39 b(licenses)h(for)g(most)h(soft)m(w)m(are)g(are)g (designed)e(to)i(tak)m(e)h(a)m(w)m(a)m(y)h(y)m(our)d(freedom)g(to)h (share)g(and)150 1793 y(c)m(hange)g(it.)70 b(By)40 b(con)m(trast,)k (the)c(GNU)h(General)f(Public)e(License)i(is)f(in)m(tended)g(to)h (guaran)m(tee)i(y)m(our)150 1902 y(freedom)24 b(to)h(share)f(and)f(c)m (hange)i(free)f(soft)m(w)m(are|to)j(mak)m(e)e(sure)e(the)h(soft)m(w)m (are)i(is)d(free)h(for)g(all)f(its)h(users.)150 2012 y(This)38 b(General)i(Public)d(License)j(applies)e(to)i(most)g(of)g (the)g(F)-8 b(ree)41 b(Soft)m(w)m(are)g(F)-8 b(oundation's)39 b(soft)m(w)m(are)150 2121 y(and)c(to)h(an)m(y)g(other)g(program)f (whose)h(authors)f(commit)g(to)i(using)d(it.)55 b(\(Some)36 b(other)g(F)-8 b(ree)37 b(Soft)m(w)m(are)150 2231 y(F)-8 b(oundation)31 b(soft)m(w)m(are)i(is)d(co)m(v)m(ered)j(b)m(y)e(the)g (GNU)h(Library)e(General)h(Public)e(License)h(instead.\))43 b(Y)-8 b(ou)150 2340 y(can)31 b(apply)e(it)h(to)h(y)m(our)f(programs,)g (to)s(o.)275 2503 y(When)37 b(w)m(e)g(sp)s(eak)g(of)g(free)h(soft)m(w)m (are,)i(w)m(e)e(are)g(referring)d(to)j(freedom,)h(not)f(price.)60 b(Our)36 b(General)150 2612 y(Public)c(Licenses)h(are)i(designed)e(to)i (mak)m(e)g(sure)f(that)g(y)m(ou)h(ha)m(v)m(e)g(the)g(freedom)f(to)g (distribute)e(copies)150 2722 y(of)k(free)h(soft)m(w)m(are)g(\(and)f(c) m(harge)i(for)e(this)f(service)h(if)f(y)m(ou)i(wish\),)g(that)f(y)m(ou) h(receiv)m(e)g(source)f(co)s(de)h(or)150 2832 y(can)e(get)h(it)e(if)f (y)m(ou)i(w)m(an)m(t)h(it,)f(that)g(y)m(ou)g(can)g(c)m(hange)h(the)e (soft)m(w)m(are)i(or)f(use)f(pieces)h(of)f(it)g(in)g(new)g(free)150 2941 y(programs;)c(and)g(that)h(y)m(ou)g(kno)m(w)f(y)m(ou)h(can)f(do)h (these)g(things.)275 3104 y(T)-8 b(o)40 b(protect)h(y)m(our)f(righ)m (ts,)i(w)m(e)e(need)g(to)h(mak)m(e)g(restrictions)d(that)j(forbid)d(an) m(y)m(one)j(to)g(den)m(y)f(y)m(ou)150 3213 y(these)d(righ)m(ts)f(or)g (to)h(ask)g(y)m(ou)f(to)h(surrender)e(the)h(righ)m(ts.)58 b(These)36 b(restrictions)f(translate)i(to)g(certain)150 3323 y(resp)s(onsibilities)25 b(for)31 b(y)m(ou)f(if)g(y)m(ou)g (distribute)e(copies)i(of)h(the)f(soft)m(w)m(are,)j(or)d(if)f(y)m(ou)i (mo)s(dify)e(it.)275 3485 y(F)-8 b(or)30 b(example,)f(if)g(y)m(ou)g (distribute)e(copies)j(of)f(suc)m(h)g(a)h(program,)g(whether)e(gratis)i (or)f(for)g(a)h(fee,)h(y)m(ou)150 3595 y(m)m(ust)i(giv)m(e)h(the)g (recipien)m(ts)e(all)h(the)g(righ)m(ts)g(that)h(y)m(ou)g(ha)m(v)m(e.)51 b(Y)-8 b(ou)34 b(m)m(ust)g(mak)m(e)g(sure)f(that)h(they)-8 b(,)35 b(to)s(o,)150 3704 y(receiv)m(e)j(or)g(can)g(get)g(the)g(source) g(co)s(de.)62 b(And)37 b(y)m(ou)h(m)m(ust)f(sho)m(w)h(them)f(these)h (terms)f(so)h(they)g(kno)m(w)150 3814 y(their)29 b(righ)m(ts.)275 3976 y(W)-8 b(e)29 b(protect)g(y)m(our)f(righ)m(ts)f(with)g(t)m(w)m(o)i (steps:)40 b(\(1\))29 b(cop)m(yrigh)m(t)f(the)g(soft)m(w)m(are,)j(and)c (\(2\))i(o\013er)g(y)m(ou)f(this)150 4086 y(license)h(whic)m(h)g(giv)m (es)i(y)m(ou)g(legal)f(p)s(ermission)d(to)k(cop)m(y)-8 b(,)32 b(distribute)c(and/or)i(mo)s(dify)f(the)i(soft)m(w)m(are.)275 4248 y(Also,)45 b(for)d(eac)m(h)i(author's)f(protection)f(and)g(ours,)j (w)m(e)e(w)m(an)m(t)h(to)f(mak)m(e)h(certain)e(that)h(ev)m(ery)m(one) 150 4358 y(understands)29 b(that)j(there)f(is)f(no)h(w)m(arran)m(t)m(y) h(for)f(this)f(free)h(soft)m(w)m(are.)44 b(If)30 b(the)i(soft)m(w)m (are)g(is)e(mo)s(di\014ed)f(b)m(y)150 4467 y(someone)i(else)e(and)g (passed)h(on,)g(w)m(e)g(w)m(an)m(t)h(its)e(recipien)m(ts)g(to)h(kno)m (w)g(that)g(what)g(they)g(ha)m(v)m(e)h(is)e(not)h(the)150 4577 y(original,)e(so)h(that)g(an)m(y)h(problems)d(in)m(tro)s(duced)g (b)m(y)i(others)g(will)d(not)j(re\015ect)h(on)f(the)g(original)e (authors')150 4686 y(reputations.)275 4849 y(Finally)-8 b(,)24 b(an)m(y)h(free)f(program)g(is)g(threatened)g(constan)m(tly)h(b) m(y)g(soft)m(w)m(are)h(paten)m(ts.)39 b(W)-8 b(e)26 b(wish)c(to)j(a)m (v)m(oid)150 4958 y(the)30 b(danger)g(that)h(redistributors)c(of)k(a)f (free)h(program)f(will)d(individually)e(obtain)30 b(paten)m(t)h (licenses,)e(in)150 5068 y(e\013ect)39 b(making)e(the)h(program)f (proprietary)-8 b(.)62 b(T)-8 b(o)38 b(prev)m(en)m(t)g(this,)h(w)m(e)f (ha)m(v)m(e)h(made)f(it)f(clear)g(that)i(an)m(y)150 5178 y(paten)m(t)31 b(m)m(ust)g(b)s(e)e(licensed)g(for)h(ev)m(ery)m(one's)i (free)f(use)f(or)g(not)h(licensed)e(at)i(all.)275 5340 y(The)e(precise)h(terms)g(and)g(conditions)f(for)h(cop)m(ying,)h (distribution)26 b(and)k(mo)s(di\014cation)f(follo)m(w.)p eop %%Page: 314 324 314 323 bop 150 -116 a Fy(314)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 166 y Fs(TERMS)44 b(AND)h(CONDITIONS)g(F)l (OR)g(COPYING,)150 299 y(DISTRIBUTION)f(AND)h(MODIFICA)-11 b(TION)199 467 y Fy(0.)61 b(This)41 b(License)h(applies)e(to)k(an)m(y)f (program)f(or)g(other)h(w)m(ork)g(whic)m(h)e(con)m(tains)i(a)g(notice)f (placed)330 576 y(b)m(y)33 b(the)h(cop)m(yrigh)m(t)g(holder)e(sa)m (ying)i(it)f(ma)m(y)h(b)s(e)f(distributed)e(under)h(the)h(terms)h(of)g (this)e(General)330 686 y(Public)37 b(License.)67 b(The)39 b(\\Program",)j(b)s(elo)m(w,)f(refers)e(to)h(an)m(y)g(suc)m(h)f (program)g(or)g(w)m(ork,)j(and)d(a)330 795 y(\\w)m(ork)29 b(based)f(on)h(the)g(Program")g(means)f(either)h(the)f(Program)h(or)g (an)m(y)g(deriv)-5 b(ativ)m(e)28 b(w)m(ork)g(under)330 905 y(cop)m(yrigh)m(t)k(la)m(w:)42 b(that)32 b(is)e(to)j(sa)m(y)-8 b(,)33 b(a)e(w)m(ork)h(con)m(taining)f(the)g(Program)h(or)f(a)h(p)s (ortion)e(of)h(it,)g(either)330 1015 y(v)m(erbatim)e(or)g(with)e(mo)s (di\014cations)g(and/or)i(translated)g(in)m(to)g(another)g(language.)40 b(\(Hereinafter,)330 1124 y(translation)26 b(is)g(included)f(without)h (limitation)f(in)h(the)h(term)g(\\mo)s(di\014cation".\))40 b(Eac)m(h)27 b(licensee)g(is)330 1234 y(addressed)i(as)i(\\y)m(ou".)330 1361 y(Activities)38 b(other)h(than)f(cop)m(ying,)k(distribution)35 b(and)j(mo)s(di\014cation)f(are)i(not)g(co)m(v)m(ered)h(b)m(y)f(this) 330 1471 y(License;)33 b(they)g(are)f(outside)g(its)f(scop)s(e.)47 b(The)32 b(act)h(of)g(running)c(the)k(Program)f(is)f(not)i(restricted,) 330 1580 y(and)24 b(the)g(output)g(from)g(the)h(Program)f(is)g(co)m(v)m (ered)i(only)d(if)g(its)h(con)m(ten)m(ts)i(constitute)f(a)g(w)m(ork)f (based)330 1690 y(on)h(the)h(Program)f(\(indep)s(enden)m(t)f(of)i(ha)m (ving)f(b)s(een)f(made)i(b)m(y)f(running)e(the)i(Program\).)40 b(Whether)330 1800 y(that)31 b(is)e(true)i(dep)s(ends)d(on)i(what)h (the)f(Program)h(do)s(es.)199 1927 y(1.)61 b(Y)-8 b(ou)42 b(ma)m(y)g(cop)m(y)g(and)e(distribute)f(v)m(erbatim)i(copies)g(of)h (the)f(Program's)h(source)f(co)s(de)h(as)g(y)m(ou)330 2037 y(receiv)m(e)32 b(it,)f(in)f(an)m(y)h(medium,)f(pro)m(vided)g (that)h(y)m(ou)h(conspicuously)d(and)h(appropriately)g(publish)330 2146 y(on)j(eac)m(h)h(cop)m(y)g(an)f(appropriate)f(cop)m(yrigh)m(t)i (notice)f(and)g(disclaimer)d(of)k(w)m(arran)m(t)m(y;)h(k)m(eep)f(in)m (tact)330 2256 y(all)d(the)g(notices)h(that)h(refer)e(to)h(this)f (License)g(and)g(to)i(the)f(absence)g(of)g(an)m(y)g(w)m(arran)m(t)m(y;) h(and)e(giv)m(e)330 2365 y(an)m(y)g(other)f(recipien)m(ts)g(of)g(the)h (Program)f(a)h(cop)m(y)g(of)g(this)e(License)h(along)g(with)f(the)i (Program.)330 2493 y(Y)-8 b(ou)31 b(ma)m(y)g(c)m(harge)h(a)f(fee)g(for) f(the)h(ph)m(ysical)e(act)j(of)f(transferring)e(a)i(cop)m(y)-8 b(,)32 b(and)e(y)m(ou)h(ma)m(y)g(at)g(y)m(our)330 2602 y(option)f(o\013er)h(w)m(arran)m(t)m(y)g(protection)g(in)e(exc)m(hange) j(for)e(a)g(fee.)199 2730 y(2.)61 b(Y)-8 b(ou)24 b(ma)m(y)h(mo)s(dify)d (y)m(our)i(cop)m(y)g(or)g(copies)g(of)g(the)g(Program)g(or)g(an)m(y)g (p)s(ortion)e(of)i(it,)h(th)m(us)f(forming)f(a)330 2840 y(w)m(ork)k(based)g(on)f(the)h(Program,)h(and)f(cop)m(y)g(and)g (distribute)d(suc)m(h)j(mo)s(di\014cations)e(or)h(w)m(ork)h(under)330 2949 y(the)k(terms)f(of)g(Section)h(1)f(ab)s(o)m(v)m(e,)i(pro)m(vided)d (that)i(y)m(ou)g(also)f(meet)h(all)f(of)g(these)h(conditions:)379 3077 y(a.)61 b(Y)-8 b(ou)43 b(m)m(ust)f(cause)i(the)e(mo)s(di\014ed)f (\014les)g(to)i(carry)g(prominen)m(t)e(notices)i(stating)f(that)i(y)m (ou)510 3186 y(c)m(hanged)31 b(the)g(\014les)e(and)h(the)g(date)h(of)g (an)m(y)g(c)m(hange.)374 3314 y(b.)60 b(Y)-8 b(ou)31 b(m)m(ust)g(cause)g(an)m(y)h(w)m(ork)f(that)g(y)m(ou)g(distribute)d(or) j(publish,)d(that)j(in)f(whole)g(or)h(in)e(part)510 3423 y(con)m(tains)35 b(or)h(is)e(deriv)m(ed)g(from)h(the)g(Program)g(or)g (an)m(y)h(part)f(thereof,)i(to)f(b)s(e)e(licensed)g(as)i(a)510 3533 y(whole)30 b(at)h(no)f(c)m(harge)i(to)f(all)e(third)f(parties)i (under)f(the)i(terms)f(of)g(this)g(License.)384 3660 y(c.)61 b(If)39 b(the)h(mo)s(di\014ed)e(program)h(normally)f(reads)i (commands)f(in)m(teractiv)m(ely)h(when)f(run,)i(y)m(ou)510 3770 y(m)m(ust)30 b(cause)h(it,)f(when)g(started)h(running)c(for)k(suc) m(h)f(in)m(teractiv)m(e)h(use)f(in)f(the)i(most)g(ordinary)510 3880 y(w)m(a)m(y)-8 b(,)25 b(to)d(prin)m(t)e(or)h(displa)m(y)f(an)h (announcemen)m(t)g(including)d(an)k(appropriate)e(cop)m(yrigh)m(t)i (notice)510 3989 y(and)i(a)g(notice)h(that)f(there)h(is)e(no)h(w)m (arran)m(t)m(y)h(\(or)g(else,)g(sa)m(ying)f(that)h(y)m(ou)g(pro)m(vide) e(a)i(w)m(arran)m(t)m(y\))510 4099 y(and)35 b(that)g(users)g(ma)m(y)g (redistribute)e(the)j(program)f(under)e(these)j(conditions,)f(and)g (telling)510 4208 y(the)f(user)f(ho)m(w)h(to)g(view)f(a)i(cop)m(y)f(of) g(this)f(License.)50 b(\(Exception:)e(if)32 b(the)i(Program)g(itself)f (is)510 4318 y(in)m(teractiv)m(e)i(but)e(do)s(es)h(not)g(normally)e (prin)m(t)h(suc)m(h)g(an)h(announcemen)m(t,)h(y)m(our)f(w)m(ork)g (based)510 4427 y(on)c(the)h(Program)f(is)g(not)g(required)f(to)i(prin) m(t)e(an)h(announcemen)m(t.\))330 4573 y(These)41 b(requiremen)m(ts)g (apply)f(to)i(the)g(mo)s(di\014ed)e(w)m(ork)h(as)h(a)g(whole.)73 b(If)42 b(iden)m(ti\014able)d(sections)330 4682 y(of)j(that)h(w)m(ork)g (are)f(not)h(deriv)m(ed)e(from)h(the)h(Program,)i(and)d(can)h(b)s(e)e (reasonably)h(considered)330 4792 y(indep)s(enden)m(t)24 b(and)j(separate)g(w)m(orks)g(in)e(themselv)m(es,)j(then)e(this)g (License,)h(and)f(its)h(terms,)g(do)g(not)330 4902 y(apply)36 b(to)i(those)f(sections)g(when)g(y)m(ou)g(distribute)e(them)i(as)g (separate)h(w)m(orks.)61 b(But)37 b(when)g(y)m(ou)330 5011 y(distribute)27 b(the)i(same)g(sections)h(as)f(part)g(of)g(a)h (whole)e(whic)m(h)g(is)g(a)h(w)m(ork)h(based)e(on)h(the)h(Program,)330 5121 y(the)h(distribution)d(of)j(the)h(whole)e(m)m(ust)h(b)s(e)g(on)g (the)g(terms)g(of)h(this)e(License,)h(whose)g(p)s(ermissions)330 5230 y(for)22 b(other)h(licensees)e(extend)i(to)g(the)f(en)m(tire)g (whole,)i(and)d(th)m(us)h(to)h(eac)m(h)h(and)d(ev)m(ery)i(part)g (regardless)330 5340 y(of)31 b(who)e(wrote)i(it.)p eop %%Page: 315 325 315 324 bop 150 -116 a Fy(GNU)31 b(GENERAL)f(PUBLIC)h(LICENSE)1961 b(315)330 299 y(Th)m(us,)48 b(it)d(is)f(not)i(the)f(in)m(ten)m(t)g(of)h (this)e(section)h(to)h(claim)f(righ)m(ts)f(or)h(con)m(test)i(y)m(our)f (righ)m(ts)e(to)330 408 y(w)m(ork)34 b(written)e(en)m(tirely)h(b)m(y)h (y)m(ou;)h(rather,)g(the)f(in)m(ten)m(t)g(is)e(to)j(exercise)e(the)h (righ)m(t)f(to)i(con)m(trol)f(the)330 518 y(distribution)27 b(of)j(deriv)-5 b(ativ)m(e)30 b(or)h(collectiv)m(e)f(w)m(orks)h(based)f (on)g(the)h(Program.)330 650 y(In)41 b(addition,)h(mere)f(aggregation)i (of)f(another)f(w)m(ork)g(not)h(based)f(on)g(the)g(Program)h(with)e (the)330 759 y(Program)22 b(\(or)g(with)e(a)i(w)m(ork)g(based)f(on)h (the)g(Program\))g(on)f(a)h(v)m(olume)g(of)g(a)g(storage)h(or)f (distribution)330 869 y(medium)28 b(do)s(es)j(not)f(bring)f(the)h (other)h(w)m(ork)f(under)f(the)i(scop)s(e)f(of)h(this)e(License.)199 1000 y(3.)61 b(Y)-8 b(ou)38 b(ma)m(y)f(cop)m(y)h(and)f(distribute)d (the)k(Program)f(\(or)g(a)h(w)m(ork)f(based)g(on)g(it,)i(under)c (Section)i(2\))330 1110 y(in)29 b(ob)5 b(ject)31 b(co)s(de)g(or)g (executable)g(form)f(under)e(the)j(terms)f(of)h(Sections)f(1)h(and)f(2) h(ab)s(o)m(v)m(e)g(pro)m(vided)330 1219 y(that)g(y)m(ou)g(also)f(do)g (one)h(of)f(the)h(follo)m(wing:)379 1351 y(a.)61 b(Accompan)m(y)47 b(it)e(with)f(the)i(complete)g(corresp)s(onding)e(mac)m(hine-readable)h (source)g(co)s(de,)510 1461 y(whic)m(h)25 b(m)m(ust)h(b)s(e)f (distributed)e(under)h(the)j(terms)e(of)i(Sections)e(1)i(and)e(2)h(ab)s (o)m(v)m(e)i(on)d(a)i(medium)510 1570 y(customarily)i(used)h(for)g (soft)m(w)m(are)i(in)m(terc)m(hange;)f(or,)374 1702 y(b.)60 b(Accompan)m(y)30 b(it)f(with)f(a)i(written)e(o\013er,)j(v)-5 b(alid)27 b(for)i(at)i(least)e(three)h(y)m(ears,)g(to)g(giv)m(e)g(an)m (y)g(third)510 1811 y(part)m(y)-8 b(,)32 b(for)f(a)h(c)m(harge)g(no)f (more)h(than)f(y)m(our)g(cost)h(of)f(ph)m(ysically)f(p)s(erforming)f (source)i(distri-)510 1921 y(bution,)c(a)h(complete)h(mac)m (hine-readable)e(cop)m(y)h(of)g(the)g(corresp)s(onding)e(source)i(co)s (de,)h(to)g(b)s(e)510 2030 y(distributed)i(under)i(the)h(terms)g(of)h (Sections)f(1)g(and)g(2)h(ab)s(o)m(v)m(e)g(on)f(a)h(medium)d (customarily)510 2140 y(used)e(for)g(soft)m(w)m(are)i(in)m(terc)m (hange;)f(or,)384 2271 y(c.)61 b(Accompan)m(y)33 b(it)e(with)g(the)h (information)e(y)m(ou)i(receiv)m(ed)g(as)g(to)g(the)g(o\013er)g(to)h (distribute)c(cor-)510 2381 y(resp)s(onding)i(source)i(co)s(de.)50 b(\(This)31 b(alternativ)m(e)j(is)e(allo)m(w)m(ed)h(only)g(for)g (noncommercial)f(dis-)510 2491 y(tribution)e(and)h(only)g(if)g(y)m(ou)i (receiv)m(ed)f(the)g(program)g(in)f(ob)5 b(ject)33 b(co)s(de)f(or)g (executable)g(form)510 2600 y(with)d(suc)m(h)h(an)g(o\013er,)h(in)e (accord)j(with)d(Subsection)g(b)h(ab)s(o)m(v)m(e.\))330 2754 y(The)j(source)h(co)s(de)g(for)f(a)h(w)m(ork)g(means)f(the)h (preferred)e(form)h(of)h(the)g(w)m(ork)f(for)h(making)f(mo)s(di\014-) 330 2863 y(cations)e(to)g(it.)40 b(F)-8 b(or)31 b(an)f(executable)h(w)m (ork,)g(complete)f(source)h(co)s(de)f(means)h(all)e(the)h(source)h(co)s (de)330 2973 y(for)25 b(all)g(mo)s(dules)f(it)h(con)m(tains,)i(plus)c (an)m(y)j(asso)s(ciated)g(in)m(terface)h(de\014nition)c(\014les,)j (plus)d(the)j(scripts)330 3082 y(used)41 b(to)i(con)m(trol)g (compilation)d(and)i(installation)e(of)i(the)h(executable.)76 b(Ho)m(w)m(ev)m(er,)48 b(as)42 b(a)g(sp)s(e-)330 3192 y(cial)30 b(exception,)i(the)f(source)g(co)s(de)g(distributed)d(need)i (not)h(include)e(an)m(ything)h(that)i(is)e(normally)330 3302 y(distributed)37 b(\(in)h(either)h(source)h(or)f(binary)f(form\))i (with)e(the)i(ma)5 b(jor)39 b(comp)s(onen)m(ts)h(\(compiler,)330 3411 y(k)m(ernel,)35 b(and)f(so)g(on\))g(of)h(the)f(op)s(erating)g (system)g(on)g(whic)m(h)f(the)h(executable)h(runs,)f(unless)e(that)330 3521 y(comp)s(onen)m(t)f(itself)e(accompanies)i(the)f(executable.)330 3652 y(If)39 b(distribution)c(of)40 b(executable)g(or)f(ob)5 b(ject)40 b(co)s(de)f(is)g(made)g(b)m(y)g(o\013ering)g(access)h(to)g (cop)m(y)g(from)330 3762 y(a)e(designated)f(place,)i(then)f(o\013ering) f(equiv)-5 b(alen)m(t)37 b(access)h(to)h(cop)m(y)f(the)f(source)h(co)s (de)g(from)f(the)330 3871 y(same)29 b(place)f(coun)m(ts)g(as)h (distribution)24 b(of)k(the)h(source)f(co)s(de,)h(ev)m(en)g(though)e (third)g(parties)g(are)i(not)330 3981 y(comp)s(elled)g(to)i(cop)m(y)g (the)g(source)f(along)h(with)e(the)h(ob)5 b(ject)31 b(co)s(de.)199 4113 y(4.)61 b(Y)-8 b(ou)35 b(ma)m(y)h(not)f(cop)m(y)-8 b(,)37 b(mo)s(dify)-8 b(,)35 b(sublicense,)f(or)g(distribute)f(the)i (Program)f(except)i(as)f(expressly)330 4222 y(pro)m(vided)k(under)g (this)h(License.)70 b(An)m(y)41 b(attempt)h(otherwise)e(to)h(cop)m(y)-8 b(,)45 b(mo)s(dify)-8 b(,)42 b(sublicense)c(or)330 4332 y(distribute)24 b(the)j(Program)g(is)e(v)m(oid,)i(and)f(will)e (automatically)j(terminate)f(y)m(our)h(righ)m(ts)f(under)f(this)330 4441 y(License.)70 b(Ho)m(w)m(ev)m(er,)45 b(parties)40 b(who)g(ha)m(v)m(e)h(receiv)m(ed)g(copies,)i(or)d(righ)m(ts,)j(from)d (y)m(ou)g(under)f(this)330 4551 y(License)d(will)e(not)j(ha)m(v)m(e)h (their)e(licenses)f(terminated)i(so)g(long)f(as)h(suc)m(h)f(parties)g (remain)g(in)f(full)330 4661 y(compliance.)199 4792 y(5.)61 b(Y)-8 b(ou)38 b(are)g(not)g(required)d(to)j(accept)h(this)e(License,)i (since)e(y)m(ou)g(ha)m(v)m(e)i(not)f(signed)e(it.)62 b(Ho)m(w)m(ev)m(er,)330 4902 y(nothing)23 b(else)g(gran)m(ts)i(y)m(ou)f (p)s(ermission)c(to)25 b(mo)s(dify)d(or)h(distribute)f(the)i(Program)g (or)f(its)g(deriv)-5 b(ativ)m(e)330 5011 y(w)m(orks.)38 b(These)23 b(actions)g(are)h(prohibited)c(b)m(y)j(la)m(w)g(if)f(y)m(ou) h(do)g(not)h(accept)g(this)e(License.)38 b(Therefore,)330 5121 y(b)m(y)e(mo)s(difying)d(or)j(distributing)c(the)k(Program)g(\(or) h(an)m(y)f(w)m(ork)g(based)g(on)f(the)i(Program\),)h(y)m(ou)330 5230 y(indicate)31 b(y)m(our)i(acceptance)h(of)f(this)e(License)h(to)i (do)e(so,)h(and)f(all)f(its)h(terms)g(and)g(conditions)f(for)330 5340 y(cop)m(ying,)g(distributing)26 b(or)31 b(mo)s(difying)c(the)k (Program)f(or)h(w)m(orks)f(based)g(on)g(it.)p eop %%Page: 316 326 316 325 bop 150 -116 a Fy(316)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))199 299 y(6.)61 b(Eac)m(h)43 b(time)e(y)m(ou)h (redistribute)e(the)i(Program)g(\(or)g(an)m(y)h(w)m(ork)f(based)f(on)h (the)g(Program\),)k(the)330 408 y(recipien)m(t)31 b(automatically)i (receiv)m(es)g(a)g(license)e(from)h(the)g(original)f(licensor)g(to)i (cop)m(y)-8 b(,)34 b(distribute)330 518 y(or)i(mo)s(dify)f(the)h (Program)h(sub)5 b(ject)36 b(to)h(these)g(terms)f(and)g(conditions.)57 b(Y)-8 b(ou)37 b(ma)m(y)g(not)f(imp)s(ose)330 628 y(an)m(y)27 b(further)f(restrictions)f(on)i(the)g(recipien)m(ts')f(exercise)h(of)g (the)g(righ)m(ts)f(gran)m(ted)h(herein.)38 b(Y)-8 b(ou)28 b(are)330 737 y(not)j(resp)s(onsible)c(for)j(enforcing)g(compliance)g (b)m(y)g(third)e(parties)i(to)h(this)e(License.)199 874 y(7.)61 b(If,)27 b(as)g(a)g(consequence)h(of)f(a)g(court)g(judgmen)m(t) f(or)h(allegation)f(of)h(paten)m(t)h(infringemen)m(t)c(or)j(for)g(an)m (y)330 984 y(other)h(reason)f(\(not)h(limited)d(to)j(paten)m(t)h (issues\),)e(conditions)f(are)h(imp)s(osed)f(on)h(y)m(ou)h(\(whether)f (b)m(y)330 1093 y(court)c(order,)h(agreemen)m(t)g(or)f(otherwise\))f (that)h(con)m(tradict)h(the)e(conditions)f(of)i(this)f(License,)i(they) 330 1203 y(do)34 b(not)g(excuse)h(y)m(ou)f(from)g(the)g(conditions)f (of)h(this)f(License.)52 b(If)33 b(y)m(ou)i(cannot)g(distribute)c(so)k (as)330 1313 y(to)f(satisfy)f(sim)m(ultaneously)f(y)m(our)h (obligations)g(under)f(this)g(License)h(and)g(an)m(y)h(other)g(p)s (ertinen)m(t)330 1422 y(obligations,)41 b(then)f(as)g(a)g(consequence)h (y)m(ou)f(ma)m(y)g(not)g(distribute)e(the)i(Program)g(at)g(all.)68 b(F)-8 b(or)330 1532 y(example,)25 b(if)e(a)i(paten)m(t)g(license)e(w)m (ould)g(not)h(p)s(ermit)f(ro)m(y)m(alt)m(y-free)j(redistribution)20 b(of)k(the)h(Program)330 1641 y(b)m(y)35 b(all)f(those)h(who)f(receiv)m (e)i(copies)f(directly)e(or)i(indirectly)e(through)h(y)m(ou,)i(then)f (the)g(only)f(w)m(a)m(y)330 1751 y(y)m(ou)27 b(could)e(satisfy)h(b)s (oth)f(it)h(and)g(this)f(License)h(w)m(ould)f(b)s(e)h(to)h(refrain)d (en)m(tirely)i(from)g(distribution)330 1861 y(of)31 b(the)f(Program.) 330 1998 y(If)43 b(an)m(y)g(p)s(ortion)f(of)h(this)g(section)g(is)f (held)g(in)m(v)-5 b(alid)41 b(or)i(unenforceable)f(under)g(an)m(y)i (particular)330 2107 y(circumstance,)i(the)e(balance)f(of)g(the)h (section)f(is)f(in)m(tended)g(to)i(apply)e(and)g(the)i(section)f(as)h (a)330 2217 y(whole)30 b(is)f(in)m(tended)g(to)i(apply)e(in)g(other)i (circumstances.)330 2354 y(It)41 b(is)e(not)i(the)f(purp)s(ose)f(of)i (this)e(section)i(to)g(induce)e(y)m(ou)i(to)g(infringe)d(an)m(y)j (paten)m(ts)g(or)g(other)330 2463 y(prop)s(ert)m(y)e(righ)m(t)h(claims) e(or)i(to)h(con)m(test)h(v)-5 b(alidit)m(y)38 b(of)i(an)m(y)g(suc)m(h)g (claims;)j(this)c(section)h(has)g(the)330 2573 y(sole)30 b(purp)s(ose)e(of)j(protecting)f(the)g(in)m(tegrit)m(y)g(of)g(the)h (free)f(soft)m(w)m(are)h(distribution)c(system,)j(whic)m(h)330 2682 y(is)k(implemen)m(ted)g(b)m(y)h(public)d(license)i(practices.)55 b(Man)m(y)36 b(p)s(eople)e(ha)m(v)m(e)i(made)f(generous)h(con)m(tri-) 330 2792 y(butions)e(to)i(the)f(wide)g(range)g(of)h(soft)m(w)m(are)h (distributed)32 b(through)j(that)h(system)f(in)f(reliance)h(on)330 2902 y(consisten)m(t)h(application)e(of)h(that)h(system;)i(it)d(is)g (up)f(to)i(the)g(author/donor)f(to)h(decide)f(if)g(he)g(or)330 3011 y(she)i(is)g(willing)d(to)k(distribute)d(soft)m(w)m(are)k(through) e(an)m(y)g(other)h(system)g(and)f(a)g(licensee)g(cannot)330 3121 y(imp)s(ose)29 b(that)i(c)m(hoice.)330 3258 y(This)25 b(section)j(is)e(in)m(tended)g(to)i(mak)m(e)g(thoroughly)e(clear)h (what)g(is)f(b)s(eliev)m(ed)g(to)i(b)s(e)f(a)g(consequence)330 3367 y(of)k(the)f(rest)h(of)f(this)f(License.)199 3504 y(8.)61 b(If)35 b(the)g(distribution)c(and/or)k(use)g(of)g(the)g (Program)g(is)f(restricted)h(in)f(certain)h(coun)m(tries)f(either)330 3614 y(b)m(y)h(paten)m(ts)h(or)g(b)m(y)f(cop)m(yrigh)m(ted)h(in)m (terfaces,)h(the)e(original)f(cop)m(yrigh)m(t)i(holder)e(who)h(places)g (the)330 3724 y(Program)h(under)f(this)g(License)h(ma)m(y)h(add)e(an)i (explicit)d(geographical)j(distribution)32 b(limitation)330 3833 y(excluding)27 b(those)i(coun)m(tries,)g(so)g(that)g(distribution) c(is)i(p)s(ermitted)h(only)f(in)g(or)i(among)g(coun)m(tries)330 3943 y(not)k(th)m(us)f(excluded.)47 b(In)32 b(suc)m(h)g(case,)j(this)c (License)i(incorp)s(orates)f(the)h(limitation)d(as)j(if)f(written)330 4052 y(in)d(the)i(b)s(o)s(dy)d(of)j(this)e(License.)199 4189 y(9.)61 b(The)26 b(F)-8 b(ree)28 b(Soft)m(w)m(are)g(F)-8 b(oundation)26 b(ma)m(y)i(publish)23 b(revised)i(and/or)i(new)f(v)m (ersions)g(of)h(the)g(General)330 4299 y(Public)35 b(License)h(from)h (time)g(to)g(time.)61 b(Suc)m(h)36 b(new)h(v)m(ersions)f(will)f(b)s(e)h (similar)e(in)i(spirit)f(to)j(the)330 4408 y(presen)m(t)30 b(v)m(ersion,)h(but)e(ma)m(y)i(di\013er)e(in)g(detail)h(to)h(address)e (new)h(problems)f(or)h(concerns.)330 4545 y(Eac)m(h)46 b(v)m(ersion)e(is)g(giv)m(en)h(a)g(distinguishing)40 b(v)m(ersion)45 b(n)m(um)m(b)s(er.)83 b(If)44 b(the)h(Program)g(sp)s (eci\014es)f(a)330 4655 y(v)m(ersion)35 b(n)m(um)m(b)s(er)g(of)h(this)e (License)i(whic)m(h)e(applies)g(to)j(it)e(and)g(\\an)m(y)i(later)e(v)m (ersion",)j(y)m(ou)e(ha)m(v)m(e)330 4765 y(the)d(option)f(of)h(follo)m (wing)e(the)i(terms)g(and)f(conditions)f(either)i(of)g(that)g(v)m (ersion)f(or)h(of)g(an)m(y)g(later)330 4874 y(v)m(ersion)d(published)c (b)m(y)k(the)g(F)-8 b(ree)31 b(Soft)m(w)m(are)g(F)-8 b(oundation.)41 b(If)29 b(the)i(Program)f(do)s(es)g(not)g(sp)s(ecify)f (a)330 4984 y(v)m(ersion)e(n)m(um)m(b)s(er)g(of)h(this)e(License,)i(y)m (ou)g(ma)m(y)h(c)m(ho)s(ose)f(an)m(y)h(v)m(ersion)e(ev)m(er)h (published)c(b)m(y)k(the)g(F)-8 b(ree)330 5093 y(Soft)m(w)m(are)31 b(F)-8 b(oundation.)154 5230 y(10.)61 b(If)29 b(y)m(ou)g(wish)f(to)i (incorp)s(orate)f(parts)g(of)g(the)g(Program)h(in)m(to)f(other)h(free)f (programs)g(whose)g(distri-)330 5340 y(bution)e(conditions)g(are)j (di\013eren)m(t,)e(write)g(to)i(the)f(author)f(to)i(ask)e(for)h(p)s (ermission.)37 b(F)-8 b(or)29 b(soft)m(w)m(are)p eop %%Page: 317 327 317 326 bop 150 -116 a Fy(GNU)31 b(GENERAL)f(PUBLIC)h(LICENSE)1961 b(317)330 299 y(whic)m(h)23 b(is)g(cop)m(yrigh)m(ted)h(b)m(y)g(the)g(F) -8 b(ree)25 b(Soft)m(w)m(are)g(F)-8 b(oundation,)25 b(write)e(to)i(the) f(F)-8 b(ree)25 b(Soft)m(w)m(are)g(F)-8 b(oun-)330 408 y(dation;)28 b(w)m(e)g(sometimes)g(mak)m(e)g(exceptions)g(for)f(this.) 39 b(Our)26 b(decision)g(will)f(b)s(e)h(guided)h(b)m(y)g(the)h(t)m(w)m (o)330 518 y(goals)23 b(of)g(preserving)e(the)h(free)h(status)g(of)f (all)g(deriv)-5 b(ativ)m(es)22 b(of)g(our)g(free)h(soft)m(w)m(are)h (and)e(of)h(promoting)330 628 y(the)31 b(sharing)e(and)g(reuse)h(of)h (soft)m(w)m(are)h(generally)-8 b(.)330 885 y Fs(NO)45 b(W)-15 b(ARRANTY)154 1053 y Fy(11.)61 b(BECA)m(USE)40 b(THE)f(PR)m(OGRAM)i(IS)e(LICENSED)g(FREE)g(OF)h(CHAR)m(GE,)h(THERE)e (IS)g(NO)330 1162 y(W)-10 b(ARRANTY)26 b(F)m(OR)f(THE)g(PR)m(OGRAM,)h (TO)e(THE)h(EXTENT)f(PERMITTED)h(BY)g(APPLI-)330 1272 y(CABLE)i(LA)-10 b(W.)27 b(EX)m(CEPT)g(WHEN)h(OTHER)-10 b(WISE)25 b(ST)-8 b(A)g(TED)28 b(IN)e(WRITING)i(THE)e(COPY-)330 1381 y(RIGHT)35 b(HOLDERS)g(AND/OR)h(OTHER)f(P)-8 b(AR)g(TIES)35 b(PR)m(O)m(VIDE)h(THE)f(PR)m(OGRAM)h(\\AS)330 1491 y(IS")22 b(WITHOUT)f(W)-10 b(ARRANTY)23 b(OF)f(ANY)g(KIND,)h(EITHER)e(EXPRESSED) g(OR)h(IMPLIED,)330 1601 y(INCLUDING,)33 b(BUT)g(NOT)g(LIMITED)f(TO,)g (THE)h(IMPLIED)g(W)-10 b(ARRANTIES)32 b(OF)h(MER-)330 1710 y(CHANT)-8 b(ABILITY)28 b(AND)g(FITNESS)e(F)m(OR)i(A)g(P)-8 b(AR)g(TICULAR)27 b(PURPOSE.)g(THE)g(ENTIRE)330 1820 y(RISK)19 b(AS)h(TO)g(THE)g(QUALITY)g(AND)h(PERF)m(ORMANCE)g(OF)f(THE)g (PR)m(OGRAM)h(IS)f(WITH)330 1929 y(YOU.)h(SHOULD)g(THE)f(PR)m(OGRAM)i (PR)m(O)m(VE)f(DEFECTIVE,)g(YOU)g(ASSUME)f(THE)g(COST)330 2039 y(OF)30 b(ALL)g(NECESSAR)-8 b(Y)30 b(SER)-10 b(VICING,)30 b(REP)-8 b(AIR)30 b(OR)g(CORRECTION.)154 2174 y(12.)61 b(IN)26 b(NO)g(EVENT)g(UNLESS)f(REQUIRED)h(BY)h(APPLICABLE)f(LA)-10 b(W)26 b(OR)g(A)m(GREED)h(TO)f(IN)330 2283 y(WRITING)37 b(WILL)f(ANY)i(COPYRIGHT)e(HOLDER,)h(OR)f(ANY)h(OTHER)f(P)-8 b(AR)g(TY)38 b(WHO)330 2393 y(MA)-8 b(Y)52 b(MODIFY)g(AND/OR)g (REDISTRIBUTE)e(THE)h(PR)m(OGRAM)h(AS)f(PERMITTED)330 2502 y(ABO)m(VE,)40 b(BE)f(LIABLE)f(TO)g(YOU)h(F)m(OR)g(D)m(AMA)m(GES,) h(INCLUDING)f(ANY)h(GENERAL,)330 2612 y(SPECIAL,)e(INCIDENT)-8 b(AL)40 b(OR)e(CONSEQUENTIAL)g(D)m(AMA)m(GES)j(ARISING)e(OUT)g(OF)330 2721 y(THE)44 b(USE)g(OR)g(INABILITY)h(TO)f(USE)g(THE)g(PR)m(OGRAM)h (\(INCLUDING)h(BUT)e(NOT)330 2831 y(LIMITED)29 b(TO)g(LOSS)f(OF)h(D)m (A)-8 b(T)g(A)31 b(OR)e(D)m(A)-8 b(T)g(A)31 b(BEING)f(RENDERED)g(INA)m (CCURA)-8 b(TE)29 b(OR)330 2941 y(LOSSES)38 b(SUST)-8 b(AINED)40 b(BY)h(YOU)f(OR)g(THIRD)g(P)-8 b(AR)g(TIES)40 b(OR)g(A)h(F)-10 b(AILURE)40 b(OF)g(THE)330 3050 y(PR)m(OGRAM)f(TO)f (OPERA)-8 b(TE)38 b(WITH)h(ANY)g(OTHER)f(PR)m(OGRAMS\),)h(EVEN)g(IF)f (SUCH)330 3160 y(HOLDER)33 b(OR)h(OTHER)f(P)-8 b(AR)g(TY)34 b(HAS)f(BEEN)h(AD)m(VISED)g(OF)g(THE)f(POSSIBILITY)f(OF)330 3269 y(SUCH)e(D)m(AMA)m(GES.)150 3527 y Fs(END)45 b(OF)g(TERMS)f(AND)h (CONDITIONS)p eop %%Page: 318 328 318 327 bop 150 -116 a Fy(318)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fs(Ho)l(w)46 b(to)f(Apply)f(These)h(T) -11 b(erms)45 b(to)g(Y)-11 b(our)44 b(New)i(Programs)275 487 y Fy(If)38 b(y)m(ou)i(dev)m(elop)f(a)g(new)g(program,)j(and)c(y)m (ou)i(w)m(an)m(t)g(it)e(to)i(b)s(e)f(of)g(the)h(greatest)h(p)s(ossible) 36 b(use)j(to)150 597 y(the)i(public,)g(the)h(b)s(est)e(w)m(a)m(y)i(to) g(ac)m(hiev)m(e)g(this)e(is)g(to)i(mak)m(e)g(it)f(free)g(soft)m(w)m (are)h(whic)m(h)e(ev)m(ery)m(one)j(can)150 707 y(redistribute)28 b(and)i(c)m(hange)h(under)e(these)i(terms.)275 837 y(T)-8 b(o)29 b(do)h(so,)g(attac)m(h)h(the)f(follo)m(wing)e(notices)h(to)i (the)e(program.)40 b(It)30 b(is)f(safest)h(to)g(attac)m(h)h(them)f(to)g (the)150 947 y(start)j(of)g(eac)m(h)h(source)e(\014le)g(to)h(most)g (e\013ectiv)m(ely)h(con)m(v)m(ey)g(the)e(exclusion)g(of)g(w)m(arran)m (t)m(y;)j(and)d(eac)m(h)i(\014le)150 1056 y(should)28 b(ha)m(v)m(e)k(at)f(least)g(the)f(\\cop)m(yrigh)m(t")i(line)d(and)g(a)i (p)s(oin)m(ter)f(to)h(where)f(the)g(full)e(notice)j(is)e(found.)390 1181 y Fn(one)i(line)d(to)j(giv)m(e)g(the)g(program's)f(name)h(and)e(a) i(brief)e(idea)h(of)g(what)h(it)f(do)s(es.)390 1285 y Fq(Copyright)45 b(\(C\))i Fn(y)m(ear)103 b(name)30 b(of)h(author)390 1492 y Fq(This)47 b(program)e(is)j(free)e(software;)g(you)g(can)h (redistribute)e(it)i(and/or)f(modify)390 1596 y(it)h(under)g(the)f (terms)h(of)g(the)g(GNU)g(General)f(Public)g(License)g(as)h(published)e (by)390 1700 y(the)i(Free)g(Software)e(Foundation;)g(either)h(version)g (2)h(of)g(the)g(License,)f(or)390 1803 y(\(at)h(your)g(option\))e(any)i (later)g(version.)390 2011 y(This)g(program)e(is)j(distributed)c(in)k (the)e(hope)h(that)g(it)g(will)g(be)g(useful,)390 2115 y(but)g(WITHOUT)f(ANY)h(WARRANTY;)e(without)h(even)g(the)h(implied)f (warranty)g(of)390 2219 y(MERCHANTABILITY)e(or)j(FITNESS)f(FOR)h(A)g (PARTICULAR)e(PURPOSE.)93 b(See)47 b(the)390 2322 y(GNU)g(General)f (Public)g(License)g(for)h(more)f(details.)390 2530 y(You)h(should)f (have)h(received)e(a)j(copy)e(of)h(the)g(GNU)g(General)f(Public)g (License)390 2634 y(along)g(with)h(this)g(program;)e(if)i(not,)g(write) f(to)i(the)e(Free)h(Software)390 2737 y(Foundation,)e(Inc.,)h(59)h (Temple)f(Place)h(-)g(Suite)g(330,)390 2841 y(Boston,)f(MA)h (02111-1307,)e(USA.)275 2972 y Fy(Also)30 b(add)f(information)g(on)h (ho)m(w)h(to)g(con)m(tact)i(y)m(ou)d(b)m(y)g(electronic)h(and)f(pap)s (er)f(mail.)275 3102 y(If)f(the)g(program)h(is)e(in)m(teractiv)m(e,)j (mak)m(e)g(it)e(output)g(a)h(short)f(notice)h(lik)m(e)f(this)f(when)h (it)g(starts)h(in)e(an)150 3212 y(in)m(teractiv)m(e)k(mo)s(de:)390 3336 y Fq(Gnomovision)45 b(version)h(69,)g(Copyright)g(\(C\))h Fn(y)m(ear)55 b(name)30 b(of)h(author)390 3440 y Fq(Gnomovision)45 b(comes)h(with)h(ABSOLUTELY)e(NO)i(WARRANTY;)e(for)i(details)390 3544 y(type)g(`show)f(w'.)390 3648 y(This)h(is)g(free)f(software,)g (and)h(you)g(are)f(welcome)g(to)h(redistribute)e(it)390 3751 y(under)h(certain)g(conditions;)f(type)i(`show)f(c')h(for)g (details.)275 3882 y Fy(The)27 b(h)m(yp)s(othetical)g(commands)h(`)p Fq(show)h(w)p Fy(')f(and)f(`)p Fq(show)j(c)p Fy(')d(should)f(sho)m(w)i (the)g(appropriate)f(parts)h(of)150 3991 y(the)38 b(General)g(Public)d (License.)63 b(Of)37 b(course,)j(the)f(commands)e(y)m(ou)h(use)g(ma)m (y)g(b)s(e)f(called)g(something)150 4101 y(other)25 b(than)f(`)p Fq(show)29 b(w)p Fy(')c(and)f(`)p Fq(show)29 b(c)p Fy(';)e(they)d (could)g(ev)m(en)h(b)s(e)f(mouse-clic)m(ks)g(or)h(men)m(u)f (items|whatev)m(er)150 4211 y(suits)29 b(y)m(our)h(program.)275 4341 y(Y)-8 b(ou)28 b(should)e(also)i(get)h(y)m(our)f(emplo)m(y)m(er)g (\(if)f(y)m(ou)h(w)m(ork)g(as)h(a)f(programmer\))g(or)g(y)m(our)f(sc)m (ho)s(ol,)i(if)e(an)m(y)-8 b(,)150 4451 y(to)34 b(sign)f(a)g(\\cop)m (yrigh)m(t)i(disclaimer")c(for)j(the)f(program,)h(if)f(necessary)-8 b(.)51 b(Here)34 b(is)e(a)i(sample;)g(alter)g(the)150 4560 y(names:)390 4685 y Fq(Yoyodyne,)45 b(Inc.,)i(hereby)f(disclaims)f (all)i(copyright)e(interest)h(in)h(the)g(program)390 4789 y(`Gnomovision')d(\(which)i(makes)h(passes)f(at)h(compilers\))e (written)h(by)h(James)f(Hacker.)390 4996 y Fn(signature)30 b(of)g(T)m(y)h(Co)s(on)p Fq(,)47 b(1)g(April)g(1989)390 5100 y(Ty)g(Coon,)g(President)e(of)i(Vice)275 5230 y Fy(This)19 b(General)h(Public)f(License)h(do)s(es)h(not)g(p)s(ermit)e (incorp)s(orating)g(y)m(our)i(program)f(in)m(to)h(proprietary)150 5340 y(programs.)38 b(If)22 b(y)m(our)h(program)f(is)g(a)h(subroutine)e (library)-8 b(,)23 b(y)m(ou)g(ma)m(y)g(consider)f(it)g(more)h(useful)e (to)j(p)s(ermit)p eop %%Page: 319 329 319 328 bop 150 -116 a Fy(GNU)31 b(GENERAL)f(PUBLIC)h(LICENSE)1961 b(319)150 299 y(linking)33 b(proprietary)i(applications)g(with)g(the)h (library)-8 b(.)57 b(If)35 b(this)h(is)f(what)h(y)m(ou)h(w)m(an)m(t)g (to)g(do,)h(use)e(the)150 408 y(GNU)31 b(Library)e(General)h(Public)e (License)i(instead)f(of)i(this)e(License.)p eop %%Page: 320 330 320 329 bop 150 -116 a Fy(320)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 321 331 321 330 bop 150 -116 a Fy(GNU)31 b(F)-8 b(ree)31 b(Do)s(cumen)m(tation) h(License)2097 b(321)150 299 y Fv(GNU)54 b(F)-13 b(ree)53 b(Do)t(cumen)l(tation)e(License)1470 504 y Fy(V)-8 b(ersion)30 b(1.1,)h(Marc)m(h)g(2000)390 632 y(Cop)m(yrigh)m(t)842 629 y(c)817 632 y Fx(\015)f Fy(2000)i(F)-8 b(ree)32 b(Soft)m(w)m(are)f (F)-8 b(oundation,)31 b(Inc.)390 735 y(59)g(T)-8 b(emple)30 b(Place,)h(Suite)e(330,)j(Boston,)g(MA)61 b(02111-1307,)35 b(USA)390 943 y(Ev)m(ery)m(one)c(is)f(p)s(ermitted)f(to)i(cop)m(y)g (and)f(distribute)e(v)m(erbatim)i(copies)390 1047 y(of)h(this)e (license)g(do)s(cumen)m(t,)i(but)e(c)m(hanging)i(it)f(is)f(not)i(allo)m (w)m(ed.)199 1180 y(0.)61 b(PREAMBLE)330 1314 y(The)27 b(purp)s(ose)f(of)i(this)f(License)g(is)g(to)h(mak)m(e)h(a)f(man)m (ual,)g(textb)s(o)s(ok,)h(or)e(other)h(written)f(do)s(cumen)m(t)330 1423 y Fn(free)47 b Fy(in)41 b(the)i(sense)f(of)g(freedom:)64 b(to)43 b(assure)f(ev)m(ery)m(one)i(the)e(e\013ectiv)m(e)i(freedom)e (to)h(cop)m(y)g(and)330 1533 y(redistribute)28 b(it,)j(with)e(or)i (without)f(mo)s(difying)e(it,)i(either)h(commercially)e(or)i (noncommercially)-8 b(.)330 1642 y(Secondarily)g(,)28 b(this)g(License)g(preserv)m(es)h(for)f(the)h(author)g(and)f(publisher) d(a)k(w)m(a)m(y)h(to)f(get)h(credit)e(for)330 1752 y(their)h(w)m(ork,)i (while)e(not)h(b)s(eing)f(considered)g(resp)s(onsible)f(for)i(mo)s (di\014cations)e(made)j(b)m(y)f(others.)330 1885 y(This)21 b(License)i(is)f(a)i(kind)d(of)j(\\cop)m(yleft",)i(whic)m(h)c(means)h (that)h(deriv)-5 b(ativ)m(e)22 b(w)m(orks)h(of)h(the)f(do)s(cumen)m(t) 330 1995 y(m)m(ust)34 b(themselv)m(es)g(b)s(e)f(free)h(in)f(the)h(same) g(sense.)51 b(It)34 b(complemen)m(ts)g(the)g(GNU)g(General)g(Public)330 2104 y(License,)c(whic)m(h)f(is)h(a)g(cop)m(yleft)h(license)f(designed) f(for)h(free)h(soft)m(w)m(are.)330 2238 y(W)-8 b(e)31 b(ha)m(v)m(e)f(designed)f(this)f(License)h(in)f(order)h(to)i(use)e(it)g (for)g(man)m(uals)g(for)g(free)h(soft)m(w)m(are,)h(b)s(ecause)330 2348 y(free)42 b(soft)m(w)m(are)i(needs)e(free)g(do)s(cumen)m(tation:) 64 b(a)42 b(free)h(program)f(should)e(come)j(with)e(man)m(uals)330 2457 y(pro)m(viding)27 b(the)i(same)g(freedoms)f(that)i(the)f(soft)m(w) m(are)h(do)s(es.)40 b(But)29 b(this)e(License)i(is)f(not)h(limited)d (to)330 2567 y(soft)m(w)m(are)32 b(man)m(uals;)e(it)g(can)h(b)s(e)f (used)g(for)g(an)m(y)h(textual)g(w)m(ork,)g(regardless)f(of)h(sub)5 b(ject)30 b(matter)i(or)330 2676 y(whether)f(it)g(is)f(published)e(as)k (a)f(prin)m(ted)f(b)s(o)s(ok.)44 b(W)-8 b(e)32 b(recommend)f(this)g (License)g(principally)c(for)330 2786 y(w)m(orks)j(whose)h(purp)s(ose)d (is)i(instruction)e(or)i(reference.)199 2919 y(1.)61 b(APPLICABILITY)29 b(AND)j(DEFINITIONS)330 3053 y(This)38 b(License)i(applies)f(to)i(an)m(y)f(man)m(ual)g(or)g(other)h(w)m(ork)f (that)h(con)m(tains)f(a)h(notice)f(placed)g(b)m(y)330 3162 y(the)30 b(cop)m(yrigh)m(t)h(holder)e(sa)m(ying)h(it)g(can)g(b)s (e)g(distributed)d(under)i(the)h(terms)h(of)f(this)f(License.)40 b(The)330 3272 y(\\Do)s(cumen)m(t",)34 b(b)s(elo)m(w,)d(refers)h(to)g (an)m(y)g(suc)m(h)g(man)m(ual)f(or)g(w)m(ork.)45 b(An)m(y)32 b(mem)m(b)s(er)f(of)h(the)g(public)d(is)330 3382 y(a)i(licensee,)f(and) g(is)f(addressed)g(as)i(\\y)m(ou".)330 3515 y(A)j(\\Mo)s(di\014ed)e(V) -8 b(ersion")34 b(of)g(the)g(Do)s(cumen)m(t)g(means)g(an)m(y)g(w)m(ork) f(con)m(taining)h(the)g(Do)s(cumen)m(t)g(or)330 3625 y(a)k(p)s(ortion)e(of)i(it,)h(either)e(copied)g(v)m(erbatim,)i(or)e (with)g(mo)s(di\014cations)e(and/or)j(translated)f(in)m(to)330 3734 y(another)31 b(language.)330 3868 y(A)26 b(\\Secondary)g(Section") g(is)f(a)i(named)e(app)s(endix)e(or)j(a)h(fron)m(t-matter)g(section)f (of)g(the)g(Do)s(cumen)m(t)330 3977 y(that)c(deals)f(exclusiv)m(ely)f (with)g(the)h(relationship)e(of)i(the)h(publishers)17 b(or)k(authors)g(of)h(the)f(Do)s(cumen)m(t)330 4087 y(to)38 b(the)f(Do)s(cumen)m(t's)i(o)m(v)m(erall)e(sub)5 b(ject)37 b(\(or)h(to)g(related)f(matters\))h(and)f(con)m(tains)g(nothing)f(that) 330 4196 y(could)20 b(fall)g(directly)g(within)f(that)j(o)m(v)m(erall)g (sub)5 b(ject.)37 b(\(F)-8 b(or)23 b(example,)g(if)d(the)i(Do)s(cumen)m (t)g(is)e(in)g(part)i(a)330 4306 y(textb)s(o)s(ok)i(of)g(mathematics,)i (a)e(Secondary)f(Section)g(ma)m(y)h(not)g(explain)e(an)m(y)i (mathematics.\))39 b(The)330 4416 y(relationship)25 b(could)h(b)s(e)h (a)g(matter)i(of)e(historical)f(connection)h(with)f(the)i(sub)5 b(ject)27 b(or)g(with)f(related)330 4525 y(matters,)38 b(or)d(of)h(legal,)g(commercial,)h(philosophical,)d(ethical)h(or)g(p)s (olitical)e(p)s(osition)h(regarding)330 4635 y(them.)330 4768 y(The)25 b(\\In)m(v)-5 b(arian)m(t)26 b(Sections")g(are)g(certain) f(Secondary)h(Sections)f(whose)g(titles)g(are)h(designated,)h(as)330 4878 y(b)s(eing)e(those)i(of)g(In)m(v)-5 b(arian)m(t)26 b(Sections,)i(in)d(the)i(notice)g(that)g(sa)m(ys)g(that)g(the)g(Do)s (cumen)m(t)g(is)f(released)330 4987 y(under)j(this)g(License.)330 5121 y(The)36 b(\\Co)m(v)m(er)i(T)-8 b(exts")38 b(are)f(certain)f (short)h(passages)g(of)g(text)g(that)h(are)f(listed,)g(as)f(F)-8 b(ron)m(t-Co)m(v)m(er)330 5230 y(T)g(exts)26 b(or)f(Bac)m(k-Co)m(v)m (er)j(T)-8 b(exts,)27 b(in)c(the)i(notice)h(that)f(sa)m(ys)h(that)g (the)f(Do)s(cumen)m(t)h(is)e(released)g(under)330 5340 y(this)29 b(License.)p eop %%Page: 322 332 322 331 bop 150 -116 a Fy(322)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))330 299 y(A)36 b(\\T)-8 b(ransparen)m(t")36 b(cop)m(y)g(of)g(the)f(Do)s(cumen)m(t)h(means)g(a)g(mac)m (hine-readable)f(cop)m(y)-8 b(,)38 b(represen)m(ted)330 408 y(in)33 b(a)h(format)g(whose)g(sp)s(eci\014cation)f(is)g(a)m(v)-5 b(ailable)34 b(to)g(the)h(general)f(public,)e(whose)i(con)m(ten)m(ts)i (can)330 518 y(b)s(e)f(view)m(ed)h(and)g(edited)f(directly)g(and)g (straigh)m(tforw)m(ardly)g(with)g(generic)h(text)h(editors)f(or)g (\(for)330 628 y(images)25 b(comp)s(osed)g(of)h(pixels\))d(generic)j (pain)m(t)e(programs)h(or)g(\(for)h(dra)m(wings\))e(some)i(widely)d(a)m (v)-5 b(ail-)330 737 y(able)31 b(dra)m(wing)f(editor,)i(and)f(that)h (is)e(suitable)g(for)h(input)f(to)i(text)g(formatters)g(or)g(for)f (automatic)330 847 y(translation)f(to)i(a)g(v)-5 b(ariet)m(y)32 b(of)f(formats)h(suitable)e(for)h(input)e(to)j(text)g(formatters.)44 b(A)32 b(cop)m(y)g(made)330 956 y(in)d(an)g(otherwise)h(T)-8 b(ransparen)m(t)29 b(\014le)g(format)i(whose)e(markup)g(has)h(b)s(een)f (designed)g(to)h(th)m(w)m(art)h(or)330 1066 y(discourage)g(subsequen)m (t)g(mo)s(di\014cation)f(b)m(y)h(readers)h(is)e(not)i(T)-8 b(ransparen)m(t.)44 b(A)32 b(cop)m(y)g(that)g(is)f(not)330 1176 y(\\T)-8 b(ransparen)m(t")31 b(is)e(called)h(\\Opaque".)330 1313 y(Examples)52 b(of)h(suitable)f(formats)h(for)g(T)-8 b(ransparen)m(t)53 b(copies)g(include)e(plain)g Fk(asci)r(i)i Fy(without)330 1422 y(markup,)79 b(T)-8 b(exinfo)69 b(input)f(format,) 80 b(LaT)1911 1442 y(E)1962 1422 y(X)70 b(input)e(format,)80 b Fk(sgml)69 b Fy(or)h Fk(xml)f Fy(using)g(a)330 1532 y(publicly)41 b(a)m(v)-5 b(ailable)44 b Fk(dtd)p Fy(,)k(and)c (standard-conforming)g(simple)e Fk(html)i Fy(designed)f(for)i(h)m(uman) 330 1641 y(mo)s(di\014cation.)54 b(Opaque)35 b(formats)h(include)d(P)m (ostScript,)j Fk(pdf)p Fy(,)g(proprietary)e(formats)i(that)g(can)330 1751 y(b)s(e)f(read)g(and)g(edited)g(only)g(b)m(y)h(proprietary)e(w)m (ord)h(pro)s(cessors,)i Fk(sgml)e Fy(or)g Fk(xml)g Fy(for)g(whic)m(h)g (the)330 1861 y Fk(dtd)j Fy(and/or)h(pro)s(cessing)f(to)s(ols)h(are)g (not)g(generally)g(a)m(v)-5 b(ailable,)40 b(and)f(the)g(mac)m (hine-generated)330 1970 y Fk(html)29 b Fy(pro)s(duced)g(b)m(y)h(some)h (w)m(ord)f(pro)s(cessors)g(for)g(output)g(purp)s(oses)f(only)-8 b(.)330 2107 y(The)34 b(\\Title)f(P)m(age")k(means,)e(for)f(a)h(prin)m (ted)e(b)s(o)s(ok,)i(the)f(title)g(page)h(itself,)f(plus)f(suc)m(h)g (follo)m(wing)330 2217 y(pages)28 b(as)g(are)g(needed)g(to)g(hold,)f (legibly)-8 b(,)27 b(the)h(material)f(this)g(License)g(requires)f(to)i (app)s(ear)f(in)g(the)330 2326 y(title)f(page.)40 b(F)-8 b(or)28 b(w)m(orks)e(in)f(formats)i(whic)m(h)f(do)g(not)h(ha)m(v)m(e)h (an)m(y)e(title)h(page)g(as)g(suc)m(h,)g(\\Title)f(P)m(age")330 2436 y(means)31 b(the)f(text)i(near)e(the)h(most)g(prominen)m(t)f(app)s (earance)g(of)h(the)g(w)m(ork's)g(title,)f(preceding)g(the)330 2545 y(b)s(eginning)e(of)i(the)h(b)s(o)s(dy)e(of)h(the)h(text.)199 2682 y(2.)61 b(VERBA)-8 b(TIM)31 b(COPYING)330 2819 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)f(the)i(Do)s(cumen)m(t)h (in)e(an)m(y)h(medium,)g(either)g(commercially)f(or)330 2929 y(noncommercially)-8 b(,)45 b(pro)m(vided)c(that)i(this)e (License,)46 b(the)c(cop)m(yrigh)m(t)h(notices,)j(and)c(the)h(license) 330 3039 y(notice)36 b(sa)m(ying)g(this)e(License)i(applies)d(to)k(the) f(Do)s(cumen)m(t)g(are)g(repro)s(duced)e(in)h(all)f(copies,)k(and)330 3148 y(that)27 b(y)m(ou)g(add)f(no)h(other)f(conditions)f(whatso)s(ev)m (er)j(to)f(those)g(of)g(this)e(License.)39 b(Y)-8 b(ou)27 b(ma)m(y)g(not)g(use)330 3258 y(tec)m(hnical)33 b(measures)f(to)i (obstruct)f(or)g(con)m(trol)g(the)g(reading)f(or)h(further)e(cop)m (ying)i(of)g(the)g(copies)330 3367 y(y)m(ou)25 b(mak)m(e)g(or)g (distribute.)36 b(Ho)m(w)m(ev)m(er,)28 b(y)m(ou)d(ma)m(y)g(accept)h (comp)s(ensation)e(in)f(exc)m(hange)k(for)d(copies.)330 3477 y(If)32 b(y)m(ou)g(distribute)e(a)j(large)f(enough)g(n)m(um)m(b)s (er)f(of)h(copies)g(y)m(ou)g(m)m(ust)h(also)f(follo)m(w)f(the)h (conditions)330 3587 y(in)d(section)i(3.)330 3724 y(Y)-8 b(ou)21 b(ma)m(y)h(also)e(lend)g(copies,)i(under)e(the)h(same)g (conditions)e(stated)j(ab)s(o)m(v)m(e,)i(and)c(y)m(ou)h(ma)m(y)g (publicly)330 3833 y(displa)m(y)29 b(copies.)199 3970 y(3.)61 b(COPYING)30 b(IN)g(QUANTITY)330 4107 y(If)43 b(y)m(ou)g(publish)d(prin)m(ted)h(copies)i(of)h(the)f(Do)s(cumen)m(t)h (n)m(um)m(b)s(ering)d(more)i(than)g(100,)48 b(and)43 b(the)330 4217 y(Do)s(cumen)m(t's)32 b(license)f(notice)g(requires)f (Co)m(v)m(er)j(T)-8 b(exts,)32 b(y)m(ou)g(m)m(ust)f(enclose)h(the)f (copies)g(in)f(co)m(v)m(ers)330 4326 y(that)35 b(carry)-8 b(,)37 b(clearly)d(and)g(legibly)-8 b(,)34 b(all)g(these)h(Co)m(v)m(er) g(T)-8 b(exts:)50 b(F)-8 b(ron)m(t-Co)m(v)m(er)37 b(T)-8 b(exts)35 b(on)g(the)g(fron)m(t)330 4436 y(co)m(v)m(er,)44 b(and)39 b(Bac)m(k-Co)m(v)m(er)k(T)-8 b(exts)40 b(on)f(the)h(bac)m(k)h (co)m(v)m(er.)70 b(Both)40 b(co)m(v)m(ers)h(m)m(ust)f(also)g(clearly)f (and)330 4545 y(legibly)29 b(iden)m(tify)h(y)m(ou)h(as)h(the)f (publisher)c(of)32 b(these)f(copies.)43 b(The)31 b(fron)m(t)g(co)m(v)m (er)i(m)m(ust)e(presen)m(t)g(the)330 4655 y(full)e(title)h(with)g(all)g (w)m(ords)h(of)g(the)g(title)g(equally)f(prominen)m(t)f(and)i(visible.) 40 b(Y)-8 b(ou)32 b(ma)m(y)f(add)g(other)330 4765 y(material)26 b(on)h(the)g(co)m(v)m(ers)i(in)d(addition.)37 b(Cop)m(ying)27 b(with)e(c)m(hanges)j(limited)d(to)j(the)f(co)m(v)m(ers,)i(as)e(long) 330 4874 y(as)i(they)g(preserv)m(e)f(the)h(title)f(of)h(the)g(Do)s (cumen)m(t)g(and)f(satisfy)g(these)h(conditions,)f(can)h(b)s(e)f (treated)330 4984 y(as)j(v)m(erbatim)f(cop)m(ying)g(in)f(other)i(resp)s (ects.)330 5121 y(If)h(the)h(required)e(texts)j(for)e(either)g(co)m(v)m (er)j(are)e(to)s(o)g(v)m(oluminous)e(to)i(\014t)g(legibly)-8 b(,)32 b(y)m(ou)h(should)e(put)330 5230 y(the)i(\014rst)f(ones)h (listed)e(\(as)j(man)m(y)f(as)g(\014t)g(reasonably\))f(on)h(the)g (actual)g(co)m(v)m(er,)i(and)e(con)m(tin)m(ue)g(the)330 5340 y(rest)e(on)m(to)g(adjacen)m(t)h(pages.)p eop %%Page: 323 333 323 332 bop 150 -116 a Fy(GNU)31 b(F)-8 b(ree)31 b(Do)s(cumen)m(tation) h(License)2097 b(323)330 299 y(If)27 b(y)m(ou)g(publish)c(or)k (distribute)e(Opaque)h(copies)h(of)g(the)h(Do)s(cumen)m(t)f(n)m(um)m(b) s(ering)e(more)j(than)e(100,)330 408 y(y)m(ou)i(m)m(ust)g(either)g (include)d(a)k(mac)m(hine-readable)e(T)-8 b(ransparen)m(t)28 b(cop)m(y)h(along)f(with)e(eac)m(h)j(Opaque)330 518 y(cop)m(y)-8 b(,)46 b(or)c(state)h(in)d(or)i(with)e(eac)m(h)j(Opaque)e(cop)m(y)h(a)g (publicly-accessible)d(computer-net)m(w)m(ork)330 628 y(lo)s(cation)32 b(con)m(taining)h(a)g(complete)g(T)-8 b(ransparen)m(t)32 b(cop)m(y)i(of)f(the)f(Do)s(cumen)m(t,)j(free)e(of)f (added)g(ma-)330 737 y(terial,)d(whic)m(h)g(the)h(general)f(net)m(w)m (ork-using)h(public)d(has)i(access)i(to)g(do)m(wnload)d(anon)m(ymously) h(at)330 847 y(no)35 b(c)m(harge)i(using)d(public-standard)e(net)m(w)m (ork)k(proto)s(cols.)55 b(If)35 b(y)m(ou)h(use)f(the)h(latter)f (option,)i(y)m(ou)330 956 y(m)m(ust)k(tak)m(e)i(reasonably)e(pruden)m (t)f(steps,)k(when)d(y)m(ou)g(b)s(egin)f(distribution)e(of)j(Opaque)g (copies)330 1066 y(in)d(quan)m(tit)m(y)-8 b(,)42 b(to)e(ensure)f(that)h (this)e(T)-8 b(ransparen)m(t)39 b(cop)m(y)h(will)d(remain)h(th)m(us)h (accessible)g(at)h(the)330 1176 y(stated)g(lo)s(cation)g(un)m(til)e(at) i(least)g(one)g(y)m(ear)g(after)g(the)g(last)g(time)f(y)m(ou)h (distribute)d(an)i(Opaque)330 1285 y(cop)m(y)31 b(\(directly)f(or)g (through)g(y)m(our)g(agen)m(ts)i(or)e(retailers\))g(of)g(that)h (edition)e(to)j(the)e(public.)330 1422 y(It)35 b(is)e(requested,)j(but) e(not)h(required,)f(that)h(y)m(ou)g(con)m(tact)h(the)f(authors)f(of)h (the)g(Do)s(cumen)m(t)g(w)m(ell)330 1532 y(b)s(efore)28 b(redistributing)d(an)m(y)k(large)g(n)m(um)m(b)s(er)e(of)i(copies,)g (to)g(giv)m(e)g(them)g(a)g(c)m(hance)h(to)f(pro)m(vide)f(y)m(ou)330 1641 y(with)h(an)h(up)s(dated)f(v)m(ersion)h(of)h(the)f(Do)s(cumen)m (t.)199 1778 y(4.)61 b(MODIFICA)-8 b(TIONS)330 1915 y(Y)g(ou)26 b(ma)m(y)g(cop)m(y)g(and)f(distribute)e(a)j(Mo)s(di\014ed)e(V)-8 b(ersion)25 b(of)h(the)g(Do)s(cumen)m(t)g(under)e(the)h(conditions)330 2025 y(of)c(sections)g(2)h(and)e(3)h(ab)s(o)m(v)m(e,)k(pro)m(vided)19 b(that)j(y)m(ou)f(release)h(the)f(Mo)s(di\014ed)e(V)-8 b(ersion)21 b(under)e(precisely)330 2134 y(this)28 b(License,)h(with)f (the)h(Mo)s(di\014ed)e(V)-8 b(ersion)29 b(\014lling)d(the)j(role)g(of)g (the)g(Do)s(cumen)m(t,)h(th)m(us)f(licensing)330 2244 y(distribution)h(and)k(mo)s(di\014cation)e(of)j(the)f(Mo)s(di\014ed)e (V)-8 b(ersion)34 b(to)h(who)s(ev)m(er)f(p)s(ossesses)f(a)i(cop)m(y)g (of)330 2354 y(it.)40 b(In)30 b(addition,)f(y)m(ou)h(m)m(ust)h(do)f (these)h(things)e(in)g(the)i(Mo)s(di\014ed)d(V)-8 b(ersion:)357 2491 y(A.)60 b(Use)33 b(in)e(the)i(Title)f(P)m(age)i(\(and)f(on)f(the)h (co)m(v)m(ers,)i(if)d(an)m(y\))h(a)g(title)f(distinct)f(from)i(that)g (of)g(the)510 2600 y(Do)s(cumen)m(t,)j(and)d(from)g(those)i(of)f (previous)e(v)m(ersions)h(\(whic)m(h)g(should,)g(if)g(there)h(w)m(ere)g (an)m(y)-8 b(,)510 2710 y(b)s(e)31 b(listed)f(in)g(the)h(History)g (section)g(of)h(the)f(Do)s(cumen)m(t\).)45 b(Y)-8 b(ou)32 b(ma)m(y)g(use)f(the)g(same)h(title)f(as)510 2819 y(a)g(previous)e(v)m (ersion)g(if)h(the)g(original)f(publisher)e(of)j(that)h(v)m(ersion)f (giv)m(es)h(p)s(ermission.)360 2956 y(B.)61 b(List)30 b(on)g(the)h(Title)e(P)m(age,)k(as)d(authors,)h(one)g(or)f(more)h(p)s (ersons)e(or)h(en)m(tities)h(resp)s(onsible)c(for)510 3066 y(authorship)d(of)i(the)h(mo)s(di\014cations)d(in)h(the)h(Mo)s (di\014ed)e(V)-8 b(ersion,)27 b(together)h(with)c(at)j(least)g(\014v)m (e)510 3176 y(of)i(the)g(principal)c(authors)j(of)h(the)g(Do)s(cumen)m (t)g(\(all)f(of)h(its)f(principal)d(authors,)k(if)f(it)g(has)h(less)510 3285 y(than)h(\014v)m(e\).)359 3422 y(C.)60 b(State)32 b(on)e(the)h(Title)f(page)h(the)g(name)g(of)g(the)g(publisher)c(of)k (the)g(Mo)s(di\014ed)e(V)-8 b(ersion,)31 b(as)g(the)510 3532 y(publisher.)355 3669 y(D.)61 b(Preserv)m(e)31 b(all)e(the)i(cop)m (yrigh)m(t)g(notices)f(of)h(the)f(Do)s(cumen)m(t.)363 3806 y(E.)60 b(Add)30 b(an)i(appropriate)e(cop)m(yrigh)m(t)i(notice)f (for)h(y)m(our)f(mo)s(di\014cations)e(adjacen)m(t)k(to)f(the)g(other) 510 3915 y(cop)m(yrigh)m(t)f(notices.)365 4052 y(F.)61 b(Include,)27 b(immediately)f(after)i(the)h(cop)m(yrigh)m(t)f(notices,) h(a)f(license)f(notice)h(giving)f(the)h(public)510 4162 y(p)s(ermission)21 b(to)26 b(use)e(the)g(Mo)s(di\014ed)f(V)-8 b(ersion)24 b(under)f(the)i(terms)f(of)h(this)e(License,)j(in)d(the)h (form)510 4271 y(sho)m(wn)30 b(in)f(the)h(Addendum)f(b)s(elo)m(w.)353 4408 y(G.)61 b(Preserv)m(e)23 b(in)f(that)h(license)f(notice)h(the)g (full)e(lists)g(of)i(In)m(v)-5 b(arian)m(t)22 b(Sections)h(and)f (required)f(Co)m(v)m(er)510 4518 y(T)-8 b(exts)31 b(giv)m(en)f(in)f (the)i(Do)s(cumen)m(t's)g(license)f(notice.)357 4655 y(H.)60 b(Include)29 b(an)h(unaltered)f(cop)m(y)i(of)g(this)e(License.) 392 4792 y(I.)60 b(Preserv)m(e)28 b(the)g(section)f(en)m(titled)g (\\History",)i(and)e(its)g(title,)g(and)g(add)g(to)h(it)f(an)h(item)f (stating)510 4902 y(at)43 b(least)f(the)h(title,)i(y)m(ear,)h(new)c (authors,)j(and)d(publisher)c(of)43 b(the)f(Mo)s(di\014ed)f(V)-8 b(ersion)42 b(as)510 5011 y(giv)m(en)27 b(on)g(the)g(Title)f(P)m(age.) 41 b(If)27 b(there)g(is)f(no)h(section)g(en)m(titled)f(\\History")i(in) e(the)h(Do)s(cumen)m(t,)510 5121 y(create)i(one)f(stating)f(the)h (title,)g(y)m(ear,)h(authors,)f(and)e(publisher)e(of)k(the)f(Do)s (cumen)m(t)h(as)g(giv)m(en)510 5230 y(on)34 b(its)f(Title)g(P)m(age,)k (then)c(add)h(an)g(item)f(describing)f(the)i(Mo)s(di\014ed)f(V)-8 b(ersion)33 b(as)h(stated)h(in)510 5340 y(the)c(previous)d(sen)m (tence.)p eop %%Page: 324 334 324 333 bop 150 -116 a Fy(324)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))378 299 y(J.)60 b(Preserv)m(e)33 b(the)g(net)m(w)m(ork)g(lo)s(cation,)g(if)e(an)m(y)-8 b(,)34 b(giv)m(en)e(in)g(the)g(Do)s(cumen)m(t)h(for)g(public)c(access) 34 b(to)510 408 y(a)e(T)-8 b(ransparen)m(t)30 b(cop)m(y)i(of)g(the)f (Do)s(cumen)m(t,)h(and)f(lik)m(ewise)e(the)j(net)m(w)m(ork)g(lo)s (cations)e(giv)m(en)h(in)510 518 y(the)h(Do)s(cumen)m(t)g(for)g (previous)e(v)m(ersions)h(it)g(w)m(as)h(based)f(on.)45 b(These)31 b(ma)m(y)h(b)s(e)f(placed)g(in)g(the)510 628 y(\\History")26 b(section.)39 b(Y)-8 b(ou)25 b(ma)m(y)h(omit)f(a)g(net) m(w)m(ork)h(lo)s(cation)e(for)h(a)h(w)m(ork)f(that)g(w)m(as)h (published)510 737 y(at)36 b(least)g(four)f(y)m(ears)i(b)s(efore)e(the) h(Do)s(cumen)m(t)h(itself,)f(or)f(if)g(the)h(original)e(publisher)e(of) k(the)510 847 y(v)m(ersion)30 b(it)g(refers)g(to)h(giv)m(es)g(p)s (ermission.)354 984 y(K.)60 b(In)41 b(an)m(y)i(section)f(en)m(titled)g (\\Ac)m(kno)m(wledgmen)m(ts")i(or)e(\\Dedications",)k(preserv)m(e)d (the)f(sec-)510 1093 y(tion's)34 b(title,)h(and)f(preserv)m(e)h(in)e (the)i(section)f(all)g(the)h(substance)f(and)g(tone)h(of)f(eac)m(h)i (of)f(the)510 1203 y(con)m(tributor)30 b(ac)m(kno)m(wledgmen)m(ts)h (and/or)g(dedications)e(giv)m(en)h(therein.)368 1340 y(L.)60 b(Preserv)m(e)36 b(all)e(the)i(In)m(v)-5 b(arian)m(t)35 b(Sections)g(of)g(the)h(Do)s(cumen)m(t,)h(unaltered)e(in)f(their)g (text)j(and)510 1450 y(in)e(their)g(titles.)56 b(Section)36 b(n)m(um)m(b)s(ers)e(or)i(the)g(equiv)-5 b(alen)m(t)36 b(are)g(not)g(considered)f(part)h(of)g(the)510 1559 y(section)31 b(titles.)341 1696 y(M.)61 b(Delete)34 b(an)m(y)e(section)h(en)m (titled)f(\\Endorsemen)m(ts".)47 b(Suc)m(h)31 b(a)i(section)f(ma)m(y)h (not)g(b)s(e)f(included)510 1806 y(in)d(the)i(Mo)s(di\014ed)d(V)-8 b(ersion.)357 1943 y(N.)60 b(Do)35 b(not)f(retitle)g(an)m(y)h(existing) e(section)h(as)h(\\Endorsemen)m(ts")f(or)h(to)g(con\015ict)f(in)e (title)i(with)510 2052 y(an)m(y)d(In)m(v)-5 b(arian)m(t)30 b(Section.)330 2217 y(If)j(the)g(Mo)s(di\014ed)f(V)-8 b(ersion)33 b(includes)e(new)i(fron)m(t-matter)i(sections)e(or)g(app)s (endices)f(that)i(qualify)330 2326 y(as)28 b(Secondary)g(Sections)f (and)g(con)m(tain)i(no)e(material)h(copied)f(from)g(the)h(Do)s(cumen)m (t,)i(y)m(ou)e(ma)m(y)g(at)330 2436 y(y)m(our)k(option)g(designate)h (some)f(or)h(all)e(of)h(these)h(sections)g(as)f(in)m(v)-5 b(arian)m(t.)46 b(T)-8 b(o)33 b(do)f(this,)g(add)g(their)330 2545 y(titles)j(to)h(the)f(list)f(of)i(In)m(v)-5 b(arian)m(t)35 b(Sections)g(in)f(the)i(Mo)s(di\014ed)e(V)-8 b(ersion's)35 b(license)f(notice.)56 b(These)330 2655 y(titles)30 b(m)m(ust)g(b)s(e)g (distinct)f(from)g(an)m(y)i(other)g(section)f(titles.)330 2792 y(Y)-8 b(ou)45 b(ma)m(y)g(add)e(a)i(section)f(en)m(titled)g (\\Endorsemen)m(ts",)k(pro)m(vided)43 b(it)h(con)m(tains)g(nothing)g (but)330 2902 y(endorsemen)m(ts)30 b(of)g(y)m(our)f(Mo)s(di\014ed)f(V) -8 b(ersion)30 b(b)m(y)f(v)-5 b(arious)29 b(parties|for)g(example,)g (statemen)m(ts)j(of)330 3011 y(p)s(eer)27 b(review)f(or)h(that)h(the)f (text)i(has)d(b)s(een)h(appro)m(v)m(ed)g(b)m(y)g(an)h(organization)f (as)g(the)h(authoritativ)m(e)330 3121 y(de\014nition)g(of)j(a)f (standard.)330 3258 y(Y)-8 b(ou)29 b(ma)m(y)g(add)e(a)i(passage)g(of)g (up)e(to)i(\014v)m(e)g(w)m(ords)e(as)i(a)g(F)-8 b(ron)m(t-Co)m(v)m(er) 30 b(T)-8 b(ext,)30 b(and)e(a)g(passage)i(of)e(up)330 3367 y(to)g(25)g(w)m(ords)e(as)i(a)f(Bac)m(k-Co)m(v)m(er)j(T)-8 b(ext,)29 b(to)f(the)f(end)f(of)i(the)f(list)f(of)h(Co)m(v)m(er)h(T)-8 b(exts)27 b(in)f(the)i(Mo)s(di\014ed)330 3477 y(V)-8 b(ersion.)57 b(Only)34 b(one)i(passage)h(of)f(F)-8 b(ron)m(t-Co)m(v)m (er)38 b(T)-8 b(ext)36 b(and)g(one)g(of)g(Bac)m(k-Co)m(v)m(er)j(T)-8 b(ext)36 b(ma)m(y)h(b)s(e)330 3587 y(added)27 b(b)m(y)g(\(or)h(through) f(arrangemen)m(ts)h(made)g(b)m(y\))g(an)m(y)g(one)f(en)m(tit)m(y)-8 b(.)41 b(If)27 b(the)h(Do)s(cumen)m(t)g(already)330 3696 y(includes)k(a)i(co)m(v)m(er)h(text)g(for)f(the)g(same)h(co)m(v)m(er,)h (previously)c(added)h(b)m(y)h(y)m(ou)g(or)g(b)m(y)g(arrangemen)m(t)330 3806 y(made)h(b)m(y)g(the)h(same)f(en)m(tit)m(y)h(y)m(ou)g(are)f (acting)h(on)f(b)s(ehalf)e(of,)k(y)m(ou)f(ma)m(y)g(not)f(add)g (another;)j(but)330 3915 y(y)m(ou)c(ma)m(y)h(replace)f(the)g(old)f (one,)j(on)e(explicit)e(p)s(ermission)f(from)i(the)i(previous)d (publisher)e(that)330 4025 y(added)g(the)g(old)g(one.)330 4162 y(The)25 b(author\(s\))h(and)f(publisher\(s\))d(of)k(the)f(Do)s (cumen)m(t)h(do)g(not)f(b)m(y)h(this)e(License)h(giv)m(e)h(p)s (ermission)330 4271 y(to)31 b(use)f(their)f(names)i(for)f(publicit)m(y) d(for)k(or)f(to)h(assert)g(or)f(imply)e(endorsemen)m(t)i(of)h(an)m(y)g (Mo)s(di\014ed)330 4381 y(V)-8 b(ersion.)199 4518 y(5.)61 b(COMBINING)31 b(DOCUMENTS)330 4655 y(Y)-8 b(ou)39 b(ma)m(y)g(com)m (bine)g(the)g(Do)s(cumen)m(t)g(with)f(other)g(do)s(cumen)m(ts)h (released)f(under)g(this)f(License,)330 4765 y(under)g(the)h(terms)g (de\014ned)f(in)g(section)h(4)h(ab)s(o)m(v)m(e)g(for)f(mo)s(di\014ed)e (v)m(ersions,)k(pro)m(vided)d(that)i(y)m(ou)330 4874 y(include)23 b(in)h(the)h(com)m(bination)g(all)f(of)i(the)f(In)m(v)-5 b(arian)m(t)25 b(Sections)g(of)h(all)e(of)h(the)h(original)d(do)s (cumen)m(ts,)330 4984 y(unmo)s(di\014ed,)i(and)h(list)f(them)i(all)e (as)i(In)m(v)-5 b(arian)m(t)27 b(Sections)f(of)h(y)m(our)g(com)m(bined) f(w)m(ork)g(in)g(its)g(license)330 5093 y(notice.)330 5230 y(The)k(com)m(bined)f(w)m(ork)i(need)e(only)h(con)m(tain)g(one)h (cop)m(y)g(of)f(this)f(License,)i(and)e(m)m(ultiple)f(iden)m(tical)330 5340 y(In)m(v)-5 b(arian)m(t)32 b(Sections)g(ma)m(y)h(b)s(e)f(replaced) g(with)f(a)i(single)e(cop)m(y)-8 b(.)48 b(If)32 b(there)h(are)g(m)m (ultiple)d(In)m(v)-5 b(arian)m(t)p eop %%Page: 325 335 325 334 bop 150 -116 a Fy(GNU)31 b(F)-8 b(ree)31 b(Do)s(cumen)m(tation) h(License)2097 b(325)330 299 y(Sections)26 b(with)g(the)h(same)g(name)g (but)f(di\013eren)m(t)g(con)m(ten)m(ts,)j(mak)m(e)f(the)f(title)f(of)h (eac)m(h)h(suc)m(h)f(section)330 408 y(unique)32 b(b)m(y)i(adding)e(at) j(the)f(end)g(of)g(it,)g(in)f(paren)m(theses,)j(the)e(name)g(of)g(the)g (original)e(author)i(or)330 518 y(publisher)21 b(of)k(that)h(section)f (if)f(kno)m(wn,)i(or)f(else)g(a)g(unique)e(n)m(um)m(b)s(er.)38 b(Mak)m(e)26 b(the)g(same)f(adjustmen)m(t)330 628 y(to)g(the)g(section) f(titles)g(in)f(the)i(list)e(of)h(In)m(v)-5 b(arian)m(t)25 b(Sections)f(in)f(the)h(license)g(notice)h(of)f(the)h(com)m(bined)330 737 y(w)m(ork.)330 867 y(In)34 b(the)h(com)m(bination,)g(y)m(ou)g(m)m (ust)g(com)m(bine)f(an)m(y)h(sections)g(en)m(titled)f(\\History")i(in)d (the)i(v)-5 b(arious)330 976 y(original)31 b(do)s(cumen)m(ts,)i (forming)f(one)h(section)g(en)m(titled)f(\\History";)i(lik)m(ewise)e (com)m(bine)g(an)m(y)h(sec-)330 1086 y(tions)28 b(en)m(titled)h(\\Ac)m (kno)m(wledgmen)m(ts",)i(and)e(an)m(y)g(sections)g(en)m(titled)g (\\Dedications".)41 b(Y)-8 b(ou)29 b(m)m(ust)330 1196 y(delete)i(all)e(sections)h(en)m(titled)g(\\Endorsemen)m(ts.")199 1325 y(6.)61 b(COLLECTIONS)28 b(OF)i(DOCUMENTS)330 1455 y(Y)-8 b(ou)32 b(ma)m(y)h(mak)m(e)g(a)f(collection)f(consisting)g(of)h (the)g(Do)s(cumen)m(t)g(and)g(other)g(do)s(cumen)m(ts)f(released)330 1564 y(under)41 b(this)g(License,)k(and)d(replace)g(the)h(individual)38 b(copies)k(of)g(this)f(License)h(in)f(the)i(v)-5 b(arious)330 1674 y(do)s(cumen)m(ts)42 b(with)f(a)i(single)e(cop)m(y)j(that)f(is)e (included)f(in)h(the)i(collection,)i(pro)m(vided)c(that)j(y)m(ou)330 1783 y(follo)m(w)36 b(the)i(rules)d(of)i(this)f(License)h(for)g(v)m (erbatim)g(cop)m(ying)g(of)g(eac)m(h)h(of)f(the)h(do)s(cumen)m(ts)e(in) g(all)330 1893 y(other)31 b(resp)s(ects.)330 2022 y(Y)-8 b(ou)32 b(ma)m(y)g(extract)h(a)f(single)e(do)s(cumen)m(t)h(from)g(suc)m (h)g(a)h(collection,)f(and)g(distribute)e(it)i(individu-)330 2132 y(ally)j(under)f(this)h(License,)i(pro)m(vided)e(y)m(ou)h(insert)f (a)h(cop)m(y)h(of)f(this)f(License)g(in)m(to)h(the)h(extracted)330 2242 y(do)s(cumen)m(t,)d(and)f(follo)m(w)g(this)f(License)h(in)g(all)f (other)i(resp)s(ects)f(regarding)g(v)m(erbatim)g(cop)m(ying)h(of)330 2351 y(that)e(do)s(cumen)m(t.)199 2481 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h(W)m(ORKS)330 2610 y(A)d(compilation)f (of)h(the)g(Do)s(cumen)m(t)h(or)f(its)f(deriv)-5 b(ativ)m(es)28 b(with)e(other)j(separate)g(and)e(indep)s(enden)m(t)330 2720 y(do)s(cumen)m(ts)32 b(or)g(w)m(orks,)h(in)d(or)j(on)f(a)g(v)m (olume)g(of)g(a)h(storage)g(or)g(distribution)28 b(medium,)j(do)s(es)h (not)330 2829 y(as)42 b(a)f(whole)g(coun)m(t)h(as)g(a)g(Mo)s(di\014ed)e (V)-8 b(ersion)41 b(of)g(the)h(Do)s(cumen)m(t,)j(pro)m(vided)40 b(no)h(compilation)330 2939 y(cop)m(yrigh)m(t)31 b(is)f(claimed)g(for)h (the)g(compilation.)40 b(Suc)m(h)30 b(a)i(compilation)d(is)h(called)g (an)h(\\aggregate",)330 3049 y(and)h(this)g(License)h(do)s(es)f(not)i (apply)d(to)j(the)f(other)g(self-con)m(tained)g(w)m(orks)g(th)m(us)g (compiled)e(with)330 3158 y(the)41 b(Do)s(cumen)m(t,)j(on)c(accoun)m(t) i(of)f(their)e(b)s(eing)g(th)m(us)h(compiled,)i(if)e(they)g(are)h(not)g (themselv)m(es)330 3268 y(deriv)-5 b(ativ)m(e)30 b(w)m(orks)g(of)h(the) f(Do)s(cumen)m(t.)330 3397 y(If)22 b(the)h(Co)m(v)m(er)h(T)-8 b(ext)23 b(requiremen)m(t)f(of)h(section)g(3)g(is)f(applicable)f(to)i (these)h(copies)e(of)h(the)g(Do)s(cumen)m(t,)330 3507 y(then)30 b(if)f(the)i(Do)s(cumen)m(t)g(is)f(less)f(than)h(one)h (quarter)f(of)h(the)g(en)m(tire)f(aggregate,)j(the)e(Do)s(cumen)m(t's) 330 3616 y(Co)m(v)m(er)41 b(T)-8 b(exts)41 b(ma)m(y)f(b)s(e)g(placed)f (on)h(co)m(v)m(ers)i(that)e(surround)e(only)h(the)h(Do)s(cumen)m(t)h (within)d(the)330 3726 y(aggregate.)44 b(Otherwise)29 b(they)h(m)m(ust)h(app)s(ear)e(on)i(co)m(v)m(ers)h(around)d(the)h (whole)g(aggregate.)199 3856 y(8.)61 b(TRANSLA)-8 b(TION)330 3985 y(T)g(ranslation)39 b(is)g(considered)f(a)j(kind)d(of)i(mo)s (di\014cation,)h(so)f(y)m(ou)g(ma)m(y)h(distribute)c(translations)330 4095 y(of)45 b(the)f(Do)s(cumen)m(t)h(under)e(the)h(terms)h(of)f (section)h(4.)83 b(Replacing)43 b(In)m(v)-5 b(arian)m(t)44 b(Sections)g(with)330 4204 y(translations)g(requires)g(sp)s(ecial)g(p)s (ermission)f(from)i(their)f(cop)m(yrigh)m(t)i(holders,)i(but)d(y)m(ou)g (ma)m(y)330 4314 y(include)22 b(translations)i(of)g(some)h(or)g(all)e (In)m(v)-5 b(arian)m(t)24 b(Sections)g(in)f(addition)g(to)i(the)g (original)e(v)m(ersions)330 4423 y(of)i(these)g(In)m(v)-5 b(arian)m(t)25 b(Sections.)38 b(Y)-8 b(ou)25 b(ma)m(y)h(include)c(a)j (translation)f(of)h(this)f(License)g(pro)m(vided)f(that)330 4533 y(y)m(ou)30 b(also)g(include)e(the)i(original)e(English)g(v)m (ersion)h(of)h(this)f(License.)40 b(In)29 b(case)i(of)f(a)h (disagreemen)m(t)330 4643 y(b)s(et)m(w)m(een)37 b(the)g(translation)e (and)h(the)h(original)e(English)f(v)m(ersion)i(of)h(this)e(License,)j (the)f(original)330 4752 y(English)28 b(v)m(ersion)i(will)e(prev)-5 b(ail.)199 4882 y(9.)61 b(TERMINA)-8 b(TION)330 5011 y(Y)g(ou)30 b(ma)m(y)h(not)f(cop)m(y)-8 b(,)31 b(mo)s(dify)-8 b(,)29 b(sublicense,)f(or)i(distribute)d(the)j(Do)s(cumen)m(t)g(except) h(as)f(expressly)330 5121 y(pro)m(vided)40 b(for)i(under)e(this)h (License.)74 b(An)m(y)42 b(other)g(attempt)h(to)g(cop)m(y)-8 b(,)46 b(mo)s(dify)-8 b(,)43 b(sublicense)d(or)330 5230 y(distribute)34 b(the)j(Do)s(cumen)m(t)g(is)f(v)m(oid,)i(and)e(will)e (automatically)i(terminate)h(y)m(our)f(righ)m(ts)g(under)330 5340 y(this)27 b(License.)39 b(Ho)m(w)m(ev)m(er,)31 b(parties)c(who)g (ha)m(v)m(e)i(receiv)m(ed)f(copies,)h(or)e(righ)m(ts,)h(from)g(y)m(ou)g (under)e(this)p eop %%Page: 326 336 326 335 bop 150 -116 a Fy(326)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))330 299 y(License)36 b(will)e(not)j(ha)m(v)m(e)h (their)e(licenses)f(terminated)i(so)g(long)f(as)h(suc)m(h)f(parties)g (remain)g(in)f(full)330 408 y(compliance.)154 543 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)330 677 y(The)41 b(F)-8 b(ree)43 b(Soft)m(w)m(are)f(F)-8 b(oundation)42 b(ma)m(y)g(publish)c(new,)44 b(revised)c(v)m(ersions)h(of)h(the)g(GNU)g (F)-8 b(ree)330 787 y(Do)s(cumen)m(tation)33 b(License)e(from)h(time)g (to)h(time.)45 b(Suc)m(h)31 b(new)h(v)m(ersions)f(will)f(b)s(e)h (similar)e(in)i(spirit)330 897 y(to)k(the)g(presen)m(t)f(v)m(ersion,)h (but)f(ma)m(y)h(di\013er)e(in)g(detail)g(to)i(address)f(new)g(problems) e(or)j(concerns.)330 1006 y(See)c Fq(http://www.gnu.org/copy)o(left)o (/)p Fy(.)330 1141 y(Eac)m(h)f(v)m(ersion)f(of)h(the)f(License)g(is)g (giv)m(en)g(a)h(distinguishing)25 b(v)m(ersion)k(n)m(um)m(b)s(er.)39 b(If)29 b(the)g(Do)s(cumen)m(t)330 1250 y(sp)s(eci\014es)44 b(that)i(a)g(particular)d(n)m(um)m(b)s(ered)h(v)m(ersion)h(of)g(this)f (License)h(\\or)h(an)m(y)g(later)f(v)m(ersion")330 1360 y(applies)31 b(to)i(it,)g(y)m(ou)f(ha)m(v)m(e)i(the)f(option)f(of)g (follo)m(wing)f(the)i(terms)f(and)g(conditions)f(either)h(of)g(that)330 1469 y(sp)s(eci\014ed)k(v)m(ersion)i(or)f(of)h(an)m(y)h(later)f(v)m (ersion)f(that)h(has)g(b)s(een)f(published)d(\(not)39 b(as)f(a)g(draft\))g(b)m(y)330 1579 y(the)33 b(F)-8 b(ree)34 b(Soft)m(w)m(are)f(F)-8 b(oundation.)48 b(If)32 b(the)h(Do)s(cumen)m(t) g(do)s(es)g(not)g(sp)s(ecify)e(a)i(v)m(ersion)f(n)m(um)m(b)s(er)g(of) 330 1689 y(this)h(License,)j(y)m(ou)e(ma)m(y)i(c)m(ho)s(ose)f(an)m(y)g (v)m(ersion)f(ev)m(er)h(published)c(\(not)k(as)g(a)f(draft\))h(b)m(y)f (the)h(F)-8 b(ree)330 1798 y(Soft)m(w)m(are)31 b(F)-8 b(oundation.)p eop %%Page: 327 337 327 336 bop 150 -116 a Fy(GNU)31 b(F)-8 b(ree)31 b(Do)s(cumen)m(tation) h(License)2097 b(327)150 299 y Fs(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g (this)h(License)f(for)g(y)l(our)g(do)t(cumen)l(ts)275 491 y Fy(T)-8 b(o)27 b(use)g(this)f(License)h(in)f(a)i(do)s(cumen)m(t)f (y)m(ou)h(ha)m(v)m(e)g(written,)f(include)e(a)j(cop)m(y)g(of)f(the)h (License)f(in)f(the)150 601 y(do)s(cumen)m(t)k(and)g(put)g(the)g(follo) m(wing)f(cop)m(yrigh)m(t)i(and)f(license)f(notices)h(just)g(after)h (the)g(title)f(page:)485 730 y Fq(Copyright)46 b(\(C\))94 b Fn(y)m(ear)103 b(y)m(our)31 b(name)p Fq(.)485 834 y(Permission)45 b(is)j(granted)d(to)j(copy,)e(distribute)f(and/or)h(modify)g(this)h (document)485 937 y(under)g(the)g(terms)f(of)h(the)g(GNU)g(Free)g (Documentation)d(License,)h(Version)h(1.1)485 1041 y(or)i(any)f(later)f (version)g(published)f(by)i(the)g(Free)g(Software)e(Foundation;)485 1145 y(with)i(the)g(Invariant)e(Sections)h(being)g Fn(list)29 b(their)h(titles)p Fq(,)47 b(with)f(the)485 1249 y(Front-Cover)f(Texts) i(being)f Fn(list)p Fq(,)g(and)h(with)g(the)g(Back-Cover)e(Texts)h (being)g Fn(list)p Fq(.)485 1352 y(A)i(copy)f(of)g(the)g(license)e(is)j (included)d(in)i(the)g(section)f(entitled)g(``GNU)485 1456 y(Free)h(Documentation)d(License''.)275 1584 y Fy(If)33 b(y)m(ou)h(ha)m(v)m(e)h(no)e(In)m(v)-5 b(arian)m(t)34 b(Sections,)g(write)f(\\with)g(no)g(In)m(v)-5 b(arian)m(t)34 b(Sections")f(instead)g(of)h(sa)m(ying)150 1693 y(whic)m(h)c(ones)i (are)g(in)m(v)-5 b(arian)m(t.)43 b(If)31 b(y)m(ou)g(ha)m(v)m(e)i(no)e (F)-8 b(ron)m(t-Co)m(v)m(er)34 b(T)-8 b(exts,)33 b(write)d(\\no)i(F)-8 b(ron)m(t-Co)m(v)m(er)34 b(T)-8 b(exts")150 1803 y(instead)30 b(of)g(\\F)-8 b(ron)m(t-Co)m(v)m(er)33 b(T)-8 b(exts)31 b(b)s(eing)e Fn(list)r Fy(";)h(lik)m(ewise)f(for)h(Bac)m(k-Co)m(v)m(er) j(T)-8 b(exts.)275 1937 y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m (tains)h(non)m(trivial)e(examples)i(of)g(program)f(co)s(de,)j(w)m(e)e (recommend)g(releasing)150 2047 y(these)44 b(examples)e(in)g(parallel)f (under)h(y)m(our)h(c)m(hoice)h(of)f(free)g(soft)m(w)m(are)h(license,)i (suc)m(h)d(as)g(the)g(GNU)150 2156 y(General)30 b(Public)e(License,)j (to)g(p)s(ermit)d(their)i(use)g(in)f(free)h(soft)m(w)m(are.)p eop %%Page: 328 338 328 337 bop 150 -116 a Fy(328)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))p eop %%Page: 329 339 329 338 bop 150 -116 a Fy(Con)m(tributors)29 b(to)i(GCC)2611 b(329)150 299 y Fv(Con)l(tributors)51 b(to)i(GCC)275 532 y Fy(The)28 b(GCC)h(pro)5 b(ject)29 b(w)m(ould)f(lik)m(e)g(to)i (thank)f(its)f(man)m(y)h(con)m(tributors.)40 b(Without)28 b(them)h(the)g(pro)5 b(ject)150 642 y(w)m(ould)39 b(not)h(ha)m(v)m(e)i (b)s(een)d(nearly)h(as)g(successful)f(as)i(it)e(has)h(b)s(een.)70 b(An)m(y)40 b(omissions)f(in)g(this)g(list)g(are)150 751 y(acciden)m(tal.)46 b(F)-8 b(eel)32 b(free)g(to)h(con)m(tact)h Fq(law@redhat.com)28 b Fy(if)j(y)m(ou)h(ha)m(v)m(e)h(b)s(een)e(left)h (out)g(or)g(some)g(of)g(y)m(our)150 861 y(con)m(tributions)d(are)i(not) f(listed.)39 b(Please)31 b(k)m(eep)g(this)e(list)g(in)g(alphab)s (etical)g(order.)275 995 y(Some)e(pro)5 b(jects)29 b(op)s(erating)e (under)f(the)i(GCC)f(pro)5 b(ject)29 b(main)m(tain)d(their)h(o)m(wn)h (list)e(of)i(con)m(tributors,)150 1105 y(suc)m(h)i(as)h(the)f(C)p Fq(++)g Fy(library)e(\()p Fq(http://gcc.gnu.org/libst)o(dc++)o(/)p Fy(\).)225 1239 y Fx(\017)60 b Fy(Analog)31 b(Devices)g(help)s(ed)d (implemen)m(t)h(the)i(supp)s(ort)d(for)i(complex)g(data)h(t)m(yp)s(es)g (and)f(iterators.)225 1374 y Fx(\017)60 b Fy(John)29 b(Da)m(vid)i(Anglin)d(for)i(impro)m(v)m(emen)m(ts)h(to)g(libstdc)p Fq(++)p Fy(-v3)e(and)h(the)g(HP-UX)h(p)s(ort.)225 1508 y Fx(\017)60 b Fy(James)27 b(v)-5 b(an)27 b(Artsdalen)f(wrote)h(the)h (co)s(de)f(that)h(mak)m(es)f(e\016cien)m(t)h(use)f(of)g(the)g(In)m(tel) g(80387)i(register)330 1617 y(stac)m(k.)225 1752 y Fx(\017)60 b Fy(Alasdair)29 b(Baird)g(for)i(v)-5 b(arious)29 b(bug\014xes.)225 1886 y Fx(\017)60 b Fy(Gerald)30 b(Baumgartner)h(added)e(the)i (signature)f(extension)g(to)h(the)f(C)p Fq(++)g Fy(fron)m(t)g(end.)225 2020 y Fx(\017)60 b Fy(Neil)26 b(Bo)s(oth)h(for)f(w)m(ork)h(on)f (cpplib,)f(lang)h(ho)s(oks,)h(debug)f(ho)s(oks)g(and)g(other)h (miscellaneous)e(clean-)330 2130 y(ups.)225 2264 y Fx(\017)60 b Fy(P)m(er)31 b(Bothner)g(for)f(his)f(direction)g(via)h(the)h (steering)f(committee)i(and)e(v)-5 b(arious)29 b(impro)m(v)m(emen)m(ts) i(to)330 2374 y(our)h(infrastructure)g(for)g(supp)s(orting)f(new)h (languages.)49 b(Chill)30 b(and)i(Ja)m(v)-5 b(a)34 b(fron)m(t)g(end)e (implemen-)330 2484 y(tations.)41 b(Initial)27 b(implemen)m(tations)h (of)i(cpplib,)d(\014x-header,)j(con\014g.guess,)h(libio,)c(and)i(past)h (C)p Fq(++)330 2593 y Fy(library)e(\(libg)p Fq(++)p Fy(\))h(main)m (tainer.)225 2728 y Fx(\017)60 b Fy(Dev)m(on)32 b(Bo)m(w)m(en)f(help)s (ed)e(p)s(ort)g(GCC)h(to)h(the)g(T)-8 b(aho)s(e.)225 2862 y Fx(\017)60 b Fy(Don)31 b(Bo)m(wman)g(for)f(mips-vxw)m(orks)f (con)m(tributions.)225 2996 y Fx(\017)60 b Fy(Da)m(v)m(e)33 b(Brolley)c(for)h(w)m(ork)h(on)f(cpplib)e(and)i(Chill.)225 3131 y Fx(\017)60 b Fy(Rob)s(ert)30 b(Bro)m(wn)g(implemen)m(ted)f(the)i (supp)s(ort)e(for)h(Encore)g(32000)j(systems.)225 3265 y Fx(\017)60 b Fy(Christian)28 b(Bruel)h(for)h(impro)m(v)m(emen)m(ts)h (to)g(lo)s(cal)f(store)h(elimination.)225 3399 y Fx(\017)60 b Fy(Herman)30 b(A.J.)h(ten)f(Brugge)i(for)e(v)-5 b(arious)29 b(\014xes.)225 3534 y Fx(\017)60 b Fy(Jo)s(e)30 b(Buc)m(k)h(for)g(his)e (direction)g(via)h(the)g(steering)g(committee.)225 3668 y Fx(\017)60 b Fy(Craig)30 b(Burley)f(for)h(leadership)e(of)j(the)f(F) -8 b(ortran)32 b(e\013ort.)225 3802 y Fx(\017)60 b Fy(P)m(aolo)31 b(Carlini)d(for)i(his)f(w)m(ork)h(on)g(libstdc)p Fq(++)p Fy(-v3.)225 3937 y Fx(\017)60 b Fy(John)33 b(Carr)h(for)g(his)f(alias)h (w)m(ork,)h(SP)-8 b(AR)m(C)35 b(hac)m(king,)g(infrastructure)e(impro)m (v)m(emen)m(ts,)i(previous)330 4046 y(con)m(tributions)29 b(to)i(the)f(steering)h(committee,)g(lo)s(op)f(optimizations,)f(etc.) 225 4180 y Fx(\017)60 b Fy(Stev)m(e)37 b(Cham)m(b)s(erlain)c(wrote)j (the)g(supp)s(ort)e(for)i(the)g(Hitac)m(hi)f(SH)h(and)f(H8)h(pro)s (cessors)g(and)f(the)330 4290 y(PicoJa)m(v)-5 b(a)31 b(pro)s(cessor.)225 4424 y Fx(\017)60 b Fy(Scott)31 b(Christley)e(for)h (his)f(Ob)5 b(jectiv)m(e-C)30 b(con)m(tributions.)225 4559 y Fx(\017)60 b Fy(Brank)m(o)31 b(Cib)s(ej)e(for)h(more)g(w)m (arning)f(con)m(tributions.)225 4693 y Fx(\017)60 b Fy(Nic)m(k)29 b(Clifton)d(for)j(arm,)f(mcore,)i(fr30,)f(v850,)i(m32r)d(w)m(ork,)i(`)p Fq(--help)p Fy(',)e(and)f(other)i(random)f(hac)m(k-)330 4803 y(ing.)225 4937 y Fx(\017)60 b Fy(Ralf)30 b(Corsepius)e(for)i(SH)g (testing)h(and)e(minor)g(bug\014xing.)225 5071 y Fx(\017)60 b Fy(Stan)30 b(Co)m(x)h(for)f(care)h(and)f(feeding)g(of)g(the)h(x86)g (p)s(ort)f(and)f(lots)i(of)f(b)s(ehind)e(the)i(scenes)h(hac)m(king.)225 5206 y Fx(\017)60 b Fy(Alex)30 b(Crain)f(pro)m(vided)g(c)m(hanges)i (for)f(the)h(3b1.)225 5340 y Fx(\017)60 b Fy(Ian)30 b(Dall)g(for)g(ma)5 b(jor)30 b(impro)m(v)m(emen)m(ts)h(to)g(the)g(NS32k)f(p)s(ort.)p eop %%Page: 330 340 330 339 bop 150 -116 a Fy(330)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))225 299 y Fx(\017)60 b Fy(Dario)39 b(Dariol)f(con)m(tributed)h(the)g(four)f(v)-5 b(arieties)38 b(of)h(sample)f(programs)h(that)g(prin)m(t)f(a)h(cop)m(y)h(of)330 408 y(their)29 b(source.)225 545 y Fx(\017)60 b Fy(Ulric)m(h)30 b(Drepp)s(er)g(for)h(his)e(w)m(ork)i(on)g(the)h(C)p Fq(++)e Fy(run)m(time)g(libraries,)e(glib)s(c,)i(testing)h(of)h(GCC)e(using)330 655 y(glib)s(c,)f(ISO)g(C99)i(supp)s(ort,)e(CF)m(G)i(dumping)d(supp)s (ort,)h(etc.)225 792 y Fx(\017)60 b Fy(Ric)m(hard)29 b(Earnsha)m(w)h(for)g(his)f(ongoing)i(w)m(ork)f(with)f(the)i(ARM.)225 929 y Fx(\017)60 b Fy(Da)m(vid)38 b(Edelsohn)e(for)i(his)f(direction)g (via)g(the)i(steering)e(committee,)42 b(ongoing)c(w)m(ork)g(with)f(the) 330 1039 y(RS6000/P)m(o)m(w)m(erPC)c(p)s(ort,)d(and)g(help)f(cleaning)g (up)h(Haifa)g(lo)s(op)f(c)m(hanges.)225 1176 y Fx(\017)60 b Fy(P)m(aul)30 b(Eggert)h(for)f(random)g(hac)m(king)g(all)g(o)m(v)m (er)h(GCC.)225 1313 y Fx(\017)60 b Fy(Mark)31 b(Elbrec)m(h)m(t)f(for)g (v)-5 b(arious)29 b(DJGPP)i(impro)m(v)m(emen)m(ts.)225 1450 y Fx(\017)60 b Fy(Ben)34 b(Elliston)e(for)i(his)f(w)m(ork)h(to)h (mo)m(v)m(e)g(the)f(Ob)5 b(jectiv)m(e-C)35 b(run)m(time)d(in)m(to)i (its)g(o)m(wn)g(sub)s(directory)330 1559 y(and)c(for)g(his)f(w)m(ork)h (on)h(auto)s(conf.)225 1696 y Fx(\017)60 b Fy(Marc)31 b(Espie)e(for)h(Op)s(enBSD)g(supp)s(ort.)225 1833 y Fx(\017)60 b Fy(Doug)38 b(Ev)-5 b(ans)36 b(for)h(m)m(uc)m(h)g(of)g(the)h(global)e (optimization)g(framew)m(ork,)j(arc,)g(m32r,)h(and)c(SP)-8 b(AR)m(C)330 1943 y(w)m(ork.)225 2080 y Fx(\017)60 b Fy(F)-8 b(red)31 b(Fish)e(for)h(BeOS)g(supp)s(ort)f(and)h(Ada)g (\014xes.)225 2217 y Fx(\017)60 b Fy(P)m(eter)31 b(Gerwinski)e(for)h(v) -5 b(arious)29 b(bug\014xes)h(and)f(the)i(P)m(ascal)g(fron)m(t)f(end.) 225 2354 y Fx(\017)60 b Fy(Ka)m(v)m(eh)35 b(Ghazi)f(for)h(his)d (direction)h(via)h(the)h(steering)f(committee)h(and)f(amazing)g(w)m (ork)h(to)g(mak)m(e)330 2463 y(`)p Fq(-W)30 b(-Wall)p Fy(')f(useful.)225 2600 y Fx(\017)60 b Fy(Judy)29 b(Goldb)s(erg)g(for)i (c)p Fq(++)f Fy(con)m(tributions.)225 2737 y Fx(\017)60 b Fy(T)-8 b(orb)5 b(jorn)32 b(Granlund)e(for)j(v)-5 b(arious)31 b(\014xes)i(and)f(the)h(c-torture)g(testsuite,)h(m)m(ultiply-)d(and)h (divide-)330 2847 y(b)m(y-constan)m(t)g(optimization,)e(impro)m(v)m(ed) g(long)h(long)f(supp)s(ort,)f(impro)m(v)m(ed)h(leaf)h(function)e (register)330 2956 y(allo)s(cation,)h(and)g(his)f(direction)g(via)h (the)g(steering)g(committee.)225 3093 y Fx(\017)60 b Fy(An)m(thon)m(y)31 b(Green)f(for)g(his)f(`)p Fq(-Os)p Fy(')h(con)m(tributions)f(and)h(Ja)m(v)-5 b(a)31 b(fron)m(t)g(end)e(w)m (ork.)225 3230 y Fx(\017)60 b Fy(Mic)m(hael)30 b(K.)h(Gsc)m(h)m(wind)e (con)m(tributed)h(the)g(p)s(ort)g(to)h(the)g(PDP-11.)225 3367 y Fx(\017)60 b Fy(Ron)46 b(Guilmette)f(implemen)m(ted)f(the)i Fq(protoize)e Fy(and)h Fq(unprotoize)e Fy(to)s(ols,)50 b(the)c(supp)s(ort)e(for)330 3477 y(Dw)m(arf)c(sym)m(b)s(olic)e (debugging)g(information,)j(and)d(m)m(uc)m(h)i(of)g(the)f(supp)s(ort)f (for)h(System)h(V)f(Re-)330 3587 y(lease)31 b(4.)41 b(He)31 b(has)f(also)g(w)m(ork)m(ed)h(hea)m(vily)f(on)g(the)g(In)m(tel)h(386)g (and)f(860)i(supp)s(ort.)225 3724 y Fx(\017)60 b Fy(Bruno)39 b(Haible)g(for)g(impro)m(v)m(emen)m(ts)h(in)e(the)i(run)m(time)f(o)m(v) m(erhead)i(for)e(EH,)h(new)f(w)m(arnings)g(and)330 3833 y(assorted)31 b(bug\014xes.)225 3970 y Fx(\017)60 b Fy(Andrew)29 b(Haley)i(for)f(his)f(Ja)m(v)-5 b(a)31 b(w)m(ork.)225 4107 y Fx(\017)60 b Fy(Chris)28 b(Hanson)i(assisted)g(in)f(making)h (GCC)g(w)m(ork)g(on)h(HP-UX)g(for)f(the)g(9000)j(series)c(300.)225 4244 y Fx(\017)60 b Fy(Mic)m(hael)39 b(Ha)m(y)m(es)i(for)e(v)-5 b(arious)38 b(thankless)h(w)m(ork)g(he's)g(done)g(trying)g(to)h(get)g (the)f(c30/c40)k(p)s(orts)330 4354 y(functional.)c(Lots)31 b(of)f(lo)s(op)g(and)g(unroll)e(impro)m(v)m(emen)m(ts)i(and)g(\014xes.) 225 4491 y Fx(\017)60 b Fy(Kate)31 b(Hedstrom)g(for)f(staking)g(the)h (g77)g(folks)f(with)f(an)h(initial)e(testsuite.)225 4628 y Fx(\017)60 b Fy(Ric)m(hard)29 b(Henderson)h(for)g(his)e(ongoing)i(SP) -8 b(AR)m(C,)31 b(alpha,)e(and)h(ia32)g(w)m(ork,)h(lo)s(op)e(opts,)i (and)e(gen-)330 4737 y(erally)23 b(\014xing)g(lots)h(of)h(old)e (problems)g(w)m(e'v)m(e)j(ignored)d(for)h(y)m(ears,)j(\015o)m(w)d (rewrite)g(and)g(lots)g(of)g(further)330 4847 y(stu\013,)30 b(including)d(reviewing)i(tons)i(of)f(patc)m(hes.)225 4984 y Fx(\017)60 b Fy(Nobuyuki)27 b(Hikic)m(hi)f(of)j(Soft)m(w)m(are)g (Researc)m(h)h(Asso)s(ciates,)f(T)-8 b(oky)m(o,)30 b(con)m(tributed)e (the)h(supp)s(ort)d(for)330 5093 y(the)31 b(Son)m(y)f(NEWS)g(mac)m (hine.)225 5230 y Fx(\017)60 b Fy(Manfred)44 b(Hollstein)f(for)i(his)e (ongoing)i(w)m(ork)g(to)g(k)m(eep)h(the)f(m88k)g(aliv)m(e,)k(lots)44 b(of)h(testing)g(an)330 5340 y(bug\014xing,)29 b(particularly)f(of)i (our)g(con\014gury)g(co)s(de.)p eop %%Page: 331 341 331 340 bop 150 -116 a Fy(Con)m(tributors)29 b(to)i(GCC)2611 b(331)225 299 y Fx(\017)60 b Fy(Stev)m(e)31 b(Holmgren)f(for)g(Mac)m (hT)-8 b(en)32 b(patc)m(hes.)225 434 y Fx(\017)60 b Fy(Jan)30 b(Hubic)m(k)-5 b(a)30 b(for)g(his)f(x86)i(p)s(ort)f(impro)m(v)m(emen)m (ts.)225 569 y Fx(\017)60 b Fy(Christian)28 b(Iseli)h(for)h(v)-5 b(arious)29 b(bug\014xes.)225 704 y Fx(\017)60 b Fy(Kamil)29 b(Iskra)h(for)g(general)g(m68k)h(hac)m(king.)225 838 y Fx(\017)60 b Fy(Lee)31 b(Iv)m(erson)f(for)g(random)g(\014xes)g(and)g (MIPS)g(testing.)225 973 y Fx(\017)60 b Fy(Andreas)30 b(Jaeger)h(for)f(v)-5 b(arious)30 b(\014xes)g(to)h(the)f(MIPS)g(p)s (ort)225 1108 y Fx(\017)60 b Fy(Jakub)28 b(Jelinek)f(for)i(his)e(SP)-8 b(AR)m(C)29 b(w)m(ork)g(and)f(sibling)e(call)i(optimizations)g(as)h(w)m (ell)f(as)h(lots)g(of)g(bug)330 1218 y(\014xes)h(and)g(test)h(cases.) 225 1353 y Fx(\017)60 b Fy(Janis)29 b(Johnson)g(for)i(ia64)f(testing)h (and)f(\014xes)g(and)g(for)g(her)f(qualit)m(y)h(impro)m(v)m(emen)m(t)h (sidetrac)m(ks.)225 1487 y Fx(\017)60 b Fy(J.)30 b(Kean)h(Johnston)e (for)h(Op)s(enServ)m(er)f(supp)s(ort.)225 1622 y Fx(\017)60 b Fy(Klaus)29 b(Kaempf)h(for)g(his)f(ongoing)h(w)m(ork)h(to)g(mak)m(e)g (alpha-vms)f(a)h(viable)e(target.)225 1757 y Fx(\017)60 b Fy(Da)m(vid)30 b(Kash)m(tan)h(of)g(SRI)e(adapted)i(GCC)f(to)h(VMS.) 225 1892 y Fx(\017)60 b Fy(Geo\013rey)30 b(Keating)g(for)f(his)e (ongoing)i(w)m(ork)h(to)g(mak)m(e)g(the)f(PPC)g(w)m(ork)g(for)g (GNU/Lin)m(ux)g(and)f(his)330 2002 y(automatic)j(regression)f(tester.) 225 2137 y Fx(\017)60 b Fy(Brendan)30 b(Keho)s(e)g(for)g(his)f(ongoing) h(w)m(ork)h(with)e(g)p Fq(++)p Fy(.)225 2271 y Fx(\017)60 b Fy(Oliv)m(er)24 b(M.)i(Kellogg)g(of)f(Deutsc)m(he)i(Aerospace)g(con)m (tributed)e(the)h(p)s(ort)f(to)h(the)g(MIL-STD-1750A.)225 2406 y Fx(\017)60 b Fy(Ric)m(hard)23 b(Kenner)h(of)h(the)f(New)h(Y)-8 b(ork)25 b(Univ)m(ersit)m(y)e(Ultracomputer)i(Researc)m(h)g(Lab)s (oratory)g(wrote)330 2516 y(the)34 b(mac)m(hine)f(descriptions)e(for)i (the)h(AMD)g(29000,)j(the)d(DEC)f(Alpha,)g(the)h(IBM)g(R)-8 b(T)33 b(PC,)h(and)330 2626 y(the)43 b(IBM)h(RS/6000)g(as)f(w)m(ell)f (as)h(the)h(supp)s(ort)d(for)i(instruction)d(attributes.)79 b(He)43 b(also)g(made)330 2735 y(c)m(hanges)25 b(to)f(b)s(etter)g(supp) s(ort)e(RISC)g(pro)s(cessors)h(including)e(c)m(hanges)j(to)h(common)f (sub)s(expression)330 2845 y(elimination,)g(strength)h(reduction,)g (function)f(calling)g(sequence)i(handling,)d(and)i(condition)f(co)s(de) 330 2954 y(supp)s(ort,)34 b(in)f(addition)g(to)i(generalizing)e(the)i (co)s(de)f(for)h(frame)f(p)s(oin)m(ter)f(elimination)f(and)i(dela)m(y) 330 3064 y(slot)24 b(sc)m(heduling.)36 b(Ric)m(hard)23 b(Kenner)g(w)m(as)h(also)g(the)g(head)f(main)m(tainer)g(of)h(GCC)f(for) h(sev)m(eral)g(y)m(ears.)225 3199 y Fx(\017)60 b Fy(Mumit)25 b(Khan)f(for)h(v)-5 b(arious)25 b(con)m(tributions)e(to)j(the)g(cygwin) f(and)f(mingw32)h(p)s(orts)g(and)g(main)m(tain-)330 3308 y(ing)30 b(binary)e(releases)j(for)f(Windo)m(ws)f(hosts.)225 3443 y Fx(\017)60 b Fy(Robin)29 b(Kirkham)g(for)h(cpu32)g(supp)s(ort.) 225 3578 y Fx(\017)60 b Fy(Mark)31 b(Klein)d(for)i(P)-8 b(A)31 b(impro)m(v)m(emen)m(ts.)225 3713 y Fx(\017)60 b Fy(Thomas)30 b(Ko)s(enig)g(for)g(v)-5 b(arious)29 b(bug\014xes.)225 3848 y Fx(\017)60 b Fy(Bruce)31 b(Korb)e(for)h(the)h(new)f(and)g(impro) m(v)m(ed)f(\014xincludes)f(co)s(de.)225 3983 y Fx(\017)60 b Fy(Benjamin)29 b(Kosnik)g(for)i(his)d(g)p Fq(++)j Fy(w)m(ork)f(and)g (for)g(leading)f(the)i(libstdc)p Fq(++)p Fy(-v3)d(e\013ort.)225 4118 y Fx(\017)60 b Fy(Charles)29 b(LaBrec)i(con)m(tributed)f(the)h (supp)s(ort)d(for)i(the)h(In)m(tegrated)h(Solutions)c(68020)33 b(system.)225 4253 y Fx(\017)60 b Fy(Je\013)45 b(La)m(w)g(for)g(his)e (direction)h(via)g(the)h(steering)g(committee,)50 b(co)s(ordinating)43 b(the)i(en)m(tire)g(egcs)330 4362 y(pro)5 b(ject)24 b(and)g(GCC)f (2.95,)k(rolling)22 b(out)i(snapshots)f(and)g(releases,)j(handling)21 b(merges)j(from)g(GCC2,)330 4472 y(reviewing)31 b(tons)h(of)g(patc)m (hes)h(that)g(migh)m(t)f(ha)m(v)m(e)h(fallen)e(through)g(the)h(crac)m (ks)i(else,)e(and)g(random)330 4581 y(but)e(extensiv)m(e)h(hac)m(king.) 225 4716 y Fx(\017)60 b Fy(Marc)33 b(Lehmann)e(for)h(his)f(direction)g (via)g(the)i(steering)f(committee)h(and)f(helping)d(with)i(analysis)330 4826 y(and)f(impro)m(v)m(emen)m(ts)g(of)h(x86)g(p)s(erformance.)225 4961 y Fx(\017)60 b Fy(T)-8 b(ed)30 b(Lemon)h(wrote)f(parts)g(of)h(the) f(R)-8 b(TL)31 b(reader)f(and)g(prin)m(ter.)225 5096 y Fx(\017)60 b Fy(Kriang)29 b(Lerdsu)m(w)m(anakij)g(for)h(impro)m(v)m (emen)m(ts)h(to)g(demangler)f(and)g(v)-5 b(arious)29 b(c)p Fq(++)h Fy(\014xes.)225 5230 y Fx(\017)60 b Fy(W)-8 b(arren)35 b(Levy)f(ma)5 b(jor)34 b(w)m(ork)g(on)g(libgcj)f(\(Ja)m(v)-5 b(a)36 b(Run)m(time)d(Library\))f(and)i(random)f(w)m(ork)i(on)f(the)330 5340 y(Ja)m(v)-5 b(a)31 b(fron)m(t)g(end.)p eop %%Page: 332 342 332 341 bop 150 -116 a Fy(332)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))225 299 y Fx(\017)60 b Fy(Alain)29 b(Lic)m(hnewsky)g(p)s(orted)h(GCC)g(to)h(the)f(MIPS)g(CPU.)225 436 y Fx(\017)60 b Fy(Rob)s(ert)30 b(Lip)s(e)f(for)h(Op)s(enServ)m(er)f (supp)s(ort,)g(new)h(testsuites,)g(testing,)h(etc.)225 573 y Fx(\017)60 b Fy(W)-8 b(eiw)m(en)31 b(Liu)e(for)h(testing)g(and)g (v)-5 b(arious)29 b(bug\014xes.)225 710 y Fx(\017)60 b Fy(Da)m(v)m(e)33 b(Lo)m(v)m(e)e(for)g(his)e(ongoing)h(w)m(ork)g(with) f(the)i(F)-8 b(ortran)31 b(fron)m(t)g(end)e(and)h(run)m(time)f (libraries.)225 847 y Fx(\017)60 b Fy(Martin)41 b(v)m(on)h(L\177)-45 b(owis)40 b(for)i(in)m(ternal)e(consistency)h(c)m(hec)m(king)i (infrastructure,)f(and)f(v)-5 b(arious)41 b(C)p Fq(++)330 956 y Fy(impro)m(v)m(emen)m(ts)31 b(including)c(namespace)k(supp)s (ort.)225 1093 y Fx(\017)60 b Fy(H.J.)24 b(Lu)f(for)g(his)f(previous)g (con)m(tributions)g(to)j(the)f(steering)f(committee,)j(man)m(y)e(x86)g (bug)f(rep)s(orts,)330 1203 y(protot)m(yp)s(e)31 b(patc)m(hes,)g(and)f (k)m(eeping)g(the)h(GNU/Lin)m(ux)f(p)s(orts)g(w)m(orking.)225 1340 y Fx(\017)60 b Fy(Greg)31 b(McGary)h(for)e(random)f(\014xes)h(and) g(\(someda)m(y\))i(b)s(ounded)c(p)s(oin)m(ters.)225 1477 y Fx(\017)60 b Fy(Andrew)41 b(MacLeo)s(d)h(for)g(his)e(ongoing)i(w)m (ork)g(in)e(building)e(a)43 b(real)e(EH)h(system,)j(v)-5 b(arious)41 b(co)s(de)330 1587 y(generation)31 b(impro)m(v)m(emen)m (ts,)g(w)m(ork)f(on)g(the)h(global)e(optimizer,)h(etc.)225 1724 y Fx(\017)60 b Fy(Vladimir)35 b(Mak)-5 b(aro)m(v)40 b(for)e(hac)m(king)g(some)g(ugly)g(i960)g(problems,)h(P)m(o)m(w)m(erPC) g(hac)m(king)f(impro)m(v)m(e-)330 1833 y(men)m(ts)30 b(to)g(compile-time)e(p)s(erformance)g(and)h(o)m(v)m(erall)h(kno)m (wledge)f(and)f(direction)g(in)g(the)i(area)g(of)330 1943 y(instruction)e(sc)m(heduling.)225 2080 y Fx(\017)60 b Fy(Bob)31 b(Manson)f(for)g(his)f(b)s(ehind)f(the)i(scenes)h(w)m(ork)f (on)h(dejagn)m(u.)225 2217 y Fx(\017)60 b Fy(Mic)m(hael)32 b(Meissner)e(for)i(LRS)e(framew)m(ork,)i(ia32,)h(m32r,)f(v850,)i(m88k,) e(MIPS,)g(p)s(o)m(w)m(erp)s(c,)f(haifa,)330 2326 y(ECOFF)f(debug)g (supp)s(ort,)f(and)h(other)g(assorted)h(hac)m(king.)225 2463 y Fx(\017)60 b Fy(Jason)30 b(Merrill)e(for)i(his)f(direction)g (via)h(the)h(steering)f(committee)i(and)d(leading)g(the)i(g)p Fq(++)f Fy(e\013ort.)225 2600 y Fx(\017)60 b Fy(Da)m(vid)40 b(Miller)d(for)j(his)e(direction)g(via)i(the)g(steering)f(committee,)k (lots)d(of)g(SP)-8 b(AR)m(C)39 b(w)m(ork,)k(im-)330 2710 y(pro)m(v)m(emen)m(ts)32 b(in)d(jump.c)g(and)h(in)m(terfacing)g(with)f (the)h(Lin)m(ux)f(k)m(ernel)h(dev)m(elop)s(ers.)225 2847 y Fx(\017)60 b Fy(Gary)31 b(Miller)d(p)s(orted)i(GCC)g(to)h(Charles)e (Riv)m(er)h(Data)i(Systems)e(mac)m(hines.)225 2984 y Fx(\017)60 b Fy(Mark)38 b(Mitc)m(hell)g(for)f(his)g(direction)g(via)h (the)g(steering)g(committee,)j(moun)m(tains)c(of)h(C)p Fq(++)g Fy(w)m(ork,)330 3093 y(load/store)25 b(hoisting)e(out)h(of)h (lo)s(ops,)f(alias)g(analysis)f(impro)m(v)m(emen)m(ts,)i(ISO)f(C)f Fq(restrict)f Fy(supp)s(ort,)330 3203 y(and)30 b(serving)f(as)i (release)f(manager)h(for)g(GCC)e(3.x.)225 3340 y Fx(\017)60 b Fy(Alan)30 b(Mo)s(dra)g(for)g(v)-5 b(arious)29 b(GNU/Lin)m(ux)h(bits) g(and)f(testing.)225 3477 y Fx(\017)60 b Fy(T)-8 b(o)s(on)26 b(Mo)s(ene)g(for)g(his)f(direction)f(via)i(the)g(steering)g(committee,) i(F)-8 b(ortran)27 b(main)m(tenance,)g(and)e(his)330 3587 y(ongoing)30 b(w)m(ork)h(to)g(mak)m(e)g(us)f(mak)m(e)h(F)-8 b(ortran)31 b(run)e(fast.)225 3724 y Fx(\017)60 b Fy(Jason)49 b(Molenda)g(for)g(ma)5 b(jor)49 b(help)e(in)h(the)h(care)h(and)e (feeding)h(of)g(all)f(the)h(services)g(on)g(the)330 3833 y(gcc.gn)m(u.org)36 b(\(formerly)d(egcs.cygn)m(us.com\))k(mac)m (hine|mail,)d(w)m(eb)g(services,)g(ftp)g(services,)h(etc)330 3943 y(etc.)225 4080 y Fx(\017)60 b Fy(Catherine)31 b(Mo)s(ore)h(for)f (\014xing)f(v)-5 b(arious)31 b(ugly)g(problems)e(w)m(e)j(ha)m(v)m(e)h (sen)m(t)f(her)f(w)m(a)m(y)-8 b(,)34 b(including)28 b(the)330 4189 y(haifa)i(bug)g(whic)m(h)f(w)m(as)h(killing)e(the)i(Alpha)f(&)h(P) m(o)m(w)m(erPC)i(Lin)m(ux)c(k)m(ernels.)225 4326 y Fx(\017)60 b Fy(Da)m(vid)30 b(Mosb)s(erger-T)-8 b(ang)32 b(for)e(v)-5 b(arious)29 b(Alpha)g(impro)m(v)m(emen)m(ts.)225 4463 y Fx(\017)60 b Fy(Stephen)i(Moshier)h(con)m(tributed)f(the)h (\015oating)g(p)s(oin)m(t)f(em)m(ulator)i(that)f(assists)g(in)f(cross-) 330 4573 y(compilation)38 b(and)g(p)s(ermits)f(supp)s(ort)g(for)i (\015oating)g(p)s(oin)m(t)f(n)m(um)m(b)s(ers)g(wider)f(than)i(64)h (bits)e(and)330 4682 y(for)30 b(ISO)f(C99)i(supp)s(ort.)225 4819 y Fx(\017)60 b Fy(Bill)28 b(Mo)m(y)m(er)k(for)f(his)e(b)s(ehind)e (the)k(scenes)f(w)m(ork)h(on)f(v)-5 b(arious)29 b(issues.)225 4956 y Fx(\017)60 b Fy(Philipp)s(e)26 b(De)32 b(Muyter)e(for)g(his)f(w) m(ork)i(on)f(the)g(m68k)h(p)s(ort.)225 5093 y Fx(\017)60 b Fy(Joseph)44 b(S.)h(My)m(ers)g(for)g(his)f(w)m(ork)h(on)g(the)g (PDP-11)h(p)s(ort,)i(format)d(c)m(hec)m(king)h(and)f(ISO)e(C99)330 5203 y(supp)s(ort,)29 b(and)h(con)m(tin)m(uous)g(emphasis)f(on)h(\(and) g(con)m(tributions)f(to\))i(do)s(cumen)m(tation.)225 5340 y Fx(\017)60 b Fy(Nathan)31 b(My)m(ers)g(for)f(his)f(w)m(ork)h(on) h(libstdc)p Fq(++)p Fy(-v3.)p eop %%Page: 333 343 333 342 bop 150 -116 a Fy(Con)m(tributors)29 b(to)i(GCC)2611 b(333)225 299 y Fx(\017)60 b Fy(NeXT,)31 b(Inc.)f(donated)h(the)f(fron) m(t)h(end)f(that)g(supp)s(orts)f(the)i(Ob)5 b(jectiv)m(e-C)30 b(language.)225 436 y Fx(\017)60 b Fy(Hans-P)m(eter)30 b(Nilsson)c(for)j(the)f(CRIS)f(and)h(MMIX)h(p)s(orts,)f(impro)m(v)m (emen)m(ts)h(to)g(the)f(searc)m(h)h(engine)330 545 y(setup,)h(v)-5 b(arious)30 b(do)s(cumen)m(tation)g(\014xes)g(and)g(other)g(small)f (\014xes.)225 682 y Fx(\017)60 b Fy(Geo\013)32 b(No)s(er)e(for)g(this)f (w)m(ork)i(on)f(getting)h(cygwin)f(nativ)m(e)h(builds)c(w)m(orking.)225 819 y Fx(\017)60 b Fy(Da)m(vid)i(O'Brien)f(for)h(the)h(F)-8 b(reeBSD/alpha,)71 b(F)-8 b(reeBSD/AMD)65 b(x86-64,)72 b(F)-8 b(reeBSD/ARM,)330 929 y(F)g(reeBSD/P)m(o)m(w)m(erPC,)90 b(and)c(F)-8 b(reeBSD/SP)g(AR)m(C64)90 b(p)s(orts)c(and)g(related)h (infrastructure)330 1039 y(impro)m(v)m(emen)m(ts.)225 1176 y Fx(\017)60 b Fy(Alexandre)39 b(Oliv)-5 b(a)38 b(for)i(v)-5 b(arious)39 b(build)d(infrastructure)i(impro)m(v)m(emen)m (ts,)43 b(scripts)c(and)g(amazing)330 1285 y(testing)30 b(w)m(ork.)225 1422 y Fx(\017)60 b Fy(Melissa)30 b(O'Neill)e(for)i(v)-5 b(arious)30 b(NeXT)h(\014xes.)225 1559 y Fx(\017)60 b Fy(Rainer)28 b(Orth)g(for)g(random)g(MIPS)h(w)m(ork,)g(including)c (impro)m(v)m(emen)m(ts)k(to)h(our)e(o32)i(ABI)f(supp)s(ort,)330 1669 y(impro)m(v)m(emen)m(ts)i(to)g(dejagn)m(u's)f(MIPS)g(supp)s(ort,)f (etc.)225 1806 y Fx(\017)60 b Fy(P)m(aul)30 b(P)m(etersen)h(wrote)g (the)f(mac)m(hine)g(description)f(for)h(the)h(Allian)m(t)e(FX/8.)225 1943 y Fx(\017)60 b Fy(Alexandre)30 b(P)m(etit-Bianco)h(for)g(his)d(Ja) m(v)-5 b(a)32 b(w)m(ork.)225 2080 y Fx(\017)60 b Fy(Matthias)31 b(Pfaller)e(for)h(ma)5 b(jor)30 b(impro)m(v)m(emen)m(ts)h(to)g(the)g (NS32k)f(p)s(ort.)225 2217 y Fx(\017)60 b Fy(Gerald)22 b(Pfeifer)g(for)g(his)g(direction)f(via)h(the)h(steering)g(committee,)i (p)s(oin)m(ting)c(out)i(lots)g(of)g(problems)330 2326 y(w)m(e)40 b(need)g(to)g(solv)m(e,)j(main)m(tenance)d(of)g(the)f(w)m (eb)h(pages,)j(and)c(taking)h(care)g(of)g(do)s(cumen)m(tation)330 2436 y(main)m(tenance)31 b(in)e(general.)225 2573 y Fx(\017)60 b Fy(Ovidiu)28 b(Predescu)h(for)i(his)d(w)m(ork)j(on)f(the)h(Ob)5 b(jectiv)m(e-C)30 b(fron)m(t)h(end)e(and)h(run)m(time)f(libraries.)225 2710 y Fx(\017)60 b Fy(Ken)35 b(Raeburn)e(for)i(v)-5 b(arious)34 b(impro)m(v)m(emen)m(ts)h(to)h(c)m(hec)m(k)m(er,)j(MIPS)34 b(p)s(orts)g(and)h(v)-5 b(arious)34 b(clean)m(ups)330 2819 y(in)29 b(the)i(compiler.)225 2956 y Fx(\017)60 b Fy(Da)m(vid)30 b(Reese)i(of)e(Sun)f(Microsystems)h(con)m(tributed)g (to)h(the)g(Solaris)d(on)j(P)m(o)m(w)m(erPC)g(p)s(ort.)225 3093 y Fx(\017)60 b Fy(Gabriel)25 b(Dos)i(Reis)f(for)h(con)m (tributions)d(and)i(main)m(tenance)h(of)g(libstdc)p Fq(++)p Fy(-v3,)f(including)d(v)-5 b(alarra)m(y)330 3203 y(implemen)m(tation)29 b(and)h(limits)e(supp)s(ort.)225 3340 y Fx(\017)60 b Fy(Jo)s(ern)30 b(Rennec)m(k)m(e)h(for)f(main)m(taining)f(the)i(sh)e(p)s (ort,)h(lo)s(op,)g(regmo)m(v)m(e)i(&)e(reload)g(hac)m(king.)225 3477 y Fx(\017)60 b Fy(Loren)30 b(J.)g(Rittle)g(for)g(impro)m(v)m(emen) m(ts)h(to)g(libstdc)p Fq(++)p Fy(-v3)e(and)g(the)i(F)-8 b(reeBSD)32 b(p)s(ort.)225 3614 y Fx(\017)60 b Fy(Craig)30 b(Ro)s(drigues)f(for)h(pro)s(cessing)f(tons)h(of)h(bug)f(rep)s(orts.) 225 3751 y Fx(\017)60 b Fy(Ga)m(vin)30 b(Romig-Ko)s(c)m(h)h(for)f(lots) g(of)h(b)s(ehind)c(the)k(scenes)g(MIPS)e(w)m(ork.)225 3888 y Fx(\017)60 b Fy(Ken)30 b(Rose)h(for)f(\014xes)g(to)h(our)f(dela) m(y)g(slot)h(\014lling)c(co)s(de.)225 4025 y Fx(\017)60 b Fy(P)m(aul)30 b(Rubin)e(wrote)j(most)f(of)h(the)f(prepro)s(cessor.) 225 4162 y Fx(\017)60 b Fy(Juha)29 b(Sarlin)f(for)j(impro)m(v)m(emen)m (ts)f(to)h(the)g(H8)g(co)s(de)f(generator.)225 4299 y Fx(\017)60 b Fy(Greg)31 b(Satz)g(assisted)f(in)f(making)h(GCC)g(w)m (ork)g(on)g(HP-UX)h(for)g(the)f(9000)i(series)e(300.)225 4436 y Fx(\017)60 b Fy(P)m(eter)31 b(Sc)m(hauer)g(wrote)f(the)h(co)s (de)g(to)g(allo)m(w)e(debugging)h(to)h(w)m(ork)f(on)h(the)f(Alpha.)225 4573 y Fx(\017)60 b Fy(William)28 b(Sc)m(helter)i(did)f(most)h(of)h (the)g(w)m(ork)f(on)g(the)h(In)m(tel)f(80386)j(supp)s(ort.)225 4710 y Fx(\017)60 b Fy(Bernd)24 b(Sc)m(hmidt)g(for)h(v)-5 b(arious)24 b(co)s(de)h(generation)h(impro)m(v)m(emen)m(ts)f(and)f(ma)5 b(jor)25 b(w)m(ork)g(in)f(the)h(reload)330 4819 y(pass)30 b(as)h(w)m(ell)e(a)i(serving)e(as)i(release)f(manager)h(for)f(GCC)g (2.95.3.)225 4956 y Fx(\017)60 b Fy(Andreas)30 b(Sc)m(h)m(w)m(ab)h(for) f(his)f(w)m(ork)h(on)g(the)h(m68k)g(p)s(ort.)225 5093 y Fx(\017)60 b Fy(Jo)s(el)37 b(Sherrill)d(for)k(his)f(direction)f(via)i (the)g(steering)g(committee,)j(R)-8 b(TEMS)37 b(con)m(tributions)g(and) 330 5203 y(R)-8 b(TEMS)30 b(testing.)225 5340 y Fx(\017)60 b Fy(Nathan)31 b(Sidw)m(ell)c(for)k(man)m(y)f(C)p Fq(++)f Fy(\014xes/impro)m(v)m(emen)m(ts.)p eop %%Page: 334 344 334 343 bop 150 -116 a Fy(334)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))225 299 y Fx(\017)60 b Fy(Je\013rey)44 b(Siegal)f(for)h(helping)d(RMS)j(with)e(the)i(original)e(design)h(of)h (GCC,)g(some)g(co)s(de)g(whic)m(h)330 408 y(handles)36 b(the)h(parse)h(tree)g(and)f(R)-8 b(TL)37 b(data)h(structures,)h (constan)m(t)f(folding)e(and)h(help)f(with)g(the)330 518 y(original)29 b(V)-10 b(AX)30 b(&)g(m68k)h(p)s(orts.)225 654 y Fx(\017)60 b Fy(F)-8 b(ranz)31 b(Sirl)d(for)i(his)f(ongoing)h(w)m (ork)h(with)e(making)h(the)g(PPC)g(p)s(ort)g(stable)g(for)g(lin)m(ux.) 225 790 y Fx(\017)60 b Fy(Andrey)29 b(Slepuhin)e(for)j(assorted)h(AIX)g (hac)m(king.)225 926 y Fx(\017)60 b Fy(Christopher)28 b(Smith)h(did)f(the)j(p)s(ort)f(for)g(Con)m(v)m(ex)h(mac)m(hines.)225 1062 y Fx(\017)60 b Fy(Randy)30 b(Smith)e(\014nished)g(the)j(Sun)e(FP) -8 b(A)31 b(supp)s(ort.)225 1198 y Fx(\017)60 b Fy(Scott)31 b(Sn)m(yder)f(for)g(v)-5 b(arious)29 b(\014xes.)225 1334 y Fx(\017)60 b Fy(Ric)m(hard)29 b(Stallman,)h(for)g(writing)e(the)j (original)d(gcc)k(and)d(launc)m(hing)g(the)i(GNU)g(pro)5 b(ject.)225 1470 y Fx(\017)60 b Fy(Jan)37 b(Stein)e(of)i(the)h (Chalmers)d(Computer)h(So)s(ciet)m(y)h(pro)m(vided)f(supp)s(ort)f(for)h (Genix,)j(as)e(w)m(ell)f(as)330 1580 y(part)30 b(of)h(the)f(32000)j (mac)m(hine)d(description.)225 1716 y Fx(\017)60 b Fy(Nigel)30 b(Stephens)f(for)h(v)-5 b(arious)30 b(mips16)f(related)i(\014xes/impro) m(v)m(emen)m(ts.)225 1852 y Fx(\017)60 b Fy(Jonathan)30 b(Stone)h(wrote)g(the)f(mac)m(hine)g(description)f(for)h(the)g(Pyramid) f(computer.)225 1988 y Fx(\017)60 b Fy(Graham)30 b(Stott)i(for)e(v)-5 b(arious)29 b(infrastructure)g(impro)m(v)m(emen)m(ts.)225 2124 y Fx(\017)60 b Fy(Mik)m(e)31 b(Stump)e(for)h(his)f(Elxsi)g(p)s (ort,)h(g)p Fq(++)g Fy(con)m(tributions)f(o)m(v)m(er)i(the)g(y)m(ears)g (and)f(more)h(recen)m(tly)f(his)330 2234 y(vxw)m(orks)g(con)m (tributions)225 2370 y Fx(\017)60 b Fy(Shigey)m(a)30 b(Suzuki)f(for)h(this)f(\014xes)h(for)g(the)h(bsdi)d(platforms.)225 2506 y Fx(\017)60 b Fy(Ian)30 b(Lance)h(T)-8 b(a)m(ylor)31 b(for)f(his)f(mips16)g(w)m(ork,)i(general)f(con\014gury)g(hac)m(king,)h (\014xincludes,)c(etc.)225 2642 y Fx(\017)60 b Fy(Holger)31 b(T)-8 b(eutsc)m(h)31 b(pro)m(vided)e(the)h(supp)s(ort)f(for)h(the)g (Clipp)s(er)d(CPU.)225 2778 y Fx(\017)60 b Fy(Gary)31 b(Thomas)f(for)g(his)f(ongoing)h(w)m(ork)h(to)g(mak)m(e)g(the)g(PPC)e (w)m(ork)i(for)f(GNU/Lin)m(ux.)225 2914 y Fx(\017)60 b Fy(Philipp)26 b(Thomas)k(for)h(random)e(bug\014xes)h(throughout)g (the)g(compiler)225 3050 y Fx(\017)60 b Fy(Kresten)30 b(Krab)g(Thorup)e(wrote)j(the)g(run)e(time)h(supp)s(ort)e(for)i(the)h (Ob)5 b(jectiv)m(e-C)30 b(language.)225 3186 y Fx(\017)60 b Fy(Mic)m(hael)30 b(Tiemann)f(for)h(random)g(bug\014xes,)g(the)g (\014rst)g(instruction)e(sc)m(heduler,)i(initial)d(C)p Fq(++)j Fy(sup-)330 3296 y(p)s(ort,)g(function)f(in)m(tegration,)h (NS32k,)i(SP)-8 b(AR)m(C)30 b(and)g(M88k)h(mac)m(hine)f(description)e (w)m(ork,)j(dela)m(y)330 3405 y(slot)f(sc)m(heduling.)225 3541 y Fx(\017)60 b Fy(T)-8 b(eem)m(u)31 b(T)-8 b(orma)31 b(for)f(thread)g(safe)h(exception)f(handling)e(supp)s(ort.)225 3677 y Fx(\017)60 b Fy(Leonard)30 b(T)-8 b(o)m(w)m(er)32 b(wrote)f(parts)f(of)h(the)g(parser,)f(R)-8 b(TL)31 b(generator,)h(and) e(R)-8 b(TL)30 b(de\014nitions,)f(and)h(of)330 3787 y(the)h(V)-10 b(AX)30 b(mac)m(hine)g(description.)225 3923 y Fx(\017)60 b Fy(T)-8 b(om)31 b(T)-8 b(romey)30 b(for)g(in)m(ternationalization)f (supp)s(ort)g(and)h(his)e(Ja)m(v)-5 b(a)32 b(w)m(ork.)225 4059 y Fx(\017)60 b Fy(Lassi)30 b(T)-8 b(uura)29 b(for)h(impro)m(v)m (emen)m(ts)h(to)g(con\014g.guess)g(to)g(determine)e(HP)i(pro)s(cessor)f (t)m(yp)s(es.)225 4195 y Fx(\017)60 b Fy(T)-8 b(o)s(dd)29 b(Vierling)g(for)h(con)m(tributions)f(for)h(NetBSD)h(p)s(orts.)225 4331 y Fx(\017)60 b Fy(Dean)26 b(W)-8 b(ak)m(erley)27 b(for)e(con)m(v)m(erting)h(the)f(install)e(do)s(cumen)m(tation)i(from)g (HTML)g(to)h(texinfo)f(in)f(time)330 4441 y(for)30 b(GCC)g(3.0.)225 4577 y Fx(\017)60 b Fy(Krister)29 b(W)-8 b(alfridsson)29 b(for)h(random)g(bug\014xes.)225 4713 y Fx(\017)60 b Fy(John)24 b(W)-8 b(ehle)25 b(for)g(v)-5 b(arious)23 b(impro)m(v)m(emen)m(ts)i(for)g(the)g(x86)h(co)s(de)f(generator,)i (related)e(infrastructure)330 4822 y(impro)m(v)m(emen)m(ts)36 b(to)h(help)d(x86)j(co)s(de)f(generation,)i(v)-5 b(alue)35 b(range)h(propagation)g(and)f(other)i(w)m(ork,)330 4932 y(WE32k)31 b(p)s(ort.)225 5068 y Fx(\017)60 b Fy(Zac)m(k)31 b(W)-8 b(ein)m(b)s(erg)30 b(for)h(ma)5 b(jor)30 b(w)m(ork)g(on)h (cpplib)c(and)j(v)-5 b(arious)30 b(other)g(bug\014xes.)225 5204 y Fx(\017)60 b Fy(Dale)31 b(Wiles)e(help)s(ed)g(p)s(ort)h(GCC)f (to)j(the)e(T)-8 b(aho)s(e.)225 5340 y Fx(\017)60 b Fy(Bob)31 b(Wilson)e(from)h(T)-8 b(ensilica,)29 b(Inc.)h(for)g(the)h(Xtensa)g(p)s (ort.)p eop %%Page: 335 345 335 344 bop 150 -116 a Fy(Con)m(tributors)29 b(to)i(GCC)2611 b(335)225 299 y Fx(\017)60 b Fy(Jim)40 b(Wilson)h(for)h(his)e (direction)g(via)i(the)g(steering)f(committee,)46 b(tac)m(kling)c(hard) f(problems)f(in)330 408 y(v)-5 b(arious)29 b(places)i(that)g(nob)s(o)s (dy)d(else)j(w)m(an)m(ted)g(to)g(w)m(ork)f(on,)h(strength)f(reduction)f (and)h(other)h(lo)s(op)330 518 y(optimizations.)225 652 y Fx(\017)60 b Fy(Carlo)30 b(W)-8 b(o)s(o)s(d)30 b(for)g(v)-5 b(arious)30 b(\014xes.)225 786 y Fx(\017)60 b Fy(T)-8 b(om)31 b(W)-8 b(o)s(o)s(d)30 b(for)g(w)m(ork)h(on)f(the)h(m88k)g(p)s (ort.)225 920 y Fx(\017)60 b Fy(Masanobu)25 b(Y)-8 b(uhara)24 b(of)h(F)-8 b(ujitsu)23 b(Lab)s(oratories)i(implemen)m(ted)e(the)i(mac) m(hine)f(description)e(for)j(the)330 1029 y(T)-8 b(ron)30 b(arc)m(hitecture)h(\(sp)s(eci\014cally)-8 b(,)29 b(the)i(Gmicro\).)225 1163 y Fx(\017)60 b Fy(Kevin)29 b(Zac)m(hmann)h(help)s(ed)e(p)s(orted)i (GCC)g(to)h(the)g(T)-8 b(aho)s(e.)275 1322 y(W)g(e'd)28 b(also)g(lik)m(e)e(to)j(thank)e(the)h(folks)e(who)i(ha)m(v)m(e)g(con)m (tributed)f(time)g(and)g(energy)h(in)e(testing)i(GCC:)225 1456 y Fx(\017)60 b Fy(Da)m(vid)30 b(Billingh)m(urst)225 1590 y Fx(\017)60 b Fy(Horst)31 b(v)m(on)f(Brand)225 1724 y Fx(\017)60 b Fy(Ro)s(dney)30 b(Bro)m(wn)225 1857 y Fx(\017)60 b Fy(Jo)s(e)30 b(Buc)m(k)225 1991 y Fx(\017)60 b Fy(Craig)30 b(Burley)225 2125 y Fx(\017)60 b Fy(Ulric)m(h)29 b(Drepp)s(er)225 2259 y Fx(\017)60 b Fy(Da)m(vid)30 b(Edelsohn)225 2393 y Fx(\017)60 b Fy(Y)-8 b(ung)30 b(Shing)f(Gene)225 2527 y Fx(\017)60 b Fy(Ka)m(v)m(eh)31 b(Ghazi)225 2661 y Fx(\017)60 b Fy(Kate)31 b(Hedstrom)225 2795 y Fx(\017)60 b Fy(Ric)m(hard)29 b(Henderson)225 2929 y Fx(\017)60 b Fy(Manfred)30 b(Hollstein)225 3063 y Fx(\017)60 b Fy(Kamil)29 b(Iskra)225 3197 y Fx(\017)60 b Fy(Christian)28 b(Jo)s(ensson)225 3331 y Fx(\017)60 b Fy(Je\013)30 b(La)m(w)225 3465 y Fx(\017)60 b Fy(Rob)s(ert)30 b(Lip)s(e)225 3599 y Fx(\017)60 b Fy(Damon)31 b(Lo)m(v)m(e)225 3733 y Fx(\017)60 b Fy(Da)m(v)m(e)33 b(Lo)m(v)m(e)225 3867 y Fx(\017)60 b Fy(H.J.)31 b(Lu)225 4001 y Fx(\017)60 b Fy(Brad)30 b(Lucier)225 4134 y Fx(\017)60 b Fy(Mumit)30 b(Khan)225 4268 y Fx(\017)60 b Fy(Matthias)31 b(Klose)225 4402 y Fx(\017)60 b Fy(Martin)30 b(Knoblauc)m(h)225 4536 y Fx(\017)60 b Fy(Da)m(vid)30 b(Miller)225 4670 y Fx(\017)60 b Fy(T)-8 b(o)s(on)30 b(Mo)s(ene)225 4804 y Fx(\017)60 b Fy(Matthias)31 b(Mueller)225 4938 y Fx(\017)60 b Fy(Alexandre)30 b(Oliv)-5 b(a)225 5072 y Fx(\017)60 b Fy(Ric)m(hard)29 b(P)m(olton)225 5206 y Fx(\017)60 b Fy(Da)m(vid)30 b(Rees)225 5340 y Fx(\017)60 b Fy(Loren)30 b(J.)g(Rittle)p eop %%Page: 336 346 336 345 bop 150 -116 a Fy(336)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))225 299 y Fx(\017)60 b Fy(P)m(eter)31 b(Sc)m(hmid)225 433 y Fx(\017)60 b Fy(Da)m(vid)30 b(Sc)m(h)m(uler)225 568 y Fx(\017)60 b Fy(Vin)29 b(Shelton)225 702 y Fx(\017)60 b Fy(F)-8 b(ranz)31 b(Sirl)225 837 y Fx(\017)60 b Fy(Mik)m(e)31 b(Stump)225 971 y Fx(\017)60 b Fy(Carlo)30 b(W)-8 b(o)s(o)s(d)225 1106 y Fx(\017)60 b Fy(And)29 b(man)m(y)i(others)275 1265 y(And)c(\014nally)f(w)m(e'd)i(lik)m(e)g(to)h(thank)e(ev)m(ery)m (one)j(who)e(uses)g(the)g(compiler,)f(submits)g(bug)g(rep)s(orts)h(and) 150 1375 y(generally)i(reminds)e(us)h(wh)m(y)h(w)m(e're)h(doing)f(this) f(w)m(ork)i(in)e(the)h(\014rst)g(place.)p eop %%Page: 337 347 337 346 bop 150 -116 a Fy(Option)29 b(Index)2933 b(337)150 299 y Fv(Option)54 b(Index)275 533 y Fy(GCC's)28 b(command)h(line)e (options)h(are)i(indexed)d(here)i(without)f(an)m(y)h(initial)e(`)p Fq(-)p Fy(')i(or)g(`)p Fq(--)p Fy('.)40 b(Where)29 b(an)150 643 y(option)23 b(has)f(b)s(oth)h(p)s(ositiv)m(e)f(and)g(negativ)m(e)j (forms)d(\(suc)m(h)h(as)h(`)p Fq(-f)p Fn(option)p Fy(')e(and)h(`)p Fq(-fno-)p Fn(option)p Fy('\),)h(relev)-5 b(an)m(t)150 752 y(en)m(tries)34 b(in)e(the)i(man)m(ual)f(are)h(indexed)e(under)g (the)i(most)g(appropriate)f(form;)i(it)f(ma)m(y)g(sometimes)g(b)s(e)150 862 y(useful)29 b(to)i(lo)s(ok)f(up)f(b)s(oth)h(forms.)150 1091 y Fs(#)150 1210 y Fh(###)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(18)150 1459 y Fs($)150 1578 y Fh($)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(68)150 1826 y Fs(A)150 1945 y Fh(a)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(45)150 2033 y Fh(A)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(66)150 2122 y Fh(A-)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(66)150 2210 y Fh(ansi)18 b Fa(.)c(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(5,)26 b(19,)h(64,)g(217,)g(289)150 2299 y Fh(aux-info)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)32 b Fi(21)150 2539 y Fs(B)150 2657 y Fh(b)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(79)150 2746 y Fh(B)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(72)150 2834 y Fh(bcopy-builtin)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)42 b Fi(137)150 3093 y Fs(C)150 3211 y Fh(c)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(18,)26 b(68)150 3300 y Fh(C)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(67)150 3540 y Fs(D)150 3658 y Fh(d)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(47)150 3747 y Fh(D)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(61)150 3835 y Fh(da)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)150 3924 y Fh(dA)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4012 y Fh(db)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4101 y Fh(dB)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4189 y Fh(dc)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4278 y Fh(dC)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4366 y Fh(dd)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4455 y Fh(dD)8 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(47,)26 b(67)150 4543 y Fh(de)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4632 y Fh(dE)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4720 y Fh(df)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4809 y Fh(dF)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4897 y Fh(dg)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 4986 y Fh(dG)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 5074 y Fh(dh)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 5163 y Fh(di)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)150 5251 y Fh(dI)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(67)150 5340 y Fh(dj)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)2025 1091 y Fh(dk)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)2025 1179 y Fh(dl)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)2025 1267 y Fh(dL)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)2025 1355 y Fh(dm)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 1443 y Fh(dM)8 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(47,)27 b(67)2025 1531 y Fh(dn)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)2025 1619 y Fh(dN)8 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(47,)27 b(67)2025 1708 y Fh(do)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)2025 1796 y Fh(dp)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 1884 y Fh(dP)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 1972 y Fh(dr)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)2025 2060 y Fh(dR)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)2025 2148 y Fh(ds)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(47)2025 2236 y Fh(dS)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 2324 y Fh(dt)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 2412 y Fh(dumpmachine)23 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)46 b Fi(50)2025 2500 y Fh(dumpspecs)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 49 b Fi(50)2025 2588 y Fh(dumpversion)23 b Fa(.)12 b(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)46 b Fi(50)2025 2676 y Fh(dv)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 2764 y Fh(dw)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 2852 y Fh(dx)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 2940 y Fh(dX)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 3028 y Fh(dy)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 3116 y Fh(dz)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(48)2025 3354 y Fs(E)2025 3471 y Fh(E)9 b Fa(.)k(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(18,)27 b(68)2025 3559 y Fh(EB)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)50 b Fi(110,)27 b(128)2025 3647 y Fh(EL)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)50 b Fi(110,)27 b(128)2025 3901 y Fs(F)2025 4019 y Fh(falign-functions)13 b Fa(.)j(.)c(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)39 b Fi(59)2025 4107 y Fh(falign-jumps)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(59)2025 4195 y Fh(falign-labels)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)43 b Fi(59)2025 4283 y Fh(falign-loops)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(59)2025 4371 y Fh(fallow-single-precision)26 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)47 b Fi(24)2025 4459 y Fh(falt-external-templates)13 b Fa(.)k(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(26,)27 b(256)2025 4548 y Fh(fargument-alias)14 b Fa(.)h(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(145)2025 4636 y Fh(fargument-noalias)11 b Fa(.)16 b(.)c(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)37 b Fi(145)2025 4724 y Fh(fargument-noalias-global)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)45 b Fi(145)2025 4812 y Fh(fbranch-probabilities)29 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)50 b Fi(57)2025 4900 y Fh(fcall-saved)11 b Fa(.)k(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(143,)27 b(277)2025 4988 y Fh(fcall-used)c Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(143)2025 5076 y Fh(fcaller-saves)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(56)2025 5164 y Fh(fcheck-new)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(25)2025 5252 y Fh(fcond-mismatch)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) 42 b Fi(23)2025 5340 y Fh(fconserve-space)15 b Fa(.)g(.)e(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)40 b Fi(25)p eop %%Page: 338 348 338 347 bop 150 -116 a Fy(338)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fh(fconstant-string-class)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)48 b Fi(30)150 387 y Fh(fcse-follow-jumps)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(55)150 476 y Fh(fcse-skip-blocks)13 b Fa(.)j(.)d(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(55)150 564 y Fh(fdata-sections)16 b Fa(.)g(.)c(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)42 b Fi(56)150 653 y Fh(fdelayed-branch)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)40 b Fi(56)150 741 y Fh(fdelete-null-pointer-checks)16 b Fa(.)i(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(55)150 830 y Fh(fdiagnostics-show-location)17 b Fa(.)h(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(31)150 918 y Fh(fdollars-in-identifiers)13 b Fa(.)k(.)c(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(25,)27 b(276)150 1006 y Fh(fdump-class-hierarchy)i Fa(.)12 b(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(48)150 1095 y Fh(fdump-translation-unit)28 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)48 b Fi(48)150 1183 y Fh(fdump-tree)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(48)150 1272 y Fh(fdump-unnumbered)13 b Fa(.)j(.)d(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)39 b Fi(48)150 1360 y Fh(fexceptions)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(141)150 1449 y Fh(fexpensive-optimizations)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)45 b Fi(55)150 1537 y Fh(fexternal-templates)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)44 b Fi(25,)27 b(256)150 1625 y Fh(ffast-math)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(53)150 1714 y Fh(ffixed)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(143)150 1802 y Fh(ffloat-store)11 b Fa(.)k(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fi(51,)27 b(283)150 1891 y Fh(ffor-scope)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(26)150 1979 y Fh(fforce-addr)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(52)150 2068 y Fh(fforce-mem)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)47 b Fi(52)150 2156 y Fh(ffreestanding)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(6,)26 b(22,)h(174)150 2245 y Fh(ffunction-sections)10 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 36 b Fi(56)150 2333 y Fh(fgcse)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fi(55)150 2421 y Fh(fgcse-lm)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fi(55)150 2510 y Fh(fgcse-sm)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fi(55)150 2598 y Fh(fgnu-runtime)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)45 b Fi(30)150 2687 y Fh(fhosted)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)34 b Fi(22)150 2775 y Fh(finhibit-size-directive)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)46 b Fi(142)150 2864 y Fh(finline-functions)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(52)150 2952 y Fh(finline-limit)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)43 b Fi(52)150 3041 y Fh(finstrument-functions)15 b Fa(.)i(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 41 b Fi(144,)27 b(175)150 3129 y Fh(fkeep-inline-functions)14 b Fa(.)k(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) 40 b Fi(53,)27 b(192)150 3217 y Fh(fkeep-static-consts)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(53)150 3306 y Fh(fleading-underscore)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(145)150 3394 y Fh(fmem-report)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(45)150 3483 y Fh(fmessage-length)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)40 b Fi(31)150 3571 y Fh(fmove-all-movables)10 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(57)150 3660 y Fh(fms-extensions)16 b Fa(.)g(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b Fi(26)150 3748 y Fh(fnext-runtime)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)43 b Fi(30)150 3836 y Fh(fno-access-control)10 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(24)150 3925 y Fh(fno-asm)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(21)150 4013 y Fh(fno-builtin)12 b Fa(.)j(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(21,)27 b(217)150 4102 y Fh(fno-common)13 b Fa(.)h(.)e(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)39 b Fi(142,)27 b(185)150 4190 y Fh(fno-const-strings)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(25)150 4279 y Fh(fno-cprop-registers)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(60)150 4367 y Fh(fno-default-inline)13 b Fa(.)j(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 39 b Fi(28,)26 b(51,)h(192)150 4456 y Fh(fno-defer-pop)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fi(52)150 4544 y Fh(fno-elide-constructors)28 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)48 b Fi(25)150 4632 y Fh(fno-enforce-eh-specs)7 b Fa(.)17 b(.)c(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(25)150 4721 y Fh(fno-for-scope)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fi(26)150 4809 y Fh(fno-function-cse)13 b Fa(.)j(.)d(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)39 b Fi(53)150 4898 y Fh(fno-gnu-keywords)13 b Fa(.)j(.)d(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(26)150 4986 y Fh(fno-gnu-linker)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)41 b Fi(142)150 5075 y Fh(fno-guess-branch-probability)15 b Fa(.)j(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(58)150 5163 y Fh(fno-ident)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(142)150 5252 y Fh(fno-implement-inlines)16 b Fa(.)h(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(26,)27 b(253)150 5340 y Fh(fno-implicit-inline-templates)14 b Fa(.)j(.)c(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(26)2025 299 y Fh (fno-implicit-templates)14 b Fa(.)j(.)c(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)40 b Fi(26,)27 b(255)2025 387 y Fh(fno-inline)d Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)48 b Fi(52)2025 476 y Fh(fno-math-errno)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)42 b Fi(54)2025 564 y Fh(fno-nonansi-builtins)7 b Fa(.)17 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)33 b Fi(26)2025 653 y Fh(fno-operator-names)10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(26)2025 741 y Fh(fno-optional-diags)10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 36 b Fi(27)2025 830 y Fh(fno-peephole)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(57)2025 918 y Fh(fno-peephole2)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)43 b Fi(57)2025 1006 y Fh(fno-rtti)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(27)2025 1095 y Fh(fno-show-column)15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)40 b Fi(66)2025 1183 y Fh(fno-signed-bitfields)7 b Fa(.)17 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(24)2025 1272 y Fh(fno-stack-limit)14 b Fa(.)h(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(145)2025 1360 y Fh(fno-trapping-math)12 b Fa(.)k(.)c(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)38 b Fi(54)2025 1449 y Fh(fno-unsigned-bitfields)27 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)48 b Fi(24)2025 1537 y Fh(fno-weak)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)32 b Fi(27)2025 1625 y Fh(fnon-call-exceptions)6 b Fa(.)17 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)33 b Fi(141)2025 1714 y Fh (fomit-frame-pointer)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(52)2025 1802 y Fh(foptimize-register-move)26 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)47 b Fi(56)2025 1891 y Fh(foptimize-sibling-calls)26 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)47 b Fi(52)2025 1979 y Fh(fpack-struct)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(144)2025 2068 y Fh(fpcc-struct-return)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)45 b Fi(141,)27 b(281)2025 2156 y Fh(fpermissive)c Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)46 b Fi(27)2025 2245 y Fh(fpic)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(143)2025 2333 y Fh(fPIC)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(143)2025 2421 y Fh(fprefetch-loop-arrays)29 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)50 b Fi(57)2025 2510 y Fh(fpreprocessed)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(66)2025 2598 y Fh(fpretend-float)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)42 b Fi(49)2025 2687 y Fh(fprofile-arcs)9 b Fa(.)15 b(.)e(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(45,)27 b(220)2025 2775 y Fh(freduce-all-givs)13 b Fa(.)j(.)c(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)39 b Fi(57)2025 2864 y Fh(freg-struct-return)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(141)2025 2952 y Fh(fregmove)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(56)2025 3041 y Fh(frename-registers)12 b Fa(.)k(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(60)2025 3129 y Fh(frepo)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)47 b Fi(27,)27 b(255)2025 3217 y Fh (frerun-cse-after-loop)i Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)50 b Fi(55)2025 3306 y Fh(frerun-loop-opt)15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)40 b Fi(55)2025 3394 y Fh(fschedule-insns)15 b Fa(.)g(.)e(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(56)2025 3483 y Fh(fschedule-insns2)13 b Fa(.)j(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(56)2025 3571 y Fh(fshared-data)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)44 b Fi(142)2025 3660 y Fh(fshort-double)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(142)2025 3748 y Fh(fshort-enums)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(142,)27 b(189,)g(288)2025 3836 y Fh(fshort-wchar)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(24)2025 3925 y Fh(fsigned-bitfields)25 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)47 b Fi(24,)27 b(288)2025 4013 y Fh(fsigned-char)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(23)2025 4102 y Fh(fsingle-precision-constant)17 b Fa(.)h(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 43 b Fi(60)2025 4190 y Fh(fssa)13 b Fa(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(59)2025 4279 y Fh(fssa-ccp)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(59)2025 4367 y Fh(fssa-dce)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(60)2025 4456 y Fh(fstack-check)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 44 b Fi(144)2025 4544 y Fh(fstack-limit-register)28 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)49 b Fi(145)2025 4632 y Fh(fstack-limit-symbol)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(145)2025 4721 y Fh(fstats)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)35 b Fi(27)2025 4809 y Fh(fstrength-reduce)13 b Fa(.)j(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(54)2025 4898 y Fh(fstrict-aliasing)13 b Fa(.)j(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 39 b Fi(58)2025 4986 y Fh(fsyntax-only)22 b Fa(.)12 b(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(31)2025 5075 y Fh(ftabstop)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(66)2025 5163 y Fh(ftemplate-depth)15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(27)2025 5252 y Fh(ftest-coverage)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)42 b Fi(46)2025 5340 y Fh(fthread-jumps)18 b Fa(.)d(.)d(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(54)p eop %%Page: 339 349 339 348 bop 150 -116 a Fy(Option)29 b(Index)2933 b(339)150 299 y Fh(ftime-report)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)45 b Fi(45)150 389 y Fh(ftrapv)10 b Fa(.)j(.)g(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(52)150 478 y Fh(funroll-all-loops)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)37 b Fi(57)150 568 y Fh(funroll-loops)9 b Fa(.)15 b(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(57,)27 b(289)150 658 y Fh(funsafe-math-optimizations)17 b Fa(.)h(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(54)150 747 y Fh(funsigned-bitfields)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)44 b Fi(24,)27 b(288)150 837 y Fh(funsigned-char)16 b Fa(.)g(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b Fi(23)150 927 y Fh(funwind-tables)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)41 b Fi(141)150 1016 y Fh(fuse-cxa-atexit)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)40 b Fi(27)150 1106 y Fh(fverbose-asm)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)44 b Fi(142)150 1196 y Fh(fvolatile)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(142)150 1285 y Fh(fvolatile-global)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)38 b Fi(143)150 1375 y Fh(fvolatile-static)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(143)150 1465 y Fh(fvtable-gc)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)47 b Fi(27)150 1555 y Fh(fwritable-strings)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)47 b Fi(24,)27 b(278)150 1819 y Fs(G)150 1940 y Fh(g)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(43)150 2030 y Fh(G)10 b Fa(.)i(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)36 b Fi(95,)27 b(105,)g(110,)g(125)150 2120 y Fh(gcc)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(67)150 2209 y Fh(gcoff)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fi(44)150 2299 y Fh(gdwarf)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(44)150 2389 y Fh(gdwarf+)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)34 b Fi(44)150 2478 y Fh(gdwarf-2)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) 32 b Fi(44)150 2568 y Fh(gen-decls)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(30)150 2658 y Fh(ggdb)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(44)150 2748 y Fh(gstabs)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(44)150 2837 y Fh(gstabs+)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(44)150 2927 y Fh(gvms)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)38 b Fi(44)150 3017 y Fh(gxcoff)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)35 b Fi(44)150 3106 y Fh(gxcoff+)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)34 b Fi(44)150 3371 y Fs(H)150 3492 y Fh(h)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(68)150 3582 y Fh(H)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(68)150 3671 y Fh(help)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)50 b Fi(19,)26 b(68)150 3936 y Fs(I)150 4057 y Fh(I)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(61,)26 b(71)150 4147 y Fh(I-)8 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(65,)26 b(71)150 4237 y Fh(idirafter)f Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(65)150 4326 y Fh(imacros)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(65)150 4416 y Fh(include)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)34 b Fi(65)150 4506 y Fh(iprefix)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)34 b Fi(66)150 4595 y Fh(isystem)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(66)150 4685 y Fh(iwithprefix)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(66)150 4775 y Fh(iwithprefixbefore)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(66)150 5039 y Fs(L)150 5161 y Fh(l)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(68)150 5250 y Fh(L)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(72)150 5340 y Fh(lobjc)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fi(69)2025 299 y Fs(M)2025 416 y Fh(M)17 b Fa(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(62)2025 504 y Fh(m1)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)41 b Fi(124)2025 592 y Fh(m10)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(137)2025 680 y Fh(m128bit-long-double)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)34 b Fi(113)2025 768 y Fh(m16-bit)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)33 b Fi(135)2025 856 y Fh(m2)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)41 b Fi(124)2025 944 y Fh(m210)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(131)2025 1032 y Fh(m29000)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(88)2025 1120 y Fh(m29050)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(88)2025 1208 y Fh(m3)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)41 b Fi(124)2025 1296 y Fh(m31)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(134)2025 1383 y Fh(m32)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)50 b Fi(86,)27 b(115)2025 1471 y Fh(m32-bit)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(135)2025 1559 y Fh(m32032)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)35 b Fi(128)2025 1647 y Fh(m32081)9 b Fa(.)k(.)f(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(129)2025 1735 y Fh(m32332)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(128)2025 1823 y Fh(m32381)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(129)2025 1911 y Fh(m32532)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)35 b Fi(129)2025 1999 y Fh(m32r)13 b Fa(.)g(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(94)2025 2087 y Fh(m32rx)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(94)2025 2175 y Fh(m340)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(131)2025 2263 y Fh(m386)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(111)2025 2351 y Fh(m3dnow)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(114)2025 2439 y Fh(m3e)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(124)2025 2526 y Fh(m4)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)41 b Fi(124)2025 2614 y Fh(m4-nofpu)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)50 b Fi(124)2025 2702 y Fh(m4-single)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(124)2025 2790 y Fh(m4-single-only)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)41 b Fi(124)2025 2878 y Fh(m40)13 b Fa(.)g(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)39 b Fi(137)2025 2966 y Fh(m45)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(137)2025 3054 y Fh(m4650)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(110)2025 3142 y Fh(m486)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(111)2025 3230 y Fh(m4byte-functions)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)38 b Fi(131)2025 3318 y Fh(m5200)11 b Fa(.)i(.)g(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(81)2025 3406 y Fh(m64)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)41 b Fi(86,)27 b(115,)g(134)2025 3494 y Fh(m68000)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(80)2025 3582 y Fh(m68020)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(80)2025 3669 y Fh(m68020-40)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 49 b Fi(81)2025 3757 y Fh(m68020-60)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(81)2025 3845 y Fh(m68030)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(80)2025 3933 y Fh(m68040)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(80)2025 4021 y Fh(m68060)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)35 b Fi(81)2025 4109 y Fh(m6811)11 b Fa(.)i(.)g(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(82)2025 4197 y Fh(m6812)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(82)2025 4285 y Fh(m68881)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(80)2025 4373 y Fh(m68hc11)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fi(82)2025 4461 y Fh(m68hc12)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fi(82)2025 4549 y Fh(m8-bit)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(135)2025 4637 y Fh(m88000)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)35 b Fi(95)2025 4725 y Fh(m88100)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)35 b Fi(95)2025 4812 y Fh(m88110)10 b Fa(.)j(.)f(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(95)2025 4900 y Fh(m96bit-long-double)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)35 b Fi(113)2025 4988 y Fh(mabi-mmixware)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(136)2025 5076 y Fh(mabi=32)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(108)2025 5164 y Fh(mabi=64)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(108)2025 5252 y Fh(mabi=altivec)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(104)2025 5340 y Fh(mabi=eabi)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(108)p eop %%Page: 340 350 340 349 bop 150 -116 a Fy(340)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fh(mabi=gnu)c Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(136)150 387 y Fh(mabi=n32)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(108)150 476 y Fh(mabi=no-altivec)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)40 b Fi(104)150 564 y Fh(mabi=o64)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(108)150 653 y Fh(mabicalls)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)48 b Fi(109)150 741 y Fh(mabort-on-noreturn)10 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(92)150 830 y Fh(mabshi)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(137)150 918 y Fh(mac0)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)37 b Fi(137)150 1006 y Fh(maccumulate-outgoing-args) 17 b Fa(.)h(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)43 b Fi(115)150 1095 y Fh(mads)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(104)150 1183 y Fh(maix-struct-return)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)35 b Fi(103)150 1272 y Fh(maix32)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)34 b Fi(101)150 1360 y Fh(maix64)9 b Fa(.)k(.)g(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(101)150 1449 y Fh(malign-300)23 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(123)150 1537 y Fh(malign-double)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(113)150 1625 y Fh(malign-int)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(82)150 1714 y Fh(malignment-traps)13 b Fa(.)j(.)d(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(90)150 1802 y Fh(malpha-as)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(121)150 1891 y Fh(maltivec)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)50 b Fi(100)150 1979 y Fh(mam33)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)37 b Fi(93)150 2068 y Fh(maout)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)36 b Fi(135)150 2156 y Fh(mapcs)11 b Fa(.)j(.)e(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fi(89)150 2245 y Fh(mapcs-26)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fi(89)150 2333 y Fh(mapcs-32)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fi(89)150 2421 y Fh(mapcs-frame)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)46 b Fi(89)150 2510 y Fh(mapp-regs)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(83)150 2598 y Fh(march)14 b Fa(.)f(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(91,)27 b(106,)g(111,)g(116,)g(134)150 2687 y Fh(margcount)e Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) 49 b Fi(87)150 2775 y Fh(masm-compat)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(118)150 2864 y Fh(masm-optimize)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(133)150 2952 y Fh(masm=)p Fd(dialect)9 b Fa(.)14 b(.)e(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(112)150 3041 y Fh(mauto-incdec)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)45 b Fi(82)150 3129 y Fh(mauto-pic)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(132)150 3217 y Fh(mb)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(124)150 3306 y Fh(mb-step)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(132)150 3394 y Fh(mbackchain)23 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)47 b Fi(133)150 3483 y Fh(mbase-addresses)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)40 b Fi(137)150 3571 y Fh(mbcopy)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(137)150 3660 y Fh(mbig)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) 47 b Fi(103,)27 b(125)150 3748 y Fh(mbig-endian)f Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(90,)27 b(103,)g(131,)g(132,)g(138)150 3836 y Fh(mbig-memory)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(125)150 3925 y Fh(mbig-pic)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fi(95)150 4013 y Fh(mbig-switch)11 b Fa(.)k(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)37 b Fi(116,)27 b(128)150 4102 y Fh(mbigtable)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(124)150 4190 y Fh(mbit-align)23 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(102)150 4279 y Fh(mbitfield)15 b Fa(.)f(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fi(81,)27 b(129)150 4367 y Fh(mbk)13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(125)150 4456 y Fh(mbooleans)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(139)150 4544 y Fh(mbranch-cheap)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) 42 b Fi(138)150 4632 y Fh(mbranch-cost)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(133)150 4721 y Fh(mbranch-expensive)11 b Fa(.)16 b(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(138)150 4809 y Fh(mbranch-predict)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)40 b Fi(136)150 4898 y Fh(mbroken-saverestore)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(86)150 4986 y Fh(mbsd)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)38 b Fi(91)150 5075 y Fh(mbuild-constants)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(121)150 5163 y Fh(mbw)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(87)150 5252 y Fh(mbwx)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(121)150 5340 y Fh(mc1)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(87)2025 299 y Fh(mc2)14 b Fa(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(87)2025 387 y Fh(mc300)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(123)2025 476 y Fh(mc32)13 b Fa(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(87)2025 564 y Fh(mc34)13 b Fa(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(87)2025 653 y Fh(mc38)13 b Fa(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(87)2025 741 y Fh(mc400)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(123)2025 830 y Fh(mc68000)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)34 b Fi(80)2025 918 y Fh(mc68020)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)34 b Fi(80)2025 1006 y Fh(mca)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(117)2025 1095 y Fh(mcall-aix)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(103)2025 1183 y Fh(mcall-gnu)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)48 b Fi(103)2025 1272 y Fh(mcall-lib-mul)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(106)2025 1360 y Fh(mcall-linux)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(103)2025 1449 y Fh(mcall-netbsd)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(103)2025 1537 y Fh(mcall-prologues)14 b Fa(.)h(.)d(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)40 b Fi(130)2025 1625 y Fh(mcall-solaris)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(103)2025 1714 y Fh(mcall-sysv)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(103)2025 1802 y Fh(mcall-sysv-eabi) 14 b Fa(.)h(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(103)2025 1891 y Fh(mcall-sysv-noeabi)11 b Fa(.)16 b(.)c(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)37 b Fi(103)2025 1979 y Fh(mcallee-super-interworking)17 b Fa(.)h(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 43 b Fi(93)2025 2068 y Fh(mcaller-super-interworking)17 b Fa(.)h(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 43 b Fi(93)2025 2156 y Fh(mcallgraph-data)14 b Fa(.)h(.)d(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)40 b Fi(131)2025 2245 y Fh(mcc-init)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 50 b Fi(135)2025 2333 y Fh(mcf)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(117)2025 2421 y Fh(mcheck-zero-division)7 b Fa(.)17 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)33 b Fi(97)2025 2510 y Fh(mcix)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)38 b Fi(121)2025 2598 y Fh(mcmodel=embmedany)12 b Fa(.)k(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(86)2025 2687 y Fh(mcmodel=medany)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) 42 b Fi(86)2025 2775 y Fh(mcmodel=medlow)16 b Fa(.)f(.)e(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)42 b Fi(86)2025 2864 y Fh(mcmodel=medmid)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)42 b Fi(86)2025 2952 y Fh(mcode-align)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(118)2025 3041 y Fh(mcode-model=large)12 b Fa(.)k(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(94)2025 3129 y Fh(mcode-model=medium)10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(94)2025 3217 y Fh(mcode-model=small)12 b Fa(.)k(.)c(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)38 b Fi(94)2025 3306 y Fh(mcomplex-addr)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(118)2025 3394 y Fh(mcond-exec)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(133)2025 3483 y Fh(mconst-align)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(135)2025 3571 y Fh(mconstant-gp)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)44 b Fi(132)2025 3660 y Fh(mcpu)21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)46 b Fi(85,)27 b(91,)f(99,)h(107,)g(111,) g(122,)h(125,)f(128,)g(134)2025 3748 y Fh(mcpu32)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)35 b Fi(81)2025 3836 y Fh(mcypress)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) 32 b Fi(85)2025 3925 y Fh(MD)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(64)2025 4013 y Fh(mdalign)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(124)2025 4102 y Fh(mdata)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(128)2025 4190 y Fh(mdata-align)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)46 b Fi(135)2025 4279 y Fh(mdb)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(125)2025 4367 y Fh(mdebug)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(134)2025 4456 y Fh(mdec-asm)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)50 b Fi(138)2025 4544 y Fh(mdensity)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 50 b Fi(138)2025 4632 y Fh(mdisable-fpregs)14 b Fa(.)h(.)d(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)40 b Fi(116)2025 4721 y Fh(mdisable-indexing)11 b Fa(.)16 b(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)37 b Fi(116)2025 4809 y Fh(mdiv)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(131)2025 4898 y Fh(mdouble-float)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 43 b Fi(110)2025 4986 y Fh(mdp-isr-reload)15 b Fa(.)g(.)e(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)41 b Fi(126)2025 5075 y Fh(mdw)14 b Fa(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(87)2025 5163 y Fh(mdwarf2-asm)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(132)2025 5252 y Fh(meabi)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(104)2025 5340 y Fh(melf)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(135,)27 b(136)p eop %%Page: 341 351 341 350 bop 150 -116 a Fy(Option)29 b(Index)2933 b(341)150 299 y Fh(melinux)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(135)150 387 y Fh(melinux-stacksize) 11 b Fa(.)16 b(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(134)150 476 y Fh(memb)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(104)150 564 y Fh(membedded-data)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(109)150 653 y Fh(membedded-pic)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)42 b Fi(109)150 741 y Fh(mentry)9 b Fa(.)k(.)g(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(110)150 830 y Fh(mep)13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(127)150 918 y Fh(mepsilon)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(136)150 1006 y Fh(metrax100)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)48 b Fi(134)150 1095 y Fh(metrax4)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)33 b Fi(134)150 1183 y Fh(mexplicit-relocs)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(121)150 1272 y Fh(mextmem)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(133)150 1360 y Fh(mextmemory)23 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(133)150 1449 y Fh(MF)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(63)150 1537 y Fh(mfast-fix)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(126)150 1625 y Fh(mfast-indirect-calls)6 b Fa(.)17 b(.)c(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(116)150 1714 y Fh(mfaster-structs)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)40 b Fi(84)150 1802 y Fh(mfix)11 b Fa(.)j(.)e(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(121)150 1891 y Fh(mfix7000)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(110)150 1979 y Fh(mfixed-range)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)44 b Fi(133)150 2068 y Fh(mflat)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fi(84)150 2156 y Fh(mfloat-ieee)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(121)150 2245 y Fh(mfloat-vax)23 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(121)150 2333 y Fh(mfloat32)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(137)150 2421 y Fh(mfloat64)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)50 b Fi(137)150 2510 y Fh(mflush-func)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(110)150 2598 y Fh(mfmovd)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(124)150 2687 y Fh(mfp)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(91)150 2775 y Fh(mfp-arg-in-fpregs)11 b Fa(.)16 b(.)c(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(106)150 2864 y Fh(mfp-arg-in-gregs)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)38 b Fi(106)150 2952 y Fh(mfp-reg)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 33 b Fi(119)150 3041 y Fh(mfp-rounding-mode)11 b Fa(.)16 b(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(120)150 3129 y Fh(mfp-trap-mode)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(119)150 3217 y Fh(mfp32)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(107)150 3306 y Fh(mfp64)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(107)150 3394 y Fh(mfpa)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(81)150 3483 y Fh(mfpe)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(91)150 3571 y Fh(mfpu)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)48 b Fi(83,)27 b(137)150 3660 y Fh(mfull-fp-blocks) 14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)40 b Fi(106)150 3748 y Fh(mfull-toc)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)48 b Fi(100)150 3836 y Fh(mfused-madd)23 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)47 b Fi(102,)27 b(107,)g(139)150 3925 y Fh(mg)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(83)150 4013 y Fh(MG)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(63)150 4102 y Fh(mgas)13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 39 b Fi(108,)27 b(117,)g(121)150 4190 y Fh(mgnu)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)38 b Fi(83)150 4279 y Fh(mgnu-as)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)33 b Fi(132)150 4367 y Fh(mgnu-ld)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 33 b Fi(132)150 4456 y Fh(mgotplt)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(135)150 4544 y Fh(mgp32)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(107)150 4632 y Fh(mgp64)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(107)150 4721 y Fh(mgpopt)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)34 b Fi(108)150 4809 y Fh(mh)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(123)150 4898 y Fh(mhalf-pic)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(109)150 4986 y Fh(mhandle-large-shift)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(97)150 5075 y Fh(mhard-float)16 b Fa(.)f(.)d(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)41 b Fi(83,)27 b(89,)g(101,)g(109,)g(133,)g(139)150 5163 y Fh(mhard-quad-float)13 b Fa(.)j(.)d(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 39 b Fi(83)150 5252 y Fh(mhardlit)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(131)150 5340 y Fh(mhc-struct-return)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)47 b Fi(106,)27 b(277)2025 299 y Fh(mhimem)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(130)2025 387 y Fh(mhitachi)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)50 b Fi(124)2025 476 y Fh(mic-compat)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(118)2025 564 y Fh(mic2.0-compat)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)43 b Fi(118)2025 653 y Fh(mic3.0-compat)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(118)2025 741 y Fh(midentify-revision)10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(95)2025 830 y Fh(mieee)21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(119,)27 b(124)2025 918 y Fh(mieee-conformant)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(120)2025 1006 y Fh(mieee-fp)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)50 b Fi(112)2025 1095 y Fh(mieee-with-inexact)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(119)2025 1183 y Fh(mimpure-text)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)45 b Fi(88)2025 1272 y Fh(min-line-mul)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(106)2025 1360 y Fh(minit-stack)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(130)2025 1449 y Fh (minline-all-stringops)28 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(115)2025 1537 y Fh(minline-divide-max-throughput)12 b Fa(.)18 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(132)2025 1625 y Fh(minline-divide-min-latency)16 b Fa(.)i(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fi(132)2025 1714 y Fh(mint16)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(137)2025 1802 y Fh(mint32)18 b Fa(.)c(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)45 b Fi(123,)27 b(137)2025 1891 y Fh(mint64)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)35 b Fi(107)2025 1979 y Fh(mintel-asm)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(118)2025 2068 y Fh(mips1)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(107)2025 2156 y Fh(mips16)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(110)2025 2245 y Fh(mips2)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(107)2025 2333 y Fh(mips3)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(107)2025 2421 y Fh(mips4)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)36 b Fi(107)2025 2510 y Fh(misize)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)35 b Fi(124)2025 2598 y Fh(mjump-in-delay)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(116)2025 2687 y Fh(mka)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(117)2025 2775 y Fh(mkb)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(117)2025 2864 y Fh(mkernel-registers)12 b Fa(.)k(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(88)2025 2952 y Fh(mknuthdiv)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(136)2025 3041 y Fh(ml)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)41 b Fi(124)2025 3129 y Fh(mlarge)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(88)2025 3217 y Fh(mlarge-data)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)46 b Fi(121)2025 3306 y Fh(mleaf-procedures)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(117)2025 3394 y Fh(mlibfuncs)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)48 b Fi(136)2025 3483 y Fh(mlinker-opt)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(117)2025 3571 y Fh(mlinux)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(135)2025 3660 y Fh(mlittle)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(103)2025 3748 y Fh(mlittle-endian) 25 b Fa(.)12 b(.)h(.)f(.)48 b Fi(85,)27 b(86,)g(90,)f(103,)i(131,)f (132,)g(138)2025 3836 y Fh(mlive-g0)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(85)2025 3925 y Fh(mlong-calls)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(92,)27 b(109,)g(127)2025 4013 y Fh(mlong-double-64)14 b Fa(.)h(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(118)2025 4102 y Fh(mlong-load-store)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(117)2025 4190 y Fh(mlong32)18 b Fa(.)c(.)e(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)44 b Fi(87,)27 b(107)2025 4279 y Fh(mlong64)18 b Fa(.)c(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)44 b Fi(87,)27 b(107)2025 4367 y Fh(mlongcalls)c Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(140)2025 4456 y Fh(mloop-unsigned)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)41 b Fi(126)2025 4544 y Fh(MM)15 b Fa(.)e(.)f(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)41 b Fi(63)2025 4632 y Fh(mmac16)9 b Fa(.)k(.)f(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(138)2025 4721 y Fh(mmad)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(110)2025 4809 y Fh(mmangle-cpu)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(128)2025 4898 y Fh(mmax)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)38 b Fi(121)2025 4986 y Fh(mmax-stack-frame)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(134)2025 5075 y Fh(mmc)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(117)2025 5163 y Fh(mmcu)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(130)2025 5252 y Fh(MMD)14 b Fa(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(64)2025 5340 y Fh(mmemcpy)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(108)p eop %%Page: 342 352 342 351 bop 150 -116 a Fy(342)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fh(mmemory-latency)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)40 b Fi(122)150 387 y Fh(mmemparm)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)50 b Fi(127)150 476 y Fh(mminimal-toc)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(100)150 564 y Fh(mminimum-fp-blocks)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)35 b Fi(106)150 653 y Fh(mminmax)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)33 b Fi(139)150 741 y Fh(mmips-as)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(108)150 830 y Fh(mmips-tfile)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(109)150 918 y Fh(mmmx)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)37 b Fi(114)150 1006 y Fh(mmpyi)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)36 b Fi(126)150 1095 y Fh(mmul16)9 b Fa(.)k(.)g(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(138)150 1183 y Fh(mmul32)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(139)150 1272 y Fh(mmult-bug)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(93)150 1360 y Fh(mmulti-add)23 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(129)150 1449 y Fh(mmultiple)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(101)150 1537 y Fh(mmvcle)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(134)150 1625 y Fh(mmvme)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)36 b Fi(104)150 1714 y Fh(mnbw)13 b Fa(.)g(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)38 b Fi(87)150 1802 y Fh(mndw)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(87)150 1891 y Fh(mnew-mnemonics)16 b Fa(.)g(.)c(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)42 b Fi(99)150 1979 y Fh(mno-3dnow)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(114)150 2068 y Fh(mno-4byte-functions)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)34 b Fi(131)150 2156 y Fh(mno-abicalls)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(109)150 2245 y Fh(mno-abshi)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(137)150 2333 y Fh(mno-ac0)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(137)150 2421 y Fh(mno-align-double)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(113)150 2510 y Fh(mno-align-int)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)43 b Fi(82)150 2598 y Fh(mno-align-stringops)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(115)150 2687 y Fh (mno-alignment-traps)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(90)150 2775 y Fh(mno-altivec)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(100)150 2864 y Fh(mno-am33)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)32 b Fi(94)150 2952 y Fh(mno-app-regs)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)45 b Fi(83)150 3041 y Fh(mno-asm-optimize)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)38 b Fi(133)150 3129 y Fh(mno-backchain)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(133)150 3217 y Fh(mno-base-addresses)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)35 b Fi(137)150 3306 y Fh(mno-bit-align)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)42 b Fi(102)150 3394 y Fh(mno-bk)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)34 b Fi(125)150 3483 y Fh(mno-booleans)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(139)150 3571 y Fh(mno-branch-predict)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)35 b Fi(136)150 3660 y Fh(mno-bwx)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)33 b Fi(121)150 3748 y Fh(mno-callgraph-data)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)35 b Fi(131)150 3836 y Fh(mno-check-zero-division)26 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(97)150 3925 y Fh(mno-cix)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(121)150 4013 y Fh(mno-code-align)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(118)150 4102 y Fh(mno-complex-addr)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(118)150 4190 y Fh(mno-const-align)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)40 b Fi(135)150 4279 y Fh(mno-crt0)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) 32 b Fi(94)150 4367 y Fh(mno-data-align)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)41 b Fi(135)150 4456 y Fh(mno-db)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)34 b Fi(125)150 4544 y Fh(mno-debug)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(134)150 4632 y Fh(mno-density)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(138)150 4721 y Fh(mno-div)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)33 b Fi(131)150 4809 y Fh(mno-dwarf2-asm)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(132)150 4898 y Fh(mno-eabi)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(104)150 4986 y Fh(mno-embedded-data)11 b Fa(.)16 b(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(109)150 5075 y Fh(mno-embedded-pic)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(109)150 5163 y Fh(mno-ep)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(127)150 5252 y Fh(mno-epsilon)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)45 b Fi(136)150 5340 y Fh(mno-explicit-relocs)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(121)2025 299 y Fh (mno-fancy-math-387)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(113)2025 387 y Fh(mno-fast-fix)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)44 b Fi(126)2025 476 y Fh(mno-faster-structs)10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(84)2025 564 y Fh(mno-fix)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(121)2025 653 y Fh(mno-flat)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)32 b Fi(84)2025 741 y Fh(mno-float32)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(137)2025 830 y Fh(mno-float64)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(137)2025 918 y Fh(mno-fp-in-toc)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(100)2025 1006 y Fh(mno-fp-regs)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(119)2025 1095 y Fh (mno-fp-ret-in-387)11 b Fa(.)16 b(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)37 b Fi(112)2025 1183 y Fh(mno-fpu)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fi(83)2025 1272 y Fh(mno-fused-madd)16 b Fa(.)g(.)c(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(102,)27 b(107,)g(139)2025 1360 y Fh(mno-gnu-as)c Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(132)2025 1449 y Fh(mno-gnu-ld)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)47 b Fi(132)2025 1537 y Fh(mno-gotplt)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(135)2025 1625 y Fh(mno-gpopt)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(108)2025 1714 y Fh(mno-half-pic)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)44 b Fi(109)2025 1802 y Fh(mno-hardlit)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(131)2025 1891 y Fh(mno-ieee-fp)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(112)2025 1979 y Fh(mno-impure-text) 15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(88)2025 2068 y Fh(mno-int16)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)48 b Fi(137)2025 2156 y Fh(mno-int32)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(137)2025 2245 y Fh(mno-interrupts)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)41 b Fi(130)2025 2333 y Fh(mno-knuthdiv)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(136)2025 2421 y Fh(mno-leaf-procedures)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)34 b Fi(117)2025 2510 y Fh(mno-libfuncs)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(136)2025 2598 y Fh(mno-long-calls)17 b Fa(.)f(.)c(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(92,)27 b(109,)g(127)2025 2687 y Fh(mno-longcalls)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(140)2025 2775 y Fh(mno-loop-unsigned)11 b Fa(.)16 b(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)37 b Fi(126)2025 2864 y Fh(mno-mac16)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(138)2025 2952 y Fh(mno-mad)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(110)2025 3041 y Fh(mno-max)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(121)2025 3129 y Fh(mno-memcpy)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(108)2025 3217 y Fh(mno-minmax)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(139)2025 3306 y Fh(mno-mips-tfile)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(109)2025 3394 y Fh(mno-mips16)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(110)2025 3483 y Fh(mno-mmx)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(114)2025 3571 y Fh(mno-mpyi)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 50 b Fi(126)2025 3660 y Fh(mno-mul16)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(138)2025 3748 y Fh(mno-mul32)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)48 b Fi(139)2025 3836 y Fh(mno-mult-bug)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(93)2025 3925 y Fh(mno-multiple)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)44 b Fi(101)2025 4013 y Fh(mno-multm)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 49 b Fi(89)2025 4102 y Fh(mno-mvcle)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(134)2025 4190 y Fh(mno-nsa)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(139)2025 4279 y Fh (mno-ocs-debug-info)10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(95)2025 4367 y Fh(mno-ocs-frame-position)27 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)48 b Fi(95)2025 4456 y Fh(mno-optimize-arg-area)29 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)50 b Fi(96)2025 4544 y Fh(mno-parallel-insns)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(127)2025 4632 y Fh(mno-parallel-mpy)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(127)2025 4721 y Fh(mno-pic)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(132)2025 4809 y Fh(mno-power)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(98)2025 4898 y Fh(mno-power2)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(98)2025 4986 y Fh(mno-powerpc)23 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)46 b Fi(98)2025 5075 y Fh(mno-powerpc-gfxopt)10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(98)2025 5163 y Fh(mno-powerpc-gpopt)12 b Fa(.)k(.)c(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)38 b Fi(98)2025 5252 y Fh(mno-powerpc64)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(98)2025 5340 y Fh(mno-prolog-function)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)34 b Fi(127)p eop %%Page: 343 353 343 352 bop 150 -116 a Fy(Option)29 b(Index)2933 b(343)150 299 y Fh(mno-prologue-epilogue)28 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(135)150 387 y Fh(mno-prototype)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)42 b Fi(104)150 476 y Fh(mno-push-args)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(115)150 564 y Fh(mno-register-names)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)35 b Fi(132)150 653 y Fh(mno-regnames)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(105)150 741 y Fh(mno-relax-immediate)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)34 b Fi(131)150 830 y Fh(mno-relocatable)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)40 b Fi(102)150 918 y Fh(mno-relocatable-lib)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(102)150 1006 y Fh(mno-reuse-arg-regs)10 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(88)150 1095 y Fh(mno-rnames)23 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(108)150 1183 y Fh(mno-rptb)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(126)150 1272 y Fh(mno-rpts)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)50 b Fi(126)150 1360 y Fh(mno-sched-prolog)13 b Fa(.)j(.)d(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(89)150 1449 y Fh(mno-sdata)14 b Fa(.)g(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 40 b Fi(105,)27 b(132)150 1537 y Fh(mno-serialize-volatile)i Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(96,)27 b(140,)g(276)150 1625 y Fh(mno-sext)f Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(139)150 1714 y Fh(mno-short-load-bytes)7 b Fa(.)17 b(.)c(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)33 b Fi(90)150 1802 y Fh(mno-short-load-words)7 b Fa(.)17 b(.)c(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(90)150 1891 y Fh(mno-side-effects)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(135)150 1979 y Fh(mno-slow-bytes)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(131)150 2068 y Fh(mno-small-exec)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)41 b Fi(134)150 2156 y Fh(mno-soft-float)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(119)150 2245 y Fh(mno-space-regs)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)41 b Fi(116)150 2333 y Fh(mno-split)24 b Fa(.)13 b(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(138)150 2421 y Fh(mno-split-addresses)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(108)150 2510 y Fh(mno-sse)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(114)150 2598 y Fh(mno-stack-align)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) 40 b Fi(135)150 2687 y Fh(mno-stack-bias)16 b Fa(.)g(.)c(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)42 b Fi(86)150 2775 y Fh(mno-stack-check)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)40 b Fi(88)150 2864 y Fh(mno-stats)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)48 b Fi(108)150 2952 y Fh(mno-storem-bug)16 b Fa(.)g(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b Fi(88)150 3041 y Fh(mno-strict-align)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(82,)27 b(102,)g(118)150 3129 y Fh(mno-string)c Fa(.)13 b(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(102)150 3217 y Fh(mno-sum-in-toc)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(100)150 3306 y Fh(mno-svr3-shlib)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)41 b Fi(113)150 3394 y Fh(mno-symrename)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fi(91)150 3483 y Fh(mno-tablejump)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)42 b Fi(131)150 3571 y Fh(mno-tail-call)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(118)150 3660 y Fh(mno-target-align)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)38 b Fi(140)150 3748 y Fh(mno-text-section-literals)17 b Fa(.)h(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 43 b Fi(140)150 3836 y Fh(mno-toc)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(103)150 3925 y Fh(mno-toplevel-symbols)6 b Fa(.)17 b(.)c(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(136)150 4013 y Fh(mno-unaligned-doubles)d Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)50 b Fi(84)150 4102 y Fh(mno-underscores)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)40 b Fi(95)150 4190 y Fh(mno-uninit-const-in-rodata)16 b Fa(.)i(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b Fi(110)150 4279 y Fh(mno-update)23 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(102)150 4367 y Fh(mno-volatile-asm-stop)28 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(132)150 4456 y Fh(mno-wide-bitfields)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)35 b Fi(131)150 4544 y Fh(mno-xl-call)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(101)150 4632 y Fh(mno-zero-extend) 14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)40 b Fi(136)150 4721 y Fh(mnoargcount)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)46 b Fi(87)150 4809 y Fh(mnobitfield)12 b Fa(.)j(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(81,)27 b(129)150 4898 y Fh(mnohc-struct-return)8 b Fa(.)16 b(.)d(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 34 b Fi(106)150 4986 y Fh(mnohimem)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(130)150 5075 y Fh(mnomacsave)23 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)47 b Fi(124)150 5163 y Fh(mnomulti-add)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(129)150 5252 y Fh(mnop-fun-dllimport)10 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(92)150 5340 y Fh(mnoregparam)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(130)2025 299 y Fh(mnormal)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fi(88)2025 387 y Fh(mnosb)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(130)2025 476 y Fh(mnsa)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(139)2025 564 y Fh(mnumerics)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)48 b Fi(117)2025 653 y Fh(mocs-debug-info)15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(95)2025 741 y Fh(mocs-frame-position)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(95)2025 830 y Fh(mold-align)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(118)2025 918 y Fh(mold-mnemonics)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)42 b Fi(99)2025 1006 y Fh(momit-leaf-frame-pointer)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)45 b Fi(115)2025 1095 y Fh(monchip)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(133)2025 1183 y Fh(moptimize-arg-area)10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 36 b Fi(96)2025 1272 y Fh(MP)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(63)2025 1360 y Fh(mpa-risc-1-0)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)44 b Fi(116)2025 1449 y Fh(mpa-risc-1-1)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(116)2025 1537 y Fh(mpa-risc-2-0)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)44 b Fi(116)2025 1625 y Fh(mpadstruct)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(124)2025 1714 y Fh(mparallel-insns)14 b Fa(.)h(.)d(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)40 b Fi(127)2025 1802 y Fh(mparallel-mpy)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(127)2025 1891 y Fh(mparanoid)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(126)2025 1979 y Fh(mpcrel)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(82)2025 2068 y Fh(mpdebug)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)33 b Fi(135)2025 2156 y Fh(mpe)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(101)2025 2245 y Fh(mpentium)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)50 b Fi(111)2025 2333 y Fh(mpentiumpro)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)46 b Fi(111)2025 2421 y Fh(mpic-register)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(92)2025 2510 y Fh(mpoke-function-name)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)35 b Fi(92)2025 2598 y Fh(mportable-runtime)11 b Fa(.)16 b(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)37 b Fi(117)2025 2687 y Fh(mpower)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(98)2025 2775 y Fh(mpower2)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)34 b Fi(98)2025 2864 y Fh(mpowerpc)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) 32 b Fi(98)2025 2952 y Fh(mpowerpc-gfxopt)15 b Fa(.)g(.)e(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)40 b Fi(98)2025 3041 y Fh(mpowerpc-gpopt)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)42 b Fi(98)2025 3129 y Fh(mpowerpc64)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(98)2025 3217 y Fh(mprefergot)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)47 b Fi(124)2025 3306 y Fh(mpreferred-stack-boundary)17 b Fa(.)h(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) 43 b Fi(114)2025 3394 y Fh(mprolog-function)12 b Fa(.)k(.)c(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)38 b Fi(127)2025 3483 y Fh(mprologue-epilogue)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(135)2025 3571 y Fh(mprototype)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)47 b Fi(104)2025 3660 y Fh(mpush-args)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(115)2025 3748 y Fh(MQ)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(64)2025 3836 y Fh(mregister-names)14 b Fa(.)h(.)d(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)40 b Fi(132)2025 3925 y Fh(mregnames)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(105)2025 4013 y Fh(mregparam)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(129)2025 4102 y Fh(mregparm)15 b Fa(.)f(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 42 b Fi(114,)27 b(127)2025 4190 y Fh(mrelax)c Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(93,)27 b(94,)g(123,)g(124)2025 4279 y Fh(mrelax-immediate)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(131)2025 4367 y Fh(mrelocatable)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)44 b Fi(102)2025 4456 y Fh(mrelocatable-lib)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(102)2025 4544 y Fh(mreuse-arg-regs)15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)40 b Fi(88)2025 4632 y Fh(mrnames)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(108)2025 4721 y Fh(mrodata)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(128)2025 4809 y Fh(mrptb)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(126)2025 4898 y Fh(mrpts)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(126)2025 4986 y Fh(mrtd)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(81,)27 b(113,)g(129,)g(176)2025 5075 y Fh(ms)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)41 b Fi(123)2025 5163 y Fh(ms2600)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(123)2025 5252 y Fh(msa)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(117)2025 5340 y Fh(msb)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)49 b Fi(117,)27 b(130)p eop %%Page: 344 354 344 353 bop 150 -116 a Fy(344)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fh(mschedule)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(117)150 387 y Fh(msda)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(128)150 476 y Fh(msdata)18 b Fa(.)c(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)44 b Fi(105,)27 b(132)150 564 y Fh(msdata-data)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(105)150 653 y Fh(msdata=default)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)41 b Fi(105)150 741 y Fh(msdata=eabi)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(105)150 830 y Fh(msdata=none)12 b Fa(.)j(.)d(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)38 b Fi(94,)27 b(105)150 918 y Fh(msdata=sdata)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)45 b Fi(94)150 1007 y Fh(msdata=sysv)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(105)150 1095 y Fh(msdata=use)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(94)150 1184 y Fh(mserialize-volatile)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)44 b Fi(96,)27 b(140)150 1272 y Fh(msext)10 b Fa(.)j(.)g(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(139)150 1360 y Fh(mshort)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(81,)26 b(83)150 1449 y Fh(mshort-data)d Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)46 b Fi(96)150 1537 y Fh(mshort-load-bytes)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(90)150 1626 y Fh(mshort-load-words)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(90)150 1714 y Fh(msim)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(104,)27 b(138)150 1803 y Fh(msingle-float)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)42 b Fi(110)150 1891 y Fh(msingle-pic-base)13 b Fa(.)j(.)d(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)39 b Fi(92)150 1980 y Fh(msize)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)36 b Fi(130)150 2068 y Fh(mslow-bytes)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(131)150 2157 y Fh(msmall)21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fi(88,)27 b(125)150 2245 y Fh(msmall-data)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)45 b Fi(121)150 2334 y Fh(msmall-exec)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(134)150 2422 y Fh(msmall-memory)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)42 b Fi(125)150 2510 y Fh(msoft-float)9 b Fa(.)14 b(.)f(.)f(.)34 b Fi(81,)27 b(83,)g(88,)g(89,)f(101,)h(109,)h (112,)f(117,)304 2598 y(119,)g(129,)g(133,)g(137,)g(139)150 2686 y Fh(msoft-quad-float)13 b Fa(.)j(.)d(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 39 b Fi(84)150 2775 y Fh(msoft-reg-count)15 b Fa(.)g(.)e(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)40 b Fi(83)150 2863 y Fh(mspace)18 b Fa(.)c(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fi(124,)27 b(127)150 2951 y Fh(msparclite)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(84)150 3040 y Fh(msplit)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(138)150 3128 y Fh(msplit-addresses)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(108)150 3217 y Fh(msse)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(114)150 3305 y Fh(mstack-align)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)44 b Fi(135)150 3394 y Fh(mstack-bias)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(86)150 3482 y Fh(mstack-check)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)45 b Fi(88)150 3571 y Fh(mstats)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)34 b Fi(108)150 3659 y Fh(mstorem-bug)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(88)150 3748 y Fh(mstrict-align)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(82,)27 b(102,)g(118)150 3836 y Fh(mstring)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 33 b Fi(102)150 3925 y Fh(mstructure-size-boundary)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)45 b Fi(91)150 4013 y Fh(msupersparc)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(85)150 4101 y Fh(msvr3)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fi(96)150 4190 y Fh(msvr3-shlib)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(113)150 4278 y Fh(msvr4)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)37 b Fi(96)150 4367 y Fh(msvr4-struct-return)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(104)150 4455 y Fh(MT)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(63)150 4544 y Fh(mtail-call)23 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)47 b Fi(118)150 4632 y Fh(mtarget-align)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(140)150 4721 y Fh(mtda)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(128)150 4809 y Fh(mtext)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(128)150 4898 y Fh(mtext-section-literals)27 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)48 b Fi(140)150 4986 y Fh(mthreads)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(115)150 5075 y Fh(mthumb)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)35 b Fi(93)150 5163 y Fh(mthumb-interwork)13 b Fa(.)j(.)d(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(89)150 5252 y Fh(mti)13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(127)150 5340 y Fh(mtiny-stack)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)45 b Fi(131)2025 299 y Fh(mtoc)11 b Fa(.)i(.)g(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(103)2025 393 y Fh(mtoplevel-symbols)11 b Fa(.)16 b(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)37 b Fi(136)2025 487 y Fh(mtpcs-frame)23 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)46 b Fi(93)2025 582 y Fh(mtpcs-leaf-frame)13 b Fa(.)j(.)c(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)39 b Fi(93)2025 676 y Fh(mtrap-large-shift)12 b Fa(.)k(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(97)2025 770 y Fh(mtrap-precision)14 b Fa(.)h(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(120)2025 864 y Fh(mtune)6 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(85,)27 b(91,)f(100,)i(106,)f(122,)g(134)2025 959 y Fh(munaligned-doubles)10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(84)2025 1053 y Fh(muninit-const-in-rodata)25 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)46 b Fi(110)2025 1147 y Fh(munix)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(83)2025 1241 y Fh(munix-asm)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)48 b Fi(138)2025 1335 y Fh(mupdate)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)33 b Fi(102)2025 1430 y Fh(muse-div-instruction)7 b Fa(.)17 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(97)2025 1524 y Fh(muser-registers)15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(88)2025 1618 y Fh(musermode)24 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(125)2025 1712 y Fh(mv8)14 b Fa(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(84)2025 1807 y Fh(mv850)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(128)2025 1901 y Fh(mversion-03.00)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) 42 b Fi(96)2025 1995 y Fh(mvms-return-codes)11 b Fa(.)16 b(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)37 b Fi(123)2025 2089 y Fh (mvolatile-asm-stop)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(132)2025 2184 y Fh(mvolatile-cache)15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)40 b Fi(87)2025 2278 y Fh(mvolatile-nocache)12 b Fa(.)k(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(87)2025 2372 y Fh(mvxworks)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)50 b Fi(104)2025 2466 y Fh(mwarn-passed-structs)7 b Fa(.)17 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(97)2025 2561 y Fh(mwide-bitfields)14 b Fa(.)h(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(131)2025 2655 y Fh(mwords-little-endian)7 b Fa(.)17 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)33 b Fi(90)2025 2749 y Fh(mxl-call)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 50 b Fi(101)2025 2843 y Fh(mxopen)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(91)2025 2937 y Fh(myellowknife)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)44 b Fi(104)2025 3032 y Fh(mzda)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)38 b Fi(128)2025 3126 y Fh(mzero-extend)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(136)2025 3396 y Fs(N)2025 3526 y Fh(no-crt0)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)33 b Fi(110)2025 3620 y Fh(no-integrated-cpp)12 b Fa(.)k(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(22)2025 3715 y Fh(no-red-zone)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)46 b Fi(115)2025 3809 y Fh(noasmopt)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)50 b Fi(277)2025 3903 y Fh(nocpp)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(110)2025 3997 y Fh(nodefaultlibs)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)43 b Fi(69)2025 4092 y Fh(nostartfiles)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(69)2025 4186 y Fh(nostdinc)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(65)2025 4280 y Fh(nostdinc++)15 b Fa(.)f(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)40 b Fi(28,)27 b(65)2025 4374 y Fh(nostdlib)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)32 b Fi(69)2025 4644 y Fs(O)2025 4775 y Fh(o)9 b Fa(.)k(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)35 b Fi(18,)27 b(62)2025 4869 y Fh(O)17 b Fa(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(50)2025 4963 y Fh(O0)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(51)2025 5057 y Fh(O1)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(50)2025 5152 y Fh(O2)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(51)2025 5246 y Fh(O3)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(51)2025 5340 y Fh(Os)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(51)p eop %%Page: 345 355 345 354 bop 150 -116 a Fy(Option)29 b(Index)2933 b(345)150 299 y Fs(P)150 418 y Fh(p)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(45)150 507 y Fh(P)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(67)150 596 y Fh(param)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fi(60)150 685 y Fh(pass-exit-codes)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)40 b Fi(18)150 774 y Fh(pedantic)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48 b Fi(5,)26 b(31,)h(62,)g(155,)g(213,)g(290)150 863 y Fh(pedantic-errors)d Fa(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)46 b Fi(5,)26 b(32,)h(62,)g(273,)g(290)150 952 y Fh(pg)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(45)150 1041 y Fh(pipe)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(19)150 1129 y Fh(print-file-name)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)40 b Fi(49)150 1218 y Fh(print-libgcc-file-name)28 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)48 b Fi(50)150 1307 y Fh(print-multi-directory)29 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)50 b Fi(50)150 1396 y Fh(print-multi-lib)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)40 b Fi(50)150 1485 y Fh(print-prog-name)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)40 b Fi(50)150 1574 y Fh(print-search-dirs)12 b Fa(.)k(.)c(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)37 b Fi(50)150 1663 y Fh(pthread)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)33 b Fi(105)150 1923 y Fs(Q)150 2043 y Fh(Q)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(45)150 2132 y Fh(Qn)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(125)150 2220 y Fh(Qy)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(125)150 2481 y Fs(R)150 2600 y Fh(remap)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fi(68)150 2861 y Fs(S)150 2980 y Fh(s)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)42 b Fi(70)150 3069 y Fh(S)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(18,)26 b(68)150 3158 y Fh(save-temps)e Fa(.)13 b(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(49)150 3247 y Fh(shared)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(70)150 3336 y Fh(shared-libgcc)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)43 b Fi(70)150 3425 y Fh(sim)13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(136)150 3514 y Fh(sim2)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(136)150 3602 y Fh(specs)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fi(72)150 3691 y Fh(static)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(70)150 3780 y Fh(static-libgcc)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)43 b Fi(70)150 3869 y Fh(std)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)35 b Fi(5,)26 b(20,)h(217,)g(289)150 3958 y Fh(std=)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(64)150 4047 y Fh(symbolic)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fi(70)150 4307 y Fs(T)150 4427 y Fh(target-help)13 b Fa(.)i(.)d(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)39 b Fi(19,)26 b(68)150 4516 y Fh(time)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)38 b Fi(49)150 4605 y Fh(traditional)8 b Fa(.)15 b(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)34 b Fi(5,)26 b(22,)h(67,)g(278,)g(289)150 4693 y Fh(traditional-cpp)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)40 b Fi(23)150 4782 y Fh(trigraphs)16 b Fa(.)e(.)f(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)42 b Fi(22,)26 b(67)150 5043 y Fs(U)150 5162 y Fh(u)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(71)150 5251 y Fh(U)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(61)150 5340 y Fh(undef)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fi(61)2025 299 y Fs(V)2025 416 y Fh(v)9 b Fa(.)k(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(18,)27 b(68)2025 504 y Fh(V)17 b Fa(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)43 b Fi(79)2025 592 y Fh(version)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fi(68)2025 829 y Fs(W)2025 946 y Fh(w)9 b Fa(.)k(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(32,)27 b(62)2025 1034 y Fh(W)8 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(38,)27 b(279)2025 1122 y Fh(Wa)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(68)2025 1210 y Fh(Waggregate-return)12 b Fa(.)k(.)c(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)38 b Fi(41)2025 1297 y Fh(Wall)15 b Fa(.)e(.)f(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(37,)27 b(62,)g(282)2025 1385 y Fh(Wbad-function-cast)10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 36 b Fi(40)2025 1473 y Fh(Wcast-align)23 b Fa(.)12 b(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)46 b Fi(41)2025 1561 y Fh(Wcast-qual)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)48 b Fi(40)2025 1649 y Fh(Wchar-subscripts)13 b Fa(.)j(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(32)2025 1737 y Fh(Wcomment)17 b Fa(.)d(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)43 b Fi(32,)27 b(62)2025 1825 y Fh(Wcomments)e Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 49 b Fi(62)2025 1913 y Fh(Wconversion)12 b Fa(.)j(.)d(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)38 b Fi(41,)27 b(286)2025 2000 y Fh(Wctor-dtor-privacy) 10 b Fa(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(28)2025 2088 y Fh(Wdisabled-optimization)27 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(43)2025 2176 y Fh(Wdiv-by-zero)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(37)2025 2264 y Fh(Weffc++)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)34 b Fi(28)2025 2352 y Fh(Werror)22 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(43,)27 b(62)2025 2440 y Fh(Werror-implicit-function-decla)q(ratio) q(n)f Fa(.)13 b(.)f(.)g(.)h(.)46 b Fi(34)2025 2528 y Fh(Wfloat-equal)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)45 b Fi(39)2025 2616 y Fh(Wformat)11 b Fa(.)i(.)g(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(32,)27 b(42,)g(173)2025 2704 y Fh(Wformat-nonliteral)d Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(33,)27 b(174)2025 2791 y Fh(Wformat-security)13 b Fa(.)j(.)c(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)39 b Fi(33)2025 2879 y Fh(Wformat=2)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 49 b Fi(33)2025 2967 y Fh(Wimplicit)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(34)2025 3055 y Fh(Wimplicit-function-declaration)12 b Fa(.)18 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(34)2025 3143 y Fh(Wimplicit-int)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)43 b Fi(33)2025 3231 y Fh(Wimport)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)34 b Fi(62)2025 3319 y Fh(Winline)18 b Fa(.)c(.)e(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fi(43,)27 b(192)2025 3407 y Fh(Wl)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(71)2025 3494 y Fh(Wlarger-than)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)45 b Fi(40)2025 3582 y Fh(Wlong-long)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(43)2025 3670 y Fh(Wmain)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(34)2025 3758 y Fh(Wmissing-braces)15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)40 b Fi(34)2025 3846 y Fh(Wmissing-declarations)29 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)50 b Fi(41)2025 3934 y Fh(Wmissing-format-attribute) 18 b Fa(.)g(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)44 b Fi(42)2025 4022 y Fh(Wmissing-noreturn)12 b Fa(.)k(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(41)2025 4110 y Fh(Wmissing-prototypes)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(41)2025 4198 y Fh(Wmultichar)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(38)2025 4285 y Fh(Wnested-externs)15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(42)2025 4373 y Fh(Wno-deprecated)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)42 b Fi(29)2025 4461 y Fh (Wno-deprecated-declarations)16 b Fa(.)i(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(42)2025 4549 y Fh(Wno-div-by-zero)15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(37)2025 4637 y Fh(Wno-format-extra-args)29 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)50 b Fi(33)2025 4725 y Fh(Wno-format-y2k)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)42 b Fi(33)2025 4813 y Fh(Wno-import)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(32)2025 4901 y Fh(Wno-long-long)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)43 b Fi(43)2025 4988 y Fh(Wno-multichar)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(38)2025 5076 y Fh(Wno-non-template-friend)26 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)47 b Fi(29)2025 5164 y Fh(Wno-pmf-conversions)23 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)44 b Fi(29,)27 b(257)2025 5252 y Fh(Wno-protocol)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(30)2025 5340 y Fh(Wnon-virtual-dtor)12 b Fa(.)k(.)c(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)38 b Fi(28)p eop %%Page: 346 356 346 355 bop 150 -116 a Fy(346)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fh(Wold-style-cast)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)40 b Fi(29)150 387 y Fh(Woverloaded-virtual)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(29)150 476 y Fh(Wp)15 b Fa(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(61)150 564 y Fh(Wpacked)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(42)150 653 y Fh(Wpadded)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(42)150 741 y Fh(Wparentheses)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)45 b Fi(34)150 830 y Fh(Wpointer-arith)8 b Fa(.)15 b(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(40,)27 b(168)150 918 y Fh(Wredundant-decls)13 b Fa(.)j(.)d(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(42)150 1007 y Fh(Wreorder)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)44 b Fi(28,)26 b(37)150 1095 y Fh(Wreturn-type)c Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)45 b Fi(35)150 1184 y Fh(Wselector)25 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(30)150 1272 y Fh(Wsequence-point)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)40 b Fi(35)150 1361 y Fh(Wshadow)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)34 b Fi(40)150 1449 y Fh(Wsign-compare)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fi(41)150 1537 y Fh(Wsign-promo)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(29)150 1626 y Fh(Wstrict-prototypes)10 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(41)150 1714 y Fh(Wswitch)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(35)150 1803 y Fh(Wsynth)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(30)150 1891 y Fh(Wsystem-headers)7 b Fa(.)16 b(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)34 b Fi(38,)26 b(62)150 1980 y Fh(Wtraditional)12 b Fa(.)j(.)d(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)38 b Fi(39,)26 b(62)150 2068 y Fh(Wtrigraphs)15 b Fa(.)f(.)f(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fi(36,)26 b(62)2025 299 y Fh(Wundef)c Fa(.)12 b(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(40,)27 b(62)2025 386 y Fh(Wuninitialized)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)42 b Fi(36)2025 474 y Fh(Wunknown-pragmas)13 b Fa(.)j(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(37)2025 561 y Fh(Wunreachable-code)12 b Fa(.)k(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(42)2025 649 y Fh(Wunused)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fi(36)2025 736 y Fh(Wunused-function)13 b Fa(.)j(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 39 b Fi(36)2025 824 y Fh(Wunused-label)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(36)2025 911 y Fh(Wunused-parameter)12 b Fa(.)k(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(36)2025 998 y Fh(Wunused-value)18 b Fa(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)43 b Fi(36)2025 1086 y Fh(Wunused-variable)13 b Fa(.)j(.)c(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)39 b Fi(36)2025 1173 y Fh(Wwrite-strings)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)42 b Fi(41)2025 1426 y Fs(X)2025 1543 y Fh(x)9 b Fa(.)k(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(17,)27 b(64)2025 1630 y Fh(Xlinker)8 b Fa(.)14 b(.)e(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fi(71)2025 1864 y Fs(Y)2025 1981 y Fh(Ym)14 b Fa(.)f(.)f(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)41 b Fi(125)2025 2068 y Fh(YP)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)41 b Fi(125)p eop %%Page: 347 357 347 356 bop 150 -116 a Fy(Index)3241 b(347)150 299 y Fv(Index)150 610 y Fs(!)150 728 y Fi(`)p Fh(!)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(200)150 967 y Fs(#)150 1085 y Fi(`)p Fh(#)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(201)150 1173 y(#pragma)23 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fi(247)150 1261 y Fh(#pragma)27 b(implementation)10 b Fa(.)16 b(.)c(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)36 b Fi(253)150 1349 y Fh(#pragma)27 b(implementation)p Fi(,)i(implied)8 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) 34 b Fi(253)150 1437 y Fh(#pragma)27 b(interface)18 b Fa(.)c(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(252)150 1526 y Fh(#pragma)p Fi(,)28 b(reason)e(for)h(not)e(using)12 b Fa(.)h(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(179)150 1790 y Fs($)150 1908 y Fi($)16 b Fa(.)d(.)f(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)42 b Fi(183)150 2160 y Fs(\045)150 2278 y Fi(`)p Fh(\045)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)49 b Fi(201)150 2367 y(\045include)12 b Fa(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)38 b Fi(73)150 2455 y(\045include)p 458 2455 24 4 v 28 w(no)r(err)19 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)44 b Fi(73)150 2543 y(\045rename)10 b Fa(.)i(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(73)150 2781 y Fs(&)150 2899 y Fi(`)p Fh(&)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(201)150 3138 y Fs(')150 3256 y Fi(')7 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)33 b Fi(280)150 3504 y Fs(*)150 3622 y Fi(`)p Fh(*)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(201)150 3860 y Ft(+)150 3978 y Fi(`)p Fh(+)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(201)150 4216 y Fs(-)150 4334 y Fi(`)p Fh(-lgcc)p Fi(',)28 b(use)d(with)h(`)p Fh(-nodefaultlibs)p Fi(')7 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)32 b Fi(69)150 4423 y(`)p Fh(-lgcc)p Fi(',)c(use)d(with)h(`) p Fh(-nostdlib)p Fi(')14 b Fa(.)i(.)c(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(69)150 4511 y(`)p Fh(-nodefaultlibs)p Fi(')29 b(and)d(unresolv)n(ed)f(references)8 b Fa(.)13 b(.)g(.)f(.)33 b Fi(69)150 4599 y(`)p Fh(-nostdlib)p Fi(')28 b(and)e(unresolv)n(ed)f(references)15 b Fa(.)e(.)g(.)f(.)g(.)h (.)f(.)g(.)h(.)40 b Fi(69)150 4837 y Fs(.)150 4955 y Fi(.sdata/.sdata2)28 b(references)f(\(P)n(o)n(w)n(erPC\))22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)46 b Fi(105)150 5222 y Fs(/)150 5340 y Fi(//)15 b Fa(.)e(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(183)2025 610 y Ft(<)2025 728 y Fi(`)p Fh(<)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(199)2025 816 y Fh()2025 1528 y Fi(`)p Fh(>)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(199)2025 1617 y Fh(>?)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)41 b Fi(249)2025 1854 y Fs(?)2025 1972 y Fi(`)p Fh(?)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(200)2025 2061 y Fh(?:)26 b Fi(extensions)21 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(161,)27 b(162)2025 2149 y(?:)34 b(side)27 b(e\013ect)c Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)50 b Fi(162)p 2033 2387 41 6 v 2025 2505 a(`)p Fh(_)p Fi(')26 b(in)g(v)l(ariables)g(in)g(macros)15 b Fa(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)41 b Fi(160)2025 2593 y Fh(__builtin_apply)14 b Fa(.)h(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(160)2025 2681 y Fh(__builtin_apply_args)6 b Fa(.)17 b(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)33 b Fi(160)2025 2769 y Fh(__builtin_choose_expr)28 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)49 b Fi(218)2025 2857 y Fh(__builtin_constant_p)6 b Fa(.)17 b(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)33 b Fi(219)2025 2946 y Fh(__builtin_expect) 12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(219)2025 3034 y Fh(__builtin_frame_address)25 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)46 b Fi(215)2025 3122 y Fh(__builtin_isgreater)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(217)2025 3210 y Fh(__builtin_isgreaterequal)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)45 b Fi(217)2025 3298 y Fh(__builtin_isless)12 b Fa(.)k(.)c(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)38 b Fi(217)2025 3387 y Fh(__builtin_islessequal)28 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)49 b Fi(217)2025 3475 y Fh(__builtin_islessgreater)25 b Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)46 b Fi(217)2025 3563 y Fh(__builtin_isunordered)28 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)49 b Fi(217)2025 3651 y Fh(__builtin_prefetch)9 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(220)2025 3739 y Fh(__builtin_return)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(160)2025 3827 y Fh(__builtin_return_address)24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)45 b Fi(215)2025 3916 y Fh(__builtin_types_compatible_p)13 b Fa(.)18 b(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(217)2025 4004 y Fh(__complex__)28 b Fi(k)n(eyw)n(ord)13 b Fa(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(163)2025 4092 y Fh(__extension__)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(213)2025 4180 y Fh(__func__)27 b Fi(iden)n(ti\014er)8 b Fa(.)k(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(214)2025 4268 y Fh(__FUNCTION__)28 b Fi(iden)n(ti\014er)20 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)46 b Fi(214)2025 4356 y Fh(__imag__)27 b Fi(k)n(eyw)n(ord)18 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fi(163)2025 4445 y Fh(__PRETTY_FUNCTION__)30 b Fi(iden)n(ti\014er)10 b Fa(.)i(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fi(214)2025 4533 y Fh(__real__)27 b Fi(k)n(eyw)n(ord)18 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fi(163)2025 4621 y Fh(__STDC_HOSTED__)16 b Fa(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)42 b Fi(5)2025 4709 y Fh(_Complex)27 b Fi(k)n(eyw)n(ord)18 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fi(163)2025 4797 y Fh(_exit)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)2025 4885 y Fh(_Exit)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)2025 5134 y Ft(\\)2025 5252 y Fi(`)p Fh(\\a)p Fi(')12 b Fa(.)h(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(23)2025 5340 y(`)p Fh(\\x)p Fi(')12 b Fa(.)h(.)g(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(23)p eop %%Page: 348 358 348 357 bop 150 -116 a Fy(348)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fs(0)150 416 y Fi(`)p Fh(0)p Fi(')c(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)49 b Fi(199)150 651 y Fs(A)150 767 y Fh(abort)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)36 b Fi(217)150 855 y Fh(abs)13 b Fa(.)g(.)f(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(217)150 943 y(accessing)27 b(v)n(olatiles)6 b Fa(.)15 b(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(249)150 1030 y(Ada)22 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fi(3)150 1118 y(address)26 b(constrain)n(ts)6 b Fa(.)13 b(.)g(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)32 b Fi(200)150 1205 y(address)26 b(of)h(a)f(lab)r(el)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(157)150 1293 y Fh(address_operand)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) 40 b Fi(200)150 1381 y Fh(alias)27 b Fi(attribute)11 b Fa(.)h(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)37 b Fi(176)150 1468 y(aliasing)28 b(of)e(parameters)12 b Fa(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)38 b Fi(145)150 1556 y Fh(aligned)27 b Fi(attribute)18 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(184,)27 b(188)150 1643 y(alignmen)n(t)15 b Fa(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(183)150 1731 y(Allian)n(t)11 b Fa(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)37 b Fi(277)150 1818 y Fh(alloca)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)34 b Fi(217)150 1906 y Fh(alloca)27 b Fi(vs)e(v)l (ariable-length)h(arra)n(ys)20 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)45 b Fi(166)150 1994 y(alternate)26 b(k)n(eyw)n(ords)10 b Fa(.)i(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(213)150 2081 y Fh(always_inline)29 b Fi(function)c(attribute)13 b Fa(.)f(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(173)150 2169 y(AMD)25 b(x86-64)i(Options)19 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)45 b Fi(111)150 2256 y(AMD1)16 b Fa(.)c(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fi(5)150 2344 y(AMD29K)26 b(options)13 b Fa(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)38 b Fi(87)150 2432 y(ANSI)24 b(C)13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)39 b Fi(5)150 2519 y(ANSI)24 b(C)i(standard)16 b Fa(.)d(.)f(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(5)150 2607 y(ANSI)24 b(C89)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)37 b Fi(5)150 2694 y(ANSI)24 b(supp)r(ort)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)45 b Fi(19)150 2782 y(ANSI)24 b(X3.159-1989)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(5)150 2869 y(ap)r(ostrophes)17 b Fa(.)c(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)43 b Fi(280)150 2957 y(AR)n(C)25 b(Options)6 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32 b Fi(128)150 3045 y(argumen)n(ts)25 b(in)h(frame)f(\(88k\))8 b Fa(.)k(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)33 b Fi(96)150 3132 y(ARM)25 b([Annotated)g(C)p Fh(++)i Fi(Reference)f(Man)n(ual])10 b Fa(.)j(.)g(.)f(.)g(.)36 b Fi(259)150 3220 y(ARM)25 b(options)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(89)150 3307 y(arra)n(ys)26 b(of)h(length)e(zero)17 b Fa(.)d(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(164)150 3395 y(arra)n(ys)26 b(of)h(v)l(ariable)f(length)9 b Fa(.)j(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)35 b Fi(165)150 3483 y(arra)n(ys,)26 b(non-lv)l(alue)10 b Fa(.)i(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(168)150 3570 y Fh(asm)26 b Fi(constrain)n(ts)17 b Fa(.)c(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)43 b Fi(198)150 3658 y Fh(asm)26 b Fi(expressions)13 b Fa(.)g(.)f(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(193)150 3745 y(assem)n(bler)26 b(instructions)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(193)150 3833 y(assem)n(bler)26 b(names)f(for)h(iden)n(ti\014ers)12 b Fa(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(210)150 3921 y(assem)n(bler)26 b(syn)n(tax,)f(88k)15 b Fa(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(96)150 4008 y(assem)n(bly)25 b(co)r(de,)i(in)n(v)l(alid)8 b Fa(.)k(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(293)150 4096 y(attribute)25 b(of)i(t)n(yp)r(es)13 b Fa(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(188)150 4183 y(attribute)25 b(of)i(v)l(ariables)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 36 b Fi(184)150 4271 y(attribute)25 b(syn)n(tax)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(179)150 4358 y(autoincremen)n(t/decremen)n(t)24 b(addressing)15 b Fa(.)e(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(198)150 4446 y(automatic)26 b Fh(inline)h Fi(for)f(C)p Fh(++)h Fi(mem)n(b)r(er)c(fns)7 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(192)150 4534 y(A)-9 b(VR)25 b(Options)8 b Fa(.)k(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(130)150 4785 y Fs(B)150 4902 y Fi(bac)n(ktrace)26 b(for)g(bug)g(rep)r(orts)10 b Fa(.)i(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)36 b Fi(296)150 4990 y(Bac)n(kw)n(ards)27 b(Compatibilit)n(y)10 b Fa(.)i(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)36 b Fi(259)150 5077 y Fh(bcmp)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(217)150 5165 y(bit)25 b(shift)i(o)n(v)n(er\015o)n(w)f(\(88k\))15 b Fa(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)41 b Fi(97)150 5252 y(b)r(ound)25 b(p)r(oin)n(ter)h(to)f(mem)n(b)r(er)f(function)16 b Fa(.)c(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)42 b Fi(256)150 5340 y(bug)25 b(criteria)f Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)49 b Fi(293)2025 299 y(bug)25 b(rep)r(ort)h(mailing)g(lists)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)49 b Fi(294)2025 387 y(bugs)13 b Fa(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(293)2025 476 y(bugs,)26 b(kno)n(wn)8 b Fa(.)j(.)i(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(273)2025 564 y(built-in)25 b(functions)11 b Fa(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)37 b Fi(21,)27 b(217)2025 653 y(b)n(yte)d(writes)j(\(29k\))22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(87)2025 741 y Fh(bzero)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)2025 980 y Fs(C)2025 1099 y Fi(C)26 b(compilation)g(options)11 b Fa(.)i(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 b Fi(7)2025 1187 y(C)26 b(in)n(termediate)f(output,)g(nonexisten)n(t)8 b Fa(.)k(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)35 b Fi(3)2025 1275 y(C)26 b(language)h(extensions)8 b Fa(.)k(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(155)2025 1364 y(C)26 b(language,)h(traditional)11 b Fa(.)j(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)37 b Fi(22)2025 1452 y(C)26 b(standard)13 b Fa(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)39 b Fi(5)2025 1541 y(C)26 b(standards)16 b Fa(.)c(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(5)2025 1629 y Fh(c++)14 b Fa(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(19)2025 1718 y(C)p Fh(++)7 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)33 b Fi(3)2025 1806 y(C)p Fh(++)26 b Fi(commen)n(ts)d Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)50 b Fi(183)2025 1894 y(C)p Fh(++)26 b Fi(compilation)g(options)8 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)35 b Fi(7)2025 1983 y(C)p Fh(++)26 b Fi(in)n(terface)h(and)e(implemen)n(tation)g(headers)15 b Fa(.)d(.)h(.)f(.)41 b Fi(252)2025 2071 y(C)p Fh(++)26 b Fi(language)h(extensions)d Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(249)2025 2160 y(C)p Fh(++)26 b Fi(mem)n(b)r(er)e(fns,)i(automatically)g Fh(inline)13 b Fa(.)h(.)e(.)g(.)h(.)f(.)g(.)39 b Fi(192)2025 2248 y(C)p Fh(++)26 b Fi(misunderstandings)7 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)33 b Fi(284)2025 2336 y(C)p Fh(++)26 b Fi(options,)h(command)d(line)13 b Fa(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(24)2025 2425 y(C)p Fh(++)26 b Fi(pragmas,)g(e\013ect)g(on)g(inlining)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(253)2025 2513 y(C)p Fh(++)26 b Fi(source)h(\014le)e(su\016xes)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)45 b Fi(19)2025 2602 y(C)p Fh(++)26 b Fi(static)h(data,)f(declaring)h(and)e(de\014ning)17 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(284)2025 2690 y Fh(C_INCLUDE_PATH)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(147)2025 2779 y(C89)8 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(5)2025 2867 y(C90)8 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(5)2025 2955 y(C94)8 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(5)2025 3044 y(C95)8 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(5)2025 3132 y(C99)8 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(5)2025 3221 y(C9X)16 b Fa(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(5)2025 3309 y(calling)27 b(functions)f(through)f(the)h(function)f (v)n(ector)h(on)2178 3396 y(the)g(H8/300)h(pro)r(cessors)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)46 b Fi(177)2025 3485 y(case)26 b(lab)r(els)h(in)f(initializers) 10 b Fa(.)k(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)36 b Fi(169)2025 3573 y(case)26 b(ranges)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(171)2025 3661 y(case)26 b(sensitivit)n(y)g(and)f(VMS)11 b Fa(.)h(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)37 b Fi(306)2025 3750 y(cast)26 b(to)g(a)g(union)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(171)2025 3838 y(casts)26 b(as)h(lv)l(alues)18 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(161)2025 3927 y Fh(cimag)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)2025 4015 y Fh(cimagf)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(217)2025 4103 y Fh(cimagl)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(217)2025 4192 y(co)r(de)26 b(generation)h(con)n(v)n(en)n(tions)18 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)45 b Fi(140)2025 4280 y(co)r(de,)26 b(mixed)e(with)i(declarations)6 b Fa(.)14 b(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32 b Fi(171)2025 4369 y(command)24 b(options)13 b Fa(.)g(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)40 b Fi(7)2025 4457 y(commen)n(ts,)24 b(C)p Fh(++)j Fi(st)n(yle)14 b Fa(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)41 b Fi(183)2025 4546 y(comparison)26 b(of)g(signed)g(and)g(unsigned)f(v)l (alues,)h(w)n(arning)2193 4633 y Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)40 b Fi(41)2025 4721 y(compiler)25 b(bugs,)h(rep)r(orting)f Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)50 b Fi(294)2025 4810 y(compiler)25 b(compared)g(to)h(C) p Fh(++)h Fi(prepro)r(cessor)7 b Fa(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)33 b Fi(3)2025 4898 y(compiler)25 b(options,)i(C)p Fh(++)14 b Fa(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(24)2025 4986 y(compiler)25 b(options,)i(Ob)t(jectiv)n(e-C)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(30)2025 5075 y(compiler)25 b(v)n(ersion,)i(sp)r(ecifying)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)36 b Fi(79)2025 5163 y Fh(COMPILER_PATH)17 b Fa(.)e(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(147)2025 5252 y(complex)25 b(conjugation)17 b Fa(.)c(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)43 b Fi(163)2025 5340 y(complex)25 b(n)n(um)n(b)r(ers)15 b Fa(.)c(.)h(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(163)p eop %%Page: 349 359 349 358 bop 150 -116 a Fy(Index)3241 b(349)150 299 y Fi(comp)r(ound)24 b(expressions)j(as)f(lv)l(alues)16 b Fa(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b Fi(161)150 387 y(comp)r(ound)24 b(literals)8 b Fa(.)14 b(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(168)150 475 y(computed)24 b(gotos)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)33 b Fi(157)150 563 y(conditional)27 b(expressions)f(as)g(lv)l (alues)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)48 b Fi(161)150 651 y(conditional)27 b(expressions,)g(extensions)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)43 b Fi(162)150 739 y(con\015icting)26 b(t)n(yp)r(es)15 b Fa(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(282)150 827 y Fh(conj)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(217)150 916 y Fh(conjf)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)150 1004 y Fh(conjl)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)36 b Fi(217)150 1092 y Fh(const)27 b Fi(applied)f(to)f (function)f Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)49 b Fi(172)150 1180 y Fh(const)27 b Fi(function)f(attribute)6 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32 b Fi(173)150 1268 y(constan)n(ts)26 b(in)g(constrain)n(ts)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)45 b Fi(199)150 1356 y(constrain)n(t)26 b(mo)r(di\014er)f(c) n(haracters)7 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)32 b Fi(201)150 1444 y(constrain)n(t,)26 b(matc)n(hing)16 b Fa(.)d(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(200)150 1532 y(constrain)n(ts,)27 b Fh(asm)6 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)32 b Fi(198)150 1620 y(constrain)n(ts,)27 b(mac)n(hine)e(sp)r(eci\014c)12 b Fa(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(201)150 1708 y(constructing)26 b(calls)15 b Fa(.)f(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 41 b Fi(159)150 1796 y(constructor)26 b(expressions)8 b Fa(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)34 b Fi(168)150 1885 y Fh(constructor)28 b Fi(function)e(attribute)16 b Fa(.)c(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)41 b Fi(175)150 1973 y(con)n(tributors)13 b Fa(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(329)150 2061 y(Con)n(v)n(ex)25 b(options)14 b Fa(.)f(.)g(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(86)150 2149 y(core)26 b(dump)20 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)48 b Fi(293)150 2237 y Fh(cos)13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(217)150 2325 y Fh(cosf)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(217)150 2413 y Fh(cosl)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(217)150 2501 y Fh(CPATH)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(147)150 2589 y Fh(CPLUS_INCLUDE_PATH)9 b Fa(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)35 b Fi(147)150 2677 y Fh(creal)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)150 2766 y Fh(crealf)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(217)150 2854 y Fh(creall)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)34 b Fi(217)150 2942 y(CRIS)25 b(Options)17 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(134)150 3030 y(cross)27 b(compiling)16 b Fa(.)c(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)42 b Fi(79)150 3284 y Fs(D)150 3402 y Fi(D30V)26 b(Options)12 b Fa(.)f(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)37 b Fi(133)150 3490 y(DBX)22 b Fa(.)13 b(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fi(274)150 3578 y(deallo)r(cating)28 b(v)l(ariable)e(length)g(arra)n (ys)20 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(166)150 3666 y Fh(debug_rtx)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(296)150 3754 y(debugging)26 b(information)g(options)13 b Fa(.)h(.)e(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(43)150 3842 y(debugging,)26 b(88k)g(OCS)19 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) 44 b Fi(95)150 3930 y(declaration)27 b(scop)r(e)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fi(279)150 4019 y(declarations)27 b(inside)f(expressions)16 b Fa(.)d(.)g(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b Fi(155)150 4107 y(declarations,)28 b(mixed)c(with)i(co)r(de)6 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)32 b Fi(171)150 4195 y(declaring)27 b(attributes)e(of)i(functions)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(172)150 4283 y(declaring)27 b(static)f(data)g(in)g(C)p Fh(++)c Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)47 b Fi(284)150 4371 y(de\014ning)25 b(static)i(data)f(in)f (C)p Fh(++)e Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)48 b Fi(284)150 4459 y(dep)r(endencies)25 b(for)i(mak)n(e)d(as)j(output)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.) 47 b Fi(147,)27 b(148)150 4547 y(dep)r(endencies,)f(mak)n(e)15 b Fa(.)c(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fi(62)150 4635 y Fh(DEPENDENCIES_OUTPUT)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(147)150 4723 y Fh(deprecated)28 b Fi(attribute.)11 b Fa(.)i(.)f(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(175)150 4811 y(designated)26 b(initializers)17 b Fa(.)e(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)43 b Fi(169)150 4899 y(designator)27 b(lists)20 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)45 b Fi(170)150 4988 y(designators)11 b Fa(.)i(.)g(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)37 b Fi(170)150 5076 y Fh(destructor)28 b Fi(function)e(attribute)17 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fi(175)150 5164 y(diagnostic)27 b(messages)14 b Fa(.)f(.)f(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)39 b Fi(31)150 5252 y(dialect)26 b(options)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(19)150 5340 y(digits)26 b(in)g(constrain)n(t)9 b Fa(.)k(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(199)2025 299 y(directory)26 b(options)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)49 b Fi(71)2025 387 y(divide)25 b(instruction,)h(88k)c Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)48 b Fi(97)2025 474 y(dollar)27 b(signs)f(in)g(iden)n(ti\014er)f(names)12 b Fa(.)g(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(183)2025 562 y(double-w)n(ord)25 b(arithmetic)7 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(163)2025 650 y(do)n(wn)n(w)n(ard)26 b(funargs)21 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(158)2025 737 y(D)n(W)25 b(bit)g(\(29k\))7 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)33 b Fi(87)2025 994 y Fs(E)2025 1111 y Fi(`)p Fh(E)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(199)2025 1199 y(earlyclobb)r(er)26 b(op)r(erand)9 b Fa(.)k(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 35 b Fi(201)2025 1286 y(eigh)n(t)26 b(bit)f(data)h(on)g(the)f(H8/300)i (and)e(H8/300H)16 b Fa(.)e(.)f(.)42 b Fi(178)2025 1374 y(en)n(vironmen)n(t)24 b(v)l(ariables)13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(145)2025 1462 y(error)26 b(messages)9 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(290)2025 1550 y(escap)r(e)26 b(sequences,)g(traditional)8 b Fa(.)14 b(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(23)2025 1637 y(escap)r(ed)26 b(newlines)7 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)33 b Fi(167)2025 1725 y(exclamation)26 b(p)r(oin)n(t)6 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)32 b Fi(200)2025 1813 y Fh(exit)11 b Fa(.)i(.)g(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(217)2025 1900 y(exit)25 b(status)h(and)g(VMS)13 b Fa(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(306)2025 1988 y(explicit)26 b(register)h(v)l(ariables)16 b Fa(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(211)2025 2076 y(expressions)26 b(con)n(taining)g(statemen)n(ts)13 b Fa(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(155)2025 2164 y(expressions,)27 b(comp)r(ound,)d(as)i(lv)l(alues) 13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(161)2025 2251 y(expressions,)27 b(conditional,)g(as)f(lv)l(alues) 20 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(161)2025 2339 y(expressions,)27 b(constructor)16 b Fa(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)42 b Fi(168)2025 2427 y(extended)24 b Fh(asm)13 b Fa(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(193)2025 2514 y(extensible)26 b(constrain)n(ts)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(200)2025 2602 y(extensions,)26 b Fh(?:)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fi(161,)27 b(162)2025 2690 y(extensions,)f(C)g(language)15 b Fa(.)f(.)e(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(155)2025 2778 y(extensions,)26 b(C)p Fh(++)h Fi(language)12 b Fa(.)i(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)39 b Fi(249)2025 2865 y(external)26 b(declaration)g(scop)r (e)15 b Fa(.)f(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)42 b Fi(279)2025 3118 y Fs(F)2025 3235 y Fi(`)p Fh(F)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(199)2025 3322 y Fh(fabs)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(217)2025 3410 y Fh(fabsf)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)2025 3498 y Fh(fabsl)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)2025 3586 y(fatal)27 b(signal)14 b Fa(.)g(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)40 b Fi(293)2025 3673 y(FDL,)25 b(GNU)g(F)-6 b(ree)26 b(Do)r(cumen)n(tation)f(License)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)36 b Fi(321)2025 3761 y Fh(ffs)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(217)2025 3849 y(\014le)26 b(name)e(su\016x)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(16)2025 3936 y(\014le)26 b(names)15 b Fa(.)c(.)i(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)41 b Fi(68)2025 4024 y(\015exible)25 b(arra)n(y)h(mem)n(b)r(ers)17 b Fa(.)11 b(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)43 b Fi(164)2025 4112 y Fh(float)26 b Fi(as)h(function)f(v)l(alue)f(t)n(yp)r(e)8 b Fa(.)k(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(280)2025 4200 y(\015oating)26 b(p)r(oin)n(t)g(precision)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)49 b Fi(51,)27 b(283)2025 4287 y Fh(format)g Fi(function)f(attribute)c Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)49 b Fi(173)2025 4375 y Fh(format_arg)28 b Fi(function)d(attribute)17 b Fa(.)c(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)43 b Fi(174)2025 4463 y(F)-6 b(ortran)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)46 b Fi(3)2025 4550 y(forw)n(arding)27 b(calls)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)33 b Fi(159)2025 4638 y Fh(fprintf)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(217)2025 4726 y Fh(fprintf_unlocked)12 b Fa(.)k(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(217)2025 4814 y Fh(fputs)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)2025 4901 y Fh(fputs_unlocked)15 b Fa(.)g(.)e(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)41 b Fi(217)2025 4989 y(freestanding)26 b(en)n(vironmen)n(t)12 b Fa(.)f(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(5)2025 5077 y(freestanding)26 b(implemen)n(tation)13 b Fa(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(5)2025 5165 y Fh(fscanf)p Fi(,)27 b(and)e(constan)n(t)h(strings)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)33 b Fi(278)2025 5252 y(function)26 b(addressabilit)n(y)g(on)g(the)f (M32R/D)7 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)33 b Fi(178)2025 5340 y(function)26 b(attributes)11 b Fa(.)h(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) 37 b Fi(172)p eop %%Page: 350 360 350 359 bop 150 -116 a Fy(350)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fi(function)c(p)r(oin)n(ters,)g (arithmetic)8 b Fa(.)k(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)34 b Fi(168)150 387 y(function)26 b(protot)n(yp)r(e)f (declarations)17 b Fa(.)d(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)43 b Fi(182)150 475 y(function)26 b(without)g(a)g (prologue/epilogue)i(co)r(de)13 b Fa(.)g(.)f(.)g(.)39 b Fi(178)150 563 y(function,)26 b(size)h(of)f(p)r(oin)n(ter)g(to)9 b Fa(.)k(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)35 b Fi(168)150 650 y(functions)26 b(called)h(via)f(p)r(oin)n (ter)f(on)h(the)f(RS/6000)i(and)304 738 y(P)n(o)n(w)n(erPC)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(176)150 826 y(functions)26 b(in)g(arbitrary)g(sections)c Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(172)150 913 y(functions)26 b(that)f(are)i(passed)f(argumen)n(ts)f (in)g(registers)i(on)304 1001 y(the)e(386)8 b Fa(.)14 b(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(172,)27 b(176)150 1089 y(functions)f(that)f(b)r(eha)n(v)n(e)h(lik)n(e)f(mallo)r (c)f Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(172)150 1176 y(functions)26 b(that)f(do)h(not)g(p)r(op)f(the)g (argumen)n(t)g(stac)n(k)h(on)304 1264 y(the)f(386)17 b Fa(.)c(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(172)150 1351 y(functions)26 b(that)f(do)h(p)r(op)g(the)f(argumen)n (t)g(stac)n(k)g(on)h(the)304 1439 y(386)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(176)150 1527 y(functions)26 b(that)f(ha)n(v)n(e)h(no)f(side)h (e\013ects)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(172)150 1614 y(functions)26 b(that)f(nev)n(er)g(return)15 b Fa(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)41 b Fi(172)150 1702 y(functions)26 b(that)f(p)r(op)h(the)f (argumen)n(t)g(stac)n(k)h(on)f(the)g(386)326 1790 y Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)49 b Fi(172,)27 b(176)150 1877 y(functions)f(whic)n(h)g(are)g(exp)r(orted) f(from)h(a)g(dll)g(on)304 1965 y(P)n(o)n(w)n(erPC)h(Windo)n(ws)f(NT)21 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)47 b Fi(177)150 2053 y(functions)26 b(whic)n(h)g(are)g(imp)r(orted)f (from)g(a)h(dll)g(on)304 2140 y(P)n(o)n(w)n(erPC)h(Windo)n(ws)f(NT)21 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)47 b Fi(177)150 2228 y(functions)26 b(whic)n(h)g(sp)r(ecify)g (exception)g(handling)f(on)304 2315 y(P)n(o)n(w)n(erPC)i(Windo)n(ws)f (NT)21 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)47 b Fi(177)150 2403 y(functions)26 b(with)g Fh(printf)p Fi(,)h Fh(scanf)p Fi(,)g Fh(strftime)h Fi(or)304 2490 y Fh(strfmon)f Fi(st)n(yle)e(argumen)n(ts)17 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(172)150 2743 y Fs(G)150 2860 y Fi(`)p Fh(g)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(199)150 2948 y(`)p Fh(G)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(199)150 3036 y Fh(g++)14 b Fa(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(19)150 3124 y(G)p Fh(++)23 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fi(3)150 3212 y(GCC)6 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(3)150 3300 y(GCC)27 b(command)d(options)g Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)50 b Fi(7)150 3388 y Fh(gcc-bugs@gcc.gnu.org)30 b(or)c(bug-gcc@gnu.org)11 b Fa(.)16 b(.)36 b Fi(294)150 3476 y Fh(GCC_EXEC_PREFIX)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) 40 b Fi(146)150 3564 y(gccbug)26 b(script)13 b Fa(.)g(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(297)150 3652 y(generalized)27 b(lv)l(alues)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 41 b Fi(161)150 3739 y(global)27 b(o\013set)f(table)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(143)150 3827 y(global)27 b(register)g(after)g Fh(longjmp)11 b Fa(.)j(.)e(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(212)150 3915 y(global)27 b(register)g(v)l(ariables)21 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)46 b Fi(211)150 4003 y Fh(GLOBALDEF)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(304)150 4091 y Fh(GLOBALREF)24 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fi(304)150 4179 y Fh(GLOBALVALUEDEF)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(304)150 4267 y Fh(GLOBALVALUEREF)15 b Fa(.)h(.)c(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)41 b Fi(304)150 4355 y(GNA)-6 b(T)16 b Fa(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)42 b Fi(3)150 4443 y(goto)27 b(with)f(computed)e (lab)r(el)g Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)49 b Fi(157)150 4531 y(gp-relativ)n(e)26 b(references)h(\(MIPS\))15 b Fa(.)d(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)41 b Fi(110)150 4618 y Fh(gprof)11 b Fa(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)37 b Fi(45)150 4706 y(grouping)26 b(options)10 b Fa(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(7)150 4960 y Fs(H)150 5077 y Fi(`)p Fh(H)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(199)150 5165 y(hardw)n(are)26 b(mo)r(dels)g(and)f (con\014gurations,)i(sp)r(ecifying)318 5252 y Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)40 b Fi(80)150 5340 y(header)26 b(\014les)g(and)f(VMS) 19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)46 b Fi(303)2025 299 y(hex)25 b(\015oats)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)46 b Fi(164)2025 389 y(hosted)25 b(en)n(vironmen)n(t)9 b Fa(.)i(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(5,)26 b(22)2025 478 y(hosted)f(implemen)n(tation)18 b Fa(.)11 b(.)h(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(5)2025 568 y(HPP)-6 b(A)25 b(Options)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(116)2025 830 y Fs(I)2025 951 y Fi(`)p Fh(i)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(199)2025 1041 y(`)p Fh(I)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(199)2025 1131 y(i386)27 b(Options)22 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)48 b Fi(111)2025 1220 y(IA-64)25 b(Options)14 b Fa(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(132)2025 1310 y(IBM)26 b(RS/6000)h(and)e(P)n(o)n(w)n(erPC)i (Options)13 b Fa(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(98)2025 1400 y(IBM)26 b(R)-6 b(T)25 b(options)13 b Fa(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(105)2025 1489 y(IBM)26 b(R)-6 b(T)25 b(PC)9 b Fa(.)k(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(277)2025 1579 y(iden)n(ti\014er)25 b(names,)h(dollar)g(signs)h(in)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)46 b Fi(183)2025 1669 y(iden)n(ti\014ers,)26 b(names)f(in)g(assem)n(bler)h(co)r(de)17 b Fa(.)c(.)f(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)43 b Fi(210)2025 1758 y(iden)n(tifying)26 b(source,)g(compiler)g(\(88k\))18 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)43 b Fi(95)2025 1848 y Fh(imaxabs)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)33 b Fi(217)2025 1938 y(implemen)n(tation-de\014ned)23 b(b)r(eha)n(vior,)j(C)g(language)2191 2025 y Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)39 b Fi(151)2025 2115 y(implied)25 b Fh(#pragma)i (implementation)22 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)45 b Fi(253)2025 2204 y(include)25 b(\014les)h(and)g(VMS)11 b Fa(.)h(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(303)2025 2294 y(incompatibilities)26 b(of)h(GCC)15 b Fa(.)f(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(278)2025 2384 y(incremen)n(t)24 b(op)r(erators)9 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)35 b Fi(293)2025 2473 y Fh(index)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)2025 2563 y(indirect)26 b(calls)h(on)e(ARM)9 b Fa(.)j(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)35 b Fi(177)2025 2653 y(init)p 2145 2653 24 4 v 28 w(priorit)n(y)25 b(attribute)c Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)47 b Fi(257)2025 2742 y(initializations)28 b(in)e(expressions)18 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fi(168)2025 2832 y(initializers)28 b(with)d(lab)r(eled)i(elemen)n(ts)13 b Fa(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)39 b Fi(169)2025 2922 y(initializers,)28 b(non-constan)n(t)21 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(168)2025 3011 y Fh(inline)27 b Fi(automatic)e(for)i(C)p Fh(++)f Fi(mem)n(b)r(er)e(fns)7 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(192)2025 3101 y(inline)26 b(functions)14 b Fa(.)f(.)f(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(191)2025 3191 y(inline)26 b(functions,)g(omission)h(of)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(192)2025 3280 y(inlining)26 b(and)f(C)p Fh(++)i Fi(pragmas)19 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)45 b Fi(253)2025 3370 y(installation)27 b(trouble)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)50 b Fi(273)2025 3460 y(in)n(tegrating)26 b(function)g(co)r(de)14 b Fa(.)f(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(191)2025 3549 y(In)n(tel)25 b(386)i(Options)15 b Fa(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)42 b Fi(111)2025 3639 y(in)n(terface)26 b(and)g(implemen)n(tation)e(headers,)i(C)p Fh(++)e Fa(.)12 b(.)g(.)49 b Fi(252)2025 3729 y(in)n(termediate)25 b(C)h(v)n(ersion,)g(nonexisten)n(t)21 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)48 b Fi(3)2025 3818 y(in)n(terrupt)25 b(handler)g(functions)16 b Fa(.)d(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)43 b Fi(177)2025 3908 y(in)n(terrupt)25 b(handler)g(functions)h(on)g(the)f(H8/300)i(and)f(SH) 2178 3995 y(pro)r(cessors)6 b Fa(.)15 b(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)32 b Fi(178)2025 4085 y(in)n(tro)r(duction)12 b Fa(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(1)2025 4174 y(in)n(v)l(alid)25 b(assem)n(bly)g(co)r(de)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(293)2025 4264 y(in)n(v)l(alid)25 b(input)c Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48 b Fi(293)2025 4354 y(in)n(v)n(oking)25 b Fh(g++)f Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)50 b Fi(19)2025 4443 y(ISO)24 b(9899)10 b Fa(.)k(.)f(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fi(5)2025 4533 y(ISO)24 b(C)g Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(5)2025 4623 y(ISO)24 b(C)j(standard)8 b Fa(.)k(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(5)2025 4712 y(ISO)24 b(C89)e Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)47 b Fi(5)2025 4802 y(ISO)24 b(C90)e Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)47 b Fi(5)2025 4892 y(ISO)24 b(C94)e Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)47 b Fi(5)2025 4981 y(ISO)24 b(C95)e Fa(.)13 b(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(5)2025 5071 y(ISO)24 b(C99)e Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(5)2025 5161 y(ISO)24 b(C9X)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(5)2025 5250 y(ISO)24 b(supp)r(ort)11 b Fa(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)37 b Fi(19)2025 5340 y(ISO/IEC)25 b(9899)14 b Fa(.)g(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(5)p eop %%Page: 351 361 351 360 bop 150 -116 a Fy(Index)3241 b(351)150 299 y Fs(J)150 415 y Fi(Ja)n(v)l(a)17 b Fa(.)c(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fi(3)150 502 y(ja)n(v)l(a)p 289 502 24 4 v 28 w(in)n(terface)27 b(attribute)12 b Fa(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(257)150 753 y Fs(K)150 869 y Fi(k)n(ernel)25 b(and)h(user)f(registers)j(\(29k\))17 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) 42 b Fi(88)150 956 y(k)n(eyw)n(ords,)26 b(alternate)17 b Fa(.)c(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(213)150 1044 y(kno)n(wn)25 b(causes)i(of)f(trouble)14 b Fa(.)f(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40 b Fi(273)150 1277 y Fs(L)150 1393 y Fi(lab)r(eled)26 b(elemen)n(ts)g(in)f(initializers)d Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)46 b Fi(169)150 1481 y(lab)r(els)27 b(as)f(v)l(alues)15 b Fa(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fi(157)150 1568 y Fh(labs)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(217)150 1655 y Fh(LANG)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(146,)27 b(147)150 1743 y(language)g(dialect)f(options)12 b Fa(.)i(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(19)150 1830 y(large)27 b(bit)e(shifts)i(\(88k\))19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fi(97)150 1917 y Fh(LC_ALL)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(146)150 2005 y Fh(LC_CTYPE)26 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 50 b Fi(146)150 2092 y Fh(LC_MESSAGES)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(146)150 2179 y(length-zero)26 b(arra)n(ys)7 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(164)150 2267 y(Libraries)15 b Fa(.)f(.)e(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(68)150 2354 y Fh(LIBRARY_PATH)18 b Fa(.)d(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)44 b Fi(147)150 2441 y(link)25 b(options)d Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(68)150 2529 y Fh(LL)26 b Fi(in)n(teger)g(su\016x)c Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(163)150 2616 y Fh(llabs)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)150 2703 y(load)26 b(address)g(instruction)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fi(200)150 2790 y(lo)r(cal)27 b(lab)r(els)13 b Fa(.)h(.)e(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(156)150 2878 y(lo)r(cal)27 b(v)l(ariables)g(in)e(macros)e Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)49 b Fi(160)150 2965 y(lo)r(cal)27 b(v)l(ariables,)g(sp)r (ecifying)g(registers)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)46 b Fi(212)150 3052 y(lo)r(cale)13 b Fa(.)h(.)f(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(146)150 3140 y(lo)r(cale)27 b(de\014nition)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)50 b Fi(147)150 3227 y Fh(long)27 b(long)f Fi(data)g(t)n(yp)r(es)21 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(163)150 3314 y Fh(longjmp)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)33 b Fi(212)150 3402 y Fh(longjmp)27 b Fi(and)f(automatic)f(v)l (ariables)11 b Fa(.)i(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)36 b Fi(22)150 3489 y Fh(longjmp)27 b Fi(incompatibilities)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)33 b Fi(279)150 3576 y Fh(longjmp)27 b Fi(w)n(arnings)10 b Fa(.)k(.)e(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(37)150 3664 y(lv)l(alues,)26 b(generalized)f Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fi(161)150 3914 y Fs(M)150 4030 y Fi(`)p Fh(m)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(198)150 4117 y(M32R/D)26 b(options)f Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)49 b Fi(94)150 4205 y(M680x0)27 b(options)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(80)150 4292 y(M68hc1x)26 b(options)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)48 b Fi(82)150 4379 y(M88k)26 b(options)8 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(95)150 4467 y(mac)n(hine)25 b(dep)r(enden)n(t)f(options)15 b Fa(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)40 b Fi(80)150 4554 y(mac)n(hine)25 b(sp)r(eci\014c)h (constrain)n(ts)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)49 b Fi(201)150 4641 y(macro)26 b(with)f(v)l (ariable)i(argumen)n(ts)22 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)49 b Fi(166)150 4729 y(macros)26 b(con)n(taining)g Fh(asm)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fi(195)150 4816 y(macros,)26 b(inline)g(alternativ)n(e)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(191)150 4903 y(macros,)26 b(lo)r(cal)i(lab)r(els)17 b Fa(.)c(.)g(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)43 b Fi(156)150 4991 y(macros,)26 b(lo)r(cal)i(v)l(ariables)e (in)12 b Fa(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)38 b Fi(160)150 5078 y(macros,)26 b(statemen)n(ts)f(in)h(expressions)13 b Fa(.)g(.)g(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)39 b Fi(155)150 5165 y(macros,)26 b(t)n(yp)r(es)f(of)i(argumen)n(ts)11 b Fa(.)g(.)i(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(161)150 5253 y Fh(main)27 b Fi(and)e(the)g(exit)h(status)8 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)34 b Fi(306)150 5340 y(mak)n(e)21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)47 b Fi(62)2025 299 y Fh(malloc)27 b Fi(attribute)10 b Fa(.)i(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(176)2025 387 y(matc)n(hing)25 b(constrain)n(t)9 b Fa(.)j(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(200)2025 474 y(maxim)n(um)22 b(op)r(erator)i Fa(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(249)2025 562 y(MCore)27 b(options)c Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)49 b Fi(131)2025 650 y(mem)n(b)r(er)23 b(fns,)k(automatically)f Fh(inline)21 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)46 b Fi(192)2025 738 y Fh(memcmp)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)35 b Fi(217)2025 826 y Fh(memcpy)9 b Fa(.)k(.)f(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(217)2025 913 y(memory)23 b(mo)r(del)j(\(29k\))12 b Fa(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fi(88)2025 1001 y(memory)23 b(references)k(in)f(constrain)n(ts)10 b Fa(.)j(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(198)2025 1089 y Fh(memset)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(217)2025 1177 y(message)26 b(formatting)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fi(31)2025 1265 y(messages,)27 b(w)n(arning)21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(31)2025 1352 y(messages,)27 b(w)n(arning)f(and)f(error)14 b Fa(.)f(.)g(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40 b Fi(290)2025 1440 y(middle-op)r(erands,)25 b(omitted)d Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(162)2025 1528 y(minim)n(um)22 b(op)r(erator)12 b Fa(.)i(.)e(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(249)2025 1616 y(MIPS)25 b(options)e Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)48 b Fi(106)2025 1703 y(misunderstandings)25 b(in)g(C)p Fh(++)16 b Fa(.)e(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)43 b Fi(284)2025 1791 y(mixed)24 b(declarations)j (and)f(co)r(de)11 b Fa(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)37 b Fi(171)2025 1879 y Fh(mktemp)p Fi(,)27 b(and)e(constan)n(t)h(strings)7 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(278)2025 1967 y(MMIX)25 b(Options)13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)39 b Fi(136)2025 2055 y(MN10200)27 b(options)14 b Fa(.)g(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40 b Fi(93)2025 2142 y(MN10300)27 b(options)14 b Fa(.)g(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)40 b Fi(93)2025 2230 y Fh(mode)26 b Fi(attribute)13 b Fa(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(185)2025 2318 y(mo)r(di\014ers)25 b(in)h(constrain)n(ts)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)50 b Fi(201)2025 2406 y(m)n(ulti-line)25 b(string)h(literals)c Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(167)2025 2494 y(m)n(ultiple)25 b(alternativ)n(e)h(constrain)n(ts)19 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(200)2025 2581 y(m)n(ultiprecision)25 b(arithmetic)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)39 b Fi(163)2025 2834 y Fs(N)2025 2951 y Fi(`)p Fh(n)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(199)2025 3039 y(name)25 b(augmen)n(tation)12 b Fa(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(306)2025 3127 y(names)25 b(used)g(in)h(assem)n(bler)g(co)r(de)7 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 34 b Fi(210)2025 3214 y(naming)25 b(con)n(v)n(en)n(tion,)g(implemen)n (tation)f(headers)f Fa(.)13 b(.)48 b Fi(253)2025 3302 y(naming)25 b(t)n(yp)r(es)10 b Fa(.)i(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)36 b Fi(160)2025 3390 y(nested)25 b(functions)17 b Fa(.)c(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(158)2025 3478 y(newlines)26 b(\(escap)r(ed\))13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)39 b Fi(167)2025 3566 y Fh(no_instrument_function)30 b Fi(function)c(attribute)18 b Fa(.)12 b(.)44 b Fi(175)2025 3653 y Fh(nocommon)27 b Fi(attribute)7 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)33 b Fi(185)2025 3741 y Fh(noinline)27 b Fi(function)f (attribute)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)46 b Fi(173)2025 3829 y(non-constan)n(t)25 b(initializers)14 b Fa(.)h(.)d(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(168)2025 3917 y(non-static)26 b(inline)g(function)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(192)2025 4005 y Fh(noreturn)27 b Fi(function)f(attribute)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)46 b Fi(172)2025 4092 y(NS32K)25 b(options)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(128)2025 4345 y Fs(O)2025 4462 y Fi(`)p Fh(o)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(198)2025 4550 y Fh(OBJC_INCLUDE_PATH)11 b Fa(.)16 b(.)c(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)37 b Fi(147)2025 4638 y(Ob)t(jectiv)n(e-C)18 b Fa(.)12 b(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fi(3)2025 4725 y(Ob)t(jectiv)n(e-C)26 b(options,)g(command)e(line)g Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(30)2025 4813 y(OCS)25 b(\(88k\))20 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(95)2025 4901 y(o\013settable)26 b(address)17 b Fa(.)c(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)43 b Fi(198)2025 4989 y(old-st)n(yle)25 b(function)h(de\014nitions) 12 b Fa(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)38 b Fi(182)2025 5077 y(omitted)25 b(middle-op)r(erands)15 b Fa(.)d(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)42 b Fi(162)2025 5164 y(op)r(en)25 b(co)r(ding)14 b Fa(.)g(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)41 b Fi(191)2025 5252 y(op)r(erand)25 b(constrain)n(ts,)i Fh(asm)22 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)48 b Fi(198)2025 5340 y(optimize)25 b(options)13 b Fa(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(50)p eop %%Page: 352 362 352 361 bop 150 -116 a Fy(352)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fi(options)c(to)g(con)n(trol)g (diagnostics)i(formatting)23 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)48 b Fi(31)150 390 y(options)26 b(to)g(con)n(trol)g(w)n(arnings)13 b Fa(.)h(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)39 b Fi(31)150 481 y(options,)27 b(C)p Fh(++)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(24)150 572 y(options,)27 b(co)r(de)f(generation)8 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)34 b Fi(140)150 663 y(options,)27 b(debugging)11 b Fa(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(43)150 754 y(options,)27 b(dialect)16 b Fa(.)d(.)f(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)42 b Fi(19)150 846 y(options,)27 b(directory)e(searc)n(h)f Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(71)150 937 y(options,)27 b(GCC)f(command)13 b Fa(.)e(.)h(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)39 b Fi(7)150 1028 y(options,)27 b(grouping)17 b Fa(.)c(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)43 b Fi(7)150 1119 y(options,)27 b(linking)13 b Fa(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(68)150 1210 y(options,)27 b(Ob)t(jectiv)n(e-C)17 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fi(30)150 1301 y(options,)27 b(optimization)7 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(50)150 1392 y(options,)27 b(order)22 b Fa(.)13 b(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fi(7)150 1483 y(options,)27 b(prepro)r(cessor)9 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) 35 b Fi(61)150 1575 y(order)26 b(of)g(ev)l(aluation,)h(side)f (e\013ects)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)50 b Fi(290)150 1666 y(order)26 b(of)g(options)8 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fi(7)150 1757 y(other)26 b(register)h(constrain)n(ts)15 b Fa(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)41 b Fi(200)150 1848 y(output)25 b(\014le)g(option)15 b Fa(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40 b Fi(18)150 1939 y(o)n(v)n(erloaded)26 b(virtual)g(fn,)g(w)n(arning)c Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)46 b Fi(29)150 2209 y Fs(P)150 2333 y Fi(`)p Fh(p)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(200)150 2424 y Fh(packed)27 b Fi(attribute)10 b Fa(.)i(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(185)150 2515 y(parameter)25 b(forw)n(ard)i(declaration)15 b Fa(.)f(.)f(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(166)150 2606 y(parameters,)26 b(aliased)d Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(145)150 2698 y(PDP-11)26 b(Options)12 b Fa(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)38 b Fi(137)150 2789 y(PIC)23 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)48 b Fi(143)150 2880 y(pmf)7 b Fa(.)k(.)h(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)33 b Fi(256)150 2971 y(p)r(oin)n(ter)26 b(argumen)n(ts)19 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fi(173)150 3062 y(p)r(oin)n(ter)26 b(to)g(mem)n(b)r(er)d(function)7 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)33 b Fi(256)150 3153 y(p)r(ortions)26 b(of)h(temp)r(orary)e(ob)t (jects,)i(p)r(oin)n(ters)f(to)20 b Fa(.)12 b(.)g(.)h(.)45 b Fi(284)150 3244 y(pragma,)26 b(extern)p 666 3244 24 4 v 27 w(pre\014x)17 b Fa(.)11 b(.)h(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(248)150 3335 y(pragma,)26 b(long)p 594 3335 V 28 w(calls)21 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)46 b Fi(247)150 3427 y(pragma,)26 b(long)p 594 3427 V 28 w(calls)p 766 3427 V 29 w(o\013)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(247)150 3518 y(pragma,)26 b(mark)17 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(247)150 3609 y(pragma,)26 b(no)p 535 3609 V 28 w(long)p 703 3609 V 28 w(calls)21 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(247)150 3700 y(pragma,)26 b(options)g(align)15 b Fa(.)f(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fi(247)150 3791 y(pragma,)26 b(reason)g(for)h(not)e(using)g Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(179)150 3882 y(pragma,)26 b(rede\014ne)p 715 3882 V 27 w(extname)18 b Fa(.)11 b(.)h(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fi(247)150 3973 y(pragma,)26 b(segmen)n(t)c Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 b Fi(247)150 4064 y(pragma,)26 b(un)n(used)d Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 b Fi(247)150 4155 y(pragmas)22 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)47 b Fi(247)150 4247 y(pragmas)26 b(in)f(C)p Fh(++)p Fi(,)i(e\013ect)f(on)g(inlining)11 b Fa(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)37 b Fi(253)150 4338 y(pragmas,)26 b(in)n(terface)h(and)e(implemen)n (tation)15 b Fa(.)c(.)h(.)g(.)h(.)f(.)g(.)41 b Fi(252)150 4429 y(pragmas,)26 b(w)n(arning)h(of)f(unkno)n(wn)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) 46 b Fi(37)150 4520 y(prepro)r(cessing)27 b(n)n(um)n(b)r(ers)18 b Fa(.)11 b(.)h(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)44 b Fi(281)150 4611 y(prepro)r(cessing)27 b(tok)n(ens)17 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)43 b Fi(281)150 4702 y(prepro)r(cessor)27 b(options)21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)46 b Fi(61)150 4793 y Fh(printf)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(217)150 4884 y Fh(printf_unlocked)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)40 b Fi(217)150 4976 y(pro)r(cessor)27 b(selection)g (\(29k\))d Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(88)150 5067 y Fh(prof)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)38 b Fi(45)150 5158 y(promotion)25 b(of)i(formal)f(parameters)8 b Fa(.)k(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)34 b Fi(182)150 5249 y Fh(pure)27 b Fi(function)e(attribute)8 b Fa(.)k(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(173)150 5340 y(push)25 b(address)h(instruction)6 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)32 b Fi(200)2025 299 y Fs(Q)2025 415 y Fh(qsort)p Fi(,)27 b(and)e(global)i(register)g(v)l(ariables)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)50 b Fi(212)2025 502 y(question)25 b(mark)14 b Fa(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)40 b Fi(200)2025 753 y Fs(R)2025 869 y Fi(`)p Fh(r)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)50 b Fi(199)2025 956 y(r0-relativ)n(e)26 b(references)h(\(88k\))d Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(96)2025 1044 y(ranges)26 b(in)g(case)g(statemen)n(ts)8 b Fa(.)13 b(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)35 b Fi(171)2025 1131 y(read-only)25 b(strings)9 b Fa(.)k(.)f(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)35 b Fi(278)2025 1218 y(register)27 b(p)r(ositions)g(in)e(frame)h(\(88k\))e Fa(.)12 b(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(95)2025 1306 y(register)27 b(v)l(ariable)f(after)g Fh(longjmp)17 b Fa(.)d(.)e(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(212)2025 1393 y(registers)25 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)49 b Fi(193)2025 1480 y(registers)27 b(for)f(lo)r(cal)i(v)l(ariables)c Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(212)2025 1568 y(registers)27 b(in)f(constrain)n(ts)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)45 b Fi(199)2025 1655 y(registers,)27 b(global)g(allo)r(cation)14 b Fa(.)h(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(211)2025 1742 y(registers,)27 b(global)g(v)l(ariables)g(in)22 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)49 b Fi(211)2025 1830 y(reordering,)27 b(w)n(arning)10 b Fa(.)j(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(28,)27 b(37)2025 1917 y(rep)r(orting)f(bugs)9 b Fa(.)j(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)35 b Fi(293)2025 2004 y(rest)26 b(argumen)n(t)e(\(in)i(macro\)) 11 b Fa(.)h(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)37 b Fi(166)2025 2092 y(restricted)26 b(p)r(oin)n(ters)21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)46 b Fi(250)2025 2179 y(restricted)26 b(references)9 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(250)2025 2266 y(restricted)26 b(this)g(p)r(oin)n(ter)15 b Fa(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 b Fi(250)2025 2354 y(return)25 b(v)l(alue)g(of)i Fh(main)d Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)50 b Fi(306)2025 2441 y Fh(rindex)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(217)2025 2528 y(RS/6000)27 b(and)e(P)n(o)n(w)n(erPC)i(Options)11 b Fa(.)h(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fi(98)2025 2616 y(R)-6 b(T)25 b(options)12 b Fa(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)38 b Fi(105)2025 2703 y(R)-6 b(T)25 b(PC)7 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)33 b Fi(277)2025 2790 y(R)-6 b(TTI)14 b Fa(.)e(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(251)2025 2878 y(run-time)24 b(options)10 b Fa(.)j(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)36 b Fi(140)2025 3128 y Fs(S)2025 3244 y Fi(`)p Fh(s)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(199)2025 3332 y(S/390)27 b(and)e(zSeries)h(Options)9 b Fa(.)j(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fi(133)2025 3419 y Fh(scanf)p Fi(,)27 b(and)e(constan)n(t)h(strings)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)35 b Fi(278)2025 3506 y(scop)r(e)26 b(of)h(a)f(v)l(ariable)g (length)f(arra)n(y)15 b Fa(.)f(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)42 b Fi(166)2025 3594 y(scop)r(e)26 b(of)h(declaration)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)37 b Fi(282)2025 3681 y(scop)r(e)26 b(of)h(external)e(declarations)11 b Fa(.)j(.)f(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)37 b Fi(279)2025 3768 y(searc)n(h)26 b(path)7 b Fa(.)k(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fi(71)2025 3856 y Fh(section)27 b Fi(function)f(attribute)21 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)48 b Fi(175)2025 3943 y Fh(section)27 b Fi(v)l(ariable)f(attribute)10 b Fa(.)i(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)36 b Fi(185)2025 4030 y(sequen)n(tial)26 b(consistency)g(on)f (88k)15 b Fa(.)e(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)41 b Fi(96)2025 4118 y Fh(setjmp)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(212)2025 4205 y Fh(setjmp)27 b Fi(incompatibilities)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)35 b Fi(279)2025 4292 y(shared)26 b(strings)20 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(278)2025 4380 y Fh(shared)27 b Fi(v)l(ariable)f(attribute)11 b Fa(.)h(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)37 b Fi(186)2025 4467 y(shared)26 b(VMS)f(run)g(time)g (system)15 b Fa(.)c(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)41 b Fi(306)2025 4554 y(side)26 b(e\013ect)g(in)f(?:)20 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fi(162)2025 4642 y(side)26 b(e\013ects,)g(macro)g(argumen)n(t)11 b Fa(.)g(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 37 b Fi(155)2025 4729 y(side)26 b(e\013ects,)g(order)g(of)g(ev)l (aluation)f Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)50 b Fi(290)2025 4816 y(signal)27 b(handler)e(functions)h(on)g(the)f (A)-9 b(VR)25 b(pro)r(cessors)2191 4903 y Fa(.)13 b(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(178)2025 4991 y(signed)26 b(and)f(unsigned)h(v)l(alues,)g (comparison)g(w)n(arning)2193 5078 y Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)40 b Fi(41)2025 5165 y(simple)25 b(constrain)n(ts)f Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)50 b Fi(198)2025 5253 y Fh(sin)13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fi(217)2025 5340 y Fh(sinf)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fi(217)p eop %%Page: 353 363 353 362 bop 150 -116 a Fy(Index)3241 b(353)150 299 y Fh(sinl)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(217)150 398 y Fh(sizeof)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)34 b Fi(161)150 497 y(smaller)26 b(data)g(references)16 b Fa(.)e(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)42 b Fi(95)150 596 y(smaller)26 b(data)g(references)h(\(88k\))d Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fi(96)150 695 y(smaller)26 b(data)g(references)h(\(MIPS\))21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(110)150 794 y(smaller)26 b(data)g(references)h(\(P)n(o)n(w)n (erPC\))16 b Fa(.)e(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)42 b Fi(105)150 893 y(SP)-6 b(AR)n(C)25 b(options)10 b Fa(.)i(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(83)150 992 y(Sp)r(ec)25 b(Files)12 b Fa(.)i(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)38 b Fi(73)150 1092 y(sp)r(eci\014ed)26 b(registers)14 b Fa(.)f(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)40 b Fi(211)150 1191 y(sp)r(ecifying)27 b(compiler)e(v)n(ersion)h(and)g(target)g(mac)n (hine)318 1278 y Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(79)150 1377 y(sp)r(ecifying)27 b(hardw)n(are)f(con\014g)10 b Fa(.)j(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)36 b Fi(80)150 1476 y(sp)r(ecifying)27 b(mac)n(hine)e(v)n (ersion)8 b Fa(.)k(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)33 b Fi(79)150 1575 y(sp)r(ecifying)27 b(registers)g(for)f(lo)r(cal)i(v)l(ariables)8 b Fa(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(212)150 1674 y Fh(sqrt)11 b Fa(.)j(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(217)150 1773 y Fh(sqrtf)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(217)150 1872 y Fh(sqrtl)10 b Fa(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)36 b Fi(217)150 1971 y Fh(sscanf)p Fi(,)27 b(and)f(constan)n(t)f(strings)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)33 b Fi(278)150 2070 y(stac)n(k)26 b(c)n(hec)n(ks)f(\(29k\))d Fa(.)12 b(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)47 b Fi(88)150 2169 y(statemen)n(ts)25 b(inside)h (expressions)18 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)44 b Fi(155)150 2269 y(static)26 b(data)g(in)g(C)p Fh(++)p Fi(,)h(declaring)g(and)e(de\014ning)9 b Fa(.)i(.)i(.)f(.)g(.)35 b Fi(284)150 2368 y(`)p Fh(stdarg.h)p Fi(')28 b(and)d(R)-6 b(T)26 b(PC)14 b Fa(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fi(106)150 2467 y(storem)25 b(bug)h(\(29k\))19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)45 b Fi(88)150 2566 y Fh(strcat)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(217)150 2665 y Fh(strchr)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(217)150 2764 y Fh(strcmp)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(217)150 2863 y Fh(strcpy)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)34 b Fi(217)150 2962 y Fh(strcspn)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 33 b Fi(217)150 3061 y(string)26 b(constan)n(ts)e Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fi(278)150 3160 y Fh(strlen)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(217)150 3259 y Fh(strncat)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)33 b Fi(217)150 3358 y Fh(strncmp)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) 33 b Fi(217)150 3457 y Fh(strncpy)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(217)150 3557 y Fh(strpbrk)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(217)150 3656 y Fh(strrchr)7 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)33 b Fi(217)150 3755 y Fh(strspn)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(217)150 3854 y Fh(strstr)9 b Fa(.)k(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(217)150 3953 y(struct)10 b Fa(.)i(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)36 b Fi(248)150 4052 y(structure)25 b(passing)i(\(88k\))12 b Fa(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)37 b Fi(97)150 4151 y(structures)14 b Fa(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(280)150 4250 y(structures,)26 b(constructor)g(expression)15 b Fa(.)d(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(168)150 4349 y(submo)r(del)25 b(options)15 b Fa(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fi(80)150 4448 y(subscripting)14 b Fa(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(168)150 4547 y(subscripting)26 b(and)f(function)h(v)l(alues)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)45 b Fi(168)150 4646 y(su\016xes)26 b(for)g(C)p Fh(++)h Fi(source)c Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48 b Fi(19)150 4746 y Fh(SUNPRO_DEPENDENCIES)8 b Fa(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)34 b Fi(148)150 4845 y(suppressing)26 b(w)n(arnings)9 b Fa(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(31)150 4944 y(surprises)26 b(in)g(C)p Fh(++)20 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fi(284)150 5043 y(SV)-6 b(r4)10 b Fa(.)h(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fi(96)150 5142 y(syn)n(tax)25 b(c)n(hec)n(king)8 b Fa(.)k(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)33 b Fi(31)150 5241 y(syn)n(thesized)25 b(metho)r(ds,)g(w)n(arning)7 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32 b Fi(30)150 5340 y(system)25 b(headers,)h(w)n(arnings)h(from)11 b Fa(.)g(.)i(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(38)2025 299 y Fs(T)2025 416 y Fi(target)26 b(mac)n(hine,)f(sp)r(ecifying)14 b Fa(.)g(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)40 b Fi(79)2025 503 y(target)26 b(options)20 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fi(79)2025 591 y(TC1)17 b Fa(.)d(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fi(5)2025 678 y(TC2)17 b Fa(.)d(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fi(5)2025 766 y Fh(tcov)13 b Fa(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(45)2025 853 y(T)-6 b(ec)n(hnical)26 b(Corrigenda)8 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fi(5)2025 941 y(T)-6 b(ec)n(hnical)26 b(Corrigendum)g(1)15 b Fa(.)d(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) 41 b Fi(5)2025 1028 y(T)-6 b(ec)n(hnical)26 b(Corrigendum)g(2)15 b Fa(.)d(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)41 b Fi(5)2025 1116 y(template)25 b(instan)n(tiation)8 b Fa(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fi(254)2025 1204 y(temp)r(oraries,)26 b(lifetime)g(of)9 b Fa(.)14 b(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)35 b Fi(284)2025 1291 y(th)n(unks)13 b Fa(.)e(.)h(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)39 b Fi(158)2025 1379 y(tin)n(y)25 b(data)h(section)g(on)g (the)f(H8/300H)13 b Fa(.)g(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(178)2025 1466 y Fh(TMPDIR)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(146)2025 1554 y(TMS320C3x/C4x)28 b(Options)12 b Fa(.)h(.)f(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)39 b Fi(125)2025 1641 y(traditional)27 b(C)f(language)d Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fi(22)2025 1729 y(t)n(yp)r(e)25 b(alignmen)n(t)19 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(183)2025 1816 y(t)n(yp)r(e)25 b(attributes)20 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(188)2025 1904 y(t)n(yp)r(e)p 2178 1904 24 4 v 27 w(info)12 b Fa(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)38 b Fi(251)2025 1992 y(t)n(yp)r(edef)25 b(names)g(as)h(function)g(parameters)15 b Fa(.)e(.)f(.)g(.)h(.)f(.)g(.) h(.)41 b Fi(280)2025 2079 y Fh(typeof)9 b Fa(.)k(.)f(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(161)2025 2333 y Fs(U)2025 2449 y Fh(ULL)26 b Fi(in)n(teger)g (su\016x)20 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)47 b Fi(163)2025 2537 y(Ultrix)25 b(calling)i(con)n(v)n(en)n(tion)21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)47 b Fi(277)2025 2624 y(unde\014ned)24 b(b)r(eha)n(vior)7 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fi(293)2025 2712 y(unde\014ned)24 b(function)h(v)l(alue)f Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)49 b Fi(293)2025 2800 y(underscores)26 b(in)f(v)l(ariables)i(in)f(macros)6 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)32 b Fi(160)2025 2887 y(underscores,)26 b(a)n(v)n(oiding)g(\(88k\))13 b Fa(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fi(95)2025 2975 y(union)14 b Fa(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 b Fi(248)2025 3062 y(union,)25 b(casting)i(to)f(a)12 b Fa(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) 38 b Fi(171)2025 3150 y(unions)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(280)2025 3237 y(unkno)n(wn)24 b(pragmas,)i(w)n(arning)10 b Fa(.)k(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)36 b Fi(37)2025 3325 y(unresolv)n(ed)25 b(references)i(and)e(`) p Fh(-nodefaultlibs)p Fi(')8 b Fa(.)16 b(.)c(.)h(.)33 b Fi(69)2025 3412 y(unresolv)n(ed)25 b(references)i(and)e(`)p Fh(-nostdlib)p Fi(')15 b Fa(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)41 b Fi(69)2025 3500 y Fh(unused)27 b Fi(attribute.)17 b Fa(.)c(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(175)2025 3588 y Fh(used)26 b Fi(attribute.)21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)46 b Fi(175)2025 3822 y Fs(V)2025 3939 y Fi(`)p Fh(V)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(198)2025 4027 y(V850)26 b(Options)c Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)48 b Fi(127)2025 4114 y(v)l(ague)25 b(link)l(age)11 b Fa(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(251)2025 4202 y(v)l(alue)25 b(after)i Fh(longjmp)17 b Fa(.)d(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fi(212)2025 4289 y(`)p Fh(varargs.h)p Fi(')28 b(and)d(R)-6 b(T)26 b(PC)12 b Fa(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)38 b Fi(106)2025 4377 y(v)l(ariable)26 b(addressabilit)n(y)g(on)g(the)f(M32R/D)13 b Fa(.)h(.)e(.)g(.)h(.)f(.)g (.)40 b Fi(188)2025 4464 y(v)l(ariable)26 b(alignmen)n(t)17 b Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fi(183)2025 4552 y(v)l(ariable)26 b(attributes)17 b Fa(.)c(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)43 b Fi(184)2025 4640 y(v)l(ariable)26 b(n)n(um)n(b)r(er)e(of)i (argumen)n(ts)d Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)50 b Fi(166)2025 4727 y(v)l(ariable-length)26 b(arra)n(y)f(scop)r(e)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fi(166)2025 4815 y(v)l(ariable-length)26 b(arra)n(ys)16 b Fa(.)d(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(165)2025 4902 y(v)l(ariables)26 b(in)g(sp)r(eci\014ed)g(registers) 9 b Fa(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)36 b Fi(211)2025 4990 y(v)l(ariables,)27 b(lo)r(cal,)g(in)f(macros) 20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)46 b Fi(160)2025 5077 y(v)l(ariadic)26 b(macros)10 b Fa(.)i(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(166)2025 5165 y(V)-9 b(AX)25 b(calling)i(con)n(v)n(en)n(tion)20 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)47 b Fi(277)2025 5252 y(V)-9 b(AX)25 b(options)20 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)45 b Fi(83)2025 5340 y(`)p Fh(VAXCRTL)p Fi(')24 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) 48 b Fi(306)p eop %%Page: 354 364 354 363 bop 150 -116 a Fy(354)1718 b(Using)30 b(the)g(GNU)h(Compiler)d (Collection)i(\(GCC\))150 299 y Fi(VLAs)11 b Fa(.)h(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)37 b Fi(165)150 388 y(VMS)25 b(and)h(case)g(sensitivit)n(y)11 b Fa(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)37 b Fi(306)150 478 y(VMS)25 b(and)h(include)f(\014les)11 b Fa(.)i(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)37 b Fi(303)150 567 y(v)n(oid)25 b(p)r(oin)n(ters,)i(arithmetic)20 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fi(168)150 656 y(v)n(oid,)26 b(size)g(of)h(p)r(oin)n(ter)e(to)e Fa(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)48 b Fi(168)150 746 y(v)n(olatile)27 b(access)18 b Fa(.)c(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fi(249)150 835 y Fh(volatile)27 b Fi(applied)f(to)g(function)19 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) 45 b Fi(172)150 924 y(v)n(olatile)27 b(read)10 b Fa(.)i(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fi(249)150 1013 y(v)n(olatile)27 b(write)15 b Fa(.)e(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)41 b Fi(249)150 1103 y(vtable)23 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)49 b Fi(251)150 1347 y Fs(W)150 1467 y Fi(w)n(arning)26 b(for)h(comparison)f(of)g(signed)g(and)g(unsigned)304 1554 y(v)l(alues)21 b Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)47 b Fi(41)150 1644 y(w)n(arning)26 b(for)h(o)n(v)n(erloaded)f(virtual)g(fn)9 b Fa(.)j(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fi(29)150 1733 y(w)n(arning)26 b(for)h(reordering)f(of)h(mem)n(b)r(er)c(initializers)18 b Fa(.)d(.)43 b Fi(28,)304 1820 y(37)150 1910 y(w)n(arning)26 b(for)h(syn)n(thesized)e(metho)r(ds)13 b Fa(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(30)2025 299 y(w)n(arning)26 b(for)h(unkno)n(wn)d(pragmas)17 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(37)2025 386 y(w)n(arning)26 b(messages)13 b Fa(.)g(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 b Fi(31)2025 474 y(w)n(arnings)26 b(from)g(system)f(headers)c Fa(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fi(38)2025 561 y(w)n(arnings)26 b(vs)g(errors)21 b Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fi(290)2025 649 y Fh(weak)26 b Fi(attribute)13 b Fa(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)39 b Fi(176)2025 736 y(whitespace)17 b Fa(.)d(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fi(280)2025 988 y Fs(X)2025 1104 y Fi(`)p Fh(X)p Fi(')26 b(in)g(constrain)n(t)e Fa(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)50 b Fi(199)2025 1192 y(X3.159-1989)13 b Fa(.)i(.)d(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fi(5)2025 1279 y(x86-64)26 b(Options)16 b Fa(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)43 b Fi(111)2025 1367 y(Xstorm)n(y16)25 b(Options)16 b Fa(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fi(138)2025 1454 y(Xtensa)25 b(Options)10 b Fa(.)i(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)36 b Fi(138)2025 1705 y Fs(Z)2025 1822 y Fi(zero)26 b(division)g(on)g(88k)10 b Fa(.)j(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fi(97)2025 1910 y(zero-length)26 b(arra)n(ys)7 b Fa(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)33 b Fi(164)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF