123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780 |
- 2015-07-16 Release Manager
- * GCC 5.2.0 released.
- 2015-07-15 Renlin Li <renlin.li@arm.com>
- Backport from mainline.
- 2015-07-13 Renlin Li <renlin.li@arm.com>
- PR rtl/66556
- * simplify-rtx.c (simplify_const_relational_operation): Add
- side_effects_p checks.
- 2015-07-15 Thomas Schwinge <thomas@codesourcery.com>
- Backport trunk r225560:
- 2015-07-08 Thomas Schwinge <thomas@codesourcery.com>
- PR libgomp/65099
- * config/nvptx/mkoffload.c (main): Create an offload image only in
- 64-bit configurations.
- Backport trunk r222583:
- 2015-04-29 Thomas Schwinge <thomas@codesourcery.com>
- PR libgomp/65099
- * config/nvptx/mkoffload.c (target_ilp32): New variable.
- (main): Set it depending on "-foffload-abi=[...]".
- (compile_native, main): Use it to pass "-m32" or "-m64" to the
- compiler.
- Backport trunk r223805:
- 2015-05-28 H.J. Lu <hongjiu.lu@intel.com>
- * builtins.c (expand_builtin_acc_on_device): Mark parameters
- with ATTRIBUTE_UNUSED.
- Backport trunk r223801:
- 2015-05-28 Julian Brown <julian@codesourcery.com>
- PR libgomp/65742
- * builtins.c (expand_builtin_acc_on_device): Don't use open-coded
- sequence for !ACCEL_COMPILER.
- 2015-07-14 Matthias Klose <doko@ubuntu.com>
- PR target/66840
- * config/rs6000/t-rs6000 (TM_H): Add rs6000-cpus.def.
- 2015-07-10 Jakub Jelinek <jakub@redhat.com>
- PR middle-end/66820
- * gimplify.c (maybe_fold_stmt): Don't fold in ORT_PARALLEL
- or ORT_TASK contexts.
- * omp-low.c (lower_omp): Call fold_stmt even if taskreg_nesting_level
- is non-zero.
- Backported from mainline
- 2015-07-09 Jakub Jelinek <jakub@redhat.com>
- PR middle-end/66633
- * tree-nested.c (get_static_chain): Or in a flag into
- info->static_chain_added.
- (get_frame_field, get_nonlocal_debug_decl): Likewise.
- (convert_nonlocal_omp_clauses, convert_local_omp_clauses): Revert
- 2015-07-01 changes.
- (convert_tramp_reference_stmt): If a frame_decl or chain_decl
- is needed newly inside of GIMPLE_OMP_{PARALLEL,TASK,TARGET} body,
- add it to clauses.
- 2015-07-10 Vladimir Makarov <vmakarov@redhat.com>
- Backport from mainline
- 2015-07-09 Vladimir Makarov <vmakarov@redhat.com>
- PR rtl-optimization/66782
- * lra-int.h (struct lra_insn_recog_data): Add comment about
- clobbered hard regs for arg_hard_regs.
- * lra.c (lra_set_insn_recog_data): Add clobbered hard regs.
- * lra-lives.c (process_bb_lives): Process clobbered hard regs.
- Add condition for processing used hard regs.
- * lra-constraints.c (update_ebb_live_info, inherit_in_ebb):
- Process clobbered hard regs.
- 2015-07-10 Richard Biener <rguenther@suse.de>
- Backport from mainline
- 2015-07-10 Richard Biener <rguenther@suse.de>
- PR tree-optimization/66823
- * tree-if-conv.c (memrefs_read_or_written_unconditionally): Fix
- inverted predicate.
- 2015-07-08 Richard Biener <rguenther@suse.de>
- PR middle-end/43341
- * toplev.c (compile_file): Reset maximum_field_alignment after parsing.
- 2015-07-08 Richard Biener <rguenther@suse.de>
- PR tree-optimization/66794
- * gimple-ssa-isolate-paths.c (gimple_ssa_isolate_erroneous_paths):
- Free post-dominators.
- 2015-07-10 Kaz Kojima <kkojima@gcc.gnu.org>
- Backport form mainline
- 2015-07-07 Kaz Kojima <kkojima@gcc.gnu.org>
- PR target/66780
- * config/sh/sh.md (symGOT_load): Revert a part of 2015-03-03
- change for target/65249.
- 2015-07-09 Iain Sandoe <iain@codesourcery.com>
- PR target/66523
- * config/darwin.c (darwin_mark_decl_preserved): Exclude 'L' label names from
- preservation.
- 2015-07-06 Alan Lawrence <alan.lawrence@arm.com>
- Backport from mainline r225465
- 2015-07-06 Alan Lawrence <alan.lawrence@arm.com>
- PR target/65956
- * config/arm/arm.c (arm_needs_doubleword_align): Drop any outer
- alignment attribute, exploring one level down for records and arrays.
- 2015-07-06 Alan Lawrence <alan.lawrence@arm.com>
- Backport from mainline r225461
- 2015-07-06 Alan Lawrence <alan.lawrence@arm.com>
- * config/arm/arm.md (movdi): Avoid odd-number ldrd/strd in ARM state.
- 2015-07-05 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- Backport from mainline r224725
- 2015-06-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- PR target/65914
- * config/rs6000/predicates.md (altivec_register_operand): Permit
- virtual stack registers.
- (vsx_register_operand): Likewise.
- (vfloat_operand): Likewise.
- (vint_operand): Likewise.
- (vlogical_operand): Likewise.
- 2015-07-04 John David Anglin <danglin@gcc.gnu.org>
- PR target/66114
- * config/pa/pa.md (indirect_jump): Use pmode_register_operand instead
- of register_operand. Remove constraint.
- 2015-07-03 Jack Howarth <howarth.at.gcc@gmail.com>
- PR target/66509
- * configure.ac: Fix filds and fildq test for 64-bit.
- * configure: Regenerated.
- 2015-07-03 James Greenhalgh <james.greenhalgh@arm.com>
- Backport from mainline.
- 2015-07-03 James Greenhalgh <james.greenhalgh@arm.com>
- PR tree-optimization/66119
- * toplev.c (process_options): Don't set up default values for
- the sra_max_scalarization_size_{speed,size} parameters.
- * tree-sra (analyze_all_variable_accesses): If no values
- have been set for the sra_max_scalarization_size_{speed,size}
- parameters, call get_move_ratio to get target defaults.
- 2015-07-03 Gerald Pfeifer <gerald@pfeifer.com>
- PR target/37072
- * doc/invoke.texi (i386 and x86-64 Options): -mno-fancy-math-387
- is not actually the default on FreeBSD.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-06-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/vx-builtins.md
- ("vec_scatter_element<mode>_<non_vec_int>")
- ("vec_scatter_element<V_HW_64:mode>_SI"): Replace gf mode
- attribute with bhfgq.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-06-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/s390-builtins.def: Fix vpopct instruction comments.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-06-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/s390-builtin-types.def: Add flag to indicate the
- options under which the function type is needed.
- * config/s390/s390-builtins.def: Add flag to indicate the options
- under which the builtin is enabled.
- * config/s390/s390-builtins.h: Add flags parameter to macro
- definitions.
- (bflags_for_builtin): New function.
- (flags_for_builtin): Renamed to ...
- (opflags_for_builtin): ... this.
- * config/s390/s390-c.c (s390_resolve_overloaded_builtin): Rename
- flags_for_builtin to bflags_for_builtin and
- flags_overloaded_builtin_var to opflags_overloaded_builtin_var.
- * config/s390/s390.c: Add initialization of bflags_builtin and
- opflags_builtin arrays.
- Remove code for flags_builtin.
- (s390_init_builtins): Only create builtin function types if one of
- their flags is active.
- Only create builtins if all of their flags are active.
- (s390_expand_builtin): Rename flags_for_builtin to
- opflags_for_builtin.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-06-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/vecintrin.h: Remove internal builtins.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-06-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/s390.c (s390_secondary_reload): Fix check for
- GENERAL_REGS register class.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-06-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/s390.c (s390_support_vector_misalignment): Call
- default implementation for !TARGET_VX.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-06-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/s390.c (s390_legitimate_constant_p): Add
- TARGET_VX check.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-06-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/s390.c (s390_vector_abi): New variable definition.
- (s390_check_type_for_vector_abi): New function.
- (TARGET_ASM_FILE_END): New macro definition.
- (s390_asm_file_end): New function.
- (s390_function_arg): Call s390_check_type_for_vector_abi.
- (s390_gimplify_va_arg): Likewise.
- * configure: Regenerate.
- * configure.ac: Check for .gnu_attribute Binutils feature.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/s390.c (s390_vector_bool_type_p): New function.
- (s390_invalid_binary_op): New function.
- (TARGET_INVALID_BINARY_OP): Define macro.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config.gcc: Add vecintrin.h to extra_headers. Add s390-c.o to
- c_target_objs and cxx_target_objs. Add t-s390 to tmake_file.
- * config/s390/s390-builtin-types.def: New file.
- * config/s390/s390-builtins.def: New file.
- * config/s390/s390-builtins.h: New file.
- * config/s390/s390-c.c: New file.
- * config/s390/s390-modes.def: Add modes CCVEQANY, CCVH,
- CCVHANY, CCVHU, CCVHUANY, CCVFHANY, CCVFHEANY.
- * config/s390/s390-protos.h (s390_expand_vec_compare_cc)
- (s390_cpu_cpp_builtins, s390_register_target_pragmas): Add
- prototypes.
- * config/s390/s390.c (s390-builtins.h, s390-builtins.def):
- Include.
- (flags_builtin, flags_overloaded_builtin_var, s390_builtin_types)
- (s390_builtin_fn_types, s390_builtin_decls, code_for_builtin): New
- variable definitions.
- (s390_const_operand_ok): New function.
- (s390_expand_builtin): Rewrite.
- (s390_init_builtins): New function.
- (s390_handle_vectorbool_attribute): New function.
- (s390_attribute_table): Add s390_vector_bool attribute.
- (s390_match_ccmode_set): Handle new cc modes CCVH, CCVHU.
- (s390_branch_condition_mask): Generate masks for new modes.
- (s390_expand_vec_compare_cc): New function.
- (s390_mangle_type): Add mangling for vector bool types.
- (enum s390_builtin): Remove.
- (s390_atomic_assign_expand_fenv): Rename constants for sfpc and
- efpc builtins.
- * config/s390/s390.h (TARGET_CPU_CPP_BUILTINS): Call
- s390_cpu_cpp_builtins.
- (REGISTER_TARGET_PRAGMAS): New macro.
- * config/s390/s390.md: Define more UNSPEC_VEC_* constants.
- (insn_cmp mode attribute): Add new CC modes.
- (s390_sfpc, s390_efpc): Rename patterns to sfpc and efpc.
- (lcbb): New pattern definition.
- * config/s390/s390intrin.h: Include vecintrin.h.
- * config/s390/t-s390: New file.
- * config/s390/vecintrin.h: New file.
- * config/s390/vector.md: Include vx-builtins.md.
- * config/s390/vx-builtins.md: New file.S/390 zvector builtin
- support.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/s390-modes.def: Add new modes CCVEQ, CCVFH, and
- CCVFHE.
- * config/s390/s390.c (s390_match_ccmode_set): Handle new modes.
- (s390_select_ccmode): Likewise.
- (s390_canonicalize_comparison): Swap operands if necessary.
- (s390_expand_vec_compare_scalar): Expand DFmode compare using
- single element vector instructions.
- (s390_emit_compare): Call s390_expand_vec_compare_scalar.
- (s390_branch_condition_mask): Generate CC masks for the new modes.
- * config/s390/s390.md (v0, vf, vd): New mode attributes.
- (VFCMP, asm_fcmp, insn_cmp): New mode iterator and attributes.
- (*vec_cmp<insn_cmp>df_cconly, *fixuns_truncdfdi2_z13)
- (*fix_trunc<BFP:mode><GPR:mode>2_bfp, *floatunsdidf2_z13)
- (*floatuns<GPR:mode><FP:mode>2, *extendsfdf2_z13)
- (*extend<DSF:mode><BFP:mode>2): New insn definition.
- (fix_trunc<BFP:mode><GPR:mode>2_bfp, loatuns<GPR:mode><FP:mode>2)
- (extend<DSF:mode><BFP:mode>2): Turn into expander.
- (floatdi<mode>2, truncdfsf2, add<mode>3, sub<mode>3, mul<mode>3)
- (div<mode>3, *neg<mode>2, *abs<mode>2, *negabs<mode>2)
- (sqrt<mode>2): Add vector instruction.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/constraints.md (j00, jm1, jxx, jyy, v): New
- constraints.
- * config/s390/predicates.md (const0_operand, constm1_operand)
- (constable_operand): Accept vector operands.
- * config/s390/s390-modes.def: Add supported vector modes.
- * config/s390/s390-protos.h (s390_cannot_change_mode_class)
- (s390_function_arg_vector, s390_contiguous_bitmask_vector_p)
- (s390_bytemask_vector_p, s390_expand_vec_strlen)
- (s390_expand_vec_compare, s390_expand_vcond)
- (s390_expand_vec_init): Add prototypes.
- * config/s390/s390.c (VEC_ARG_NUM_REG): New macro.
- (s390_vector_mode_supported_p): New function.
- (s390_contiguous_bitmask_p): Mask out the irrelevant bits.
- (s390_contiguous_bitmask_vector_p): New function.
- (s390_bytemask_vector_p): New function.
- (s390_split_ok_p): Vector regs don't work either.
- (regclass_map): Add VEC_REGS.
- (s390_legitimate_constant_p): Handle vector constants.
- (s390_cannot_force_const_mem): Handle CONST_VECTOR.
- (legitimate_reload_vector_constant_p): New function.
- (s390_preferred_reload_class): Handle CONST_VECTOR.
- (s390_reload_symref_address): Likewise.
- (s390_secondary_reload): Vector memory instructions only support
- short displacements. Rename reload*_nonoffmem* to reload*_la*.
- (s390_emit_ccraw_jump): New function.
- (s390_expand_vec_strlen): New function.
- (s390_expand_vec_compare): New function.
- (s390_expand_vcond): New function.
- (s390_expand_vec_init): New function.
- (s390_dwarf_frame_reg_mode): New function.
- (print_operand): Handle addresses with 'O' and 'R' constraints.
- (NR_C_MODES, constant_modes): Add vector modes.
- (s390_output_pool_entry): Handle vector constants.
- (s390_hard_regno_mode_ok): Handle vector registers.
- (s390_class_max_nregs): Likewise.
- (s390_cannot_change_mode_class): New function.
- (s390_invalid_arg_for_unprototyped_fn): New function.
- (s390_function_arg_vector): New function.
- (s390_function_arg_float): Remove size variable.
- (s390_pass_by_reference): Handle vector arguments.
- (s390_function_arg_advance): Likewise.
- (s390_function_arg): Likewise.
- (s390_return_in_memory): Vector values are returned in a VR if
- possible.
- (s390_function_and_libcall_value): Handle vector arguments.
- (s390_gimplify_va_arg): Likewise.
- (s390_call_saved_register_used): Consider the arguments named.
- (s390_conditional_register_usage): Disable v16-v31 for non-vec
- targets.
- (s390_preferred_simd_mode): New function.
- (s390_support_vector_misalignment): New function.
- (s390_vector_alignment): New function.
- (TARGET_STRICT_ARGUMENT_NAMING, TARGET_DWARF_FRAME_REG_MODE)
- (TARGET_VECTOR_MODE_SUPPORTED_P)
- (TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN)
- (TARGET_VECTORIZE_PREFERRED_SIMD_MODE)
- (TARGET_VECTORIZE_SUPPORT_VECTOR_MISALIGNMENT)
- (TARGET_VECTOR_ALIGNMENT): Define target macro.
- * config/s390/s390.h (FUNCTION_ARG_PADDING): Define macro.
- (FIRST_PSEUDO_REGISTER): Increase value.
- (VECTOR_NOFP_REGNO_P, VECTOR_REGNO_P, VECTOR_NOFP_REG_P)
- (VECTOR_REG_P): Define macros.
- (FIXED_REGISTERS, CALL_USED_REGISTERS)
- (CALL_REALLY_USED_REGISTERS, REG_ALLOC_ORDER)
- (HARD_REGNO_CALL_PART_CLOBBERED, REG_CLASS_NAMES)
- (FUNCTION_ARG_REGNO_P, FUNCTION_VALUE_REGNO_P, REGISTER_NAMES):
- Add vector registers.
- (CANNOT_CHANGE_MODE_CLASS): Call C function.
- (enum reg_class): Add VEC_REGS, ADDR_VEC_REGS, GENERAL_VEC_REGS.
- (SECONDARY_MEMORY_NEEDED): Allow SF<->SI mode moves without
- memory.
- (DBX_REGISTER_NUMBER, FIRST_VEC_ARG_REGNO, LAST_VEC_ARG_REGNO)
- (SHORT_DISP_IN_RANGE, VECTOR_STORE_FLAG_VALUE): Define macro.
- * config/s390/s390.md (UNSPEC_VEC_*): New constants.
- (VR*_REGNUM): New constants.
- (ALL): New mode iterator.
- (INTALL): Remove mode iterator.
- Include vector.md.
- (movti): Implement TImode moves for VRs.
- Disable TImode splitter for VR targets.
- Implement splitting TImode GPR<->VR moves.
- (reload*_tomem_z10, reload*_toreg_z10): Replace INTALL with ALL.
- (reload<mode>_nonoffmem_in, reload<mode>_nonoffmem_out): Rename to
- reload<mode>_la_in, reload<mode>_la_out.
- (*movdi_64, *movsi_zarch, *movhi, *movqi, *mov<mode>_64dfp)
- (*mov<mode>_64, *mov<mode>_31): Add vector instructions.
- (TD/TF mode splitter): Enable for GPRs only (formerly !FP).
- (mov<mode> SF SD): Prefer lder, lde for loading.
- Add lrl and strl instructions.
- Add vector instructions.
- (strlen<mode>): Rename old strlen<mode> to strlen_srst<mode>.
- Call s390_expand_vec_strlen on z13.
- (*cc_to_int): Change predicate to nonimmediate_operand.
- (addti3): Rename to *addti3. New expander.
- (subti3): Rename to *subti3. New expander.
- * config/s390/vector.md: New file.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * common/config/s390/s390-common.c (processor_flags_table): Add
- z13.
- * config.gcc: Add z13.
- * config/s390/s390-opts.h (enum processor_type): Add
- PROCESSOR_2964_Z13.
- * config/s390/s390.c (s390_adjust_priority): Check for
- PROCESSOR_2964_Z13.
- (s390_reorg): Likewise.
- (s390_sched_reorder): Likewise.
- (s390_sched_variable_issue): Likewise.
- (s390_loop_unroll_adjust): Likewise.
- (s390_option_override): Likewise. Default to -mvx when available.
- * config/s390/s390.h (enum processor_flags): Add PF_Z13 and PF_VX.
- (TARGET_CPU_Z13, TARGET_CPU_VX, TARGET_Z13, TARGET_VX)
- (TARGET_VX_ABI): Define macros.
- macros.
- (TARGET_DEFAULT): Add MASK_OPT_VX.
- * config/s390/s390.md ("cpu" attribute): Add z13.
- ("cpu_facility" attribute): Add vec.
- * config/s390/s390.opt (processor_type): Add z13.
- (mvx): New options.
- * doc/invoke.texi: Add z13 option for -march.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * optabs.c (expand_vec_perm): Don't re-use SEL as target operand.
- 2015-07-02 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- Backport from mainline
- 2015-05-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * recog.h: Increase MAX_RECOG_ALTERNATIVES. Change type of
- alternative_mask to uint64_t.
- 2015-07-02 Jakub Jelinek <jakub@redhat.com>
- Backported from mainline
- 2015-06-08 Jakub Jelinek <jakub@redhat.com>
- * genattrtab.c (insn_alternatives): Change type from int *
- to uint64_t *.
- (check_attr_test): Shift ((uint64_t) 1) instead of 1 up.
- (get_attr_value): Change type of num_alt to uint64_t.
- (compute_alternative_mask): Change return type from
- int to uint64_t, shift ((uint64_t) 1) instead of 1 up.
- (make_alternative_compare, mk_attr_alt): Change argument type
- from int to uint64_t.
- (simplify_test_exp): Change type of i from int to uint64_t.
- Shift ((uint64_t) 1) instead of 1 up.
- (main): Adjust oballocvec first argument from int to uint64_t.
- Shift ((uint64_t) 1) instead of 1 up.
- 2015-07-01 Kaz Kojima <kkojima@gcc.gnu.org>
- 2015-06-30 Kaz Kojima <kkojima@gcc.gnu.org>
- PR target/64833
- * config/sh/sh.md (casesi_worker_1): Set length to 8 when
- flag_pic is set.
- 2015-07-01 David Malcolm <dmalcolm@redhat.com>
- Backport from mainline r225207
- 2015-06-30 David Malcolm <dmalcolm@redhat.com>
- * typed-splay-tree.h: New file.
- 2015-07-01 Eric Botcazou <ebotcazou@adacore.com>
- PR middle-end/66633
- * tree-nested.c (convert_nonlocal_omp_clauses): Initialize need_chain
- to true if the function is nested and if not optimizing.
- (convert_local_omp_clauses): Initialize need_frame to true if the
- function contains nested functions and if not optimizing.
- 2015-06-30 Jakub Jelinek <jakub@redhat.com>
- PR middle-end/66702
- * omp-low.c (simd_clone_adjust): Handle addressable linear
- or uniform parameters or non-gimple type uniform parameters.
- 2015-06-30 Eric Botcazou <ebotcazou@adacore.com>
- * config/sparc/leon.md (leon_load): Enable for all LEON variants if
- -mfix-ut699 is not specified.
- (leon3_load): Rename into...
- (ut699_load): ...this. Enable for all LEON variants if -mfix-ut699
- is specified.
- 2015-06-30 Szabolcs Nagy <szabolcs.nagy@arm.com>
- Backport from mainline:
- 2015-06-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
- PR target/66136
- * config/aarch64/geniterators.sh: Rewrite in awk.
- 2015-06-27 James Greenhalgh <james.greenhalgh@arm.com>
- Backport from mainline r224672.
- 2015-06-19 James Greenhalgh <james.greenhalgh@arm.com>
- * config/vax/vax.md: Adjust sign/zero extend patterns to
- handle SUBREGs in operands[1].
- 2015-06-27 Oleg Endo <olegendo@gcc.gnu.org>
- Backport from mainline
- 2015-06-25 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/65979
- PR target/66611
- * config/sh/sh.md (tstsi_t peephole2): Use insn_invalid_p to check if
- the replacement insn will work.
- 2015-06-26 Martin Jambor <mjambor@suse.cz>
- PR debug/66301
- * tree-ssa-pre.c (before_dom_children): Check that dump_file is not
- NULL instead of calling dump_enabled_p.
- 2015-06-26 Uros Bizjak <ubizjak@gmail.com>
- Segher Boessenkool <segher@kernel.crashing.org>
- PR target/66412
- * config/i386/i386.md (various splitters): Use shallow_copy_rtx
- before doing PUT_MODE or PUT_CODE on operands to avoid
- in-place RTX modification.
- 2015-06-25 Andreas Tobler <andreast@gcc.gnu.org>
- Backport from mainline
- 2015-05-18 Andreas Tobler <andreast@gcc.gnu.org>
- * config/freebsd-spec.h (FBSD_STARTFILE_SPEC): Add the bits to build
- pie executables.
- (FBSD_ENDFILE_SPEC): Likewise.
- * config/i386/freebsd.h (STARTFILE_SPEC): Remove and use the one from
- config/freebsd-spec.h.
- (ENDFILE_SPEC): Likewise.
- 2015-06-25 Kaz Kojima <kkojima@gcc.gnu.org>
- Backport from mainline
- 2015-06-24 Kaz Kojima <kkojima@gcc.gnu.org>
- PR target/66563
- * config/sh/sh.md (GOTaddr2picreg): Add a new operand for
- an additional element of the unspec vector. Modify indices
- of operands.
- (builtin_setjmp_receiver): Pass const0_rtx to gen_GOTaddr2picreg.
- * config/sh/sh.c (prepare_move_operands): Pass incremented
- const_int to gen_GOTaddr2picreg.
- (sh_expand_prologue): Pass const0_rtx to gen_GOTaddr2picreg.
- 2015-06-25 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
- Backport from mainline.
- 2015-06-24 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
- PR target/63408
- * config/arm/arm.c (vfp3_const_double_for_fract_bits): Disable
- for negative numbers.
- 2015-06-24 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
- PR target/66200
- * config/aarch64/aarch64.c (TARGET_RELAXED_ORDERING): Define.
- 2015-06-24 Renlin Li <renlin.li@arm.com>
- Backport from mainline
- 2015-06-24 Renlin Li <renlin.li@arm.com>
- * varasm.c (emit_local): Use unsigned int for align variable.
- 2015-06-23 Richard Biener <rguenther@suse.de>
- Backport from mainline
- 2015-06-09 Richard Biener <rguenther@suse.de>
- PR middle-end/66413
- * tree-inline.c (insert_init_debug_bind): Unshare value.
- 2015-06-23 Ludovic Courtès <ludo@gnu.org>
- PR 65711
- * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Move
- '-dynamic-linker' within %{!shared: ...}.
- 2015-06-22 Vladimir Makarov <vmakarov@redhat.com>
- PR bootstrap/63740
- * lra-lives.c (process_bb_lives): Check insn copying the same
- reload pseudo and don't create a copy for it.
- 2015-06-22 Richard Biener <rguenther@suse.de>
- Backport from mainline
- 2015-06-08 Richard Biener <rguenther@suse.de>
- PR tree-optimization/66422
- * tree-ssa-loop-ivcanon.c (remove_exits_and_undefined_stmts): Split
- block after inserted gcc_unreachable.
- 2015-06-21 Marek Polacek <polacek@redhat.com>
- Backport from mainline
- 2015-06-20 Marek Polacek <polacek@redhat.com>
- * common.opt (fsanitize-undefined-trap-on-error): Add Driver.
- 2015-06-18 Richard Biener <rguenther@suse.de>
- Backport from mainline
- 2015-06-03 Richard Biener <rguenther@suse.de>
- PR tree-optimization/66375
- * tree-scalar-evolution.c (follow_ssa_edge_binary): First
- add to the evolution before following SSA edges.
- 2015-06-18 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
- Backport from mainline r224414.
- 2015-06-12 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
- * common/config/i386/i386-common.c
- (OPTION_MASK_ISA_MWAITX_SET): New.
- (ix86_handle_option): Handle mwaitx.
- * config.gcc (i[34567]86-*-*): Add mwaitxintrin.h,
- (x86_64-*-*): Likewise.
- * config/i386/mwaitxintrin.h: New header.
- * config/i386/cpuid.h (bit_MWAITX): Define.
- * config/i386/driver-i386.c (host_detect_local_cpu): Detect
- MWAITX support.
- * config/i386/i386.opt (mwaitx): New.
- * config/i386/i386-builtin-types.def
- (VOID_FTYPE_UNSIGNED_ UNSIGNED_UNSIGNED): New function type.
- * config/i386/i386-c.c: Define __MWAITX__ if needed.
- * config/i386/i386.c (ix86_target_string): Define -mmwaitx option.
- (PTA_MWAITX): New.
- (ix86_option_override_internal): Handle new option.
- (processor_alias_table): Added PTA_MWAITX.
- (ix86_valid_target_attribute_inner_p): Add OPT_mmwaitx.
- (ix86_builtins): Add IX86_BUILTIN_MWAITX, IX86_BUILTIN_MONITORX.
- (ix86_expand_builtin): Handle IX86_BUILTIN_MWAITX and
- IX86_BUILTIN_MONITORX built-ins.
- * config/i386/i386.h (TARGET_MWAITX): New.
- * config/i386/i386.md (unspecv): Add UNSPEC_MWAITX and
- UNSPEC_MONITORX.
- (mwaitx): New pattern.
- (monitorx_<mode>): New pattern.
- * config/i386/x86intrin.h: Include mwaitxintrin.h.
- * doc/extend.texi: Document monitorx and mwaitx builtins.
- * doc/invoke.texi: Document -mmwaitx option.
- 2015-06-17 Jakub Jelinek <jakub@redhat.com>
- PR middle-end/66429
- * omp-low.c (expand_omp_taskreg, expand_omp_target): Use child_cfun
- instead of DECL_STRUCT_FUNCTION (child_fn). Or in has_simduid_loops
- and has_force_vectorize_loops flags from cfun into
- child_cfun.
- (expand_omp_simd): For broken loop, set cfun->has_simduid_loops
- if simduid is non-NULL.
- * tree-pass.h (make_pass_simduid_cleanup): New prototype.
- * passes.def (pass_simduid_cleanup): Add new pass after loop
- passes.
- * tree-vectorizer.c (adjust_simduid_builtins): Remove one unnecessary
- indirection from htab argument's type.
- (shrink_simd_arrays): New function.
- (vectorize_loops): Use it. Adjust adjust_simduid_builtins caller.
- Don't call adjust_simduid_builtins if there are no loops.
- (pass_data_simduid_cleanup, pass_simduid_cleanup): New variables.
- (pass_simduid_cleanup::execute): New method.
- (make_pass_simduid_cleanup): New function.
- 2015-06-17 Ilya Enkovich <ilya.enkovich@intel.com>
- Backport from mainline r223929.
- 2015-06-01 Ilya Enkovich <ilya.enkovich@intel.com>
- PR target/65527
- * cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): Add
- redirection for instrumented calls.
- * lto-wrapper.c (merge_and_complain): Merge -fcheck-pointer-bounds.
- (append_compiler_options): Append -fcheck-pointer-bounds.
- * tree-chkp.h (chkp_copy_call_skip_bounds): New.
- (chkp_redirect_edge): New.
- * tree-chkp.c (chkp_copy_call_skip_bounds): New.
- (chkp_redirect_edge): New.
- 2015-06-17 Ilya Enkovich <ilya.enkovich@intel.com>
- Backport from mainline r224063.
- 2015-06-03 Ilya Enkovich <ilya.enkovich@intel.com>
- * ipa.c (symbol_table::remove_unreachable_nodes): Don't
- remove instumentation thunks calling reachable functions.
- * lto-cgraph.c (output_refs): Always output IPA_REF_CHKP.
- * lto/lto-partition.c (privatize_symbol_name_1): New.
- (privatize_symbol_name): Privatize both decl and orig_decl
- names for instrumented functions.
- * cgraph.c (cgraph_node::verify_node): Add transparent
- transparent alias chain check for instrumented node.
- 2015-06-16 Jim Wilson <jim.wilson@linaro.org>
- Backport from mainline
- 2015-06-02 Jim Wilson <jim.wilson@linaro.org>
- PR target/66258
- * config/aarch64/aarch64.c (aarch64_function_value_regno_p): Change
- !TARGET_GENERAL_REGS_ONLY to TARGET_FLOAT.
- (aarch64_secondary_reload): Likewise
- (aarch64_expand_builtin_va_start): Change TARGET_GENERAL_REGS_ONLY
- to !TARGET_FLOAT.
- (aarch64_gimplify_va_arg_expr, aarch64_setup_incoming_varargs):
- Likewise.
- 2015-06-16 Richard Biener <rguenther@suse.de>
- Revert
- 2015-06-01 Richard Biener <rguenther@suse.de>
- Backport from mainline
- 2015-05-26 Michael Matz <matz@suse.de>
- PR middle-end/66251
- * tree-vect-stmts.c (vect_create_vectorized_demotion_stmts): Always set
- STMT_VINFO_VEC_STMT, also with SLP.
- 2015-05-22 Richard Biener <rguenther@suse.de>
- PR tree-optimization/66251
- * tree-vect-stmts.c (vectorizable_conversion): Properly
- set STMT_VINFO_VEC_STMT even for the SLP case.
- 2015-06-11 Pierre-Marie de Rodat <derodat@adacore.com>
- Backport from mainline:
- 2015-06-11 David Edelsohn <dje.gcc@gmail.com>
- * dbxout.c (xcoff_debug_hooks): Provide a function for
- register_main_translation_unit hook.
- 2015-06-11 John David Anglin <danglin@gcc.gnu.org>
- * config/pa/pa.c (pa_output_global_address): Handle LABEL_REF plus
- CONST_INT for goto.
- 2015-06-11 Eric Botcazou <ebotcazou@adacore.com>
- PR bootstrap/66252
- * config/sparc/sparc.c (hard_regno_mode_classes): Add ??? comment.
- * config/sparc/sparc.md (zero_extendsidi2_insn_sp32): Use single order.
- (*addx_extend_sp32): Fix pasto.
- (*subx_extend): Rename into...
- (*subx_extend_sp32): ...this.
- (*adddi3_extend_sp32): Add earlyclobber.
- (*subdi3_insn_sp32): Likewise.
- (*subdi3_extend_sp32): Likewise.
- (*and_not_di_sp32): Likewise.
- (*or_not_di_sp32): Likewise.
- (*xor_not_di_sp32): Likewise.
- (*negdi2_sp32): Likewise.
- (*one_cmpldi2_sp32): Likewise.
- 2015-06-11 Pierre-Marie de Rodat <derodat@adacore.com>
- * debug.h (struct gcc_debug_hooks): Add a
- register_main_translation_unit hook.
- * debug.c (do_nothing_debug_hooks): Provide a function for this
- new hook.
- * dbxout.c (dbx_debug_hooks): Likewise.
- * sdbout.c (sdb_debug_hooks): Likewise.
- * vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
- * dwarf2out.c (main_translation_unit): New global variable.
- (dwarf2out_register_main_translation_unit): New function
- implementing the new hook.
- (dwarf2_debug_hooks): Assign
- dwarf2out_register_main_translation_unit to this new hook.
- (dwarf2out_init): Associate any main translation unit to
- comp_unit_die ().
- 2015-06-10 Uros Bizjak <ubizjak@gmail.com>
- PR target/66473
- * config/i386/i386.c (ix86_expand_vector_set): Use gen_int_mode
- to prepare mask operand for AVX512 modes.
- 2015-06-10 Michael Meissner <meissner@linux.vnet.ibm.com>
- Backport from mainline:
- 2015-06-10 Michael Meissner <meissner@linux.vnet.ibm.com>
- PR target/66474
- * doc/md.texi (Machine Constraints): Document that on the PowerPC
- if you use a constraint that targets a VSX register, you must use
- %x<n> in the template.
- 2015-06-10 Jakub Jelinek <jakub@redhat.com>
- PR target/66470
- * config/i386/i386.c (ix86_split_long_move): For collisions
- involving direct tls segment refs, move the UNSPEC_TP possibly
- wrapped in ZERO_EXTEND out of the address for lea, to each of
- the memory loads.
- 2015-06-08 Uros Bizjak <ubizjak@gmail.com>
- Backport from mainline:
- 2015-06-03 Uros Bizjak <ubizjak@gmail.com>
- PR target/66275
- * config/i386/i386.c (ix86_function_arg_regno): Use ix86_cfun_abi
- to determine current function ABI.
- (ix86_function_value_regno_p): Ditto.
- 2015-06-08 Tom de Vries <tom@codesourcery.com>
- backport from mainline:
- 2015-06-08 Tom de Vries <tom@codesourcery.com>
- PR rtl-optimization/66444
- * postreload.c (reload_combine): Use get_call_reg_set_usage instead of
- call_used_regs.
- 2015-06-08 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
- * config/i386/sse.md (sse3_mwait): Swap the operand constriants.
- 2015-06-06 John David Anglin <danglin@gcc.gnu.org>
- PR bootstrap/66319
- * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Rearrange builtin
- defines. Define _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE for c++.
- Define _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for c++ if unix95 or
- later.
- * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Likewise.
- Define _INCLUDE_STDC_SOURCE_PRE_199901, _INCLUDE_STDC_SOURCE_199901,
- _INCLUDE_XOPEN_SOURCE_PRE_500, _INCLUDE_XOPEN_SOURCE_520,
- _INCLUDE_XOPEN_SOURCE_PRE_600 and _INCLUDE_XOPEN_SOURCE_600 for c++
- and non iso if unix2003.
- 2015-06-03 Richard Biener <rguenther@suse.de>
- Backport from mainline
- 2015-06-02 Richard Biener <rguenther@suse.de>
- PR debug/65549
- * dwarf2out.c (lookup_context_die): New function.
- (resolve_addr): Avoid forcing a full DIE for the
- target of a DW_TAG_GNU_call_site during late compilation.
- Instead create a stub DIE without a type if we have a
- context DIE present.
- 2015-06-01 Richard Biener <rguenther@suse.de>
- PR tree-optimization/66280
- * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Fix pattern
- def-use walking.
- 2015-05-27 Richard Biener <rguenther@suse.de>
- PR tree-optimization/66272
- Revert parts of
- 2014-08-15 Richard Biener <rguenther@suse.de>
- PR tree-optimization/62031
- * tree-data-ref.c (dr_analyze_indices): Do not set
- DR_UNCONSTRAINED_BASE.
- (dr_may_alias_p): All indirect accesses have to go the
- formerly DR_UNCONSTRAINED_BASE path.
- * tree-data-ref.h (struct indices): Remove
- unconstrained_base member.
- (DR_UNCONSTRAINED_BASE): Remove.
- 2015-05-21 Richard Biener <rguenther@suse.de>
- PR c++/66211
- * match.pd: Guard pattern optimzing (int)(float)int
- conversions to apply only on GIMPLE.
- 2015-05-13 Richard Biener <rguenther@suse.de>
- PR tree-optimization/66123
- * tree-ssa-dom.c (propagate_rhs_into_lhs): Check if we found
- a taken edge.
- 2015-06-02 Renlin Li <renlin.li@arm.com>
- Backport from mainline
- 2015-04-30 Renlin Li <renlin.li@arm.com>
- * config/aarch64/aarch64-simd.md (vec_shr): Defined as an unspec.
- * config/aarch64/iterators.md (unspec): Add UNSPEC_VEC_SHR.
- 2015-06-02 Marek Polacek <polacek@redhat.com>
- Backport from mainline
- 2015-06-02 Marek Polacek <polacek@redhat.com>
- PR middle-end/66345
- * gimple-fold.c (gimple_fold_builtin_snprintf): Return false if
- get_maxval_strlen does not produce an INTEGER_CST.
- 2015-06-02 Alan Modra <amodra@gmail.com>
- * config/rs6000/vsx.md (vsx_extract_v4sf): Revert accidental
- 2014-08-11 change.
- 2015-06-01 Dominik Vogt <vogt@linux.vnet.ibm.com>
- Backport from mainline
- 2015-05-29 Dominik Vogt <vogt@linux.vnet.ibm.com>
- PR target/66215
- * config/s390/s390.c (s390_reorg): Fix placement of post-label NOPs
- with -mhotpatch=.
- 2015-06-01 Richard Biener <rguenther@suse.de>
- Backport from mainline
- 2015-05-26 Michael Matz <matz@suse.de>
- PR middle-end/66251
- * tree-vect-stmts.c (vect_create_vectorized_demotion_stmts): Always set
- STMT_VINFO_VEC_STMT, also with SLP.
- 2015-05-22 Richard Biener <rguenther@suse.de>
- PR tree-optimization/66251
- * tree-vect-stmts.c (vectorizable_conversion): Properly
- set STMT_VINFO_VEC_STMT even for the SLP case.
- 2015-05-28 Mike Frysinger <vapier@gentoo.org>
- * config/nios2/linux.h (CPP_SPEC): Define.
- 2015-05-28 Mike Frysinger <vapier@gentoo.org>
- * config/microblaze/linux.h (CPP_SPEC): Define.
- 2015-05-28 Mike Frysinger <vapier@gentoo.org>
- * config/pa/pa-linux.h (CPP_SPEC): Change so -D_REENTRANT is used when
- -pthread is specified.
- 2015-05-27 John David Anglin <danglin@gcc.gnu.org>
- PR target/66148
- * config/pa/pa.c (pa_emit_move_sequence): Correct placement of
- REG_EQUAL note when doing insert.
- 2015-05-27 Richard Biener <rguenther@suse.de>
- Backport from mainline
- 2015-05-12 Richard Biener <rguenther@suse.de>
- PR tree-optimization/66101
- * tree-ssa-dce.c (remove_dead_stmt): Properly mark loops for
- fixup if we turn a loop exit edge to a fallthru edge.
- 2015-05-26 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/65979
- * config/sh/sh.md (tstsi_t peephole2): Use gen_rtx_SET and
- take into account the case that operands[1] and operands[2]
- are the same register.
- 2015-05-22 Jakub Jelinek <jakub@redhat.com>
- Backported from mainline
- 2015-05-21 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/66233
- * match.pd (ocvt (icvt@1 @0)): Don't handle vector types.
- Simplify.
- 2015-05-19 Jakub Jelinek <jakub@redhat.com>
- PR middle-end/66199
- * tree.h (OMP_TEAMS_COMBINED): Define.
- * gimplify.c (enum gimplify_omp_var_data): Add
- GOVD_LINEAR_LASTPRIVATE_NO_OUTER.
- (enum omp_region_type): Add ORT_COMBINED_TEAMS.
- (omp_notice_variable): Accept both ORT_TEAMS
- and ORT_COMBINED_TEAMS. Don't recurse if
- GOVD_LINEAR_LASTPRIVATE_NO_OUTER is set and either
- GOVD_LINEAR is set, or GOVD_LASTPRIVATE without
- GOVD_FIRSTPRIVATE.
- (omp_no_lastprivate): New function.
- (gimplify_scan_omp_clauses): For OMP_CLAUSE_LASTPRIVATE
- and OMP_CLAUSE_LINEAR, if omp_no_lastprivate, don't
- notice_outer and set appropriate bits, otherwise make
- sure default(none) combined constructs won't complain.
- (gimplify_adjust_omp_clauses): Remove OMP_CLAUSE_LINEAR
- outer special casing, for OMP_CLAUSE_LASTPRIVATE if
- omp_no_lastprivate either remove the clause or turn it
- into OMP_CLAUSE_PRIVATE.
- (gimplify_omp_for): Fix up handling of implicit
- lastprivate or linear iterators.
- (gimplify_omp_workshare): For OMP_TEAMS_COMBINED use
- ORT_COMBINED_TEAMS.
- * omp-low.c (lower_omp_for_lastprivate): For combined
- for simd use fd.loop.n2 from the for rather than simd.
- 2015-05-13 Jakub Jelinek <jakub@redhat.com>
- PR middle-end/66133
- * omp-low.c (expand_omp_taskreg): For GIMPLE_OMP_TASK expansion,
- make sure it is never noreturn, even when the task body does not
- return.
- (lower_omp_taskreg): For GIMPLE_OMP_TASK, emit GIMPLE_OMP_CONTINUE
- right before GIMPLE_OMP_RETURN.
- (make_gimple_omp_edges): Accept GIMPLE_OMP_CONTINUE as ->cont
- for GIMPLE_OMP_TASK. For GIMPLE_OMP_RETURN corresponding to
- GIMPLE_OMP_TASK add an EDGE_ABNORMAL edge from entry to exit.
- 2015-05-21 Sandra Loosemore <sandra@codesourcery.com>
- Backport from mainline r223418:
- * config.gcc [powerpc*-*-linux*]: Allow --enable-targets=all
- to build a biarch toolchain again.
- 2015-05-21 Ilya Enkovich <enkovich.gnu@gmail.com>
- Backport from mainline r223471
- 2015-05-21 Ilya Enkovich <enkovich.gnu@gmail.com>
- PR middle-end/66221
- * ipa-chkp.c (chkp_copy_function_type_adding_bounds): Use
- build_distinct_type_copy to copy bounds.
- 2015-05-19 Uros Bizjak <ubizjak@gmail.com>
- PR target/66174
- * config/i386/i386.c (expand_vec_perm_blend): Enable HImode and
- QImode inner modes for TARGET_AVX512BW. Force mask operand
- to a register for AVX512F modes.
- 2015-04-16 Jan Hubicka <hubicka@ucw.cz>
- PR target/66047
- * i386.c (ix86_function_sseregparm): Only return -1 if local function
- with implied regparm is called from -mno-sse function.
- (init_cumulative_args): Output error if ix86_function_sseregparm
- return -1 and SSE register would be needed.
- (function_arg_advance_32): Likewise.
- (function_arg_32): Likewise.
- * i386.h (ix86_args): Add decl field.
- 2015-04-16 Jan Hubicka <hubicka@ucw.cz>
- PR target/66047
- * i386.c (ix86_function_sseregparm): Only return -1 if local function
- with implied regparm is called from -mno-sse function.
- (init_cumulative_args): Output error if ix86_function_sseregparm
- return -1 and SSE register would be needed.
- (function_arg_advance_32): Likewise.
- (function_arg_32): Likewise.
- * i386.h (ix86_args): Add decl field.
- * gcc.target/i386/pr66047.c: New testcase.
- 2015-04-16 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65873
- * ipa-inline.c (can_inline_edge_p): Allow early inlining of always
- inlines across optimization boundary; be tolerant about COMDAT;
- allow inlining across -fstrict-aliasing boundary.
- 2015-05-16 Segher Boessenkool <segher@kernel.crashing.org>
- Backport from mainline
- 2015-05-13 Segher Boessenkool <segher@kernel.crashing.org>
- PR rtl-optimization/30967
- * config/rs6000/rs6000.c (rs6000_rtx_costs): Don't consider
- destination mode for the cost of scc patterns.
- 2015-05-16 Uros Bizjak <ubizjak@gmail.com>
- PR target/66140
- * config/alpha/alpha.c (get_aligned_mem): Also look for reload
- replacements in memory addresses.
- (get_unaligned_address): Ditto.
- 2015-05-13 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- Backport from mainline
- 2015-05-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- PR target/65955
- * config/arm/arm.md (movcond_addsi): Check that operands[2] is a
- REG before taking its REGNO.
- 2015-05-12 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/2827.md: Split zEC12_simple into zEC12_simple_int
- and zEC12_simple_fp.
- * config/s390/s390.c (s390_issue_rate): Set issue rate for zEC12
- to 1.
- 2015-05-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- Backport from mainline
- 2015-04-21 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * common/config/aarch64/aarch64-common.c (AARCH64_CPU_NAME_LENGTH):
- Increase to 128.
- (aarch64_rewrite_selected_cpu): Do not chop off extensions starting
- at '.'. Assert that there's enough space for everything.
- 2015-05-12 Yvan Roux <yvan.roux@linaro.org>
- Backport from mainline.
- 2015-05-05 Yvan Roux <yvan.roux@linaro.org>
- * config/aarch64/aarch64-elf-raw.h (CA53_ERR_843419_SPEC): Define.
- (LINK_SPEC): Include CA53_ERR_843419_SPEC.
- * config/aarch64/aarch64-linux.h (CA53_ERR_843419_SPEC): Define.
- (LINK_SPEC): Include CA53_ERR_843419_SPEC.
- * config/aarch64/aarch64.opt (mfix-cortex-a53-843419): New option.
- * configure: Regenerate.
- * configure.ac: Add --enable-fix-cortex-a53-843419 option.
- * doc/install.texi (aarch64*-*-*): Document new
- --enable-fix-cortex-a53-843419 option.
- * doc/invoke.texi (AArch64 Options): Document -mfix-cortex-a53-843419
- and -mno-fix-cortex-a53-843419 options.
- 2015-05-11 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/i386.c (ix86_loop_unroll_adjust): Use PATTERN (insn)
- when looking for memory references.
- 2015-05-11 Jakub Jelinek <jakub@redhat.com>
- PR target/65780
- * config/s390/linux.h (TARGET_BINDS_LOCAL_P): Define to
- default_binds_local_p_2.
- * config/arm/linux-elf.h (TARGET_BINDS_LOCAL_P): Likewise.
- * config/aarch64/aarch64-linux.h (TARGET_BINDS_LOCAL_P): Likewise.
- 2015-05-07 Uros Bizjak <ubizjak@gmail.com>
- PR target/66015
- * config/alpha/alpha.c (alpha_override_options_after_change): New.
- (TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): New.
- (alpha_override_options): Move align_loops, align_jumps and
- align_functions handling into alpha_override_options_after_change.
- 2015-05-06 Uros Bizjak <ubizjak@gmail.com>
- PR target/65990
- * config/i386/i386.c (ix86_parse_stringop_strategy_string): Error out
- if rep_8byte stringop strategy was specified for 32-bit target.
- 2015-05-06 Christian Bruel <christian.bruel@st.com>
- PR target/66015
- * config/aarch64/aarch64.c (aarch64_override_options): Move align_loops,
- align_jumps, align_functions into aarch64_override_options_after_change.
- 2015-05-05 Peter Bergner <bergner@vnet.ibm.com>
- Backport from mainline.
- 2015-04-27 Peter Bergner <bergner@vnet.ibm.com>
- PR target/64579
- * config/rs6000/htm.md: Remove all define_expands.
- (UNSPECV_HTM_TABORTDC, UNSPECV_HTM_TABORTDCI, UNSPECV_HTM_TABORTWC,
- UNSPECV_HTM_TABORTWCI): Remove.
- (UNSPECV_HTM_TABORTXC, UNSPECV_HTM_TABORTXCI, UNSPECV_HTM_TTEST): New.
- (tabort_internal, tbegin_internal, tcheck_internal, tend_internal,
- trechkpt_internal, treclaim_internal, tsr_internal): Rename from this...
- (tabort, tbegin, tcheck, tend, trechkpt, treclaim, tsr): ...to this.
- (tabortdc_internal, tabortdci_internal, tabortwc_internal,
- tabortwci_internal): Remove define_insns.
- (tabort<wd>c, tabort<wd>ci): New define_insns.
- (tabort): Use gpc_reg_operand.
- (tcheck): Remove operand.
- (htm_mfspr_<mode>, htm_mtspr_<mode>): Use GPR mode macro.
- * config/rs6000/htmxlintrin.h (__TM_end): Use _HTM_TRANSACTIONAL as
- expected value.
- * config/rs6000/rs6000-builtin.def (BU_HTM_SPR0): Remove.
- (BU_HTM_SPR1): Rename to BU_HTM_V1. Remove use of RS6000_BTC_SPR.
- (tabort, tabortdc, tabortdci, tabortwc, tabortwci, tbegin,
- tcheck, tend, tendall, trechkpt, treclaim, tresume, tsuspend,
- tsr, ttest): Pass in the RS6000_BTC_CR attribute.
- (get_tfhar, set_tfhar, get_tfiar, set_tfiar, get_texasr, set_texasr,
- get_texasru, set_texasru): Pass in the RS6000_BTC_SPR attribute.
- (tcheck): Remove builtin argument.
- * config/rs6000/rs6000.c (rs6000_htm_spr_icode): Use TARGET_POWERPC64
- not TARGET_64BIT.
- (htm_expand_builtin): Fix usage of expandedp. Disallow usage of the
- tabortdc and tabortdci builtins when not in 64-bit mode.
- Modify code to handle the loss of the HTM define_expands.
- Emit code to copy the CR register to TARGET.
- (htm_init_builtins): Modify code to handle the loss of the HTM
- define_expands.
- * config/rs6000/rs6000.h (RS6000_BTC_32BIT): Delete.
- (RS6000_BTC_64BIT): Likewise.
- (RS6000_BTC_CR): New macro.
- * doc/extend.texi: Update documentation for htm builtins.
- 2015-05-04 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65984
- * ubsan.c: Include tree-cfg.h.
- (instrument_bool_enum_load): Use stmt_ends_bb_p instead of
- stmt_could_throw_p test, rename can_throw variable to ends_bb.
- * Makefile.in (PATCHLEVEL_c): New variable.
- (DATESTAMP_s, REVISION_s): If PATCHLEVEL_c is not 0,
- expand the same way as if DEVPHASE_c was non-empty.
- 2015-05-04 Kai Tietz <ktietz@redhat.com>
- Backmerge from trunk.
- PR lto/65559
- * lto-wrapper.c (run_gcc): Open filename
- in binary-mode.
- 2015-04-30 Paolo Carlini <paolo.carlini@oracle.com>
- PR c++/65801
- * doc/invoke.texi ([-Wnarrowing]): Update.
- 2015-04-30 Alan Modra <amodra@gmail.com>
- PR target/65408
- PR target/58744
- PR middle-end/36043
- * calls.c (load_register_parameters): Don't load past end of
- mem unless suitably aligned.
- 2015-04-27 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65875
- * tree-vrp.c (update_value_range): If in is_new case setting
- old_vr to VR_VARYING, also set new_vr to it. Remove
- old_vr->type == VR_VARYING test.
- (vrp_visit_phi_node): Return SSA_PROP_VARYING instead of
- SSA_PROP_INTERESTING if update_value_range returned true,
- but new range is VR_VARYING.
- 2015-04-27 Georg-Johann Lay <avr@gjlay.de>
- Backport from 2015-04-27 trunk r222459.
- PR target/65296
- PR target/65895
- * config/avr/gen-avr-mmcu-specs.c (print_mcu): Close file.
- Add hint how to use own spec file.
- 2015-04-24 Michael Meissner <meissner@linux.vnet.ibm.com>
- Backport from mainline
- 2015-04-24 Michael Meissner <meissner@linux.vnet.ibm.com>
- PR target/65849
- * config/rs6000/rs6000.opt (-mvsx-align-128): Make options that
- save to independent variables use the Save attribute. This will
- allow these options to be modified with the #pragma/attribute
- target support.
- (-mallow-movmisalign): Likewise.
- (-mallow-df-permute): Likewise.
- (-msched-groups): Likewise.
- (-malways-hint): Likewise.
- (-malign-branch-targets): Likewise.
- (-mvectorize-builtins): Likewise.
- (-msave-toc-indirect): Likewise.
- * config/rs6000/rs6000.c (rs6000_opt_masks): Add more options that
- can be set via the #pragma/attribute target support.
- (rs6000_opt_vars): Likewise.
- (rs6000_inner_target_options): If VSX was set, also set
- -mno-avoid-indexed-addresses.
- 2015-04-24 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- Backport from mainline r222385
- 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- * config/rs6000/altivec.md (*altivec_lvx_<mode>_internal): Remove
- asterisk from name so this can be generated directly.
- (*altivec_stvx_<mode>_internal): Likewise.
- * config/rs6000/rs6000.c (rs6000_emit_le_vsx_store): Add assert
- that this is never called during or after reload/lra.
- (rs6000_frame_related): Remove split_reg
- argument and logic that references it.
- (emit_frame_save): Remove last parameter from call to
- rs6000_frame_related.
- (rs6000_emit_prologue): Remove last parameter from eight calls to
- rs6000_frame_related. Force generation of stvx instruction for
- Altivec register saves. Remove split_reg handling, which is no
- longer needed.
- (rs6000_emit_epilogue): Force generation of lvx instruction for
- Altivec register restores.
- 2015-04-24 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/sse.md (*vec_widen_smult_even_v8si<mask_name>):
- Mark operand1 commutative.
- 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- Backport from mainline r222362
- 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- * config/rs6000/crypto.md (crypto_vpmsum<CR_char>): Change
- TARGET_CRYPTO to TARGET_P8_VECTOR>
- (crypto_vpermxor_<mode>): Likewise.
- * config/rs6000/rs6000-builtin.def (BU_CRYPTO_2A): New #define.
- (BU_CRYPTO_3A): Likewise.
- (BU_CRYPTO_OVERLOAD_2A): Rename from BU_CRYPTO_OVERLOAD_2.
- (BU_CRYPTO_OVERLOAD_3A): New #define.
- (VPMSUMB): Change from BU_CRYPTO_2 to BU_CRYPTO_2A.
- (VPMSUMH): Likewise.
- (VPMSUMW): Likewise.
- (VPMSUMD): Likewise.
- (VPERMXOR_V2DI): Change from BU_CRYPTO_3 to BU_CRYPTO_3A.
- (VPERMXOR_V4SI): Likewise.
- (VPERMXOR_V8HI): Likewise.
- (VPERMXOR_V16QI): Likewise.
- (VPMSUM): Change from BU_CRYPTO_OVERLOAD_2 to
- BU_CRYPTO_OVERLOAD_2A.
- (VPERMXOR): Change from BU_CRYPTO_OVERLOAD3 to
- BU_CRYPTO_OVERLOAD_3A.
- * config/rs6000/rs6000.opt (mcrypto): Change description of
- option.
- Backport from mainline r222362
- 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- * config/rs6000/rs6000.opt (mcrypto): Change option description to
- match category changes in ISA 2.07B.
- 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- Backport from mainline r222351
- 2015-04-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- * config/rs6000/rs6000.c (rtx_is_swappable_p): Commentary
- adjustments.
- (insn_is_swappable_p): Return 1 for a convert from double to
- single precision when all of its uses are splats of BE element
- zero.
- 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- Backport from mainline r222349
- 2015-04-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- PR target/65456
- * config/rs6000/rs6000.c (rs6000_option_override_internal): For
- VSX + POWER8, enable TARGET_ALLOW_MOVMISALIGN and
- TARGET_EFFICIENT_UNALIGNED_VSX if not selected by command line
- option.
- (rs6000_builtin_mask_for_load): Return 0 for targets with
- efficient unaligned VSX accesses so that the vectorizer will use
- direct unaligned loads.
- (rs6000_builtin_support_vector_misalignment): Always return true
- for targets with efficient unaligned VSX accesses.
- (rs6000_builtin_vectorization_cost): Cost of unaligned loads and
- stores on targets with efficient unaligned VSX accesses is almost
- always the same as the cost of an aligned load or store, so model
- it that way.
- * config/rs6000/rs6000.h (SLOW_UNALIGNED_ACCESS): Return 0 for
- unaligned vectors if we have efficient unaligned VSX accesses.
- * config/rs6000/rs6000.opt (mefficient-unaligned-vector): New
- undocumented option.
- 2015-04-23 Vladimir Makarov <vmakarov@redhat.com>
- Backport from trunk r222223.
- 2015-04-19 Vladimir Makarov <vmakarov@redhat.com>
- PR rtl-optimization/65805
- * lra-eliminations.c (lra_eliminate_regs_1): Add new assert.
- Don't use difference of offset and previous offset if
- update_sp_offset is non-zero.
- (eliminate_regs_in_insn): Ditto.
- * lra-spills.c (remove_pseudos): Exchange 4th and 6th args in
- lra_eliminate_regs_1 call.
- * lra-constraints.c (get_equiv_with_elimination): Ditto.
- 2015-04-22 Georg-Johann Lay <avr@gjlay.de>
- Backport from trunk r222179.
- 2015-04-17 Sivanupandi Pitchumani <Pitchumani.Sivanupandi@atmel.com>
- PR target/65296
- * config/avr/gen-avr-mmcu-specs.c (*avrlibc_startfile): Adjust
- to new AVR-LibC file layout (bug #44574).
- (*avrlibc_devicelib): Same.
- * config/avr/avr-mcus.def: Adjust comments.
- * config/avr/avr.opt (nodevicelib): Adjust help.
- 2015-04-22 Jakub Jelinek <jakub@redhat.com>
- * BASE-VER: Set to 5.1.1.
- 2015-04-22 Release Manager
- * GCC 5.1.0 released.
- 2015-04-20 Jakub Jelinek <jakub@redhat.com>
- PR debug/65807
- * dwarf2out.c (add_AT_wide): Clear attr.dw_attr_val.val_entry.
- 2015-04-18 Gerald Pfeifer <gerald@pfeifer.com>
- * doc/plugins.texi: Rewrite first introductory paragraph.
- 2015-04-17 H.J. Lu <hongjiu.lu@intel.com>
- PR target/65780
- * config/i386/i386.c (ix86_binds_local_p): Define only if
- TARGET_MACHO and TARGET_DLLIMPORT_DECL_ATTRIBUTES are false.
- 2015-04-17 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- Jakub Jelinek <jakub@redhat.com>
- PR target/65787
- * config/rs6000/rs6000.c (rtx_is_swappable_p): Remove previous
- fix; ensure that a subsequent SH_NONE operand does not overwrite
- an existing *special value.
- 2015-04-17 H.J. Lu <hongjiu.lu@intel.com>
- PR target/65780
- * output.h (default_binds_local_p_3): New.
- * varasm.c (default_binds_local_p_3): Make it public. Take an
- argument to indicate if common symbol may be local. If common
- symbol may be local, treat non-external variable as defined
- locally.
- (default_binds_local_p_2): Pass !flag_pic to default_binds_local_p_3.
- (default_binds_local_p_1): Pass false to default_binds_local_p_3.
- * config/i386/i386.c (ix86_binds_local_p): New.
- (TARGET_BINDS_LOCAL_P): Replace default_binds_local_p_2 with
- ix86_binds_local_p.
- 2015-04-17 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- PR target/65787
- * config/rs6000/rs6000.c (rtx_is_swappable_p): Handle case where
- vec_extract operation is wrapped in a PARALLEL with a CLOBBER.
- (adjust_extract): Likewise.
- 2015-04-17 Jakub Jelinek <jakub@redhat.com>
- PR debug/65771
- * dwarf2out.c (loc_list_from_tree): Return NULL
- for DEBUG_EXPR_DECL.
- 2015-04-15 Jakub Jelinek <jakub@redhat.com>
- PR ipa/65765
- * ipa-icf-gimple.c (func_checker::compare_bb): For GIMPLE_NOP
- and GIMPLE_PREDICT use break instead of return true. For
- GIMPLE_EH_DISPATCH, compare dispatch region.
- 2015-04-14 Jakub Jelinek <jakub@redhat.com>
- PR rtl-optimization/65761
- * cfgrtl.c (rtl_split_edge): For EDGE_CROSSING split, use
- get_last_bb_insn (after) instead of NEXT_INSN (BB_END (after)).
- 2015-04-13 Jan Hubicka <hubicka@ucw.cz>
- Gerald Pfeifer <gerald@pfeifer.com>
- * doc/contrib.texi (Contributors): Add Martin Jambor and
- Michael Matz.
- 2015-04-12 Jakub Jelinek <jakub@redhat.com>
- * BASE-VER: Set to 5.0.1.
- * DEV-PHASE: Set to prerelease.
- PR tree-optimization/65747
- * ipa-icf-gimple.c (func_checker::compare_operand): Use compare_operand
- rather than compare_ssa_name for OBJ_TYPE_REF_OBJECT.
- 2015-04-12 Gerald Pfeifer <gerald@pfeifer.com>
- * doc/invoke.texi (-Wmemset-transposed-args): Break a long
- sentence. Improve grammar.
- 2015-04-12 Gerald Pfeifer <gerald@pfeifer.com>
- * doc/contrib.texi (Contributors): Add Maxim Kuvyrkov.
- 2015-04-11 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65743
- * ipa-inline-transform.c (speculation_removed): Remove static var.
- (check_speculations): New function.
- (clone_inlined_nodes): Do not check spculations.
- (inline_call): Call check_speculations.
- * ipa-prop.c (ipa_make_edge_direct_to_target): Do not
- consider non-invariants.
- 2015-04-11 Jan Hubicka <hubicka@ucw.cz>
- Martin Liska <mliska@suse.cz>
- PR ipa/65722
- * ipa-icf.c (sem_item::compare_cgraph_references): function and
- variable can not match.
- (sem_item::update_hash_by_addr_refs): Fix handling of virtual tables.
- (sem_variable::equals_wpa): Fix checking of DECL_FINAL_P patch.
- 2015-04-11 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65735
- * tree-ssa-threadedge.c (fsm_find_control_statement_thread_paths):
- Remove visited_phis argument, add visited_bbs, avoid recursing into the
- same bb rather than just into the same phi node.
- (thread_through_normal_block): Adjust caller.
- 2015-04-11 Gerald Pfeifer <gerald@pfeifer.com>
- * doc/contrib.texi (Contributors): Add Ira Rosen.
- 2015-04-11 Benno Schulenberg <bensberg@justemail.net>
- * gcov.c (find_source): Fix miswording in error message.
- * config/i386/i386.c (ix86_handle_cconv_attribute): Likewise.
- (ix86_expand_sse_comi_round): Fix typo in error message.
- 2015-04-11 Gerald Pfeifer <gerald@pfeifer.com>
- * doc/contrib.texi (Contributors): Add Laurynas Biveinis.
- 2015-04-10 Gerald Pfeifer <gerald@pfeifer.com>
- * doc/contrib.texi (Contributors): Update Joe Buck's entry.
- 2015-04-10 Vladimir Makarov <vmakarov@redhat.com>
- PR target/65710
- * lra-assigns.c (spill_for): Update smallest_bad_spills_num.
- Print bad_spills_num and insn_pseudos_num.
- 2015-04-10 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- PR target/65694
- * config/arm/arm.c (arm_canonicalize_comparison): Use ARM_SIGN_EXTEND
- when creating +1 values for SImode.
- 2015-04-10 Vladimir Makarov <vmakarov@redhat.com>
- PR target/65729
- * lra-constraints.c (prohibited_class_reg_set_mode_p): Comment the
- assert.
- 2015-04-10 Jakub Jelinek <jakub@redhat.com>
- Iain Sandoe <iain@codesourcery.com>
- PR target/65351
- * configure: Regenerate.
- 2015-04-09 Kirill Yukhin <kirill.yukhin@intel.com>
- PR target/65671
- * config/i386/sse.md: Generate vextract32x4 if AVX-512DQ is disabled.
- 2015-04-09 Gerald Pfeifer <gerald@pfeifer.com>
- * doc/contrib.texi (Contributors): Add John Marino.
- 2015-04-09 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65709
- * ubsan.c (instrument_mem_ref): Use TREE_TYPE (base) instead of
- TREE_TYPE (TREE_TYPE (t)).
- 2015-04-09 Vladimir Makarov <vmakarov@redhat.com>
- PR target/65710
- * lra-int.h (lra_bad_spill_regno_start): New.
- * lra.c (lra_bad_spill_regno_start): New.
- (lra): Set up lra_bad_spill_regno_start. Set up
- lra_constraint_new_regno_start unconditionally.
- * lra-assigns.c (spill_for): Use lra_bad_spill_regno_start for
- spill preferences.
- 2015-04-09 Marek Polacek <polacek@redhat.com>
- Jakub Jelinek <jakub@redhat.com>
- PR middle-end/65554
- * gimple-fold.c (gimple_fold_builtin_memory_op): Update comment.
- (fold_ctor_reference): Use STRIP_USELESS_TYPE_CONVERSION instead
- of STRIP_NOPS.
- 2015-04-09 Segher Boessenkool <segher@kernel.crashing.org>
- PR rtl-optimization/65693
- * combine.c (is_parallel_of_n_reg_sets): Move outside of
- #ifndef HAVE_cc0.
- 2015-04-09 Georg-Johann Lay <avr@gjlay.de>
- PR target/65296
- * config/avr/driver-avr.c (avr_devicespecs_file): Don't specify a
- device specs file if "device-specs%s" didn't resolve to a path.
- 2015-04-09 Kirill Yukhin <kirill.yukhin@intel.com>
- PR target/65676
- * config/i386/i386.c (fixup_modeless_constant): New.
- (ix86_expand_args_builtin): Fixup modeless constant operand.
- (ix86_expand_round_builtin): Ditto.
- (ix86_expand_special_args_builtin): Ditto.
- (ix86_expand_builtin): Ditto.
- 2015-04-09 Jakub Jelinek <jakub@redhat.com>
- PR target/65693
- * config/i386/i386.md (*udivmod<mode>4_pow2): Allow
- any pow2 integer in between 2 and 0x80000000U inclusive.
- 2015-04-08 Segher Boessenkool <segher@kernel.crashing.org>
- PR rtl-optimization/65693
- * combine.c (is_parallel_of_n_reg_sets): Change first argument
- from an rtx_insn * to an rtx.
- (try_combine): Adjust both callers. Use it once more.
- 2015-04-08 Ilya Enkovich <ilya.enkovich@intel.com>
- * tree-chkp.c (chkp_find_const_bounds_var): Remove.
- (chkp_make_static_const_bounds): Search existing
- symbol by assembler name. Use make_decl_one_only.
- (chkp_get_zero_bounds_var): Remove node search which
- is now performed in chkp_make_static_const_bounds.
- (chkp_get_none_bounds_var): Likewise.
- 2015-04-08 Michael Witten <mfwitten@gmail.com>
- * doc/extend.texi (Attribute Syntax): Add a trailing semicolon
- to an example.
- 2015-04-08 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
- * tree.h (CONVERT_EXPR_P): Commentary typo fix.
- 2015-04-08 Gerald Pfeifer <gerald@pfeifer.com>
- * doc/extend.texi (__sync Builtins): Fix grammar.
- 2015-04-08 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
- * doc/cfg.texi (GIMPLE statement iterators): Fix typo.
- 2015-04-08 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
- * varasm.c (emit_local): Move definition of align.
- 2015-04-08 Julian Brown <julian@codesourcery.com>
- * config/nvptx/mkoffload.c (process): Support variable mapping.
- 2015-03-27 Trevor Saunders <tbsaunde@tbsaunde.org>
- * config/alpha/alpha.c (alpha_use_linkage): Change type of slot to
- alpha_links **.
- (alpha_write_one_linkage): Correct typo.
- 2015-04-08 Ilya Enkovich <ilya.enkovich@intel.com>
- * ipa-comdats.c (propagate_comdat_group): Walk through thunks.
- 2015-04-08 Gerald Pfeifer <gerald@pfeifer.com>
- * doc/install.texi (bootstrap-lto-noplugin): Rewrite.
- 2015-04-08 Ilya Enkovich <ilya.enkovich@intel.com>
- * tree-chkp.h (chkp_insert_retbnd_call): New.
- * tree-chkp.c (chkp_insert_retbnd_call): New.
- * ipa-split.c (insert_bndret_call_after): Remove.
- (split_function): Use chkp_insert_retbnd_call.
- * cgraphunit.c (cgraph_node::expand_thunk): Build returned
- bounds for instrumented functions.
- 2015-04-07 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65540
- * calls.c (initialize_argument_information): When producing tail
- call also turn SSA_NAMES passed by references to original PARM_DECLs
- 2015-04-07 Vladimir Makarov <vmakarov@redhat.com>
- PR target/65648
- * lra-remat.c (do_remat): Process input and non-input insn
- registers separately.
- 2015-04-07 Jakub Jelinek <jakub@redhat.com>
- PR debug/65678
- * valtrack.c (debug_lowpart_subreg): New function.
- (dead_debug_insert_temp): Use it.
- PR middle-end/65680
- * expr.c (get_inner_reference): Handle bit_offset that doesn't fit
- into signed HOST_WIDE_INT the same as negative bit_offset.
- 2015-04-07 Ilya Enkovich <ilya.enkovich@intel.com>
- * ipa-comdats.c (ipa_comdats): Visit all thunks
- to set proper comdat group.
- 2015-04-07 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- PR target/65489
- * config/arm/arm.c (arm_legitimate_constant_p_1): Remove restriction
- on constants for NEON VSTRUCT modes.
- 2015-04-07 Jakub Jelinek <jakub@redhat.com>
- Iain Sandoe <iain@codesourcery.com>
- PR target/65351
- * configure: Regenerate.
- 2015-04-06 Michael Meissner <meissner@linux.vnet.ibm.com>
- PR target/65614
- * config/rs6000/rs6000.c (struct processor_costs): Add cost field
- for SF->DF conversions to make FLOAT_EXTEND more expensive, so
- that LFD is used to load double constants instead of LFS. Add
- defaults for all costs structures. Add comments for missing
- initialization fields.
- (size32_cost): Likewise.
- (size64_cost): Likewise.
- (rs64a_cost): Likewise.
- (mpccore_cost): Likewise.
- (ppc403_cost): Likewise.
- (ppc405_cost): Likewise.
- (ppc440_cost): Likewise.
- (ppc476_cost): Likewise.
- (ppc601_cost): Likewise.
- (ppc603_cost): Likewise.
- (ppc604_cost): Likewise.
- (ppc604e_cost): Likewise.
- (ppc620_cost): Likewise.
- (ppc630_cost): Likewise.
- (ppccell_cost): Likewise.
- (ppc750_cost): Likewise.
- (ppc7450_cost): Likewise.
- (ppc8540_cost): Likewise.
- (ppce300c2c3_cost): Likewise.
- (ppce500mc_cost): Likewise.
- (ppce500mc64_cost): Likewise.
- (ppce5500_cost): Likewise.
- (ppce6500_cost): Likewise.
- (titan_cost): Likewise.
- (power4_cost): Likewise.
- (power6_cost): Likewise.
- (power7_cost): Likewise.
- (power8_cost): Likewise.
- (ppca2_cost): Likewise.
- (rs6000_rtx_costs): Make FLOAT_EXTEND use SFDF_convert field.
- * config/rs6000/rs6000.md (extendsfdf2_fpr): Generate XSCPSGNDP
- instead of XXLOR to copy SFmode to clear out dirty bits created
- when SFmode denormals are generated.
- (mov<mode>_hardfloat, FMOVE32 case): Likewise.
- (truncdfsf2_fpr): Add support for ISA 2.07 XSRSP instruction.
- 2015-04-06 Evandro Menezes <e.menezes@samsung.com>
- * doc/invoke.texi (AARCH64/mtune): Add exynos-m1 as an option.
- * config/aarch64/aarch64-cores.def (exynos-m1): New core.
- * config/aarch64/aarch64-tune.md: Regenerate.
- 2015-04-06 Evandro Menezes <e.menezes@samsung.com>
- * doc/invoke.texi (ARM/mtune): Add "exynos-m1" as an option.
- * config/arm/arm.c (arm_issue_rate): Specify "3" for "exynosm1".
- * config/arm/arm-cores.def (exynos-m1): New core.
- * config/arm/arm-tune.md: Regenerate.
- * config/arm/arm-tables.opt: Add entry for "exynos-m1".
- * config/arm/bpabi.h: Likewise.
- 2015-04-06 Ilya Enkovich <ilya.enkovich@intel.com>
- * ipa-cp (set_single_call_flag): Remove too
- restrictive assert.
- 2015-04-06 Ilya Verbin <ilya.verbin@intel.com>
- * config/i386/intelmic-mkoffload.c (generate_host_descr_file): Call
- GOMP_offload_unregister from the destructor.
- 2015-04-06 Ilya Enkovich <ilya.enkovich@intel.com>
- * ipa-chkp.c (chkp_maybe_create_clone): Reset cdtor
- flags for instrumentation thunk.
- (chkp_produce_thunks): Likewise.
- 2015-04-05 Martin Liska <mliska@suse.cz>
- PR ipa/65665
- * ipa-icf.c (sem_function::equals_wpa): Verify that IPA CP
- has computed data structure.
- (sem_item_optimizer::update_hash_by_addr_refs): Likewise.
- 2015-04-04 Jan Hubicka <hubicka@ucw.cz>
- * invoke.texi (inline-unit-growth): Increase growth to 20%
- * params.def (PARAM_INLINE_UNIT_GROWTH): Likewise.
- 2015-04-04 Vladimir Makarov <vmakarov@redhat.com>
- PR target/65647
- * lra-int.h (LRA_MAX_REMATERIALIZATION_PASSES): New. Add its
- value checking.
- (lra_rematerialization_iter): New.
- * lra.c (lra): Initialize lra_rematerialization_iter.
- Stop updating lra_constraint_new_regno_start after switching of
- inheritance and rematerialization.
- * lra-remat.c (lra_rematerialization_iter): New.
- (lra_remat): Add printing pass iteration. Do rematerialization
- only first LRA_MAX_REMATERIALIZATION_PASSES iterations.
- 2015-04-04 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64909
- PR tree-optimization/65660
- * tree-vectorizer.h (vect_get_known_peeling_cost): Adjust
- to take a cost vector for scalar iteration cost.
- (vect_get_single_scalar_iteration_cost): Likewise.
- * tree-vect-loop.c (vect_get_single_scalar_iteration_cost):
- Compute the scalar iteration cost into a cost vector.
- (vect_get_known_peeling_cost): Use the scalar cost vector to
- account for the cost of the peeled iterations.
- (vect_estimate_min_profitable_iters): Likewise.
- * tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost):
- Likewise.
- 2015-04-04 Alan Modra <amodra@gmail.com>
- PR target/65576
- PR target/65240
- * config/rs6000/predicates.md (zero_reg_mem_operand): Exclude
- 0.0 constant unless TARGET_VSX.
- * config/rs6000/rs6000.md (extenddftf2_internal): Remove last
- alternative.
- 2015-04-03 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65654
- * ipa-inline-transform.c (inline_call): Skip sanity check to work
- around the ICE
- 2015-04-03 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65655
- * ipa-inline-analysis.c (edge_set_predicate): Do not redirect
- speculative indirect edges to avoid ordering issue.
- 2015-04-03 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65076
- * ipa-inline.c (edge_badness): Add combined size to the denominator.
- 2015-04-03 Jakub Jelinek <jakub@redhat.com>
- * omp-low.c (scan_omp_parallel, scan_omp_task, scan_omp_target): Set
- TYPE_ARTIFICIAL on the .omp_data* types.
- 2015-04-02 Ilya Enkovich <ilya.enkovich@intel.com>
- * cgraphunit.c (cgraph_node::expand_thunk): Don't expand
- instrumentation thunks.
- 2015-04-02 Ilya Enkovich <ilya.enkovich@intel.com>
- * config/i386/i386.c (ix86_expand_call): Avoid nested
- PARALLEL in returned call value.
- 2015-04-02 Ilya Enkovich <ilya.enkovich@intel.com>
- * lto-cgraph.c (input_cgraph_1): Always link instrumented
- assembler name with original one.
- 2015-04-02 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/i386.c (ix86_register_priority): Use AX_REG.
- 2015-04-02 Uros Bizjak <ubizjak@gmail.com>
- Revert parts of r216820.
- * config/i386/i386.md (movqi_internal): Correct type calculation
- for alternatives 3 and 5.
- 2015-04-02 Jakub Jelinek <jakub@redhat.com>
- PR preprocessor/61977
- * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Don't
- predefine __vector/__bool/__pixel macros nor context sensitive
- macros for CLK_ASM.
- * config/spu/spu-c.c (spu_cpu_cpp_builtins): Similarly.
- 2015-04-02 John David Anglin <danglin@gcc.gnu.org>
- * config/pa/pa.c (pa_output_move_double): Directly handle register
- indexed memory operand. Simplify handling of scaled register indexed
- memory operands.
- 2015-04-02 Ilya Enkovich <ilya.enkovich@intel.com>
- PR driver/65444
- * config/i386/linux-common.h (MPX_SPEC): New.
- (CHKP_SPEC): Add MPX_SPEC.
- * doc/invoke.texi (-fcheck-pointer-boudns): Document
- possible issues with '-z bndplt' support in linker.
- 2015-04-02 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/sync.md (UNSPEC_FILD_ATOMIC, UNSPEC_FIST_ATOMIC): New.
- (loaddi_via_fpu): Use UNSPEC_FILD_ATOMIC.
- (storedi_via_fpu): Use UNSPEC_FIST_ATOMIC.
- * reg-stack.c (get_true_reg): Change UNSPEC_LDA to UNSPEC_FILD_ATOMIC.
- (subst_stack_regs_pat): Change UNSPEC_STA to UNSPEC_FIST_ATOMIC.
- 2015-04-01 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/sync.md (UNSPEC_MOVA): Remove.
- (atomic_load<mode>): Change operand 0 predicate to
- nonimmediate_operand and fix up the destination when needed.
- Use UNSPEC_LDA.
- (atomic_loaddi_fpu): Use UNSPEC_LDA.
- (atomic_store<mode>): Change operand 1 predicate to
- nonimmendate_operand and move the source to register when needed.
- Use UNSPEC_STA.
- (atomic_store<mode>_1): Use UNSPEC_STA.
- (atomic_storedi_fpu): Change operand 1 to nonimmediate_operand.
- Fix moves from memory operand. Use UNSPEC_STA.
- 2015-04-01 Bernd Edlinger <bernd.edlinger@hotmail.de>
- * expmed.c (strict_volatile_bitfield_p): Check that the access will
- not cross a MODESIZE boundary.
- (store_bit_field, extract_bit_field): Added assertions in the
- strict volatile bitfields code path.
- 2015-04-01 Max Ostapenko <m.ostapenko@partner.samsung.com>
- PR target/65624
- * config/aarch64/aarch64-builtins.c (aarch64_simd_expand_builtin):
- Increase args array size by one to avoid buffer overflow.
- 2015-03-31 Jan Hubicka <hubicka@ucw.cz>
- * lto-cgraph.c (lto_output_node, input_overwrite_node): Stream
- split_part.
- * ipa-inline.c (edge_badness): Add wrapper penalty.
- (sum_callers): Move up.
- (inline_small_functions): Set single_caller.
- * ipa-inline.h (inline_summary): Add single_caller.
- * ipa-split.c (split_function): Set split_part.
- (cgraph_node::create_clone): Do not shadow decl; copy split_part.
- * cgraph.h (cgraph_node): Add split_part.
- 2015-03-31 Uros Bizjak <ubizjak@gmail.com>
- PR target/58945
- * config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
- Do not split operands 0 and operands 2 to halfmode.
- (atomic_compare_and_swap<mode>): Update for
- atomic_compare_and_swap<dwi>_doubleword changes.
- 2015-03-31 Jan Hubicka <hubicka@ucw.cz>
- * tree.c (need_assembler_name_p): Artificial types have no ODR names.
- * ipa-devirt.c (warn_odr): Do not try to apply ODR cache when
- no caching is done.
- 2015-03-31 Martin Liska <mliska@suse.cz>
- PR ipa/65557
- * ipa-icf.c (sem_function::equals_wpa): Check if IPA CP
- has already filled up function summary.
- (sem_item_optimizer::update_hash_by_addr_refs): Likewise.
- 2015-03-31 Richard Biener <rguenther@suse.de>
- * tree-sra.c (create_access_replacement): Drop under-/over-alignment
- of types.
- 2015-03-31 Dominik Vogt <vogt@linux.vnet.ibm.com>
- * config/s390/s390.c (s390_function_num_hotpatch_hw): Allow hotpatching
- nested functions.
- (s390_reorg): Adapt to new signature of s390_function_num_hotpatch_hw.
- (s390_asm_output_function_label): Adapt to new signature of
- s390_function_num_hotpatch_hw
- Optimise the code generating assembler output.
- Add comments to assembler file.
- 2015-03-31 Richard Biener <rguenther@suse.de>
- PR middle-end/65626
- * tree-cfgcleanup.c (fixup_noreturn_call): Only split the block
- of the noreturn call so it is last and cleanup_control_flow_bb
- can do the CFG part.
- 2015-03-31 Ilya Enkovich <ilya.enkovich@intel.com>
- PR target/65531
- * ipa-chkp.c (chkp_maybe_create_clone): Don't set
- same_comdat_group for external symbols.
- * symtab.c (symtab_node::verify_symtab_nodes): Avoid
- infinite same_comdat_group traversal loop.
- 2015-03-31 Jakub Jelinek <jakub@redhat.com>
- PR plugins/61176
- * Makefile.in (install-plugin): Add all gcc/*.{h,def} files
- automatically to $headers.
- 2015-03-30 Jakub Jelinek <jakub@redhat.com>
- PR ipa/65610
- * ipa-utils.h (inlined_polymorphic_ctor_dtor_block_p): Declare.
- * ipa-polymorphic-call.c (inlined_polymorphic_ctor_dtor_block_p): New
- function.
- (decl_maybe_in_construction_p, noncall_stmt_may_be_vtbl_ptr_store):
- Use it.
- * ipa-prop.c (param_type_may_change_p): Likewise.
- * tree-ssa-live.c: Include ipa-utils.h and its dependencies.
- (remove_unused_scope_block_p): Add in_ctor_dtor_block
- argument. Before inlining, preserve
- inlined_polymorphic_ctor_dtor_block_p blocks and the outermost block
- with FUNCTION_DECL BLOCK_ABSTRACT_ORIGIN inside of them. Adjust
- recursive calls.
- (remove_unused_locals): Adjust remove_unused_scope_block_p caller.
- 2015-03-27 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65076
- * ipa-inline.c (edge_badness): Base denominator on callee's
- grwoth squared.
- 2015-03-27 Martin Jambor <mjambor@suse.cz>
- PR ipa/65478
- * params.def (PARAM_IPA_CP_RECURSION_PENALTY) : New.
- (PARAM_IPA_CP_SINGLE_CALL_PENALTY): Likewise.
- * ipa-prop.h (ipa_node_params): New flags node_within_scc and
- node_calling_single_call.
- * ipa-cp.c (count_callers): New function.
- (set_single_call_flag): Likewise.
- (initialize_node_lattices): Count callers and set single_flag_call if
- necessary.
- (incorporate_penalties): New function.
- (good_cloning_opportunity_p): Use it, dump new flags.
- (propagate_constants_topo): Set node_within_scc flag if appropriate.
- * doc/invoke.texi (ipa-cp-recursion-penalty,
- ipa-cp-single-call-pentalty): Document.
- 2015-03-27 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65588
- * symtab.c (symtab_node::get_partitioning_class): Register vars
- are duplicated.
- * varpool.c (symbol_table::output_variables) Do not assemble unefined
- decls for non-symbols.
- 2015-03-27 H.J. Lu <hongjiu.lu@intel.com>
- PR target/65248
- * output.h (default_binds_local_p_2): New.
- * varasm.c (default_binds_local_p_2): Renamed to ...
- (default_binds_local_p_3): This. Don't return true on protected
- data symbol if protected data may be external.
- (default_binds_local_p): Use default_binds_local_p_3.
- (default_binds_local_p_1): Likewise.
- (default_binds_local_p_2): New.
- * config/i386/i386.c (TARGET_BINDS_LOCAL_P): Set to
- default_binds_local_p_2 if TARGET_MACHO is undefined.
- 2015-03-27 Jakub Jelinek <jakub@redhat.com>
- PR target/65593
- * config/i386/i386.c (legitimize_pic_address): If base
- is SYMBOL_REF or LABEL_REF using %rip addressing, force
- it to reg to avoid PLUS of SYMBOL_REF/LABEL_REF and register.
- 2015-03-27 Jan Hubicka <hubicka@ucw.cz>
- PR target/65531
- * symtab.c (symtab_node::verify_symtab_nodes): Fix verification of
- comdat groups.
- 2015-03-27 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65600
- * cgraph.c (cgraph_update_edges_for_call_stmt_node): Fix the case
- of optimized out indirect call.
- (redirect_to_unreachable): Always build symbol table node for
- BUILT_IN_UNREACHABLE
- 2015-03-27 Vladimir Makarov <vmakarov@redhat.com>
- PR target/65407
- * ira-costs.c (record_reg_classes): Process all constraint string
- containing 0-9.
- 2015-03-27 Bernd Schmidt <bernds@codesourcery.com>
- * config/c6x/c6x.md (movmisalign<mode>): Use MEM_P, not
- memory_operand.
- PR target/65052
- * config/c6x/constraints.md (S3): New constraint.
- * config/c6x/c6x.md (real_jump): Use it.
- 2015-03-26 Jan Hubicka <hubicka@ucw.cz>
- PR middle-end/65595
- * cgraph.c (cgraph_update_edges_for_call_stmt_node): Only
- do redirection if the call is not optimized out.
- 2015-03-27 Ilya Enkovich <ilya.enkovich@intel.com>
- PR target/65495
- * c-family/c.opt (fcheck-pointer-bounds): List supported languages.
- (fchkp-check-incomplete-type): Add LTO.
- (fchkp-zero-input-bounds-for-main): Likewise.
- (fchkp-first-field-has-own-bounds): Likewise.
- (fchkp-narrow-bounds): Likewise.
- (fchkp-narrow-to-innermost-array): Likewise.
- (fchkp-use-static-bounds): Likewise.
- (fchkp-use-static-const-bounds): Likewise.
- (fchkp-treat-zero-dynamic-size-as-infinite): Likewise.
- 2015-03-27 Marek Polacek <polacek@redhat.com>
- * gimple-iterator.h (gsi_prev_nondebug): Fix typo.
- 2015-03-27 Marek Polacek <polacek@redhat.com>
- PR sanitizer/65583
- * ubsan.c (ubsan_create_edge): New function.
- (instrument_bool_enum_load): Call it.
- (instrument_nonnull_arg): Likewise.
- (instrument_nonnull_return): Likewise.
- (instrument_object_size): Likewise.
- 2015-03-26 Jan Hubicka <hubicka@ucw.cz>
- * lto-streamer.h (class lto_location_cache): Turn loc_cache into
- auto_vec.
- 2015-03-26 Jan Hubicka <hubicka@ucw.cz>
- PR lto/65536
- * lto-streamer.h (class lto_location_cache): New.
- (struct data_in): Add location_cache.
- (lto_input_location): Update prototype.
- (stream_input_location_now): New.
- * streamer-hooks.h (struct streamer_hooks): Make input_location to take
- pointer to location.
- (stream_input_location): Update.
- * ipa-devirt.c: Include streamer-hooks.h and lto-streamer.h
- (warn_odr): Apply location cache before warning.
- (lto_input_location): Update prototype.
- * gimple-streamer-in.c (input_phi, input_gimple_stmt):
- Use stream_input_location_now.
- * lto-streamer-in.c (lto_location_cache::current_cache): New static
- variable.
- (lto_location_cache::cmp_loc): New function.
- (lto_location_cache::apply_location_cache): New function.
- (lto_location_cache::accept_location_cache): New function.
- (lto_location_cache::revert_location_cache): New function.
- (lto_location_cache::input_location): New function.
- (lto_input_location): Do location caching.
- (stream_input_location_now): New function.
- (input_eh_region, input_struct_function_base): Use
- stream_input_location_now.
- (lto_data_in_create): use new.
- (lto_data_in_delete): Use delete.
- * tree-streamer-in.c (unpack_ts_block_value_fields,
- unpack_ts_omp_clause_value_fields, streamer_read_tree_bitfields,
- lto_input_ts_exp_tree_pointers): Update for cached location api.
- 2015-03-26 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65076
- * passes.def: Add pass_nothrow.
- * ipa-pure-const.c: (pass_data_nothrow): New.
- (pass_nothrow): New.
- (pass_nothrow::execute): New.
- (make_pass_nothrow): New.
- * tree-pass.h (make_pass_nothrow): Declare.
- 2015-03-26 Jan Hubicka <hubicka@ucw.cz>
- * ipa-inline-analysis.c (redirect_to_unreachable): Be prepared for
- edge to change by speculation resolution or redirection.
- (edge_set_predicate): Likewise.
- (inline_summary_t::duplicate): Likewise.
- (remap_edge_summaries): Likewise.
- 2015-03-26 Jan Hubicka <hubicka@ucw.cz>
- * ipa-inline.c (check_maybe_up, check_maybe_down, check_match):
- New macros.
- (can_inline_edge_p): Relax option matching for always inline functions.
- 2015-03-26 Uros Bizjak <ubizjak@gmail.com>
- PR target/65561
- * config/i386/sse.md (avx512dq_vextract<shuffletype>64x2_1_maskm):
- Check operand 4 and operand 0 for equality.
- (avx512f_vextract<shuffletype>32x4_1_maskm):
- Check operand 6 and operand 0 for equality.
- (vec_extract_lo_<mode>_maskm): Check operand 2 and operand 0
- for equality.
- (vec_extract_hi_<mode>_maskm): Ditto.
- 2015-03-26 Jan Hubicka <hubicka@ucw.cz>
- * cgraph.c (cgraph_update_edges_for_call_stmt_node): Do not bring
- dead calls back to live.
- (cgraph_edge::verify_count_and_frequency): Move cgraph/cfg frequency
- cross check to ...
- (cgraph_node::verify_node): ... here; verify only callee edges,
- not caller.
- * cif-code.def (CILK_SPAWN): New code.
- 2015-03-26 Jan Hubicka <hubicka@ucw.cz>
- * ipa-inline-analysis.c (redirect_to_unreachable): New function.
- (edge_set_predicate): Use it to mark unreachable edges.
- (inline_summary_t::duplicate): Remove unnecesary code.
- (remap_edge_summaries): Likewise.
- (dump_inline_summary): Report contains_cilk_spawn.
- (compute_inline_parameters): Compute contains_cilk_spawn.
- (inline_read_section, inline_write_summary): Stream
- contains_cilk_spawn.
- * ipa-inline.c (can_inline_edge_p): Do not touch
- DECL_STRUCT_FUNCTION that may not be available;
- use CIF_CILK_SPAWN for cilk; fix optimization attribute checks;
- remove check for callee_fun->can_throw_non_call_exceptions and
- replace it by optimization attribute check; check for flag_exceptions.
- * ipa-inline-transform.c (inline_call): Maintain
- DECL_FUNCTION_PERSONALITY
- * ipa-inline.h (inline_summary): Add contains_cilk_spawn.
- 2015-03-26 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65551
- * tree-ssa-sccvn.c (fully_constant_vn_reference_p): Use
- TYPE_PRECISION only for INTEGRAL_TYPE_P types.
- 2015-03-26 Richard Biener <rguenther@suse.de>
- PR middle-end/65555
- * tree-cfg.c (verify_gimple_call): Do not require a call to
- have no LHS if it wasn't recognized as control altering yet.
- 2015-03-26 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/64715
- * passes.def: Add another instance of pass_object_sizes before ccp1.
- * tree-object-size.c (pass_object_sizes::execute): In
- first_pass_instance, only handle __bos (, 1) and __bos (, 3)
- calls, and keep the call in the IL, as {MIN,MAX}_EXPR of the
- __bos result and the computed constant. Remove redundant
- checks, obsoleted by gimple_call_builtin_p test.
- * var-tracking.c (variable_tracking_main_1): Don't track
- variables for targetm.no_register_allocation targets.
- 2015-03-26 Oleg Endo <olegendo@gcc.gnu.org>
- * config/sh/t-linux (DEFAULT_ENDIAN, MULTILIB_EXCEPTIONS): Remove.
- * config/sh/t-sh (MULTILIB_EXCEPTIONS): Handle default endian.
- 2015-03-25 Michael Meissner <meissner@linux.vnet.ibm.com>
- PR target/65569
- * config/rs6000/rs6000.md (extenddftf2_fprs): On VSX systems use
- XXLXOR to create 0.0. On pre-VSX systems make sure the constant
- 0.0 is correctly setup.
- (extenddftf2_internal): Likewise.
- 2015-03-25 Sebastian Pop <s.pop@samsung.com>
- PR tree-optimization/65177
- * tree-ssa-threadupdate.c (verify_seme): Renamed verify_jump_thread.
- (bb_in_bbs): New.
- (duplicate_seme_region): Renamed duplicate_thread_path. Redirect all
- edges not adjacent on the path to the original code.
- 2015-03-25 Uros Bizjak <ubizjak@gmail.com>
- PR bootstrap/65537
- * doc/install.texi (Building a native compiler): Document new
- bootstrap-lto-noplugin configuration. Mention that bootstrap-lto
- configuration assumes that the host supports the linker plugin.
- 2015-03-25 Ilya Enkovich <ilya.enkovich@intel.com>
- PR target/65508
- * tree-chkp.c (chkp_add_bounds_to_call_stmt): Set static
- chain for generated call.
- 2015-03-25 Richard Biener <rguenther@suse.de>
- * passes.c (pass_manager::execute_early_local_passes): Guard
- execution of pass_chkp_instrumentation_passes with
- flag_check_pointer_bounds.
- (pass_chkp_instrumentation_passes::gate): Likewise.
- 2015-03-25 Martin Liska <mliska@suse.cz>
- PR tree-optimization/65538
- * symbol-summary.h (function_summary::~function_summary):
- Relese memory for allocated summaries.
- (function_summary::release): New function.
- 2015-03-25 Jakub Jelinek <jakub@redhat.com>
- PR lto/65515
- * lto-streamer-out.c (DFS::worklist): New struct.
- (DFS::worklist_vec): New data member.
- (DFS::next_dfs_num): Remove.
- (DFS::DFS): Rewritten using worklist instead of recursion,
- using most of code from DFS::DFS_write_tree.
- (DFS::DFS_write_tree_body): Remove SINGLE_P argument, don't
- pass it to DFS_write_tree calls.
- (DFS::DFS_write_tree): Remove SINGLE_P argument, after
- quick initial checks push it into worklist_vec and return.
- 2015-03-25 Richard Biener <rguenther@suse.de>
- PR middle-end/65519
- * genmatch.c (expr::gen_transform): Re-write to avoid
- using gimple_build.
- 2015-03-25 Bin Cheng <bin.cheng@arm.com>
- * doc/sourcebuild.texi (arm_tune_string_ops_prefer_neon): New.
- 2015-03-25 Bin Cheng <bin.cheng@arm.com>
- * config/arm/arm.opt (print_tune_info): New option.
- * config/arm/arm.c (arm_print_tune_info): New function.
- (arm_file_start): Call arm_print_tune_info.
- * config/arm/arm-protos.h (struct tune_params): Add comment.
- * doc/invoke.texi (@item -mprint-tune-info): New item.
- (-mtune): mention it in ARM Option Summary.
- 2015-03-25 DJ Delorie <dj@redhat.com>
- * config/rl78/rl78.c (rl78_print_operand_1): Move 'p' test to
- correct clause.
- 2015-03-24 Jan Hubicka <hubicka@ucw.cz>
- Martin Liska <mliska@suse.cz>
- * ipa-icf-gimple.h (return_with_result): Add missing colon to dump.
- * ipa-icf.c (sem_function::get_hash): Hash new declaration properties.
- (sem_item::add_type): New function.
- (sem_function::hash_stmt): Add TREE_TYPE of gimple_op.
- (sem_function::compare_polymorphic_p): Do not consider indirect calls.
- (sem_item_optimizer::update_hash_by_addr_refs): Add ODR type to hash.
- (sem_function::equals_wpa): Fix typo.
- * ipa-icf.h (sem_item::add_type): New function.
- (symbol_compare_hashmap_traits): Replace hashing of pointer with symbol
- order.
- 2015-03-24 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65533
- * tree-vect-slp.c (vect_build_slp_tree): Before re-trying
- with swapped operands, call vect_free_slp_tree on
- SLP_TREE_CHILDREN of child and truncate the SLP_TREE_CHILDREN
- vector.
- 2015-03-24 Richard Biener <rguenther@suse.de>
- PR middle-end/65517
- * tree-cfg.c (remove_edge_and_dominated_blocks): Mark loops
- for fixup if necessary.
- 2015-03-23 Sandra Loosemore <sandra@codesourcery.com>
- * doc/extend.texi (Function Attributes): Add @cindex entries
- for all attributes and regularize their format. Delete text
- about long-obsolete 68HC11 and 68HC12 targets. Move misplaced
- information about "eightbit_data", "tiny_data", and "model"
- variable attributes to the Variable Attributes section. Fix
- some obvious typos and copy-editing issues.
- (Variable Attributes, Type Attributes): Likewise add/fix
- @cindex entries for all attributes.
- 2015-03-23 Jakub Jelinek <jakub@redhat.com>
- PR target/65523
- * tree-chkp.c (chkp_build_returned_bound): Ignore
- ERF_RETURNS_ARG calls if they have fewer than needed arguments.
- 2015-03-23 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/65505
- * config/sh/predicates.md (simple_mem_operand,
- displacement_mem_operand): Add test for reg.
- (short_displacement_mem_operand): Test for displacement_mem_operand
- before invoking sh_disp_addr_displacement.
- * config/sh/constraints.md (Sdd, Sra): Simplify.
- * config/sh/sync.md (atomic_mem_operand_0, atomic_mem_operand_1):
- Remove redundant displacement_mem_operand tests.
- 2015-03-23 Georg-Johann Lay <avr@gjlay.de>
- PR target/65296
- * config/avr/driver-avr.c (avr_devicespecs_file): Allow to specify
- the same -mmcu=MCU more than once.
- 2015-03-23 Jakub Jelinek <jakub@redhat.com>
- PR bootstrap/65522
- * ipa-devirt.c: Remove duplicate demangle.h include.
- PR target/65504
- * config/i386/i386.c (ix86_copy_addr_to_reg): Set REG_POINTER
- on the pseudo.
- (expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): Set
- REG_POINTER on *destptr after adjusting it for prologue size.
- PR ipa/65521
- * ipa-icf.c (sem_item::update_hash_by_addr_refs): Hash
- ultimate_alias_target ()->order ints instead of
- ultimate_alias_target () pointers.
- 2015-03-23 Richard Biener <rguenther@suse.de>
- PR tree-optimization/65518
- * tree-vect-stmts.c (vectorizable_load): Reject single-element
- interleaving cases we generate absymal code for.
- 2015-03-23 Richard Biener <rguenther@suse.de>
- PR tree-optimization/65494
- * tree-vect-slp.c (vect_build_slp_tree): Do not (re-)allocate
- matches here.
- (vect_analyze_slp_instance): But do that here, always and once.
- 2015-03-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * expmed.c (synth_mult): Fix comment about multiplying by T-1 and
- adding T or multiplying by T+1 and subracting T.
- 2015-03-22 Jeff Law <law@redhat.com>
- PR rtl-optimization/64317
- * Makefile.in (OBJS): Add gcse-common.c
- * gcse.c: Include gcse-common.h
- (struct modify_pair_s): Move structure definition to gcse-common.h
- (compute_transp): Move function to gcse-common.c.
- (canon_list_insert): Similarly.
- (record_last_mem_set_info): Break out some code and put it into
- gcse-common.c. Call into the new common code.
- (compute_local_properties): Pass additional arguments to compute_transp.
- * postreload-gcse.c: Include gcse-common.h and df.h
- (modify_mem_list_set, blocks_with_calls): New variables.
- (modify_mem_list, canon_modify_mem_list, transp): Likewise.
- (get_bb_avail_insn): Pass in the expression index too.
- (alloc_mem): Allocate memory for the new bitmaps and lists.
- (free_mem): Free memory for the new bitmaps and lists.
- (insert_expr_in_table): Record a bitmap index for each entry we
- add to the table.
- (record_last_mem_set_info): Call into common code in gcse-common.c.
- (get_bb_avail_insn): If no available insn was found in the requested
- BB. If BB has a single predecessor, see if the expression is
- transparent in BB and available in that single predecessor.
- (compute_expr_transp): New wrapper for compute_transp.
- (eliminate_partially_redundant_load): Pass expression's bitmap_index
- to get_bb_avail_insn. Compute next_pred_bb_end a bit later.
- (gcse_after_reload_main): If there are elements in the hash table,
- then compute transparency for all the elements in the hash table.
- * gcse-common.h: New file.
- * gcse-common.c: New file.
- 2015-03-22 Sandra Loosemore <sandra@codesourcery.com>
- * doc/cpp.texi (Search Path): Hyphenate "command-line" when used
- as an adjective.
- (System Headers): Likewise.
- (Ifdef): Likewise.
- (Traditional macros): Likewise.
- (Invocation): Likewise.
- (Option Index): Likewise.
- * doc/cppopts.texi (-M): Likewise.
- (-finput-charset): Likewise.
- (--help): Likewise.
- * doc.invoke.texi (AVR Options): Likewise.
- (V850 Options): Likewise.
- 2015-03-22 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65475
- * ipa-devirt.c: Include demangle.h
- (odr_type_d): Add field rtti_broken.
- (odr_subtypes_equivalent_p): Do not require name to match.
- (compare_virtual_tables): Fix typo; if type already has ODR violation,
- bypass the tests; be ready for function referneces in vtables that are
- not DECL_VIRTUAL; make warnings to be OPT_Wodr.
- (warn_odr): Give up for nameless types.
- (warn_types_mismatch): Report mismatch in mangled names;
- report mismatch in anonymous namespaces; look into component types to
- give useful error; report when mismatch is dragged in from other ODR
- type.
- (odr_types_equivalent_p): Match types for being polymorphic; avoid
- duplicated diagnostics.
- (add_type_duplicate): Reorder checks so more informative ones come
- first; fix typo; do not output "the extra base is defined here" when
- we did not warn.
- (BINFO_N_BASE_BINFOS): Relax sanity check.
- 2015-03-22 Martin Liska <mliska@suse.cz>
- Jakub Jelinek <jakub@redhat.com>
- * config/i386/i386.c (def_builtin): Set deferred_isa_values for
- masks that can potentially include a builtin.
- (ix86_add_new_builtins): Introduce fast filter for isa values
- that cannot trigger builtin inclusion.
- 2015-03-22 Martin Liska <mliska@suse.cz>
- * ipa-icf.c (sem_item::update_hash_by_addr_refs): New function.
- (sem_item::update_hash_by_local_refs): Likewise.
- (sem_variable::get_hash): Empty line is fixed.
- (sem_item_optimizer::execute): Include adding of hash references.
- (sem_item_optimizer::update_hash_by_addr_refs): New function.
- (sem_item_optimizer::build_hash_based_classes): Use local hash.
- * ipa-icf.h (sem_item::update_hash_by_addr_refs): New function.
- (sem_item::update_hash_by_local_refs): Likewise.
- 2015-03-20 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65502
- * ipa-comdats.c (enqueue_references): Walk through thunks.
- (ipa_comdats): Likewise.
- (set_comdat_group_1): New function.
- 2015-03-20 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65475
- * ipa-devirt.c (add_type_duplicate): Prevail polymorphic type over
- non-polymorphic
- 2015-03-22 Dave Korn <dave.korn.cygwin@gmail.com>
- Gerald Pfeifer <gerald@pfeifer.com>
- * doc/contrib.texi (Contributors): Update entry for Danny Smith.
- 2015-03-21 Chung-Lin Tang <cltang@codesourcery.com>
- Sandra Loosemore <sandra@codesourcery.com>
- * config/nios2/nios2-protos.h (nios2_adjust_call_address): Adjust
- function parameter declaration.
- * config/nios2/nios2.md (call,call_value,sibcall,sibcall_value):
- Update arguments to nios2_adjust_call_address().
- (sibcall_internal): Rename from *sibcall.
- (sibcall_value_internal): Rename from *sibcall_value.
- * config/nios2/nios2.c (nios2_emit_add_constant): New function.
- (nios2_large_got_address): Add target temp reg parameter.
- (nios2_got_address): Adjust call to nios2_large_got_address, add
- force_reg around it.
- (nios2_load_pic_address): Add target temp reg parameter, replace call
- to nios2_got_address with corresponding code.
- (nios2_legitimize_constant_address): Update call to
- nios2_load_pic_address.
- (nios2_adjust_call_address): Add temp reg parameter, update PIC case
- to use temp reg for PIC loading purposes.
- (nios2_asm_output_mi_thunk): Implement TARGET_ASM_OUTPUT_MI_THUNK.
- (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
- (TARGET_ASM_OUTPUT_MI_THUNK): Likewise.
- 2015-03-21 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi (-fno-diagnostics-show-caret): Fix
- usage of "the @option{...}".
- (-Wopenmp-simd): Likewise.
- (-fsanitize-recover): Likewise.
- (-fsanitize-undefined-trap-on-error): Likewise.
- (-flto): Likewise.
- (tracer-dynamic-coverage-feedback): Likewise.
- (reorder-block-duplicate-feedback): Likewise.
- (loop-unroll-jam-size): Likewise.
- (-B): Likewise.
- (-I-): Likewise.
- (-mabs=legacy): Likewise.
- (-mupper-regs-df): Likewise.
- (-mupper-regs-sf): Likewise.
- (-mpointers-to-nested-functions): Likewise.
- 2015-03-21 Sandra Loosemore <sandra@codesourcery.com>
- * doc/extend.texi (Cilk Plus Builtins): Add markup.
- 2015-03-21 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi (-fcheck-pointer-bounds): Copy-edit, add
- additional index entries and cross-references.
- (-fchkp-check-incomplete-type): Likewise.
- (-fchkp-first-field-has-own-bounds): Likewise.
- (-fchkp-narrow-to-innermost-array): Likewise.
- (-fchkp-use-fast-string-functions): Likewise.
- (-fchkp-use-nochk-string-functions): Likewise.
- (-fchkp-use-static-const-bounds): Likewise.
- (-fchkp-treat-zero-dynamic-size-as-infinite): Likewise.
- (-fchkp-instrument-marked-only): Likewise.
- (-fchkp-use-wrappers): Likewise.
- (-static-libmpx): Likewise.
- (-static-libmpxwrappers): Likewise.
- * doc/extend.texi (bnd_legacy): Likewise.
- (bnd_instrument): Likewise.
- (bnd_variable_size): Likewise.
- (Pointer Bounds Checker builtins): Likewise.
- 2015-03-21 Tom de Vries <tom@codesourcery.com>
- PR tree-optimization/65458
- * cgraph.c (cgraph_node::dump): Handle parallelized_function field.
- * cgraph.h (cgraph_node): Add parallelized_function field.
- * lto-cgraph.c (lto_output_node): Write parallelized_function field.
- (input_overwrite_node): Read parallelized_function field.
- * omp-low.c (expand_omp_taskreg, finalize_task_copyfn): Set
- parallelized_function on cgraph_node for child_fn.
- * tree-parloops.c: Add include of plugin-api.h, ipa-ref.h and cgraph.h.
- Remove include of gt-tree-parloops.h.
- (parallelized_functions): Remove static variable.
- (parallelized_function_p): Rewrite using parallelized_function field of
- cgraph_node.
- (create_loop_fn): Remove adding to parallelized_functions.
- * Makefile.in (GTFILES): Remove tree-parloops.c
- 2015-03-20 Vladimir Makarov <vmakarov@redhat.com>
- PR rtl-optimization/64366
- * lra.c (lra_update_insn_regno_info): Consider regs in
- CALL_INSN_FUNCTION_USAGE memory.
- 2015-03-20 Richard Biener <rguenther@suse.de>
- PR middle-end/64715
- * tree-chrec.c (chrec_fold_poly_cst): Use useless_type_conversion_p
- for type comparison and gcc_checking_assert.
- (chrec_fold_plus_poly_poly): Likewise.
- (chrec_fold_multiply_poly_poly): Likewise.
- (chrec_convert_1): Likewise.
- * gimplify.c (gimplify_expr): Remove premature folding of
- &X + CST to &MEM[&X, CST].
- 2015-03-20 Jan Hubicka <hubicka@ucw.cz>
- * ipa-inline.c (can_inline_edge_p): Short circuit if inline_failed
- already is final.
- (ipa_inline): Recompute inline_failed codes.
- * cif-code.def (FUNCTION_NOT_OPTIMIZED, REDEFINED_EXTERN_INLINE,
- USES_COMDAT_LOCAL, ATTRIBUTE_MISMATCH, UNREACHABLE): Declare as
- CIF_FINAL_ERROR.
- 2015-03-20 Uros Bizjak <ubizjak@gmail.com>
- PR rtl-optimization/60851
- * recog.c (constrain_operands): Accept a pseudo register before reload
- for LRA enabled targets.
- 2015-03-19 Michael Meissner <meissner@linux.vnet.ibm.com>
- PR target/65240
- * config/rs6000/predicates.md (easy_fp_constant): Remove special
- -ffast-math handling that kept non-0 constants live in the RTL
- until reload. Remove logic testing the number of instructions it
- took to create a constant in a GPR that was never used, due to a
- test for soft-float earlier.
- (memory_fp_constant): Delete, no longer used.
- * config/rs6000/rs6000.md (mov<MODE>_hardfloat): Remove
- alternatives for loading non-0 constants into GPRs for hard
- floating point that is no longer needed due to changes in
- easy_fp_constant. Add support for loading 0.0 into GPRs.
- (mov<mode>_hardfloat32): Likewise.
- (mov<mode>_hardfloat64): Likewise.
- (mov<mode>_64bit_dm): Likewise.
- (movtd_64bit_nodm): Likewise.
- (pre-reload move FP constant define_split): Delete define_split,
- since it is no longer used.
- (extenddftf2_internal): Remove GHF constraints that are not valid
- for extenddftf2.
- 2015-03-19 Vladimir Makarov <vmakarov@redhat.com>
- PR rtl-optimization/63491
- * lra-constraints.c (check_and_process_move): Use src instead of
- sreg. Remove some dead code.
- 2015-03-19 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65380
- * ipa-icf.c (sem_function::merge): Do not merge DECL_EXTERNAL symbols.
- (sem_variable::merge): Likewise.
- 2015-03-19 Martin Liska <mliska@suse.cz>
- PR ipa/65465
- * cgraphunit.c (cgraph_node::create_wrapper): Correctly reset
- all fields of cgraph_thunk_info.
- 2015-03-19 Ilya Enkovich <ilya.enkovich@intel.com>
- * ipa-chkp.c (chkp_maybe_create_clone): Don't try to
- clone instrumented thunks.
- 2015-03-19 Richard Biener <rguenther@suse.de>
- Revert
- 2015-03-10 Richard Biener <rguenther@suse.de>
- PR middle-end/63155
- * tree-ssa-coalesce.h (verify_ssa_coalescing): Declare.
- * tree-ssa-coalesce.c: Include timevar.h.
- (attempt_coalesce): Handle graph being NULL.
- (coalesce_partitions): Call verify_ssa_coalescing if ENABLE_CHECKING.
- Split out abnormal coalescing to ...
- (perform_abnormal_coalescing): ... this function.
- (coalesce_ssa_name): Perform abnormal coalescing without computing
- live/conflict.
- (verify_ssa_coalescing_worker): New function.
- (verify_ssa_coalescing): Likewise.
- 2015-03-19 Bernd Edlinger <bernd.edlinger@hotmail.de>
- Jakub Jelinek <jakub@redhat.com>
- PR sanitizer/65400
- * tsan.c (instrument_gimple): Clear tail call flag on
- calls.
- 2015-03-19 Jakub Jelinek <jakub@redhat.com>
- PR sanitizer/65400
- * ipa-split.c (find_return_bb): Allow TSAN_FUNC_EXIT internal
- call in the return bb.
- (find_split_points): Add RETURN_BB argument, don't call
- find_return_bb.
- (split_function): Likewise. Add ADD_TSAN_FUNC_EXIT argument,
- if true append TSAN_FUNC_EXIT internal call after the call to
- the split off function.
- (execute_split_functions): Call find_return_bb here.
- Don't optimize if TSAN_FUNC_EXIT is found in unexpected places.
- Adjust find_split_points and split_function calls.
- 2015-03-18 DJ Delorie <dj@redhat.com>
- * config/rl78/rl78-virt.md (andqi3_virt): Allow far operands.
- (iorqi3_virt): Likewise.
- 2015-03-18 Tom de Vries <tom@codesourcery.com>
- * tree-parloops.c (parallelize_loops): Make static.
- * tree-parloops.h (parallelize_loops): Remove extern declaration.
- 2015-03-18 Andrew Stubbs <ams@codesourcery.com>
- PR middle-end/64491
- Revert:
- 2014-11-20 Andrew Stubbs <ams@codesourcery.com>
- * tree-ssa-loop-niter.c (maybe_lower_iteration_bound): Warn if a loop
- condition would be removed due to undefined behaviour.
- 2015-03-18 Martin Liska <mliska@suse.cz>
- PR ipa/65432
- * cgraph.c (cgraph_node::get_create): Remove unnecessary
- xstrdup_for_dump wrapper.
- * ipa-icf.c (sem_item::dump): Use symtab_node::name instead of
- sem_item::name.
- (sem_function::equals): Wrap symtab_node::name and symtab_node::asm_name
- with xstrdup_for_dump.
- (sem_variable::equals): Likewise.
- (sem_item_optimizer::read_section): Use symtab_node::name instead of
- sem_item::name.
- (sem_item_optimizer::parse_funcs_and_vars): Likewise.
- (sem_item_optimizer::merge_classes): Wrap symtab_node::name and
- symtab_node::asm_name with xstrdup_for_dump.
- (congruence_class::dump): Use symtab_node::name instead of
- sem_item::name.
- * ipa-icf.h (symtab_node::name): Remove.
- (symtab_node::asm_name): Likewise.
- 2015-03-18 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65450
- * tree-vect-data-refs.c (vect_duplicate_ssa_name_ptr_info): New
- function.
- (vect_create_addr_base_for_vector_ref, vect_create_data_ref_ptr): Use
- it instead of duplicate_ssa_name_ptr_info.
- PR target/65222
- * doc/invoke.texi: Add knl as x86 -march=/-mtune= CPU type.
- 2015-03-18 Richard Biener <rguenther@suse.de>
- * tree-data-ref.h (struct access_matrix): Remove.
- (AM_LOOP_NEST, AM_NB_INDUCTION_VARS, AM_PARAMETERS, AM_MATRIX,
- AM_NB_PARAMETERS, AM_CONST_COLUMN_INDEX, AM_NB_COLUMNS,
- AM_GET_SUBSCRIPT_ACCESS_VECTOR, AM_GET_ACCESS_MATRIX_ELEMENT): Likewise.
- (am_vector_index_for_loop): Likewise.
- (struct data_reference): Remove access_matrix member.
- (DR_ACCESS_MATRIX): Remove.
- (lambda_vector_new): Add comment.
- (lambda_matrix_new): Use XOBNEWVEC.
- 2015-03-18 Richard Biener <rguenther@suse.de>
- * tree-ssa-loop-ch.c (pass_data_ch): Remove TODO_cleanup_cfg.
- (pass_ch::execute): Cleanup the CFG only if we did sth.
- * tree-vect-generic.c (pass_data_lower_vector): Remove TODO_cleanup_cfg.
- 2015-03-18 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * expmed.c (synth_mult): Use std::swap instead of manually
- swapping algorithms.
- 2015-03-18 Jakub Jelinek <jakub@redhat.com>
- PR target/65078
- * config/i386/sse.md (movsi/movdi -> vec_extract_*_0 splitter): New.
- 2015-03-16 Georg-Johann Lay <avr@gjlay.de>
- PR target/65296
- * config/avr/avr.opt (-nodevicelib): New option.
- * doc/invoke.texi (AVR Options): Document it.
- * config/avr/avrlibc.h (LIB_SPEC, LIBGCC_SPEC) [avr1]: Don't link
- libgcc.a, libc.a, libm.a.
- * config/avr/specs.h: Same.
- * config/avr/gen-avr-mmcu-specs.c (print_mcu): Don't print specs
- which don't (directly) depend on the device. Print more help.
- (*avrlibc_devicelib) [-nodevicelib]: Don't link libdev.a.
- (*cpp): Don't define __AVR_DEV_LIB_NAME__.
- * config/avr/driver-avr.c: Remove -nodevicelib from option list in
- case of an error.
- (avr_devicespecs_file): Use suffix "%s" instead of absolute path
- for specs file name.
- * config/avr/avr-arch.h (avr_mcu_t) [.library_name]: Remove.
- * config/avr/avr-mcus.def: Adjust initializers and comments.
- 2015-03-16 Jan Hubicka <hubicka@ucw.cz>
- * tree-sra.c (ipa_sra_preliminary_function_checks): Use
- DECL_ONE_ONLY to check if decl is one only.
- * ipa-split.c (consider_split): Limit splitt of one only functions.
- 2015-03-16 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65427
- * tree-vect-generic.c (do_cond, expand_vector_scalar_condition): New
- functions.
- (expand_vector_operations_1): Handle BLKmode vector COND_EXPR.
- 2015-03-16 Marek Polacek <polacek@redhat.com>
- * cgraph.h (add_new_static_var): Remove declaration.
- * varpool.c (add_new_static_var): Remove function.
- 2015-03-16 Jakub Jelinek <jakub@redhat.com>
- * omp-low.c (expand_omp_target): Use auto_vec<tree, 11>
- instead of vec<tree> * with vec_alloc and release for args.
- Adjust all users.
- PR middle-end/65431
- * omp-low.c (delete_omp_context): Only splay_tree_delete
- reduction_map in GIMPLE_OMP_TARGET is_gimple_omp_offloaded
- is_gimple_omp_oacc contexts. Don't look at ctx->outer.
- 2015-03-16 Max Ostapenko <m.ostapenko@partner.samsung.com>
- PR sanitizer/64820
- * cfgexpand.c (align_base): New function.
- (alloc_stack_frame_space): Call it.
- (expand_stack_vars): Align prev_frame to be sure
- data->asan_vec elements aligned properly.
- 2015-03-16 Eric Botcazou <ebotcazou@adacore.com>
- PR middle-end/65409
- * expr.c (store_field): Do not do a direct block copy if the source is
- a PARALLEL with BLKmode.
- 2015-03-16 Tom de Vries <tom@codesourcery.com>
- PR middle-end/65414
- Revert:
- 2015-03-12 Tom de Vries <tom@codesourcery.com>
- PR rtl-optimization/64895
- * lra-lives.c (check_pseudos_live_through_calls): Use
- actual_call_used_reg_set instead of call_used_reg_set, if available.
- 2015-03-16 Alan Modra <amodra@gmail.com>
- PR target/63150
- * config/rs6000/rs6000.md (bswapdi2): Remove one scratch reg.
- Modify Z->r bswapdi splitter to use dest in place of scratch.
- In r->Z and Z->r bswapdi splitter rename word_high, word_low
- to word1, word2 and rearrange logic to suit.
- (bswapdi2_64bit): Remove early clobber on Z->r alternative.
- (bswapdi2_ldbrx): Likewise. Remove '??' on r->r.
- (bswapdi2_32bit): Remove early clobber on Z->r alternative.
- Add one '?' on r->r. Modify Z->r splitter to avoid need for
- early clobber.
- 2015-03-14 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65369
- * tree-vect-stmts.c (vectorizable_load) <case dr_explicit_realign>:
- Set bump to vs * TYPE_SIZE_UNIT (elem_type) - 1 instead of
- (vs - 1) * TYPE_SIZE_UNIT (elem_type).
- PR tree-optimization/65418
- * tree-ssa-reassoc.c (extract_bit_test_mask): If there
- are casts in the first PLUS_EXPR operand, ensure tbias and
- *totallowp are in the inner type.
- PR rtl-optimization/65401
- * combine.c (rtx_equal_for_field_assignment_p): Add widen_x
- argument. If true, adjust_address_nv of x with big-endian
- correction for the mode widening to GET_MODE (y).
- (make_field_assignment): Don't do MEM mode widening here.
- Use MEM_P instead of GET_CODE == MEM.
- 2015-03-13 Ilya Verbin <ilya.verbin@intel.com>
- * varpool.c (varpool_node::get_create): Don't set 'offloadable' flag for
- the external decls.
- 2015-03-13 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- PR target/64600
- * config/arm/arm.c (arm_gen_constant, AND case): Use
- ARM_SIGN_EXTEND when constructing AND mask.
- 2015-03-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
- * graph.c (print_graph_cfg): Make function names visible and append
- parenthesis to it. Also make groups of basic blocks belonging to the
- same function visible.
- 2015-03-12 Richard Biener <rguenther@suse.de>
- PR middle-end/44563
- * tree-inline.c (gimple_expand_calls_inline): Walk BB backwards
- to avoid quadratic behavior with inline expansion splitting blocks.
- * tree-cfgcleanup.c (cleanup_tree_cfg_bb): Do not merge block
- with the successor if the predecessor will be merged with it.
- * tree-cfg.c (gimple_can_merge_blocks_p): We can't merge the
- entry block with its successor.
- 2015-03-13 Richard Biener <rguenther@suse.de>
- PR middle-end/44563
- * tree-cfgcleanup.c (split_bb_on_noreturn_calls): Remove.
- (cleanup_tree_cfg_1): Do not call it.
- (execute_cleanup_cfg_post_optimizing): Fixup the CFG here.
- (fixup_noreturn_call): Mark the stmt as control altering.
- * tree-cfg.c (execute_fixup_cfg): Do not dump the function
- here.
- (pass_data_fixup_cfg): Produce a dump file.
- * tree-ssa-dom.c: Include tree-cfgcleanup.h.
- (need_noreturn_fixup): New global.
- (pass_dominator::execute): Fixup queued noreturn calls.
- (optimize_stmt): Queue calls that became noreturn for fixup.
- * tree-ssa-forwprop.c (pass_forwprop::execute): Likewise.
- * tree-ssa-pre.c: Include tree-cfgcleanup.h.
- (el_to_fixup): New global.
- (eliminate_dom_walker::before_dom_childre): Queue calls that
- became noreturn for fixup.
- (eliminate): Fixup queued noreturn calls.
- * tree-ssa-propagate.c: Include tree-cfgcleanup.h.
- (substitute_and_fold_dom_walker): New member stmts_to_fixup.
- (substitute_and_fold_dom_walker::before_dom_children): Queue
- alls that became noreturn for fixup.
- (substitute_and_fold): Fixup queued noreturn calls.
- 2015-03-12 Jan Hubicka <hubicka@ucw.cz>
- * ipa-icf.c (sem_function::equals_wpa): Match CXX_CONSTRUCTOR_P
- and CXX_DESTURCTOR_P. For consutrctors match ODR type of class they
- are building; for methods check ODR type of class they belong to if
- they may lead to a polymorphic call.
- (sem_function::compare_polymorphic_p): Be bit smarter about testing
- when function may lead to a polymorphic call.
- (sem_function::compare_type_list): Remove.
- (sem_variable::equals): Update use of compatible_types_p.
- (sem_variable::parse_tree_refs): Remove.
- (sem_item_optimizer::filter_removed_items): Do not filter out CXX
- cdtor.
- * ipa-icf-gimple.c (func_checker::compare_decl): Do polymorphic
- matching here.
- (func_checker::compatible_polymorphic_types_p): Break out from ...
- (unc_checker::compatible_types_p): ... here.
- * ipa-icf-gimple.h (func_checker::compatible_polymorphic_types_p):
- Declare.
- (unc_checker::compatible_types_p): Update.
- * ipa-icf.h (compare_type_list, parse_tree_refs, compare_sections):
- Remove.
- 2015-03-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- PR rtl-optimization/65235
- * simplify-rtx.c (simplify_binary_operation_1, VEC_SELECT case):
- When first element of vec_concat is const_int, calculate its size
- using second element.
- 2015-03-12 Richard Biener <rguenther@suse.de>
- PR middle-end/65270
- * fold-const.c (operand_equal_p): Fix ordering of resetting
- OEP_ADDRESS_OF and checking for it in the [TARGET_]MEM_REF case.
- 2015-03-12 Dominik Vogt <vogt@linux.vnet.ibm.com>
- * config/s390/s390.c (s390_reorg): Move code to output nops after label
- to s390_reorg ().
- (s390_asm_output_function_label): Likewise.
- * config/s390/s390.c (s390_asm_output_function_label):
- Fix function label alignment with -mhtopatch.
- * config/s390/s390.md ("unspecv"): New values UNSPECV_NOP_2_BYTE,
- UNSPECV_NOP_4_BYTE and UNSPECV_NOP_6_BYTE
- ("nop_2_byte"): New define_insn.
- ("nop_4_byte"): Likewise.
- ("nop_6_byte"): Likewise.
- * doc/extend.texi (hotpatch): hotpatch attribute doc fixes.
- * doc/invoke.texi (-mhotpatch): -mhotpatch doc fixes.
- 2015-03-12 Ilya Enkovich <ilya.enkovich@intel.com>
- PR target/65103
- * config/i386/i386.c (ix86_address_cost): Fix cost of a PIC
- register.
- 2015-03-12 Ilya Enkovich <ilya.enkovich@intel.com>
- PR target/65044
- * toplev.c (process_options): Restrict Pointer Bounds Checker
- usage with Address Sanitizer.
- 2015-03-12 Richard Biener <rguenther@suse.de>
- * tree-cfg.c (gimple_split_block): Remove loop finding stmt
- to split on.
- * omp-low.c (expand_omp_taskreg): Split block before removing
- the stmt.
- (expand_omp_target): Likewise.
- * ubsan.c (ubsan_expand_null_ifn): Adjust stmt if we replaced it.
- * tree-parloops.c (create_call_for_reduction_1): Pass a proper
- stmt to split_block.
- 2015-03-12 Tom de Vries <tom@codesourcery.com>
- PR rtl-optimization/64895
- * lra-lives.c (check_pseudos_live_through_calls): Use
- actual_call_used_reg_set instead of call_used_reg_set, if available.
- 2015-03-10 Jan Hubicka <hubicka@ucw.cz>
- * cgraph.c (cgraph_node::release_body): Free function_in_decl_state.
- (cgraph_node::remove): Likewise.
- (cgraph_node::get_untransformed_body): Likewise.
- * varpool.c (varpool_node::remove): Likewise.
- (varpool_node::get_constructor): Add sanity check.
- 2015-03-11 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi (-fgnu89-inline): Remove discussion about
- old GCC versions.
- (-fabi-compat-version): Likewise.
- (-ffriend-injection): Likewise.
- (-Wdeclaration-after-statement): Likewise.
- (-fomit-frame-pointer): Likewise.
- (-ftree-coalesce-inlined-vars): Likewise.
- (-fvisibility=): Likewise.
- * doc/extend.texi (Typeof): Likewise.
- (Zero Length): Likewise.
- (Escaped Newlines): Likewise.
- (Compound Literals): Likewise.
- (Function Attributes): Likewise.
- (Label Attributes): Likewise.
- (Type Attributes): Likewise.
- (Function Names): Likewise.
- (Other Builtins): Likewise.
- (Function Specific Option Pragmas): Likewise.
- (C++ Interface): Likewise.
- 2015-03-11 Thomas Schwinge <thomas@codesourcery.com>
- * config/nvptx/nvptx.h (LIBSTDCXX): Define to "gcc".
- 2015-03-11 Marek Polacek <polacek@redhat.com>
- PR tree-optimization/65388
- * tree-ssa-tail-merge.c (same_succ_def::equal): Fix typo in comparison.
- 2015-03-10 Georg-Johann Lay <avr@gjlay.de>
- PR target/65296
- * configure.ac [avr]: Check as for options -mrmw, --mlink-relax.
- * configure: Regenerate.
- * config.in: Regenerate.
- * doc/invoke.texi (AVR Options) [-mrmw]: Document it.
- [-mn-flash]: Document it.
- [__AVR_ARCH__]: Document avrtiny.
- * config/avr/gen-avr-mmcu-specs.c (config.h): Include it.
- (*asm_relax): Only define spec if HAVE_AS_AVR_MLINK_RELAX_OPTION.
- (*asm_rmw): Only define spec if HAVE_AS_AVR_MRMW_OPTION.
- 2015-03-11 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * doc/invoke.texi: Add missing cpu values (z196, zEC12).
- 2015-03-11 Michael Meissner <meissner@linux.vnet.ibm.com>
- PR target/65242
- * config/rs6000/rs6000.c (rs6000_preferred_reload_class): Do not
- allow reloads of PLUS in floating point/VSX registers.
- 2015-03-11 Junmo Park <junmoz.park@samsung.com>
- * config/arm/cortex-a57.md (cortex_a57_crypto_simple): Add
- crypto_sha256_fast.
- (cortex_a57_crypto_complex): Add crypto_sha256_slow.
- 2015-03-11 Richard Biener <rguenther@suse.de>
- PR tree-optimization/65310
- * tree-sra.c (build_ref_for_offset): Also preserve larger
- alignment.
- 2015-03-11 Marat Zakirov <m.zakirov@samsung.com>
- * asan.c (instrument_derefs): Disable instrumentation on asan-globals=0.
- 2015-03-10 Jakub Jelinek <jakub@redhat.com>
- PR target/65368
- * config/i386/i386.md (bmi2_bzhi_<mode>3): Removed define_insn,
- new define_expand.
- (*bmi2_bzhi_<mode>3, *bmi2_bzhi_<mode>3_1): New define_insns.
- 2015-03-10 Jan Hubicka <hubicka@ucw.cz>
- * ipa-icf.c (sem_function::equals_wpa): Move here some checks from ...
- (sem_function::equals_wpa): ... here.
- 2015-03-10 Marek Polacek <polacek@redhat.com>
- Jakub Jelinek <jakub@redhat.com>
- PR sanitizer/65367
- * ubsan.c (ubsan_expand_objsize_ifn): Update GSI instead of GSI_ORIG
- when only removing the statement. Handle expanding UBSAN_OBJECT_SIZE
- separately.
- 2015-03-10 Jakub Jelinek <jakub@redhat.com>
- PR target/65286
- * config/rs6000/t-linux: For powerpc64* target set
- MULTILIB_OSDIRNAMES instead of MULTIARCH_DIRNAME.
- 2015-03-10 Richard Biener <rguenther@suse.de>
- PR middle-end/44563
- * tree-inline.c (copy_cfg_body): Skip block mapped to entry/exit
- for redirect_all_calls.
- 2015-03-10 Marek Polacek <polacek@redhat.com>
- * gdbinit.in (pcfun): Define and document.
- 2015-03-10 Ilya Verbin <ilya.verbin@intel.com>
- * config/i386/intelmic-mkoffload.c: Include intelmic-offload.h instead
- of libgomp-plugin.h.
- (find_target_compiler): Support a case when the path to gcc is
- specified in the PATH env var, so COLLECT_GCC doesn't contain a path.
- (generate_host_descr_file): Use GOMP_DEVICE_INTEL_MIC from
- intelmic-offload.h instead of OFFLOAD_TARGET_TYPE_INTEL_MIC from
- libgomp-plugin.h.
- (main): Use GCC_INSTALL_NAME as target_driver_name.
- * config/i386/t-intelmic (CFLAGS-mkoffload.o): Add GCC_INSTALL_NAME
- define.
- (mkoffload.o): Remove obsolete include path and defines.
- (mkoffload$(exeext)): Use $(LINKER) instead of $(COMPILER).
- 2015-03-10 Richard Biener <rguenther@suse.de>
- PR middle-end/63155
- * tree-ssa-coalesce.h (verify_ssa_coalescing): Declare.
- * tree-ssa-coalesce.c: Include timevar.h.
- (attempt_coalesce): Handle graph being NULL.
- (coalesce_partitions): Call verify_ssa_coalescing if ENABLE_CHECKING.
- Split out abnormal coalescing to ...
- (perform_abnormal_coalescing): ... this function.
- (coalesce_ssa_name): Perform abnormal coalescing without computing
- live/conflict.
- (verify_ssa_coalescing_worker): New function.
- (verify_ssa_coalescing): Likewise.
- 2015-03-10 Georg-Johann Lay <avr@gjlay.de>
- PR target/65296
- * config.gcc (extra_options) [avr]: Remove.
- (extra_gcc_objs) [avr]: Use driver-avr.o, avr-devices.o.
- (tm_file) [avr]: Add avr/specs.h after avr/avr.h.
- (tm_defines) [avr-*-rtems*]: Add WITH_RTEMS.
- * config/avr/avr.opt (config/avr/avr-arch.h): Remove include.
- (-mmcu=): Add Var and MissingArgError properties.
- (-march=): Remove.
- * config/avr/genmultilib.awk: Use -mmcu= instead of -march=.
- * config/avr/t-multilib: Regenerate.
- * config/avr/specs.h: New file.
- * config/avr/driver-avr.c: New file.
- * config/avr/genopt.sh: Remove file.
- * config/avr/avr-tables.opt: Remove file.
- * config/avr/predicates.md (avr_current_arch): Rename to avr_arch.
- * config/avr/avr-c.c: Same.
- * avr-arch.h: Same.
- (avr_current_device): Remove proto.
- * config/avr/avr.h (avr_current_arch): Rename to avr_arch.
- (AVR_HAVE_8BIT_SP): Don't depend on avr_current_device.
- (EXTRA_SPEC_FUNCTIONS): Define.
- (avr_devicespecs_file): New specs function proto.
- (DRIVER_SELF_SPECS): Use device-specs-file spec function.
- * config/avr/avr.c (avr_current_arch): Rename to avr_arch.
- (avr_current_device): Remove definition and usage.
- (avr_set_core_architecture): New static function.
- (avr_option_override): Use it.
- * config/avr/avr-devices.c (diagnostic.h, avr-arch.h): Include them.
- (mcu_name): New static array.
- (comparator, avr_archs_str, avr_mcus_str): New static functions.
- (avr_inform_devices, avr_inform_core_architectures): New functions.
- * config/avr/gen-avr-mmcu-specs.c (avr-arch.h, specs.h): Include.
- (avrlibc.h) [WITH_AVRLIBC]: Include.
- (../rtems.h, rtems.h) [WITH_RTEMS]: Include.
- (print_mcu): Rewrite from scratch.
- * config/avr/avrlibc.h (LIB_SPEC, LIBGCC_SPEC, STARTFILE_SPEC):
- Forward to avr-specific specs defined in device-specs file.
- * config/avr/t-avr (driver-avr.o): New rule.
- (avr-devices.o): Depend on avr-arch.h.
- (avr-mcus): No more depend on avr-tables.opt.
- (avr-tables.opt): Remove rule.
- (install-device-specs): Use INSTALL_DATA, not INSTALL_PROGRAM.
- 2015-03-10 Ilya Enkovich <ilya.enkovich@intel.com>
- * c-family/c.opt (fchkp-use-wrappers): New.
- * ipa-chkp.c (CHKP_WRAPPER_SYMBOL_PREFIX): New.
- (chkp_wrap_function): New.
- (chkp_build_instrumented_fndecl): Support wrapped
- functions.
- * doc/invoke.texi (-fcheck-pointer-bounds): New.
- (-fchkp-check-incomplete-type): New.
- (-fchkp-first-field-has-own-bounds): New.
- (-fchkp-narrow-bounds): New.
- (-fchkp-narrow-to-innermost-array): New.
- (-fchkp-optimize): New.
- (-fchkp-use-fast-string-functions): New.
- (-fchkp-use-nochk-string-functions): New.
- (-fchkp-use-static-bounds): New.
- (-fchkp-use-static-const-bounds): New.
- (-fchkp-treat-zero-dynamic-size-as-infinite): New.
- (-fchkp-check-read): New.
- (-fchkp-check-write): New.
- (-fchkp-store-bounds): New.
- (-fchkp-instrument-calls): New.
- (-fchkp-instrument-marked-only): New.
- (-fchkp-use-wrappers): New.
- (-static-libmpx): New.
- (-static-libmpxwrappers): New.
- 2015-03-10 Ilya Enkovich <ilya.enkovich@intel.com>
- * config/i386/linux-common.h (LIBMPX_WRAPPERSSPEC): New.
- (CHKP_SPEC): Add wrappers library.
- * c-family/c.opt (static-libmpxwrappers): New.
- 2015-03-10 Ilya Enkovich <ilya.enkovich@intel.com>
- * config/i386/linux-common.h (LIBMPX_LIBS): New.
- (LIBMPX_SPEC): New.
- (CHKP_SPEC): New.
- * gcc.c (CHKP_SPEC): New.
- (LINK_COMMAND_SPEC): Add CHKP_SPEC.
- * c-family/c.opt (static-libmpx): New.
- 2015-03-10 Richard Biener <rguenther@suse.de>
- PR middle-end/44563
- * cgraph.h (struct cgraph_edge_hasher): Add hash overload
- for compare_type.
- * cgraph.c (cgraph_edge_hasher::hash): Inline htab_hash_pointer.
- (cgraph_update_edge_in_call_site_hash): Use cgraph_edge_hasher::hash.
- (cgraph_add_edge_to_call_site_hash): Likewise.
- (cgraph_node::get_edge): Likewise.
- (cgraph_edge::set_call_stmt): Likewise.
- (cgraph_edge::remove_caller): Likewise.
- 2015-03-10 Chung-Ju Wu <jasonwucj@gmail.com>
- * config/nds32/nds32.h (callee_saved_regs_size): Rename to ...
- (callee_saved_gpr_regs_size): ... this.
- (callee_saved_regs_first_regno): Rename to ...
- (callee_saved_first_gpr_regno): ... this.
- (callee_saved_regs_last_regno) Rename to ...
- (callee_saved_last_gpr_regno): ... this.
- * config/nds32/nds32.c (nds32_compute_stack_frame): Adjust renamed
- variables.
- (nds32_initial_elimination_offset): Likewise.
- (nds32_expand_prologue): Likewise.
- (nds32_expand_epilogue): Likewise.
- (nds32_expand_prologue_v3push): Likewise.
- (nds32_expand_epilogue_v3pop): Likewise.
- * config/nds32/nds32-md-auxiliary.c (nds32_output_stack_push):
- Adjust renamed variables.
- (nds32_output_stack_pop): Likewise.
- 2015-03-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
- * dominance.c (nearest_common_dominator_for_set): Fix A_Dominated_by_B
- code in comment.
- 2015-03-10 Jakub Jelinek <jakub@redhat.com>
- PR rtl-optimization/65321
- * cfgexpand.c (expand_debug_expr): Ensure shift amount isn't wider
- than shift mode.
- * var-tracking.c (use_narrower_mode): Likewise.
- 2015-03-10 Jan Hubicka <hubicka@ucw.cz>
- PR tree-optimization/65355
- * varasm.c (notice_global_symbol): Do not produce RTL.
- * symtab.c (symtab_node::can_increase_alignment_p): Check for section
- anchor.
- * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Do not
- check for section anchors.
- 2015-03-10 Alan Modra <amodra@gmail.com>
- PR target/65286
- * config.gcc (powerpc*-*-linux*): Arrange for powerpc64le-linux
- to be single-arch by default. Set cpu_is_64bit for powerpc64
- given --with-cpu=native.
- * config/rs6000/t-fprules: Do not set default MULTILIB vars.
- * config/rs6000/t-linux (MULTIARCH_DIRNAME): Support powerpc64
- and powerpc64le.
- * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Test
- rs6000_isa_flags rather than TARGET_64BIT.
- 2015-03-09 Yoshinori Sato <ysato@users.sourceforge.jp>
- Kaz Kojima <kkojima@gcc.gnu.org>
- * config/sh/t-linux (MULTILIB_EXCEPTIONS): Define for m2a cases.
- 2015-03-09 Jakub Jelinek <jakub@redhat.com>
- PR lto/65361
- * ipa-devirt.c (add_type_duplicate): Don't use DECL_CONTEXT
- on a TREE_BINFO, instead use BINFO_TYPE.
- 2015-03-09 Richard Biener <rguenther@suse.de>
- PR middle-end/65270
- * tree-core.h (enum operand_equal_flag): Add OEP_ADDRESS_OF.
- * fold-const.c (operand_equal_p): When recursing for ADDR_EXPRs
- operand set OEP_ADDRESS_OF. Clear it when recursing to non-bases
- of that. When comparing dereferences compare alignment.
- When comparing MEM_REFs or TARGET_MEM_REFs compare dependence info.
- 2015-03-08 Jan Hubicka <hubicka@ucw.cz>
- * ipa-inline-analysis.c (check_callers): Check
- node->can_remove_if_no_direct_calls_and_refs_p.
- (growth_likely_positive): Reorganize to call
- can_remove_if_no_direct_calls_p later.
- * cgraph.h (will_be_removed_from_program_if_no_direct_calls_p,
- will_be_removed_from_program_if_no_direct_calls_p): Add
- will_inline parameter.
- * cgraph.c (cgraph_node::can_remove_if_no_direct_calls_p,
- cgraph_node::will_be_removed_from_program_if_no_direct_calls_p):
- Handle inliner case correctly.
- 2015-03-09 Thomas Preud'homme <thomas.preudhomme@arm.com>
- PR tree-optimization/63743
- * cfgexpand.c (reorder_operands): Also reorder if only second operand
- had its definition forwarded by TER.
- 2015-03-08 Jan Hubicka <hubicka@ucw.cz>
- PR lto/65316
- * ipa-utils.h (types_odr_comparable): Add strict argument.
- * ipa-devirt.c: Fix whitespace;
- (odr_hasher): Remove.
- (odr_name_hasher, odr_vtable_hasher): New hashers.
- (can_be_name_hashed_p): New predicate.
- (hash_type_name): remove.
- (hash_odr_name): New.
- (odr_name_hasher::hash): new.
- (can_be_vtable_hashed_p): New.
- (hash_odr_vtable): New.
- (odr_vtable_hasher::hash): New.
- (types_same_for_odr): Add strict parameter.
- (types_odr_comparable): Likewise.
- (odr_name_hasher::equal): New.
- (odr_vtable_hasher::equal): New.
- (odr_name_hasher::remove): New.
- (odr_hash_type): Change to hash_table<odr_name_hasher>.
- (odr_vtable_hash_type): New.
- (odr_vtable_hash): New.
- (odr_subtypes_equivalent_p): Do strict comparsion.
- (add_type_duplicate): Merge type names; cleanup; avoid type
- duplicates.
- (register_odr_type): Initialize vtable hash.
- (build_type_inheritance_graph): Likewise
- (get_odr_type): Reorg to use two hashes.
- (dump_possible_polymorphic_call_targets): Move sanity check after debug
- output.
- (ipa_devirt): Dump type_inheritance_graph.
- (types_same_for_odr): Add strict mode.
- 2015-03-05 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65334
- * cgraph.h (symtab_node): Add definition_alignment,
- can_increase_alignment_p and increase_alignment.
- * symtab.c (symtab_node::can_increase_alignment_p,
- increase_alignment_1, symtab_node::increase_alignment,
- symtab_node::definition_alignment): New.
- * tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Use
- can_increase_alignment_p.
- * tree-vectorizer.c (increase_alignment): Use increase_alignment.
- * tree-vect-stmts.c (ensure_base_align): Likewise.
- * varasm.c (function_section_1): Use definition_alignment.
- (assemble_start_function): Likewise.
- (emit_local): likewise.
- (build_constant_desc): Likewsie.
- (output_constant_def_contents): Likewise.
- (place_block_symbol): Likewise.
- (output_object_block): Likewise.
- 2015-03-05 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65316
- * tree.c (free_lang_data_in_type): Be sure to keep BINFO_VTABLE
- when outputting debug.
- 2015-03-07 Marek Polacek <polacek@redhat.com>
- Martin Uecker <uecker@eecs.berkeley.edu>
- PR sanitizer/65280
- * doc/invoke.texi: Update description of -fsanitize=bounds.
- 2015-03-06 Wilco Dijkstra <wilco.dijkstra@arm.com>
- * tree-ssa-phiopt.c (neg_replacement): Remove.
- (tree_ssa_phiopt_worker): Remove negate optimization.
- 2015-03-05 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65302
- * value-prof.c (gimple_ic): Pure dead eh edges when needed.
- 2015-03-06 Richard Biener <rguenther@suse.de>
- PR middle-end/64928
- * tree-ssa-live.h (struct tree_live_info_d): Add livein_obstack
- and liveout_obstack members.
- (calculate_live_on_exit): Remove.
- (calculate_live_ranges): Change declaration.
- * tree-ssa-live.c (liveness_bitmap_obstack): Remove global var.
- (new_tree_live_info): Adjust.
- (calculate_live_ranges): Delete livein when not wanted.
- (calculate_live_ranges): Do not initialize liveness_bitmap_obstack.
- Deal with partly deleted live info.
- (loe_visit_block): Remove temporary bitmap by using
- bitmap_ior_and_compl_into.
- (live_worklist): Adjust accordingly.
- (calculate_live_on_exit): Make static.
- * tree-ssa-coalesce.c (coalesce_ssa_name): Tell calculate_live_ranges
- we do not need livein.
- 2015-03-06 Jonathan Wakely <jwakely@redhat.com>
- * real.c (real_from_string): Fix typo in assertion.
- 2015-03-06 Alex Velenko <alex.velenko@arm.com>
- * ChangeLog (2015-03-05): Reflect Richard Henderson as actual author of
- the patch.
- 2015-03-05 Jan Hubicka <hubicka@ucw.cz>
- * ipa-icf.c (sem_variable::equals_wpa): Check FINAL flags.
- 2015-03-05 Vladimir Makarov <vmakarov@redhat.com>
- PR target/64342
- * lra-assigns.c (find_hard_regno_for): Rename to
- find_hard_regno_for_1. Add a new parameter.
- (find_hard_regno_for): New function using find_hard_regno_for_1.
- 2015-03-05 Bernd Edlinger <bernd.edlinger@hotmail.de>
- PR rtl-optimization/65067
- * expmed.c (store_bit_field, extract_bit_field): Reworked the
- strict volatile bitfield handling.
- 2015-03-05 Martin Liska <mliska@suse.cz>
- PR ipa/65318
- * ipa-icf.c (sem_variable::equals): Compare variables types.
- 2015-03-05 Richard Henderson <rth@redhat.com>
- PR target/65121
- * config/arm/arm.c (arm_function_in_section_p): Fix predicate to
- correctly check weak symbol binding.
- 2015-03-05 Steve Ellcey <sellcey@imgtec.com>
- PR middle-end/65315
- * cfgexpand.c (expand_stack_vars): Update large_align to maximum
- needed alignment.
- 2015-03-05 Martin Liska <mliska@suse.cz>
- * ipa-inline.c (inline_small_functions): Set default value to
- prevent warning during bootstrap.
- * tree.h: Add pragma guard that ignores false positives during
- bootstrap.
- 2015-03-05 Richard Biener <rguenther@suse.de>
- PR tree-optimization/65310
- * tree-vect-data-refs.c (vect_compute_data_ref_alignment):
- Properly preserve alignment of the base of the access.
- 2015-03-05 Richard Biener <rguenther@suse.de>
- PR ipa/65270
- * ipa-icf-gimple.c (func_checker::compare_memory_operand):
- Compare dependence info.
- 2015-03-05 Richard Biener <rguenther@suse.de>
- PR middle-end/65233
- * ipa-polymorphic-call.c: Include tree-ssa-operands.h and
- tree-into-ssa.h.
- (walk_ssa_copies): Revert last chage. Instead do not walk
- SSA names registered for SSA update.
- 2015-03-03 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65270
- * ipa-icf.c (sem_item::compare_cgraph_references): Compare
- vtable references for their containing type.
- (sem_function::equals_wpa): Compare TYPE_RESTRICT
- and type attributes.
- 2015-03-04 Eric Botcazou <ebotcazou@adacore.com>
- * fold-const.c (round_up_loc): Cast divisor to signed on all paths
- before negating it.
- * stor-layout.c (finalize_record_size): Revert latest change.
- 2015-03-04 Andreas Tobler <andreast@gcc.gnu.org>
- * config/rs6000/t-freebsd64: Remove 32-bit soft-float multilibs.
- 2015-03-03 Jan Hubicka <hubicka@ucw.cz>
- * cgraph.c (cgraph_node::can_remove_if_no_direct_calls_p): Rewrite
- for correct comdat handling.
- (cgraph_node::will_be_removed_from_program_if_no_direct_calls_p):
- Likewise.
- * cgraph.h (call_for_symbol_and_aliases): Fix formating.
- (used_from_object_file_p_worker): Remove.
- (cgraph_node::only_called_directly_or_alised): Add
- used_from_object_file_p.
- * ipa-inline-analysis.c (growth_likely_positive): Optimie.
- * ipa-inline-transform.c (can_remove_node_now_p_1): Use
- can_remove_if_no_direct_calls_and_refs_p.
- 2015-03-04 Nick Clifton <nickc@redhat.com>
- * config/rl78/rl78.h (enum reg_class): Remove real registers from
- General register class.
- * config/rl78/rl78-real.md: Replace general register constraints
- with real+virtual register constraints.
- 2015-03-04 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
- * config/s390/s390.c (s390_expand_builtin): Exlude non-htm builtins
- from checking for -mhtm option.
- 2015-03-03 Jan Hubicka <hubicka@ucw.cz>
- * tree-sra.c (convert_callers): Use call_for_symbol_and_aliases.
- (struct ipa_sra_check_caller_data): Add has_thunk field.
- (ipa_sra_check_caller): Check for thunk.
- (ipa_sra_preliminary_function_checks): Give up on function with
- thunks.
- (ipa_early_sra): Use call_for_symbol_and_aliases.
- 2015-03-03 Kaz Kojima <kkojima@gcc.gnu.org>
- PR target/65249
- * config/sh/sh.md (symGOT_load): Use R0 reg for operands[2] when
- called for __stack_chk_guard symbol.
- 2015-03-03 DJ Delorie <dj@redhat.com>
- * config/rl78/rl78-real.md (*addqi_real): Allow SADDR types for
- inc/dec.
- (*addhi3_real): Likewise.
- * config/rl78/rl78-virt.md (*inc<mode>3_virt): Additional
- pattern to match incrementing memory.
- * config/rl78/predicates.md (rl78_1_2_operand): New.
- * config/rl78/rl78.c (rl78_force_nonfar_3): Allow far mem-mem if
- it's the same and only mem.
- (rl78_alloc_physical_registers_op2): If there's effectively only
- one MEM, transcode it into HL.
- (rl78_far_p): Reject addresses that aren't legitimate.
- 2015-03-03 Eric Botcazou <ebotcazou@adacore.com>
- * fold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before
- negating it.
- * tree-sra.c (pa_sra_preliminary_function_checks): Fix typo in message.
- 2015-03-03 Max Filippov <jcmvbkbc@gmail.com>
- Implement call0 ABI for xtensa
- * config/xtensa/constraints.md ("a" constraint): Include stack
- pointer in case of call0 ABI.
- ("q" constraint): Make empty in case of call0 ABI.
- ("D" constraint): Include stack pointer in case of call0 ABI.
- * config/xtensa/xtensa-protos.h (xtensa_set_return_address,
- xtensa_expand_epilogue, xtensa_regno_to_class): Add new function
- prototypes.
- * config/xtensa/xtensa.c (xtensa_callee_save_size): New
- variable.
- (xtensa_regno_to_class): Make it a local variable in the
- function xtensa_regno_to_class.
- (xtensa_function_epilogue, TARGET_ASM_FUNCTION_EPILOGUE): Remove
- macro, function prototype and implementation.
- (reg_nonleaf_alloc_order): Make it a local variable in the
- function order_regs_for_local_alloc.
- (xtensa_conditional_register_usage): New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define macro.
- (xtensa_valid_move): Allow direct moves to stack pointer
- register in call0 ABI.
- (xtensa_setup_frame_addresses): Only spill register windows in
- windowed ABI.
- (xtensa_emit_call): Emit call(x)8 or call(x)0 in windowed and
- call0 ABI respectively.
- (xtensa_function_arg_1): Only mark a7 register for copying in
- windowed ABI.
- (xtensa_call_save_reg): New function.
- (compute_frame_size): Add space for callee saved register
- storage to the frame size in call0 ABI.
- (xtensa_expand_prologue): Generate code to set up stack frame
- and save callee-saved registers in call0 ABI.
- (xtensa_expand_epilogue): New function.
- (xtensa_set_return_address): New function.
- (xtensa_return_addr): Calculate return address in call0 ABI.
- (xtensa_builtin_saveregs): Only mark a7 register for copying and
- emit copying code in windowed ABI.
- (order_regs_for_local_alloc): Add preferred register allocation
- order for non-leaf function in call0 ABI.
- (xtensa_static_chain): Add atatic chain passing for call0 ABI.
- (xtensa_asm_trampoline_template): Add trampoline generation for
- call0 ABI.
- (xtensa_trampoline_init): Add trampoline initialization for
- call0 ABI.
- (xtensa_conditional_register_usage, xtensa_regno_to_class): New
- functions.
- * config/xtensa/xtensa.h (TARGET_WINDOWED_ABI): New macro.
- (TARGET_CPU_CPP_BUILTINS): Add built-in define for call0 ABI.
- (CALL_USED_REGISTERS): Modify to encode both windowed and call0
- ABI call-used registers.
- (HARD_FRAME_POINTER_REGNUM): Add frame pointer for call0 ABI.
- (INCOMING_REGNO, OUTGOING_REGNO): Use argument unchanged in
- call0 ABI.
- (REG_CLASS_CONTENTS): Include all registers into the preferred
- reload registers set, adjust the set in the
- xtensa_conditional_register_usage.
- (xtensa_regno_to_class): Drop variable declaration.
- (REGNO_REG_CLASS): Redefine to use xtensa_regno_to_class
- function.
- (WINDOW_SIZE): Define as 8 or 0 for windowed and call0 ABI
- respectively.
- (FUNCTION_PROFILER): Add _mcount call for call0 ABI.
- (TRAMPOLINE_SIZE): Define trampoline size for call0 ABI.
- (RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 in call0 ABI.
- (ASM_OUTPUT_POOL_PROLOGUE): Always generate literal pool
- location in call0 ABI.
- (EH_RETURN_STACKADJ_RTX): New definition, use a10 for passing
- stack adjustment size when handling exception.
- (CRT_CALL_STATIC_FUNCTION): Add definition for call0 ABI.
- * config/xtensa/xtensa.md (A9_REG, UNSPECV_BLOCKAGE): New
- definitions.
- ("return" pattern): Generate ret.n/ret in call0 ABI.
- ("epilogue" pattern): Expand epilogue.
- ("nonlocal_goto" pattern): Use default in call0 ABI.
- ("eh_return" pattern): Move implementation to eh_set_a0_windowed,
- emit eh_set_a0_* depending on ABI.
- ("eh_set_a0_windowed" pattern): Former eh_return pattern.
- ("eh_set_a0_call0", "blockage"): New patterns.
- 2015-03-03 Martin Liska <mliska@suse.cz>
- PR ipa/65287
- * ipa-icf.c (sem_variable::parse): Skip all alias variables.
- 2015-03-03 Michael Meissner <meissner@linux.vnet.ibm.com>
- PR 65138/target
- * config/rs6000/rs6000-tables.opt: Regenerate table.
- 2015-03-03 Renlin Li <renlin.li@arm.com>
- * doc/md.texi (@item ^): Change ? into ^.
- 2015-03-03 H.J. Lu <hongjiu.lu@intel.com>
- * doc/tm.texi: Regenerated.
- 2015-03-03 Max Filippov <jcmvbkbc@gmail.com>
- * builtins.c (expand_builtin_return_addr): Add
- RETURN_ADDR_IN_PREVIOUS_FRAME to 'if' condition, remove
- surrounding #ifdef.
- * config/sparc/sparc.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Change
- definition to 1.
- * config/xtensa/xtensa.h (RETURN_ADDR_IN_PREVIOUS_FRAME):
- Likewise.
- * defaults.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 if
- undefined.
- * doc/tm.texi.in (RETURN_ADDR_IN_PREVIOUS_FRAME): Update
- paragraph.
- 2015-03-03 Martin Jambor <mjambor@suse.cz>
- Eric Botcazou <ebotcazou@adacore.com>
- * tree-sra.c (ipa_sra_check_caller_data): New type.
- (has_caller_p): Removed.
- (ipa_sra_check_caller): New function.
- (ipa_sra_preliminary_function_checks): Use it.
- 2015-03-03 Martin Liska <mliska@suse.cz>
- * ipa-icf.c (sem_item_optimizer::merge_classes): Use bit or
- instead of if branch.
- 2015-03-03 Martin Liska <mliska@suse.cz>
- PR ipa/65282
- * ipa-icf.c (sem_variable::equals): Fix wrong condition.
- 2015-03-23 Jeff Law <law@redhat.com>
- PR tree-optimization/65241
- * tree-ssa-dom.c (lookup_avail_expr): Only modify the avail_expr
- hash table if INSERT is true.
- 2015-03-03 Georg-Johann Lay <avr@gjlay.de>
- PR target/65296
- * config.gcc (extra_gcc_objs) [avr-*-rtems*]: Remove.
- 2015-03-03 Georg-Johann Lay <avr@gjlay.de>
- PR target/64331
- * config/avr/avr.c (context.h, tree-pass.h): Include them.
- (avr_pass_data_recompute_notes): New static variable.
- (avr_pass_recompute_notes): New class.
- (avr_register_passes): New static function.
- (avr_option_override): Call it.
- 2015-03-03 Georg-Johann Lay <avr@gjlay.de>
- Fix various problems with specs file generation.
- PR target/65296
- * config.gcc (extra_gcc_objs) [avr]: Remove.
- * config/avr/driver-avr.c: Remove file.
- * config/avr/t-avr (driver-avr.o): Remove rule.
- (gen-avr-mmcu-specs): Use CXX_FOR_BUILD, CXXFLAGS_FOR_BUILD and
- INCLUDES to build. Depend on TM_H.
- * config/avr/gen-avr-mmcu-specs.c: Tidy up code. Fix various
- build warnings. Fix non-matching types and non-existing %-codes.
- (tm.h): Include.
- (*lib) [!WITH_AVRLIBC]: Don't link libdev.a.
- (*libgcc) [WITH_AVRLIBC]: Add "-lm".
- * config/avr/avrlibc.h (LIBGCC_SPEC): Remove definition.
- * config/avr/avr.h (DRIVER_SELF_SPECS): Fix handling of -march=.
- (CPP_SPEC, CC1PLUS_SPEC, ASM_SPEC, LINK_SPEC, LIB_SPEC)
- (LIBGCC_SPEC): Remove definitions.
- 2015-03-03 Eric Botcazou <ebotcazou@adacore.com>
- * config/ia64/ia64.c (expand_vec_perm_interleave_2): Use gen_raw_REG
- to create a register in testing mode.
- 2015-03-03 Martin Liska <mliska@suse.cz>
- Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65263
- * cgraph.c (cgraph_node::has_thunk_p): New function.
- * cgraph.h (cgraph_node::has_thunk_p: Likewise.
- * ipa-icf.c (redirect_all_callers): Do not redirect thunks.
- (sem_function::merge): Assert is changed.
- 2015-03-03 Martin Liska <mliska@suse.cz>
- Martin Jambor <mjambor@suse.cz>
- PR ipa/65087
- * ipa-icf.c (sem_item_optimizer::execute): Change function
- return value to boolean.
- (sem_item_optimizer::merge_classes): Likewise.
- (ipa_icf_driver): Return TODO_remove_functions in case there's
- a merge operation processed.
- * ipa-icf.h: Change function return value to boolean.
- 2015-03-02 Michael Meissner <meissner@linux.vnet.ibm.com>
- PR 65138/target
- * config/rs6000/rs6000-cpus.def (powerpc64le): Add new generic
- processor type for 64-bit little endian PowerPC.
- * config/rs6000/rs6000.c (rs6000_option_override_internal): If
- -mdebug=reg, print TARGET_DEFAULT. Fix logic to use
- TARGET_DEFAULT if there is no default cpu. Fix -mdebug=reg
- printing built-in mask so it does not pass NULL pointers.
- * doc/invoke.texi (IBM RS/6000 and PowerPC options): Document
- -mcpu=powerpc64le.
- 2015-03-02 Steve Ellcey <sellcey@imgtec.com>
- PR target/58158
- * config/mips/mips.md (mov<mode>cc): Change ISA_HAS_SEL check to
- !ISA_HAS_FP_CONDMOVE.
- 2015-03-02 Aldy Hernandez <aldyh@redhat.com>
- * config/i386/i386.md (*udivmod<mode>4_pow2): Remove
- reload_completed.
- 2015-03-02 Ulrich Drepper <drepper@gmail.com>
- * doc/invoke.texi (Options for Code Generation Conventions):
- Fix URL of DSO paper.
- 2015-03-02 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65130
- * ipa-inline.c (check_callers): Looks for recursion.
- (inline_to_all_callers): Give up on uninlinable or recursive edges.
- * ipa-inline-analysis.c (inline_summary_t::duplicate): Do not update
- summary of inline clones.
- (do_estimate_growth_1): Fix recursion check.
- 2015-03-02 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64988
- * ipa-inline-transform.c (clone_inlined_nodes): Do not dissolve
- comdat groups.
- 2015-03-02 Jan Hubicka <hubicka@ucw.cz>
- Aldy Hernandez <aldyh@redhat.com>
- PR lto/65276
- * ipa-devirt.c (add_type_duplicate): Remove odr_violated assert
- when checking TYPE_BINFO.
- 2015-03-02 Richard Biener <rguenther@suse.de>
- PR ipa/65270
- * ipa-icf-gimple.c: Include builtins.h.
- (func_checker::compare_memory_operand): Compare base alignment.
- 2015-03-02 Ilya Enkovich <ilya.enkovich@intel.com>
- PR target/65184
- * gcc/config/i386/i386.c (ix86_pass_by_reference) Bounds
- are never passed by reference.
- 2015-03-02 Ilya Enkovich <ilya.enkovich@intel.com>
- PR target/65183
- * tree-chkp.c (chkp_check_lower): Don't check against
- zero bounds for already instrumented functions.
- (chkp_check_upper): Likewise.
- (chkp_fini): Clean pass local data to avoid wrong reusage.
- 2015-02-28 Martin Liska <mliska@suse.cz>
- Jan Hubicka <hubicka@ucw.cz>
- * ipa-icf.c (sem_variable::equals): Improve debug output;
- get variable constructor.
- (sem_variable::parse): Do not filter out too early; give up on
- volatile and register vars.
- (sem_item_optimizer::filter_removed_items): Filter out nonreadonly
- variables.
- * ipa-icf.h (sem_variable::init): Do not set ctor.
- (sem_variable::ctor): Remove.
- 2015-03-01 Aldy Hernandez <aldyh@redhat.com>
- PR middle-end/65233
- * ipa-polymorphic-call.c (walk_ssa_copies): Handle empty PHIs.
- 2015-02-28 Jan Hubicka <hubicka@ucw.cz>
- * ipa-icf.c: Include stor-layout.h
- (sem_function::compare_cgraph_references): Rename to ...
- (sem_item::compare_cgraph_references): ... this one.
- (sem_variable::equals_wpa): New function
- (sem_variable::equals): Do not check stuff already verified by
- equals_wpa.
- (sem_variable::equals): Reorg based on varasm.c:compare_constant.
- * ipa-icf.h (sem_item): Add compare_cgraph_references.
- (sem_function): Remove compare_cgraph_references.
- (sem_variable): Turns equals_wpa into non-inline.
- 2015-02-28 Jan Hubicka <hubicka@ucw.cz>
- * ipa-icf.c (sem_function::init): Fix formating; skip GIMPLE_PREDICT.
- (sem_item::add_expr): New function.
- (sem_function::hash_stmt): Handle operands of most statements.
- (sem_variable::get_hash): Hash the actual constructor.
- * ipa-icf.h (sem_item): Add add_expr.
- (sem_function): Update prototype of hash_stmt
- 2015-02-28 Martin Liska <mliska@suse.cz>
- Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65245
- * ipa-icf-gimple.c (func_checker::compare_function_decl):
- Remove.
- (func_checker::compare_variable_decl): Skip symtab vars.
- (func_checker::compare_cst_or_decl): Update.
- * ipa-icf.c (sem_function::parse): Do not consider aliases.
- (sem_function::compare_cgraph_references): Add ADDRESS parameter;
- use correct symtab predicates.
- (sem_function::equals_wpa): Update uses of compare_cgraph_references.
- (sem_variable::parse): Update comment.
- (sem_item_optimizer::build_graph): Consider ultimate aliases
- for references.
- 2015-02-28 Jan Hubicka <hubicka@ucw.cz>
- * ipa-icf-gimple.c (func_checker::compare_operand): Fix handling
- of OBJ_TYPE_REF.
- 2015-02-28 Jan Hubicka <hubicka@ucw.cz>
- * ipa-icf.c (sem_function::merge): Fix handling of COMDAT.
- (sem_variable::merge) Likewise.
- 2015-02-28 Jan Hubicka <hubicka@ucw.cz>
- * ipa-inline.c (can_inline_edge_p): Match opt_for_fn on inline
- target; also match flag_ipa_devirt.
- 2015-03-01 Martin Liska <mliska@suse.cz>
- Jan Hubicka <hubicka@ucw.cz>
- * ipa-icf-gimple.c (func_checker::compare_variable_decl):
- Validate variable alignment.
- * ipa-icf.c (sem_function::equals_private): Be more precise
- about non-common function attributes.
- (sem_variable::equals): Likewise.
- 2015-02-28 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65237
- * ipa-icf.c (sem_function::merge): Do not attempt to produce alias
- across COMDAT group boundary.
- 2015-02-28 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65232
- * ipa-icf.c (clear_decl_rtl): New function.
- (sem_function::merge): Clear RTL before forming alias.
- (sem_variable::merge): Clear RTL before forming alias.
- 2015-02-28 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65236
- * cgraphunit.c (cgraph_node::expand_thunk): Enable return slot opt.
- 2015-02-28 Xingxing Pan <xxingpan@marvell.com>
- * config/aarch64/aarch64.md: (mov<mode>_aarch64): Change type
- to neon_to_gp<q>.
- 2015-02-27 Vladimir Makarov <vmakarov@redhat.com>
- * params.def (PARAM_LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF): Fix
- a typo in the description.
- 2015-02-27 Vladimir Makarov <vmakarov@redhat.com>
- PR target/64317
- * params.def (PARAM_LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF): New.
- * params.h (LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF): New.
- * lra-constraints.c: Include "params.h".
- (EBB_PROBABILITY_CUTOFF): Use
- LRA_INHERITANCE_EBB_PROBABILITY_CUTOFF.
- (lra_inheritance): Use '<' instead of '<=' for
- EBB_PROBABILITY_CUTOFF.
- * doc/invoke.texi (lra-inheritance-ebb-probability-cutoff):
- Document change.
- 2015-02-27 Martin Liska <mliska@suse.cz>
- * ipa-icf.h (struct symbol_compare_hashmap_traits): Add missing
- vector length condition.
- 2015-02-27 Sandra Loosemore <sandra@codesourcery.com>
- * doc/extend.texi (x86 transactional memory intrinsics):
- Reorganize discussion of _xbegin. Clarify that the return
- value is a bit mask. Expand example and move to end of section.
- 2015-02-26 Jakub Jelinek <jakub@redhat.com>
- Aldy Hernandez <aldyh@redhat.com>
- PR rtl-optimization/65220
- * config/i386/i386.md (*udivmod<mode>4_pow2): New.
- 2015-02-27 Vladimir Makarov <vmakarov@redhat.com>
- PR target/65032
- * lra-remat.c (update_scratch_ops): New.
- (do_remat): Call it.
- * lra.c (lra_register_new_scratch_op): New. Take code from ...
- (remove_scratches): ... here.
- * lra-int.h (lra_register_new_scratch_op): New prototype.
- 2015-02-27 Marek Polacek <polacek@redhat.com>
- PR c/65040
- * doc/invoke.texi: Update to reflect that -Wformat=2 doesn't enable
- -Wformat-signedness anymore.
- 2015-02-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
- * config/s390/s390.c: (s390_atomic_assign_expand_fenv): New
- function.
- (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): Define macro.
- 2015-02-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
- * config/s390/s390.c (enum s390_builtin):
- Add S390_BUILTIN_S390_SFPC and S390_BUILTIN_S390_EFPC.
- (code_for_builtin): Add CODE_FOR_s390_sfpc and CODE_FOR_s390_efpc.
- (s390_init_builtins): Generate new builtin functions.
- * config/s390/s390.md (UNSPECV_SFPC, UNSPECV_EFPC): New constants.
- (s390_sfpc, s390_efpc): New pattern definitions.
- 2015-02-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
- * config/s390/s390.c: (enum s390_builtin, s390_expand_builtin):
- Rename S390_BUILTIN_max to S390_BUILTIN_MAX.
- (s390_builtin_decls): New array.
- (s390_init_builtins): Put builtin decls into s390_builtin_decls.
- (s390_builtin_decl): New function.
- (TARGET_BUILTIN_DECL): Define macro.
- 2015-02-27 Richard Biener <rguenther@suse.de>
- PR middle-end/63175
- * builtins.c (get_object_alignment_2): Make sure to re-apply
- the ANDed mask after recursing to its operand gets us a new
- misalignment bit position.
- 2015-02-26 Jan Hubicka <hubicka@ucw.cz>
- Martin Liska <mliska@suse.cz>
- PR bootstrap/65150
- * ipa-icf.c (symbol_compare_collection::symbol_compare_colleciton):
- Use address_matters_p.
- (redirect_all_callers, set_addressable): New functions.
- (sem_function::merge): Reorganize and fix merging issues.
- (sem_variable::merge): Likewise.
- (sem_variable::compare_sections): Remove.
- * common.opt (fmerge-all-constants, fmerge-constants): Remove
- Optimization flag.
- * symtab.c (symtab_node::resolve_alias): When alias has aliases,
- redirect them.
- (symtab_node::make_decl_local): Set ADDRESSABLE bit when
- decl is used.
- (address_matters_1): New function.
- (symtab_node::address_matters_p): New function.
- * cgraph.c (cgraph_edge::verify_corresponds_to_fndecl): Fix
- check for merged flag.
- * cgraph.h (address_matters_p): Declare.
- (symtab_node::address_taken_from_non_vtable_p): Remove.
- (symtab_node::address_can_be_compared_p): New method.
- (ipa_ref::address_matters_p): Move here from ipa-ref.c; simplify.
- * ipa-visibility.c (symtab_node::address_taken_from_non_vtable_p):
- Remove.
- (comdat_can_be_unshared_p_1) Use address_matters_p.
- (update_vtable_references): Fix formating.
- * ipa-ref.c (ipa_ref::address_matters_p): Move inline.
- * cgraphunit.c (cgraph_node::create_wrapper): Drop UNINLINABLE flag.
- * cgraphclones.c: Preserve merged and icf_merged flags.
- 2015-02-26 Sandra Loosemore <sandra@codesourcery.com>
- * doc/extend.texi (Function Attributes): Fix spelling and typos.
- (Label Attributes): Likewise.
- (Cilk Plus Builtins): Likewise.
- (ARC SIMD Built-in Functions): Likewise.
- (ARM C Language Extensions (ACLE)): Likewise.
- (PowerPC Built-in Functions): Likewise.
- (PowerPC Hardware Transactional Memory Built-in Functions):
- Likewise.
- 2015-02-26 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65216
- * tree-ssa-reassoc.c (rewrite_expr_tree): Force creation of
- new stmt and new SSA_NAME for lhs whenever the arguments have
- changed and weren't just swapped. Fix comment typo.
- PR tree-optimization/65215
- * tree-ssa-math-opts.c (find_bswap_or_nop_load): Return false
- for PDP endian targets.
- (perform_symbolic_merge, find_bswap_or_nop_1, find_bswap_or_nop):
- Fix up formatting issues.
- (bswap_replace): Likewise. For BYTES_BIG_ENDIAN, if the final access
- size is smaller than the original, adjust MEM_REF offset by the
- difference of sizes. Use is_gimple_mem_ref_addr instead of
- is_gimple_min_invariant test to avoid adding address temporaries.
- 2015-02-26 Martin Liska <mliska@suse.cz>
- Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64693
- * ipa-icf.c (symbol_compare_collection::symbol_compare_collection): New.
- (sem_item_optimizer::subdivide_classes_by_sensitive_refs): New function.
- (sem_item_optimizer::process_cong_reduction): Include division by
- sensitive references.
- * ipa-icf.h (struct symbol_compare_hashmap_traits): New class.
- * ipa-ref.c (ipa_ref::address_matters_p): New function.
- * ipa-ref.h (ipa_ref::address_matters_p): Likewise.
- 2015-02-26 Georg-Johann Lay <avr@gjlay.de>
- PR target/65192
- * config/avr/avr-protos.h (tiny_valid_direct_memory_access_range):
- Remove.
- * config/avr/avr.c: Same.
- (avr_legitimate_address_p) <AVR_TINY, CONSTANT_ADDRESS_P>:
- Refuse any constant address not in 0..0xbf.
- * config/avr/avr.md (*mov<mode>, *movsf): Remove
- tiny_valid_direct_memory_access_range from insn conditions.
- (mov<mode>): Don't special-case expansion of avrtiny addresses.
- 2015-02-26 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/61142
- * config/sh/sh.c (sh_check_add_incdec_notes): New function.
- * config/sh/sh-protos.h (sh_check_add_incdec_notes): Declare it.
- * config/sh/predicates.md (const_logical_operand): New predicate.
- * config/sh/sh.md: Add new peephole2 patterns.
- 2015-02-26 Marek Polacek <polacek@redhat.com>
- PR ipa/65008
- * ipa-inline.c (early_inliner): Recompute inline parameters.
- 2015-02-26 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
- PR target/65171
- * config/rs6000/rs6000.c (rs6000_analyze_swaps): Ensure
- instructions with TImode operands are included in the analysis.
- 2015-02-26 Sebastian Pop <s.pop@samsung.com>
- * tree-ssa-threadupdate.c (dump_jump_thread_path): Print all edges
- of an EDGE_FSM_THREAD.
- 2015-02-25 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
- * config/rs6000/htm.md (tcheck): Fix assembly encoding.
- 2015-02-25 Aldy Hernandez <aldyh@redhat.com>
- PR debug/46102
- * dwarf2out.c (dwarf2out_init): Disable -feliminate-dwarf2-dups.
- 2015-02-26 Sebastian Pop <s.pop@samsung.com>
- PR tree-optimization/65048
- * tree-ssa-threadupdate.c (valid_jump_thread_path): New.
- (thread_through_all_blocks): Call valid_jump_thread_path.
- Remove invalid FSM jump-thread paths.
- 2015-02-26 Jakub Jelinek <jakub@redhat.com>
- * passes.c (ipa_write_summaries_1): Call lto_output_init_mode_table.
- (ipa_write_optimization_summaries): Likewise.
- * tree-streamer.h: Include data-streamer.h.
- (streamer_mode_table): Declare extern variable.
- (bp_pack_machine_mode, bp_unpack_machine_mode): New inline functions.
- * lto-streamer-out.c (lto_output_init_mode_table,
- lto_write_mode_table): New functions.
- (produce_asm_for_decls): Call lto_write_mode_table when streaming
- offloading LTO.
- * lto-section-in.c (lto_section_name): Add "mode_table" entry.
- (lto_create_simple_input_block): Add mode_table argument to the
- lto_input_block constructors.
- * ipa-prop.c (ipa_prop_read_section, read_replacements_section):
- Likewise.
- * data-streamer-in.c (string_for_index): Likewise.
- * ipa-inline-analysis.c (inline_read_section): Likewise.
- * ipa-icf.c (sem_item_optimizer::read_section): Likewise.
- * lto-cgraph.c (input_cgraph_opt_section): Likewise.
- * lto-streamer-in.c (lto_read_body_or_constructor,
- lto_input_toplevel_asms): Likewise.
- (lto_input_mode_table): New function.
- * tree-streamer-out.c (pack_ts_fixed_cst_value_fields,
- pack_ts_decl_common_value_fields, pack_ts_type_common_value_fields):
- Use bp_pack_machine_mode.
- * real.h (struct real_format): Add name field.
- * lto-streamer.h (enum lto_section_type): Add LTO_section_mode_table.
- (class lto_input_block): Add mode_table member.
- (lto_input_block::lto_input_block): Add mode_table_ argument,
- initialize mode_table.
- (struct lto_file_decl_data): Add mode_table field.
- (lto_input_mode_table, lto_output_init_mode_table): New prototypes.
- * tree-streamer-in.c (unpack_ts_fixed_cst_value_fields,
- unpack_ts_decl_common_value_fields,
- unpack_ts_type_common_value_fields): Call bp_unpack_machine_mode.
- * tree-streamer.c (streamer_mode_table): New variable.
- * real.c (ieee_single_format, mips_single_format,
- motorola_single_format, spu_single_format, ieee_double_format,
- mips_double_format, motorola_double_format,
- ieee_extended_motorola_format, ieee_extended_intel_96_format,
- ieee_extended_intel_128_format, ieee_extended_intel_96_round_53_format,
- ibm_extended_format, mips_extended_format, ieee_quad_format,
- mips_quad_format, vax_f_format, vax_d_format, vax_g_format,
- decimal_single_format, decimal_double_format, decimal_quad_format,
- ieee_half_format, arm_half_format, real_internal_format): Add name
- field.
- * config/pdp11/pdp11.c (pdp11_f_format, pdp11_d_format): Likewise.
- 2015-02-26 Yuri Rumyantsev <ysrumyan@gmail.com>
- PR target/65161
- * config/i386/i386.c (ix86_sched_reorder): Skip instruction
- reordering for selective scheduling.
- 2015-02-26 Terry Guo <terry.guo@arm.com>
- * config/arm/arm-cores.def (cortex-m7): Add flag FL_NO_VOLATILE_CE.
- * config/arm/arm-protos.h (FL_NO_VOLATILE_CE): New flag.
- (arm_arch_no_volatile_ce): Declare new global variable.
- * config/arm/arm.c (arm_arch_no_volatile_ce): New global variable.
- (arm_option_override): Assign value to arm_arch_no_volatile_ce.
- * config/arm/arm.h (arm_arch_no_volatile_ce): Declare it.
- (TARGET_NO_VOLATILE_CE): New macro.
- * config/arm/arm.md (arm_comparison_operator): Disabled if not allow
- volatile memory access in IT block
- 2015-02-25 Kai Tietz <ktietz@redhat.com>
- PR tree-optimization/61917
- * tree-vect-loop.c (vectorizable_reduction): Handle obvious case
- that reduc_def_stmt is null.
- 2015-02-25 Martin Liska <mliska@suse.cz>
- * ipa-icf-gimple.c (func_checker::compare_variable_decl): Compare
- hard register variables.
- 2015-02-25 Kai Tietz <ktietz@redhat.com>
- PR target/64212
- * symtab.c (symtab::make_decl_local): Set DECL_IMPORT_P explicit to 0.
- (symtab::noninterposable_alias): Likewise.
- 2015-02-25 Ilya Enkovich <ilya.enkovich@intel.com>
- PR target/65167
- * gcc/config/i386/i386.c (ix86_function_arg_regno_p): Support
- bounds registers.
- (avoid_func_arg_motion): Add dependencies for BNDSTX insns.
- 2015-02-25 Alan Lawrence <alan.lawrence@arm.com>
- PR target/64997
- * config/aarch64/aarch64.md (*xor_one_cmpl<mode>3): Use FP_REGNUM_P
- as split condition; force split via '#' in output pattern.
- 2015-02-25 Richard Biener <rguenther@suse.de>
- Kai Tietz <ktietz@redhat.com>
- PR tree-optimization/61917
- * tree-vect-loop.c (vectorizable_reduction): Allow
- vect_internal_def without reduction to exit graceful.
- 2015-02-25 Georg-Johann Lay <avr@gjlay.de>
- PR target/65196
- * config/avr/avr.c (avr_adjust_insn_length): Call recog_memoized
- only with NONDEBUG_INSN_P.
- 2015-02-25 Georg-Johann Lay <avr@gjlay.de>
- Use variadic macros with avr-log.c.
- * config/avr/avr-protos.h (avr_vdump): New prototype.
- (avr_log_set_caller_e, avr_log_set_caller_f): Remove protos.
- (avr_edump, avr_fdump, avr_dump): (Re)define to use avr_vdump.
- * config/avr/avr-log.c: Adjust comments.
- (avr_vdump): New function.
- (avr_vadump): Pass caller as 2nd argument instead of format string.
- (avr_log_caller, avr_log_fdump_e, avr_log_fdump_f)
- (avr_log_set_caller_e, avr_log_set_caller_f): Remove.
- 2015-02-25 Jakub Jelinek <jakub@redhat.com>
- PR lto/64374
- * target.def (target_option_stream_in): New target hook.
- * tree-streamer-in.c (streamer_read_tree_bitfields): Invoke
- targetm.target_option.post_stream_in if non-NULL.
- * doc/tm.texi.in: Add @hook TARGET_OPTION_POST_STREAM_IN.
- * doc/tm.texi: Updated.
- * config/i386/i386.c (ix86_function_specific_post_stream_in): New
- function.
- (TARGET_OPTION_POST_STREAM_IN): Redefine.
- 2015-02-24 Jeff Law <law@redhat.com>
- PR target/65117
- * config/xtensa/xtensa.md (zero_cost_loop_start): Reverse numbering
- of operand 0 and operand 2.
- (zero_cost_loop_end, loop_end): Similarly.
- 2015-02-24 Aldy Hernandez <aldyh@redhat.com>
- * gimple.h (gimple_build_assign): Rename CXX_MEM_STAT_DECL to
- CXX_MEM_STAT_INFO.
- 2015-02-24 DJ Delorie <dj@redhat.com>
- * config/rl78/rl78-protos.h (rl78_split_movsi): Accept a mode as well.
- * config/rl78/rl78-expand.md (movsf): New, same as movsi.
- * config/rl78/rl78.c (rl78_split_movsi): Accept a mode, use it
- instead of hardcoding SImode.
- 2015-02-24 Bernd Schmidt <bernds@codesourcery.com>
- * omp-low.c (create_omp_child_function): Tag entrypoint
- functions with a special attribute.
- 2015-02-24 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
- PR target/65058
- * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Drop unused variable.
- 2015-02-24 Vladimir Makarov <vmakarov@redhat.com>
- PR rtl-optimization/65123
- * lra-remat.c (operand_to_remat): Check hard regs in insn
- definition too.
- 2015-02-24 Nick Clifton <nickc@redhat.com>
- * config/v850/v850.h (ASM_SPEC): Pass -msoft-float/-mhard-float on
- to the assembler.
- 2015-02-24 Thomas Schwinge <thomas@codesourcery.com>
- PR libgomp/64625
- * omp-builtins.def (BUILT_IN_GOACC_DATA_START): Specify as
- BT_FN_VOID_INT_SIZE_PTR_PTR_PTR, not
- BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR.
- (BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_UPDATE): Specify as
- BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR, not
- BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR.
- (BUILT_IN_GOACC_PARALLEL): Specify as
- BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR, not
- BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR.
- * builtin-types.def
- (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
- (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
- Remove function types.
- (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR)
- (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR)
- (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
- New function types.
- 2015-02-24 Georg-Johann Lay <avr@gjlay.de>
- * config/avr/stdfix.h [__WITH_AVRLIBC__]: Include <stdfix-avrlibc.h>.
- 2015-02-24 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65170
- * wide-int.cc (wi::mul_internal): For the umul_ppmm optimization,
- if val[1] < 0, clear also val[2] and return 3.
- 2015-02-24 Alan Modra <amodra@gmail.com>
- PR target/65172
- * config/rs6000/rs6000.c (get_memref_parts): Only return true
- when *base is a reg. Handle nested plus addresses. Simplify
- pre_modify test.
- 2015-02-22 Max Filippov <jcmvbkbc@gmail.com>
- * config/xtensa/xtensa.h (CONSTANT_ALIGNMENT, DATA_ALIGNMENT):
- use natural alignment when optimizing for size.
- 2015-02-23 Kaz Kojima <kkojima@gcc.gnu.org>
- PR target/65153
- * config/sh/sh.md (movsicc_true+3): Remove peephole.
- * config/sh/sh-protos.h (replace_n_hard_rtx): Don't declare.
- * config/sh/sh.c (replace_n_hard_rtx): Remove.
- 2015-02-23 Richard Sandiford <richard.sandiford@arm.com>
- PR fortran/63427
- * wide-int.cc (wi::from_mpz): Cope with unwrapped values that are
- too big for a wide_int. Implement missing wrapping operation.
- 2015-02-23 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/65163
- * config/sh/sh.md (swapbsi2, related peephole2): Use const_int -65536
- instead of const_int 4294901760.
- 2015-02-23 Georg-Johann Lay <avr@gjlay.de>
- * config/avr/t-avr: Fix typo in comment.
- 2015-02-21 Richard Sandiford <richard.sandiford@arm.com>
- * doc/rtl.texi (fma): Clarify documentation.
- 2015-02-20 Aldy Hernandez <aldyh@redhat.com>
- PR debug/58123
- * gimplify.c (gimplify_expr): Prefer location of TRY_FINALLY_EXPR
- over input_location.
- 2015-02-20 Bernd Schmidt <bernds@codesourcery.com>
- * tree-streamer-in.c (unpack_ts_decl_common_value_fields,
- unpack_ts_type_common_value_fields): If ACCEL_COMPILER,
- restrict alignments to absolute_biggest_alignment.
- * config/i386/i386.c (TARGET_ABSOLUTE_BIGGEST_ALIGNMENT):
- Define.
- * doc/tm.texi.in (TARGET_ABSOLUTE_BIGGEST_ALIGNMENT): Add.
- * doc/tm.texi: Regenerate.
- * target.def (absolute_biggest_alignment): New DEFHOOKPOD.
- 2015-02-20 Vladimir Makarov <vmakarov@redhat.com>
- PR target/64172
- * ira-color.c (color_pass): Prevent splitting multi-register pseudos.
- 2015-02-20 Richard Biener <rguenther@suse.de>
- PR tree-optimization/65136
- * tree-ssa-propagate.c: Include cfgloop.h.
- (replace_phi_args_in): Avoid replacing loop latch edge PHI
- arguments with constants.
- 2015-02-20 Jakub Jelinek <jakub@redhat.com>
- Martin Liska <mliska@suse.cz>
- PR target/63892
- * ipa-icf.c (sem_function::merge): If DECL_COMDAT_GROUP (alias->decl),
- don't try to create_thunk if stdarg_p. If
- !sem_item::target_supports_symbol_aliases_p (), similarly, and try to
- redirect_callers if possible.
- (sem_item_optimizer::execute): Call unregister_hooks here...
- (ipa_icf_driver): ... instead of here.
- 2015-02-20 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * config/aarch64/aarch64.md (*aarch64_lshr_sisd_or_int_<mode>3):
- Mark operand 0 as earlyclobber in 2nd alternative.
- (1st define_split below *aarch64_lshr_sisd_or_int_<mode>3):
- Write negated shift amount into QI lowpart operand 0 and use it
- in the shift step.
- (2nd define_split below *aarch64_lshr_sisd_or_int_<mode>3): Likewise.
- 2015-02-20 Bernd Schmidt <bernds@codesourcery.com>
- * cgraph.h (clone_function_name_1): Declare.
- * cgraphclones.c (clone_function_name_1): New function.
- (clone_function_name): Use it.
- * lto-partition.c: Include "stringpool.h".
- (must_not_rename, maybe_rewrite_identifier)
- (validize_symbol_for_target): New static functions.
- (privatize_symbol_name): Use must_not_rename.
- (promote_symbol): Call validize_symbol_for_target.
- (lto_promote_cross_file_statics): Likewise.
- (lto_promote_statics_nonwpa): Likewise.
- 2015-02-20 Georg-Johann Lay <avr@gjlay.de>
- PR target/64452
- * config/avr/avr.md (pushhi_insn): New insn.
- (push<mode>1): Push virtual regs in one chunk using pushhi1_insn.
- 2015-02-20 Bernd Schmidt <bernds@codesourcery.com>
- Jakub Jelinek <jakub@redhat.com>
- * tree-streamer.c (preload_common_nodes): Don't preload
- TI_VA_LIST* for offloading.
- * tree-stdarg.c (pass_stdarg::gate): Disable for ACCEL_COMPILER
- in_lto_p.
- 2015-02-19 John David Anglin <danlgin@gcc.gnu.org>
- * config/pa/pa.c (pa_emit_move_sequence): Always force
- (const (plus (symbol) (const_int))) to const mem. Put REG_EQUAL
- note on insn.
- * config/pa/pa.c (pa_reloc_rw_mask): New function.
- (TARGET_ASM_RELOC_RW_MASK): Define.
- (pa_cannot_force_const_mem): Revert previous change.
- 2015-02-19 Martin Jambor <mjmabor@suse.cz>
- Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65028
- * ipa-cp.c (propagate_alignment_accross_jump_function): Fix propagation
- across jump functions.
- 2015-02-19 Uros Bizjak <ubizjak@gmail.com>
- * config/alpha/alpha.c (alpha_in_small_data_p): Reject common symbols.
- 2015-02-19 Sandra Loosemore <sandra@codesourcery.com>
- * doc/extend.texi (x86 transactional memory intrinsics): Copy-edit.
- 2015-02-19 Richard Henderson <rth@redhat.com>
- PR middle-end/65074
- * varasm.c (default_binds_local_p_2): Don't test node->definition;
- test DECL_EXTERNAL independent of symtab_node.
- 2015-02-19 Jakub Jelinek <jakub@redhat.com>
- PR lto/65012
- * varpool.c (varpool_node::get_constructor): Return early
- if this->lto_file_data is NULL.
- 2015-02-19 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
- * haifa-sched.c (enum rfs_decision, rfs_str): Remove RFS_DEBUG.
- (rank_for_schedule_debug): Update.
- (ready_sort): Make static. Move sorting logic to ...
- (ready_sort_debug, ready_sort_real): New static functions.
- (schedule_block): Sort both debug insns and real insns in preparation
- for ready list trimming. Improve debug output.
- * sched-int.h (ready_sort): Remove global declaration.
- 2015-02-18 Trevor Saunders <tsaunders@mozilla.com>
- * ipa-icf.c (sem_function::equals_private): Adjust.
- (sem_function::bb_dict_test): Take a vec<int> * instead of
- auto_vec<int>.
- * ipa-icf.h (bb_dict_test): Likewise.
- 2015-02-18 Jakub Jelinek <jakub@redhat.com>
- PR gcov-profile/64634
- * tree-eh.c (frob_into_branch_around): Fix up typos
- in function comment.
- (lower_catch): Put eh_seq resulting from EH lowering of
- the cleanup sequence after the cleanup rather than before it.
- 2015-02-18 Tom de Vries <tom@codesourcery.com>
- * common.opt (fstdarg-opt): New option.
- * tree-stdarg.c (pass_stdarg::gate): Use flag_stdarg_opt.
- * doc/invoke.texi (@item Optimization Options): Add -fstdarg-opt.
- (@item -fstdarg-opt): New item.
- 2015-02-18 H.J. Lu <hongjiu.lu@intel.com>
- PR target/65064
- * config/ia64/predicates.md (sdata_symbolic_operand): Return false
- for common symbols.
- 2015-02-18 Jakub Jelinek <jakub@redhat.com>
- * config/i386/t-intelmic (mkoffload.o): Remove dependency on
- insn-modes.h.
- (ALL_HOST_OBJS): Add mkoffload.o.
- * config/nvptx/t-nvptx (ALL_HOST_OBJS): Likewise.
- 2015-02-18 Jan Hubicka <hubicka@ucw.cz>
- * ipa-devirt.c (odr_subtypes_equivalent_p): Fix formating.
- (compare_virtual_tables): Be smarter about skipping typeinfos;
- do sane output on virtual table table mismatch.
- (warn_odr): Be ready for forward declarations of enums;
- output sane info on base mismatch and virtual table mismatch.
- (add_type_duplicate): Fix code choosing prevailing type; do not ICE
- when only one type is polymorphic.
- (get_odr_type): Fix hashtable corruption.
- (dump_odr_type): Dump mangled names.
- 2015-02-18 Richard Biener <rguenther@suse.de>
- PR tree-optimization/65063
- * tree-predcom.c (determine_unroll_factor): Return 1 if we
- have replaced looparound PHIs.
- 2015-02-18 Martin Liska <mliska@suse.cz>
- * lto-streamer.c (lto_streamer_init): Encapsulate
- streamer_check_handled_ts_structures with checking macro.
- 2015-02-18 Jakub Jelinek <jakub@redhat.com>
- PR ipa/65087
- * cgraphclones.c (cgraph_node::create_virtual_clone): Only copy
- section if !implicit_section.
- (cgraph_node::create_version_clone_with_body): Likewise.
- * trans-mem.c (ipa_tm_create_version): Likewise.
- 2015-02-18 Richard Biener <rguenther@suse.de>
- PR tree-optimization/62217
- * tree-ssa-dom.c (cprop_operand): Avoid propagating copies
- into BIVs.
- 2015-02-18 Marek Polacek <polacek@redhat.com>
- PR sanitizer/65081
- * ubsan.c (OBJSZ_MAX_OFFSET): Define.
- (ubsan_expand_objsize_ifn): Don't emit run-time check if the offset
- is in range [-16K, -1]. Don't issue run-time error if
- (ptr > ptr + offset).
- 2015-02-18 Thomas Schwinge <thomas@codesourcery.com>
- * doc/install.texi (nvptx-*-none): New section.
- * doc/invoke.texi (Nvidia PTX Options): Likewise.
- * config/nvptx/nvptx.opt: Update.
- * config/nvptx/mkoffload.c (parse_env_var, free_array_of_ptrs)
- (access_check): New functions, copied from
- config/i386/intelmic-mkoffload.c.
- (main): For non-installed testing, look in all COMPILER_PATHs for
- GCC_INSTALL_NAME.
- * config/nvptx/nvptx.h (GOMP_SELF_SPECS): Define macro.
- 2015-02-18 Andrew Pinski <apinski@cavium.com>
- Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
- * config/aarch64/aarch64.c (*aarch64_load_symref_appropriately):
- Check whether the destination of SYMBOL_SMALL_TPREL is Pmode.
- 2015-02-17 Jan Hubicka <hubicka@ucw.cz>
- * ipa-visibility.c (function_and_variable_visibility): Only
- check locality if node is not already local.
- * ipa-inline.c (want_inline_function_to_all_callers_p): Use
- call_for_symbol_and_aliases instead of
- call_for_symbol_thunks_and_aliases.
- (ipa_inline): Likewise.
- * cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases):
- first walk aliases.
- * ipa.c (symbol_table::remove_unreachable_nodes): Use
- call_for_symbol_and_aliases.
- * ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol.
- (ipa_propagate_frequency_1): Use it; use opt_for_fn
- (ipa_propagate_frequency): Update.
- (ipa_profile): Add opt_for_fn gueards.
- 2015-02-17 Oleg Endo <olegendo@gcc.gnu.org>
- * config/sh/sh.opt (mcbranch-force-delay-slot): New option.
- * doc/invoke.texi (SH options): Document it.
- * config/sh/sh.c (sh_insn_length_adjustment): Check
- TARGET_CBRANCH_FORCE_DELAY_SLOT instead of sh_cpu_attr == CPU_SH2E.
- 2015-02-17 H.J. Lu <hongjiu.lu@intel.com>
- * common.opt (fipa-cp-alignment): New.
- * ipa-cp.c (ipcp_store_alignment_results): Check
- flag_ipa_cp_alignment.
- * opts.c (default_options_table): Enable -fipa-cp-alignment for
- -O2.
- (enable_fdo_optimizations): Set x_flag_ipa_cp_alignment.
- * doc/invoke.texi: Document -fipa-cp-alignment.
- 2015-02-17 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/64793
- * config/sh/sh.md (cbranch define_delay): Set annulled true branch insn
- to nil. Adjust comments.
- 2015-02-17 Jan Hubicka <hubicka@ucw.cz>
- * ipa-visibility.c (function_and_variable_visibility): Only
- check locality if node is not already local.
- * ipa-inline.c (want_inline_function_to_all_callers_p): Use
- call_for_symbol_and_aliases instead of
- call_for_symbol_thunks_and_aliases.
- (ipa_inline): Likewise.
- * cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases):
- first walk aliases.
- * ipa.c (symbol_table::remove_unreachable_nodes): Use
- call_for_symbol_and_aliases.
- * ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol.
- (ipa_propagate_frequency_1): Use it; use opt_for_fn
- (ipa_propagate_frequency): Update.
- (ipa_profile): Add opt_for_fn guards.
- 2015-02-17 Thomas Schwinge <thomas@codesourcery.com>
- * config/nvptx/mkoffload.c (parse_file): Fix logic error in
- skipping of "strange" tokens.
- 2015-02-17 Jeff Law <law@redhat.com>
- * tree-vrp.c (identify_jump_threads): Use last_stmt. Remove
- obsolete comment.
- 2015-02-17 James Greenhalgh <james.greenhalgh@arm.com>
- * haifa-sched.c (recompute_todo_spec): Treat SCHED_GROUP_P
- as forcing a HARD_DEP between instructions, thereby
- disallowing rewriting to break dependencies.
- 2015-02-16 Jan Hubicka <hubicka@ucw.cz>
- * symtab.c (symtab_node::verify_base): Verify body_removed->!definiton
- * lto-cgraph.c (lto_output_varpool_node): Do not keep definition of
- variables in boundary that have no inlitalizer encoded and are
- not aliases.
- * varasm.c (default_binds_local_p_2): External definitions do not
- count as definitions here.
- 2015-02-16 Jeff Law <law@redhat.com>
- PR tree-optimization/64823
- * tree-vrp.c (identify_jump_threads): Handle blocks with no real
- statements.
- * tree-ssa-threadedge.c (potentially_threadable_block): Allow
- threading through blocks with PHIs, but no statements.
- (thread_through_normal_block): Distinguish between blocks where
- we did not process all the statements and blocks with no statements.
- 2015-02-16 Jakub Jelinek <jakub@redhat.com>
- James Greenhalgh <james.greenhalgh@arm.com>
- PR ipa/64963
- * cgraphclones.c (cgraph_node::create_virtual_clone): Copy
- section if not linkonce. Fix up formatting.
- (cgraph_node::create_version_clone_with_body): Copy section.
- * trans-mem.c (ipa_tm_create_version): Likewise.
- 2015-02-16 Richard Biener <rguenther@suse.de>
- PR tree-optimization/65077
- * tree-ssa-structalias.c (get_constraint_for_1): Handle
- IMAGPART_EXPR, REALPART_EXPR and BIT_FIELD_REF.
- (find_func_aliases): Allow float values to carry pointers again.
- 2015-02-16 James Greenhalgh <james.greenhalgh@arm.com>
- * doc/install.texi (Specific): Reorder targets list to put
- aarch64 in alphabetical order. Add a link to aarch64*-*-*
- from the top menu.
- 2015-02-16 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
- David Edelsohn <dje.gcc@gmail.com>
- PR target/65058
- * config/rs6000/rs6000.c (rs6000_output_symbol_ref): Append storage
- mapping class to external variable or function reference.
- * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Do not append storage
- mapping class.
- 2015-02-16 David Eelsohn <dje.gcc@gmail.com>
- PR target/53348
- * config/rs6000/rs6000.c (rs6000_declare_alias): Only use
- ASM_WEAKEN_DECL if defined.
- 2015-02-16 Richard Biener <rguenther@suse.de>
- PR lto/65015
- * varasm.c (default_file_start): For LTO produced units
- emit <artificial> as file directive.
- 2015-02-16 Richard Biener <rguenther@suse.de>
- PR tree-optimization/63593
- * tree-predcom.c (execute_pred_commoning_chain): Delay removing
- stmts and releasing SSA names until...
- (execute_pred_commoning): ... after processing all chains.
- 2015-02-16 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65059
- * ipa-comdats.c (ipa_comdats): Do not categorize thunks to
- external functions.
- 2015-02-15 Sandra Loosemore <sandra@codesourcery.com>
- * doc/bugreport.texi: Adjust section titles throughout the file
- to use "Title Case".
- * doc/extend.texi: Likewise.
- * doc/gcov.texi: Likewise.
- * doc/implement-c.texi: Likewise.
- * doc/implement-cxx.texi: Likewise.
- * doc/invoke.texi: Likewise.
- * doc/objc.texi: Likewise.
- * doc/standards.texi: Likewise.
- * doc/trouble.texi: Likewise.
- 2015-02-15 Jan Hubicka <hubicka@ucw.cz>
- * cgraph.h (symtab_node::has_aliases_p): Simplify.
- (symtab_node::call_for_symbol_and_aliases): Use has_aliases_p
- * tree.c (lookup_binfo_at_offset): Make static.
- (get_binfo_at_offset): Do not shadow offset; add explanatory
- comment.
- 2015-02-15 John David Anglin <danglin@gcc.gnu.org>
- * config/pa/pa.c (pa_secondary_reload): Request a secondary reload
- for all floading point loads and stores except those using a register
- index address.
- * config/pa/pa.md: Add new patterns to load a lo_sum DLT operand
- to a register.
- 2015-02-14 Jan Hubicka <hubicka@ucw.cz>
- * ipa-inline-analysis.c (growth_data): Add uninlinable field.
- (do_estimate_growth_1): Record if any uninlinable edge was seen.
- (estimate_growth): Handle uninlinable edges correctly.
- (check_callers): New.
- (growth_likely_positive): Handle aliases correctly.
- 2015-02-14 Jan Hubicka <hubicka@ucw.cz>
- * ipa-chkp.c: Use iterate_direct_aliases.
- * symtab.c (resolution_used_from_other_file_p): Move inline.
- (symtab_node::create_reference): Fix formating.
- (symtab_node::has_aliases_p): Move inline; use iterate_direct_aliases.
- (symtab_node::iterate_reference): Move inline.
- (symtab_node::iterate_referring): Move inline.
- (symtab_node::iterate_direct_aliases): Move inline.
- (symtab_node::used_from_object_file_p_worker): Inline into ...
- (symtab_node::used_from_object_file_p): ... this one; move inline.
- (symtab_node::call_for_symbol_and_aliases): Move inline;
- use iterate_direct_aliases.
- (symtab_node::call_for_symbol_and_aliases_1): New method.
- (cgraph_node::call_for_symbol_and_aliases): Move inline;
- use iterate_direct_aliases.
- (cgraph_node::call_for_symbol_and_aliases_1): New method.
- (varpool_node::call_for_node_and_aliases): Rename to ...
- (varpool_node::call_for_symbol_and_aliases): ... this one; Move inline;
- use iterate_direct_aliases.
- (varpool_node::call_for_symbol_and_aliases_1): New method.
- * ipa.c (ipa_single_use): Use iterate_direct_aliases.
- (ipa_discover_readonly_nonaddressable_var): Update.
- * ipa-devirt.c: Fix formating.
- * cgraph.c (cgraph_node::can_remove_if_no_direct_calls_and_refs_p):
- Move inline.
- (cgraph_node::call_for_symbol_and_aliases): Move inline.
- (cgraph_node::call_for_symbol_and_aliases_1): New function..
- * cgraph.h (used_from_object_file_p_worker): Remove.
- (resolution_used_from_other_file_p): Move inline.
- (symtab_node::has_aliases_p): Move inline; use iterate_direct_aliases.
- (symtab_node::iterate_reference): Move inline.
- (symtab_node::iterate_referring): Move inline.
- (symtab_node::iterate_direct_aliases): Move inline.
- (symtab_node::used_from_object_file_p_worker): Inline into ...
- (symtab_node::used_from_object_file_p): Move inline.
- * tree-emutls.c (ipa_lower_emutls): Update.
- * varpool.c (varpool_node::call_for_symbol_and_aliases_1): New method.
- (varpool_node::call_for_node_and_aliases): Remove.
- 2015-02-14 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/62209
- * tree-ssa-reassoc.c (update_range_test): If stmt is a PHI and
- op == range->exp, insert seq and gimplified code after labels
- instead of after the phi.
- 2015-02-13 Jeff Law <law@redhat.com>
- PR bootstrap/65060
- Revert my change for tree-optimization/64823.
- 2015-02-13 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/65053
- * tree-ssa-phiopt.c (value_replacement): When moving assign before
- cond, either reset VR on lhs or set it to phi result VR.
- 2015-02-13 Jeff Law <law@redhat.com>
- PR tree-optimization/64823
- * tree-vrp.c (identify_jump_threads): Handle blocks with no statements.
- * tree-ssa-threadedge.c (potentially_threadable_block): Allow
- threading through blocks with PHIs, but no statements.
- (thread_through_normal_block): Distinguish between blocks where
- we did not process all the statements and blocks with no statements.
- PR rtl-optimization/47477
- * match.pd (convert (plus/minus (convert @0) (convert @1): New
- simplifier to narrow arithmetic.
- 2015-02-13 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65028
- * ipa-prop.c (update_indirect_edges_after_inlining): Do not drop
- polymorphic call info when type is not known to be preserved.
- 2015-02-13 Maritn Jambor <mjambor@suse.cz>
- PR ipa/65028
- * ipa-inline-transform.c (mark_all_inlined_calls_cdtor): New function.
- (inline_call): Use it.
- 2015-02-13 Thomas Schwinge <thomas@codesourcery.com>
- * config/nvptx/offload.h (ACCEL_COMPILER_acc_device): Define to
- GOMP_DEVICE_NVIDIA_PTX.
- 2015-02-13 Jakub Jelinek <jakub@redhat.com>
- PR ipa/65034
- * stmt.c (emit_case_nodes): Use void_type_node instead of
- NULL_TREE as LABEL_DECL type.
- 2015-02-13 John David Anglin <danglin@gcc.gnu.org>
- * config/pa/constraints.md: Change "Q" and "T" constraints to memory
- constraints.
- * config/pa/pa.c (pa_cannot_force_const_mem): Don't allow constant
- symbolic references to data to be forced to constant memory on the
- SOM target.
- 2015-02-13 Ilya Enkovich <ilya.enkovich@intel.com>
- PR tree-optimization/65002
- * tree-cfg.c (pass_data_fixup_cfg): Don't update
- SSA on start.
- * tree-sra.c (some_callers_have_no_vuse_p): New.
- (ipa_early_sra): Reject functions whose callers
- assume function is read only.
- 2015-02-13 Richard Biener <rguenther@suse.de>
- PR lto/65015
- * dwarf2out.c (dwarf2out_finish): Use <artificial> as DW_AT_name
- for LTO produced CUs.
- 2015-02-13 Bin Cheng <bin.cheng@arm.com>
- PR tree-optimization/64705
- * tree-ssa-loop-niter.h (expand_simple_operations): New parameter.
- * tree-ssa-loop-niter.c (expand_simple_operations): New parameter.
- * tree-ssa-loop-ivopts.c (extract_single_var_from_expr): New.
- (find_bivs, find_givs_in_stmt_scev): Pass new argument to
- expand_simple_operations.
- 2015-02-13 H.J. Lu <hongjiu.lu@intel.com>
- Richard Henderson <rth@redhat.com>
- PR rtl/32219
- * cgraphunit.c (cgraph_node::finalize_function): Set definition
- before notice_global_symbol.
- (varpool_node::finalize_decl): Likewise.
- * varasm.c (default_binds_local_p_2): Rename from
- default_binds_local_p_1, add weak_dominate argument. Use direct
- returns instead of assigning to local variable. Unify varpool and
- cgraph paths via symtab_node. Reject undef weak variables before
- testing visibility. Reorder tests for simplicity.
- (default_binds_local_p): Use default_binds_local_p_2.
- (default_binds_local_p_1): Likewise.
- (decl_binds_to_current_def_p): Unify varpool and cgraph paths
- via symtab_node.
- (default_elf_asm_output_external): Emit visibility when specified.
- 2015-02-13 Alan Modra <amodra@gmail.com>
- * config/rs6000/rs6000.c (rs6000_emit_epilogue): Fix typo in
- code setting up r11 for out-of-line fp restore.
- 2015-02-13 Eric Botcazou <ebotcazou@adacore.com>
- * config/visium/visium.opt (msv-mode): Add RejectNegative and Report.
- (muser-mode): Likewise.
- 2015-02-13 Alan Modra <amodra@gmail.com>
- * config/rs6000/rs6000.c (rs6000_emit_epilogue): Use addsi3_carry
- or adddi3_carry when restoring frame_reg_rtx from r0 after restvr.
- 2015-02-12 David Howells <dhowells@redhat.com>
- * tree-sra.c (dump_dereferences_table): Avoid -Wformat-security
- warning.
- * tree-ssa-uninit.c (dump_predicates): Likewise.
- * opts.c (print_filtered_help): Likewise.
- 2015-02-12 Jakub Jelinek <jakub@redhat.com>
- * dwarf2out.c (output_die): Use "%s", name instead of name to
- avoid -Wformat-security warning.
- * dwarf2asm.c (dw2_asm_output_vms_delta): Only define
- if ASM_OUTPUT_DWARF_VMS_DELTA is defined.
- * dwarf2out.c (output_die): Use dw2_asm_output_vms_delta
- only if ASM_OUTPUT_DWARF_VMS_DELTA is defined.
- 2015-02-12 Jason Merrill <jason@redhat.com>
- * common.opt (-flifetime-dse): New.
- 2015-02-12 Jakub Jelinek <jakub@redhat.com>
- PR sanitizer/65019
- * ubsan.c (ubsan_expand_objsize_ifn): Always return true.
- PR tree-optimization/65014
- * fold-const.c (fold_binary_loc): When creating {L,R}ROTATE_EXPR,
- use original second operand of arg0 or arg1 instead of
- that adjusted by STRIP_NOPS.
- 2015-02-11 Jeff Law <law@redhat.com>
- PR target/63347
- * haifa-sched.c (prune_ready_list): If we have a SCHED_GROUP_P insn
- that needs to be queued, just queue it for a single cycle.
- 2015-02-11 Jan Hubicka <hubicka@ucw.cz>
- * ipa.c (symbol_table::remove_unreachable_nodes): Avoid releasing
- bodies of thunks; comment on why.
- * symtab.c (symtab_node::get_partitioning_class): Aliases of extern
- symbols are extern.
- 2015-02-11 Richard Henderson <rth@redhat.com>
- PR sanitize/65000
- * tree-eh.c (mark_reachable_handlers): Mark source and destination
- regions of __builtin_eh_copy_values.
- 2015-02-11 Jakub Jelinek <jakub@redhat.com>
- PR middle-end/65003
- * varasm.c (place_block_symbol): Assert that DECL_RTL of the
- ultimate alias is MEM with SYMBOL_REF satisfying
- SYMBOL_REF_HAS_BLOCK_INFO_P as its operand. Don't pass the MEM
- to place_block_symbol, but instead pass the SYMBOL_REF operand of it.
- 2015-02-11 Thomas Schwinge <thomas@codesourcery.com>
- * config/nvptx/mkoffload.c: Include "diagnostic.h" instead of
- "diagnostic-core.h".
- (main): Initialize progname, and call diagnostic_initialize.
- * config/nvptx/mkoffload.c (process): Refer to __OFFLOAD_TABLE__
- instead of __OPENMP_TARGET__.
- * config/nvptx/mkoffload.c: Include "gomp-constants.h".
- (process): Use its GOMP_DEVICE_NVIDIA_PTX instead of (wrongly)
- hard-coding PTX_ID.
- 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
- * doc/sourcebuild.texi (pie_enabled): Document.
- 2015-02-11 Martin Liska <mliska@suse.cz>
- PR ipa/64813
- * cgraphunit.c (cgraph_node::expand_thunk): Do not create
- a return value for call to a function that is noreturn.
- 2015-02-11 Richard Biener <rguenther@suse.de>
- PR lto/65015
- * dwarf2out.c (gen_producer_string): Drop -fltrans-output-list
- and -fresolution.
- 2015-02-11 Andrew Pinski <apinski@cavium.com>
- PR target/64893
- * config/aarch64/aarch64-builtins.c (aarch64_init_simd_builtins):
- Change the first argument type to size_type_node and add another
- size_type_node.
- (aarch64_simd_expand_builtin): Handle the new argument to
- AARCH64_SIMD_BUILTIN_LANE_CHECK and don't ICE but rather
- print an out when the first two arguments are not
- nonzero integer constants.
- * config/aarch64/arm_neon.h (__AARCH64_LANE_CHECK):
- Pass the sizeof directly to __builtin_aarch64_im_lane_boundsi.
- 2015-02-11 Jakub Jelinek <jakub@redhat.com>
- PR target/61925
- * config/i386/i386.c (ix86_reset_to_default_globals): Removed.
- (ix86_reset_previous_fndecl): Restore it here, unconditionally.
- (ix86_set_current_function): Rewritten.
- (ix86_add_new_builtins): Temporarily clear current_target_pragma
- when creating builtin fndecls.
- 2015-02-10 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/65005
- * ipa-visibility.c (cgraph_node::non_local_p): Turn into static
- function.
- * symtab.c (symtab_node::verify_base): Remove check that non-definitions
- have no comdat group.
- * lto-cgraph.c (lto_output_node): Always output thunk and alias info.
- (lto_output_varpool_node): Always output alias info.
- (output_refs): Output refs of boundary aliases, too.
- (compute_ltrans_boundary): Add alias and thunk target into boundaries.
- (output_symtab): Output call eges in thunks in boundary.
- (get_alias_symbol): Remove.
- (input_node, input_varpool_node): Do not special case weakrefs.
- * ipa.c (symbol_table::remove_unreachable_nodes): Do not remove
- alias and thunks targets in the boundary; do not take removed symbols
- from their comdat groups.
- * cgraph.c (cgraph_node::local_info): Look through aliases and thunks.
- (cgraph_node::global_info): Remove.
- (cgraph_node::rtl_info): Look through aliases and thunks.
- * cgrpah.h (global_info): Remove.
- (non_local_p): Remove.
- 2015-02-10 David Wohlferd <dw@LimeGreenSocks.com>
- Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi (x86 Options [-masm=dialect]): Add cross-references
- to inline asm. List dialects in proper order.
- 2015-02-10 David Wohlferd <dw@LimeGreenSocks.com>
- Sandra Loosemore <sandra@codesourcery.com>
- * doc/extend.texi (Loop-Specific Pragmas): Fix grammar error.
- 2015-02-10 David Wohlferd <dw@LimeGreenSocks.com>
- * doc/extend.texi (Symbol-Renaming Pragmas): Restore (slightly
- modified) reference to Solaris.
- 2015-02-10 Sandra Loosemore <sandra@codesourcery.com>
- * doc/extend.texi (Extended Asm): Fix typos.
- 2015-02-10 Jakub Jelinek <jakub@redhat.com>
- PR sanitizer/65004
- * ubsan.c (ubsan_expand_vptr_ifn): Always return true.
- 2015-02-10 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/64661
- * config/sh/sh-protos.h (TARGET_ATOMIC_ANY, TARGET_ATOMIC_STRICT,
- TARGET_ATOMIC_SOFT_GUSA, TARGET_ATOMIC_HARD_LLCS,
- TARGET_ATOMIC_SOFT_TCB, TARGET_ATOMIC_SOFT_IMASK): Add parentheses.
- * config/sh/constraints.md (Ara, Add): New constraints.
- * config/sh/sync.md (atomic_mem_operand_0, atomic_mem_operand_1): New
- predicates.
- (atomic_compare_and_swap<mode>, atomic_exchange<mode>): Use
- atomic_mem_operand_0. Don't use force_reg on the memory address.
- (atomic_compare_and_swapsi_hard): Use atomic_mem_operand_0 predicate and
- Sra constraint. Convert to insn_and_split. Add workaround for
- PR 64974.
- (atomic_compare_and_swap<mode>_hard): Copy to
- atomic_compare_and_swap<mode>_hard_1. Convert to insn_and_split.
- Use atomic_mem_operand_0 predicate.
- (atomic_compare_and_swap<mode>_soft_gusa,
- atomic_exchange<mode>_soft_gusa): Use atomic_mem_operand_0 predicate and
- AraAdd constraints.
- (atomic_compare_and_swap<mode>_soft_tcb,
- atomic_compare_and_swap<mode>_soft_imask,
- atomic_exchange<mode>_soft_tcb, atomic_exchange<mode>_soft_imask): Use
- atomic_mem_operand_0 predicate and SraSdd constraints.
- (atomic_exchangesi_hard) Use atomic_mem_operand_0 predicate and Sra
- constraint.
- (atomic_exchange<mode>_hard): Copy to atomic_exchange<mode>_hard_1.
- Convert to insn_and_split. Use atomic_mem_operand_0 predicate.
- (atomic_fetch_<fetchop_name><mode>, atomic_fetch_nand<mode>,
- atomic_<fetchop_name>_fetch<mode>): Use atomic_mem_operand_1. Don't use
- force_reg on the memory address.
- (atomic_fetch_<fetchop_name>si_hard, atomic_fetch_notsi_hard,
- atomic_fetch_nandsi_hard, atomic_<fetchop_name>_fetchsi_hard,
- atomic_not_fetchsi_hard, atomic_nand_fetchsi_hard): Use
- atomic_mem_operand_1 predicate and Sra constraint.
- (atomic_fetch_<fetchop_name><mode>_hard): Copy to
- atomic_fetch_<fetchop_name><mode>_hard_1. Convert to insn_and_split.
- Use atomic_mem_operand_1 predicate.
- (atomic_<fetchop_name><mode>_hard): Copy to
- atomic_<fetchop_name><mode>_hard_1. Convert to insn_and_split.
- Use atomic_mem_operand_1 predicate.
- (atomic_fetch_nand<mode>_hard): Copy to atomic_fetch_nand<mode>_hard_1.
- Convert to insn_and_split. Use atomic_mem_operand_1 predicate.
- (atomic_nand<mode>_hard): Copy to atomic_nand<mode>_hard_1. Convert to
- insn_and_split. Use atomic_mem_operand_1 predicate.
- (atomic_<fetchop_name>_fetch<mode>_hard): Copy to
- atomic_<fetchop_name>_fetch<mode>_hard_1. Convert to insn_and_split.
- Use atomic_mem_operand_1 predicate.
- (atomic_nand_fetch<mode>_hard): Copy to atomic_nand_fetch<mode>_hard_1.
- Convert to insn_and_split. Use atomic_mem_operand_1 predicate.
- (atomic_fetch_not<mode>_hard, atomic_not_fetch<mode>_hard): Replace mems
- in generated insn with original mem operand before emitting the insn.
- (atomic_fetch_<fetchop_name><mode>_soft_gusa,
- atomic_fetch_not<mode>_soft_gusa, atomic_fetch_nand<mode>_soft_gusa,
- atomic_<fetchop_name>_fetch<mode>_soft_gusa,
- atomic_not_fetch<mode>_soft_gusa, atomic_nand_fetch<mode>_soft_gusa):
- Use atomic_mem_operand_1 predicate and AraAdd constraints.
- (atomic_fetch_<fetchop_name><mode>_soft_tcb,
- atomic_<fetchop_name><mode>_soft_tcb, atomic_fetch_not<mode>_soft_tcb,
- atomic_not<mode>_soft_tcb, atomic_fetch_<fetchop_name><mode>_soft_imask,
- atomic_fetch_not<mode>_soft_imask, atomic_fetch_nand<mode>_soft_tcb,
- atomic_nand<mode>_soft_tcb, atomic_fetch_nand<mode>_soft_imask,
- atomic_<fetchop_name>_fetch<mode>_soft_tcb,
- atomic_not_fetch<mode>_soft_tcb,
- atomic_<fetchop_name>_fetch<mode>_soft_imask,
- atomic_not_fetch<mode>_soft_imask, atomic_nand_fetch<mode>,
- atomic_nand_fetch<mode>_soft_tcb, atomic_nand_fetch<mode>_soft_imask):
- Use atomic_mem_operand_1 predicate and SraSdd constraints.
- 2015-02-10 Uros Bizjak <ubizjak@gmail.com>
- * config/alpha/alpha.md (reload_out<mode>_aligned): Make operands 2
- and 3 earlyclobber operands.
- 2015-02-10 Jan Hubicka <hubicka@ucw.cz>
- * common.opt (fstack-reuse): Mark as optimization.
- 2015-02-10 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64982
- * cgraphunit.c (cgraph_node::expand_thunk): Look for stdarg thunks.
- 2015-02-10 Trevor Saunders <tsaunders@mozilla.com>
- PR tree-optimization/64326
- * cfghooks.c (make_forwarder_block): Cap frequency of created block.
- 2015-02-10 Rainer Emrich <rainer@emrich-ebersheim.de>
- PR gcov-profile/61889
- * gcov-tool.c: Remove wrong #if !defined(_WIN32)
- 2015-02-10 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64995
- * tree-ssa-sccvn.c (set_ssa_val_to): Assert that the
- value we use is final.
- (visit_reference_op_store): Always valueize op.
- (visit_use): Properly valueize vuses.
- 2015-02-10 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64909
- * tree-vect-loop.c (vect_estimate_min_profitable_iters): Properly
- pass a scalar-stmt count estimate to the cost model.
- * tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost): Likewise.
- 2015-02-10 Alexander Monakov <amonakov@ispras.ru>
- * doc/invoke.texi (-fvar-tracking-assignments): Clarify that VTA is
- enabled by default together with var-tracking.
- 2015-02-10 Nick Clifton <nickc@redhat.com>
- * config/rl78/rl78.c: Remove DIV attribute code accidentally
- included in previous rl78 commit.
- 2015-02-10 Richard Biener <rguenther@suse.de>
- * tree-streamer.h (streamer_read_tree_bitfields): Adjust.
- * tree-streamer-in.c (streamer_read_tree_bitfields): Do not
- return the bitpack.
- 2015-02-09 Trevor Saunders <tsaunders@mozilla.com>
- PR gcov-profile/61889
- * config.in: regenerate.
- * configure.in: Likewise.
- * configure.ac: Check for ftw.h.
- * gcov-tool.c: Check for ftw.h before using nftw.
- 2015-02-09 Trevor Saunders <tsaunders@mozilla.com>
- PR lto/64076
- * ipa-visibility.c (update_visibility_by_resolution_info): Only
- assert when not in lto mode.
- 2015-02-09 Zhouyi Zhou <yizhouzhou@ict.ac.cn>
- * ira-color.c (setup_left_conflict_sizes_p): Simplify
- initialization/assignment of conflict_size.
- 2015-02-09 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64978
- * ipa-cp.c (gather_caller_stats): Skip thunks.
- (propagate_constants_topo): Skip aliases.
- 2015-02-09 Kaz Kojima <kkojima@gcc.gnu.org>
- PR target/64761
- * config/sh/sh.c (sh_option_override): Don't change
- -freorder-blocks-and-partition to -freorder-blocks even when
- unwinding is enabled.
- (sh_can_follow_jump): Return false if the followee jump is
- a crossing jump when -freorder-blocks-and-partition is specified.
- * config/sh/sh.md (*jump_compact_crossing): New insn.
- 2015-02-09 Joern Rennecke <joern.rennecke@embecosm.com>
- Kaz Kojima <kkojima@gcc.gnu.org>
- PR target/64761
- * config/sh/sh-protos.h (sh_can_redirect_branch): Don't declare.
- * config/sh/sh.c (TARGET_CAN_FOLLOW_JUMP): Redefine.
- (sh_can_redirect_branch): Rename to ...
- (sh_can_follow_jump): ... this. Constify argument types.
- * config/sh/sh.h (MD_CAN_REDIRECT_BRANCH): Don't define.
- * doc/tm.texi.in (MD_CAN_REDIRECT_BRANCH): Remove documentation.
- * reorg.c (steal_delay_list_from_target): Use targetm.can_follow_jump.
- * doc/tm.texi: Regenerate.
- 2015-02-09 Jakub Jelinek <jakub@redhat.com>
- PR sanitizer/64981
- * builtins.c (expand_builtin): Call targetm.expand_builtin
- for BUILT_IN_MD builtins regardless of asan_intercepted_p.
- 2015-02-08 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/61548
- * tree-emutls.c (ipa_lower_emutls): Avoid duplicates in TLS_VARS.
- 2015-02-08 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/63566
- * ipa-icf.c (set_local): New function.
- (sem_function::merge): Use it.
- 2015-02-08 Jan Hubicka <hubicka@ucw.cz>
- * ipa-devirt.c (odr_types_equivalent_p): Fix formating.
- (add_type_duplicate): Fix comparison of BINFOs.
- 2015-02-08 Jan Hubicka <hubicka@ucw.cz>
- * ipa-polymorphic-call.c (ipa_polymorphic_call_context): Avoid ICE
- on getting VOID pointer.
- 2015-02-09 Jakub Jelinek <jakub@redhat.com>
- PR target/64979
- * tree-stdarg.c (pass_stdarg::execute): Scan phi node args for
- va_list escapes.
- 2015-02-09 Richard Biener <rguenther@suse.de>
- * genmatch.c (replace_id): Copy expr_type.
- 2015-02-09 Richard Biener <rguenther@suse.de>
- * tree-streamer.h (streamer_pack_tree_bitfields): Remove.
- (streamer_write_tree_bitfields): Declare.
- * tree-streamer-in.c (unpack_ts_base_value_fields): Inline,
- properly unpack padding.
- (unpack_value_fields): Inline ...
- (streamer_read_tree_bitfields): ... here.
- * tree-streamer-out.c (pack_ts_base_value_fields): Inline
- and properly add padding bits.
- (streamer_pack_tree_bitfields): Fold into ...
- (streamer_write_tree_bitfields): ... this new function,
- exposing the bitpack object.
- * lto-streamer-out.c (lto_write_tree_1): Call
- streamer_write_tree_bitfields.
- 2015-02-09 Richard Biener <rguenther@suse.de>
- PR tree-optimization/54000
- * tree-ssa-looo-ivopts.c: Include tree-vectorizer.h.
- (struct ivopts_data): Add loop_loc member.
- (tree_ssa_iv_optimize_loop): Dump loop location.
- (create_new_ivs): Likewise, also dump number of IVs generated.
- 2015-02-09 Martin Liska <mliska@suse.cz>
- * ipa-icf.c (sem_item_optimizer::register_hooks): Register hooks
- just if not yet registered.
- (ipa_icf_generate_summary): Register callgraph hooks.
- 2015-02-08 Andrew Pinski <apinski@cavium.com>
- * config/aarch64/aarch64.c (gty_dummy): Delete.
- 2015-02-08 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/63566
- * ipa-visibility.c (cgraph_node::non_local_p): Accept aliases.
- (cgraph_node::local_p): Remove thunk related FIXME.
- 2015-02-08 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/63566
- * i386.c (ix86_function_regparm): Look through aliases to see if callee
- is local and optimized.
- (ix86_function_sseregparm): Likewise; also use target's SSE math
- settings; error out instead of silently generating wrong code
- on mismatches.
- (init_cumulative_args): Look through aliases.
- 2015-02-08 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/63566
- * ipa-split.c (execute_split_functions): Split if function has aliases.
- 2015-02-08 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/63566
- * cgraphunit.c (cgraph_node::analyze): Be sure target of thunk is
- aliases before trying to expand it.
- (cgraph_node::expand_thunk): Fix formating.
- 2015-02-07 Sandra Loosemore <sandra@codesourcery.com>
- * doc/extend.texi (Function Attributes [naked]): Copy-edit.
- (Using Assembly Language with C): Expand introduction.
- (Basic Asm): Copy-edit. Add more information about uses of
- basic asm.
- (Extended Asm): Copy-edit. Document new escape syntax and
- %l[label] syntax.
- (Global Reg Vars): Copy-edit.
- (Local Reg Vars): Likewise.
- 2015-02-06 David Edelsohn <dje.gcc@gmail.com>
- PR debug/2714
- PR bootstrap/64256
- * xcoffout.h (DBX_CONTIN_LENGTH): Define as 16384.
- (DBX_CONTIN_CHAR): Define.
- 2015-02-06 Sebastian Pop <s.pop@samsung.com>
- Brian Rzycki <b.rzycki@samsung.com>
- PR tree-optimization/64878
- * tree-ssa-threadedge.c: Include tree-ssa-loop.h.
- (fsm_find_control_statement_thread_paths): Add parameter seen_loop_phi.
- Stop recursion at loop phi nodes after having visited a loop phi node.
- 2015-02-06 Jakub Jelinek <jakub@redhat.com>
- * toplev.c (process_options): Change flag_ipa_ra before creating
- optimization_{default,current}_node.
- PR ipa/64896
- * cgraphunit.c (cgraph_node::expand_thunk): If
- restype is not is_gimple_reg_type nor the thunk_fndecl
- returns aggregate_value_p, set restmp to a temporary variable
- instead of resdecl.
- 2015-02-06 Vladimir Makarov <vmakarov@redhat.com>
- * lra.c (lra_emit_add): Fix a typo in using disp instead of base.
- 2015-02-06 Michael Meissner <meissner@linux.vnet.ibm.com>
- PR target/64205
- * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Do not
- add a general secondary reload handler for SDmode, unless we have
- both read/write support for SDmode.
- 2015-02-06 Jakub Jelinek <jakub@redhat.com>
- PR middle-end/64937
- * dwarf2out.c (set_block_abstract_flags, set_decl_abstract_flags):
- Replace setting argument with abstract_vec, always set BLOCK_ABSTRACT
- or DECL_ABSTRACT_P flags to 1 rather than to setting, and if it wasn't
- 1 before, push it to abstract_vec.
- (dwarf2out_abstract_function): Adjust caller. Don't call
- set_decl_abstract_flags second time, instead clear BLOCK_ABSTRACT or
- DECL_ABSTRACT_P flags for all abstract_vec elts.
- 2015-02-06 Renlin Li <renlin.li@arm.com>
- * tree-ssa-forwprop.c (execute): Keep location info while rewrite
- complex gimple.
- * tree-ssa.c (execute_update_addresses_taken): Likewise.
- 2015-02-06 Jeff Law <law@redhat.com>
- PR target/64889
- * config/h8300/h8300.c (push): New argument "in_prologue".
- Pass "in_prologue" along to "F".
- (h8300_push_pop): Corresponding changes.
- (h8300_expand_prologue): Likewise.
- (h8300_swap_into_er6): Likewise. Do not set RTX_FRAME_RELATED_P.
- 2015-02-06 Jakub Jelinek <jakub@redhat.com>
- PR rtl-optimization/64957
- PR debug/64817
- * simplify-rtx.c (simplify_binary_operation_1): Use ~cval for
- IOR rather than for AND.
- 2015-02-06 Eric Botcazou <ebotcazou@adacore.com>
- PR target/62631
- * tree-ssa-loop-ivopts.c (get_shiftadd_cost): Use the mininum of costs
- of shift-add and (add + shift) operations. Rename local variable.
- 2015-02-05 Jeff Law <law@redhat.com>
- PR target/17306
- * config/h8300/constraints.md (U): Correctly dectect
- "eightbit_data" memory addresses.
- * config/h8300/h8300.c (eightbit_constant_address_p): Also
- handle (const (plus (symbol_ref (x)))) where x is declared
- as an 8-bit data memory address.
- * config/h8300/h8300.md (call, call_value): Correctly detect
- "funcvec" functions.
- PR target/43264
- * config/h8300/h8300.c (get_shift_alg): Fix ASHIFTRT by
- 24 to 28 bits for the H8/300.
- 2015-02-06 Alan Modra <amodra@gmail.com>
- PR target/64876
- * config/rs6000/rs6000.c (chain_already_loaded): New function.
- (rs6000_call_aix): Use it.
- 2015-02-05 Jan Hubicka <hubicka@ucw.cz>
- * ipa-cp.c (ipa_value_from_jfunc, ipa_context_from_jfunc): Add bounds
- check.
- 2015-02-05 Joern Rennecke <joern.rennecke@embecosm.com>
- * config/h8300/constraints.md ("U" constraint): Use strict
- variant of REG_OK_FOR_BASE_P after reload has started.
- 2015-02-04 Mantas Mikaitis <mantas.mikaitis@arm.com>
- * config/arm/arm.h (TARGET_NEON_FP): Removed conditional definition,
- define to zero if !TARGET_NEON.
- (TARGET_ARM_FP): Added !TARGET_SOFT_FLOAT into conditional definition.
- 2015-02-04 Jan Hubicka <hubicka@ucw.cz>
- Trevor Saunders <tsaunders@mozilla.com>
- PR ipa/61548
- * tree-emultls.c (new_emutls_decl): Resolve alias after creating it.
- 2015-02-04 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/61548
- * ipa.c (symbol_table::remove_unreachable_nodes): Fix ordering issue
- when removing varpool nodes.
- 2015-02-04 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/61548
- * varpool.c (varpool_node::remove): Fix order of variables.
- 2015-02-04 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64686
- * ipa-inline.c (inline_small_functions): Fix ordering issue between
- speculation resolution and key updates.
- 2015-02-04 Jan Hubicka <hubicka@ucw.cz>
- * ipa-prop.c (update_indirect_edges_after_inlining): By more careful
- about not letting any speculative edges unupdated.
- 2015-02-04 Jan Hubicka <hubicka@ucw.cz>
- PR gcov/64123
- * gcov-io.c (gcov_var): Export.
- 2015-02-04 Jan Hubicka <hubicka@ucw.cz>
- PR middle-end/64922
- * ipa-prop.c (update_indirect_edges_after_inlining): Correctly update
- edges that become speculative.
- 2015-02-04 Jakub Jelinek <jakub@redhat.com>
- * dwarf2out.c (is_fortran): Also return true for DW_LANG_Fortran03
- or DW_LANG_Fortran08.
- (lower_bound_default): Return 1 for DW_LANG_Fortran03 or
- DW_LANG_Fortran08.
- (gen_compile_unit_die): Handle "GNU Fortran2003" and
- "GNU Fortran2008" language strings.
- * dbxout.c (get_lang_number): Use lang_GNU_Fortran.
- * langhooks.h (lang_GNU_Fortran): New prototype.
- * langhooks.c (lang_GNU_Fortran): New function.
- * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use
- lang_GNU_Fortran.
- 2015-02-04 Eric Botcazou <ebotcazou@adacore.com>
- * config/sparc/sparc.c (RTX_OK_FOR_OFFSET_P): Fix off-by-one error.
- (RTX_OK_FOR_OLO10_P): Likewise.
- 2015-02-04 Eric Botcazou <ebotcazou@adacore.com>
- * tree-ssa-loop-ivopts.c (get_address_cost): Use right mode for offset.
- 2015-02-04 Jan Hubicka <hubicka@ucw.cz>
- PR middle-end/64922
- * gimple.c: Include gimple-ssa.h.
- (maybe_remove_unused_call_args): New function.
- * gimple.h (maybe_remove_unused_call_args): Declare.
- * cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): Use it.
- * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Likewise.
- * gimple-fold.c (gimple_fold_call): Likewise.
- 2015-02-04 H.J. Lu <hongjiu.lu@intel.com>
- PR rtl-optimization/64905
- * lra-eliminations.c (setup_can_eliminate): Clear hard frame
- pointer alignment if it isn't needed.
- 2015-02-04 Matthew Wahab <matthew.wahab@arm.com>
- * config/aarch64/aarch64-cores.def: Add cortex-a72 and
- cortex-a72.cortex-a53.
- * config/aarch64/aarch64-tune.md: Regenerate.
- * doc/invoke.texi (AArch64 Options/-mtune): Add "cortex-a72".
- 2015-02-04 Nick Clifton <nickc@redhat.com>
- * config/rl78/rl78.c (rl78_note_reg_set): Note the use of REGs
- inside a MEM.
- 2015-02-04 Jakub Jelinek <jakub@redhat.com>
- * builtins.def (DEF_BUILTIN_CHKP): Define if not defined.
- (DEF_LIB_BUILTIN_CHKP, DEF_EXT_LIB_BUILTIN_CHKP): Redefine.
- (DEF_CHKP_BUILTIN): Define using DEF_BUILTIN_CHKP instead
- of DEF_BUILTIN.
- (BUILT_IN_MEMCPY, BUILT_IN_MEMMOVE, BUILT_IN_MEMSET, BUILT_IN_STRCAT,
- BUILT_IN_STRCHR, BUILT_IN_STRCPY, BUILT_IN_STRLEN): Use
- DEF_LIB_BUILTIN_CHKP macro instead of DEF_LIB_BUILTIN.
- (BUILT_IN_MEMCPY_CHK, BUILT_IN_MEMMOVE_CHK, BUILT_IN_MEMPCPY_CHK,
- BUILT_IN_MEMPCPY, BUILT_IN_MEMSET_CHK, BUILT_IN_STPCPY_CHK,
- BUILT_IN_STPCPY, BUILT_IN_STRCAT_CHK, BUILT_IN_STRCPY_CHK): Use
- DEF_EXT_LIB_BUILTIN_CHKP macro instead of DEF_EXT_LIB_BUILTIN.
- * tree-core.h (enum built_in_function): In between
- BEGIN_CHKP_BUILTINS and END_CHKP_BUILTINS only define enum values
- for builtins that use DEF_BUILTIN_CHKP macro.
- 2015-02-04 Alexandre Oliva <aoliva@redhat.com>
- PR debug/64817
- * cfgexpand.c (expand_debug_expr): Compute unsignedp from
- operands for tcc_comparison exprs. Fix typos.
- PR debug/64817
- * simplify-rtx.c (simplify_binary_operation_1): Simplify one
- of two XORs that have an intervening AND or IOR.
- PR debug/64817
- * simplify-rtx.c (simplify_binary_operation_1): Rewrite
- simplification of XOR of AND to not allocate new rtx before
- committing to a simplification.
- 2015-02-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * config/aarch64/aarch64-ldpstp.md: Use std::swap instead of
- manual swaps in all peepholes.
- 2015-02-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * config/aarch64/aarch64.c (aarch64_evpc_ext): Use std::swap instead
- of manual swapping implementation.
- (aarch64_expand_vec_perm_const_1): Likewise.
- 2015-02-04 James Greenhalgh <james.greenhalgh@arm.com>
- * config/aarch64/aarch64.c (NAMED_PARAM): Delete it.
- (generic_addrcost_table): Remove NAMED_PARAM.
- (cortexa57_addrcost_table): Likewise.
- (xgene1_addrcost_table): Likewise.
- (generic_regmove_table): Likewise.
- (cortexa53_regmove_table): Likewise.
- (xgene1_regmove_table): Likewise.
- (generic_vector_table): Likewise.
- (cortexa57_vector_table): Likewise.
- (xgene1_vector_table): Likewise.
- (generic_tunings): Likewise.
- (cortexa53_tunings): Likewise.
- (cortexa57_tunings): Likewise.
- (xgene1_tunings): Likewise.
- 2015-02-04 Matthew Wahab <matthew.wahab@arm.com>
- * config/arm/arm-cores.def: Add cortex-a72 and
- cortex-a72.cortex-a53.
- * config/arm/bpabi.h (BE8_LINK_SPEC): Likewise.
- * config/arm/t-aprofile (MULTILIB_MATCHES): Likewise.
- * config/arm/arm-tune.md: Regenerate.
- * config/arm/arm-tables.opt: Add entries for "cortex-a72" and
- "cortex-a72.cortex-a53".
- * doc/invoke.texi (ARM Options/-mtune): Likewise.
- 2015-02-04 Nick Clifton <nickc@redhat.com>
- PR target/64408
- * config/fr30/predicates.md (di_operand): Add SUBREG to the list
- of accepted codes.
- (nonimmediate_di_operand): Likewise.
- * config/msp430/msp430.c (msp430_use_f5_series_hwmult): Add more
- prefixes of known F5 using MSP430 MCUs.
- 2015-02-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * config/aarch64/aarch64-simd-builtins.def (sqrt): Use BUILTIN_VDQF_DF.
- * config/aarch64/arm_neon.h (vsqrt_f64): Use __builtin_aarch64_sqrtdf
- instead of __builtin_sqrt.
- 2015-02-04 Ilya Enkovich <ilya.enkovich@intel.com>
- * varasm.c (do_assemble_alias): Follow transparent alias
- chain for target.
- (default_assemble_visibility): Follow transparent alias
- chain for decl name.
- 2015-02-04 Thomas Preud'homme <thomas.preudhomme@arm.com>
- PR middle-end/62103
- * tree-ssa-sccvn.c (fully_constant_vn_reference_p): Use TYPE_PRECISION
- to compute size of referenced value in the constant case.
- 2015-02-03 Jakub Jelinek <jakub@redhat.com>
- PR rtl-optimization/64756
- * cse.c (invalidate_dest): New function.
- (cse_insn): Use it. If dest != SET_DEST (sets[i].rtl) and
- HASH (SET_DEST (sets[i].rtl), mode) computation sets do_not_record,
- invalidate and do not record it.
- 2015-02-03 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/64660
- * config/sh/sync.md (atomic_<fetchop_name><mode>_hard,
- atomic_not<mode>_hard, atomic_<fetchop_name><mode>_soft_tcb,
- atomic_not<mode>_soft_tcb, atomic_nand<mode>_hard,
- atomic_nand<mode>_soft_tcb): New insns.
- (atomic_fetch_<fetchop_name>si_hard): Convert to insn_and_split.
- Split into atomic_<fetchop_name>_fetchsi_hard if operands[0] is unused.
- (define_insn "atomic_fetch_notsi_hard): Convert to insn_and_split.
- Split into atomic_not_fetchsi_hard if operands[0] is unused.
- (atomic_fetch_<fetchop_name><mode>_hard): Convert to insn_and_split.
- Split into atomic_<fetchop_name><mode>_hard if operands[0] is unused.
- (atomic_fetch_not<mode>_hard): Convert to insn_and_split. Split into
- atomic_not<mode>_hard if operands[0] is unused.
- (atomic_fetch_<fetchop_name><mode>_soft_gusa): Convert to
- insn_and_split. Split into atomic_<fetchop_name>_fetch<mode>_soft_gusa
- if operands[0] is unused.
- (atomic_fetch_not<mode>_soft_gusa): Convert to insn_and_split. Split
- into atomic_not_fetch<mode>_soft_gusa if operands[0] is unused.
- (atomic_fetch_<fetchop_name><mode>_soft_tcb): Convert to insn_and_split.
- Split into atomic_<fetchop_name><mode>_soft_tcb if operands[0] is
- unused.
- (atomic_fetch_not<mode>_soft_tcb): Convert to insn_and_split. Split
- into atomic_not<mode>_soft_tcb if operands[0] is unused.
- (atomic_fetch_<fetchop_name><mode>_soft_imask): Convert to
- insn_and_split. Split into atomic_<fetchop_name>_fetch<mode>_soft_imask
- if operands[0] is unused.
- (atomic_fetch_not<mode>_soft_imask): Convert to insn_and_split. Split
- into atomic_not_fetch<mode>_soft_imask is operands[0] is unused.
- (atomic_fetch_nandsi_hard): Convert to insn_and_split. Split into
- atomic_nand_fetchsi_hard if operands[0] is unused.
- (atomic_fetch_nand<mode>_hard): Convert to insn_and_split. Split into
- atomic_nand<mode>_hard if operands[0] is unused.
- (atomic_fetch_nand<mode>_soft_gusa): Convert to insn_and_split. Split
- into atomic_nand_fetch<mode>_soft_gusa if operands[0] is unused.
- (atomic_fetch_nand<mode>_soft_tcb): Convert to insn_and_split. Split
- into atomic_nand<mode>_soft_tcb if operands[0] is unused.
- (atomic_fetch_nand<mode>_soft_imask): Convert to insn_and_split. Split
- into atomic_nand_fetch<mode>_soft_imask if operands[0] is unused.
- (atomic_<fetchop_name>_fetch<mode>_hard): Convert to insn_and_split.
- Split into atomic_<fetchop_name><mode>_hard if operands[0] is unused.
- (atomic_not_fetch<mode>_hard): Convert to insn_and_split. Split into
- atomic_not<mode>_hard if operands[0] is unused.
- (atomic_<fetchop_name>_fetch<mode>_soft_tcb): Convert to insn_and_split.
- Split into atomic_<fetchop_name><mode>_soft_tcb if operands[0] is
- unused.
- (atomic_not_fetch<mode>_soft_tcb): Convert to insn_and_split. Split
- into atomic_not<mode>_soft_tcb if operands[0] is unused.
- (atomic_nand_fetch<mode>_hard): Convert to insn_and_split. Split into
- atomic_nand<mode>_hard if operands[0] is unused.
- (atomic_nand_fetch<mode>_soft_tcb): Convert to insn_and_split. Split
- into atomic_nand<mode>_soft_tcb if operands[0] is unused.
- 2015-02-03 David Malcolm <dmalcolm@redhat.com>
- PR jit/64810
- * Makefile.in (GCC_OBJS): Add gcc-main.o.
- * gcc-main.c: New file, containing "main" taken from gcc.c.
- * gcc.c (do_self_spec): Free decoded_options.
- (class driver): Move declaration to gcc.h.
- (main): Move declaration and implementation to new file
- gcc-main.c.
- (driver_get_configure_time_options): New function.
- * gcc.h (class driver): Move this declaration here, from
- gcc.c.
- (driver_get_configure_time_options): New declaration.
- 2015-02-03 Jan Hubicka <hubicka@ucw.cz>
- * ipa-inline-analysis.c (simple_edge_hints): Fix check for
- cross-module inlining.
- * cgraph.h (cgraph_node): Add flag merged.
- * ipa-icf.c (sem_function::merge): Maintain it.
- 2015-02-03 Richard Sandiford <richard.sandiford@arm.com>
- * config/arm/arm.c (thumb2_reorg): Test UNARY_P and BINARY_P
- instead of OBJECT_P.
- 2015-02-03 Eric Botcazou <ebotcazou@adacore.com>
- PR target/62631
- * config/sparc/sparc.h (TARGET_HARD_MUL): Remove TARGET_V8PLUS.
- (TARGET_HARD_MUL32): Rewrite based on TARGET_HARD_MUL.
- * config/sparc/sparc.c (sparc_rtx_costs) <MULT>: Return costs based on
- int_mulX for integers in 64-bit mode if TARGET_HARD_MUL is not set.
- 2015-02-03 Jakub Jelinek <jakub@redhat.com>
- PR other/63504
- * combine.c (reg_n_sets_max): New variable.
- (can_change_dest_mode, reg_nonzero_bits_for_combine,
- reg_num_sign_bit_copies_for_combine, get_last_value_validate,
- get_last_value): Use REG_N_SETS only on pseudos < reg_n_sets_max.
- (try_combine): Use INC_REG_N_SETS only on pseudos < reg_n_sets_max.
- (rest_of_handle_combine): Initialize reg_n_sets_max.
- 2015-02-02 Jan Hubicka <hubicka@ucw.cz>
- * ipa-inline.c (early_inliner): Skip inlining only in always_inlined;
- if some always_inline was inlined, apply changes before inlining
- heuristically.
- 2015-02-02 David Malcolm <dmalcolm@redhat.com>
- PR jit/64810
- * config/arm/arm.c (arm_option_override): Set
- arm_selected_arch/cpu/tune to NULL on entry.
- 2015-02-02 Tejas Belagod <tejas.belagod@arm.com>
- Andrew Pinski <pinskia@gcc.gnu.org>
- Jakub Jelinek <jakub@gcc.gnu.org>
- PR target/64231
- * config/aarch64/aarch64.c (aarch64_classify_symbol): Fix large
- integer typing for small model. Use IN_RANGE.
- 2015-02-02 Richard Biener <rguenther@suse.de>
- * tree-ssa-ccp.c (valueize_op_1): Always allow valueizing default-defs.
- * tree-vrp.c (vrp_valueize_1): Likewise.
- 2015-02-02 Alan Modra <amodra@gmail.com>
- * config/rs6000/rs6000.c (rs6000_call_aix): Use unspec rather
- than mem for toc_restore.
- * config/rs6000/rs6000.md (UNSPEC_TOCSLOT): Define.
- (call_indirect_aix, call_value_indirect_aix): Adjust to suit.
- (call_indirect_elfv2, call_value_indirect_elfv2): Likewise.
- 2015-02-01 David Edelsohn <dje.gcc@gmail.com>
- PR target/64047
- * config/rs6000/rs6000.c (rs6000_set_current_function): Handle
- explicit default options.
- 2015-02-01 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64872
- * ipa-utils.c (ipa_merge_profiles): Add release argument.
- * ipa-icf.c (sem_function::merge): Do not release body when merging.
- * ipa-utils.h (ipa_merge_profiles): Update prototype.
- 2015-02-01 Jakub Jelinek <jakub@redhat.com>
- PR debug/64817
- * cfgexpand.c (deep_ter_debug_map): New variable.
- (avoid_deep_ter_for_debug): New function.
- (expand_debug_expr): If TERed SSA_NAME is in
- deep_ter_debug_map, use the corresponding DEBUG_EXPR_DECL
- instead of trying to expand SSA_NAME's def stmt.
- (expand_debug_locations): When expanding debug bind
- of a DEBUG_EXPR_DECL to corresponding SSA_NAME,
- temporarily remove the DEBUG_EXPR_DECL from deep_ter_debug_map's
- value.
- (pass_expand::execute): Call avoid_deep_ter_for_debug on
- all debug bind stmts. Delete deep_ter_debug_map after
- expand_debug_location if non-NULL and clear it.
- 2015-02-01 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/64851
- * config/sh/sync.md (atomic_fetch_notsi_hard,
- atomic_fetch_not<mode>_hard, atomic_fetch_not<mode>_soft_gusa,
- atomic_fetch_not<mode>_soft_tcb, atomic_fetch_not<mode>_soft_imask,
- atomic_not_fetchsi_hard, atomic_not_fetch<mode>_hard,
- atomic_not_fetch<mode>_soft_gusa, atomic_not_fetch<mode>_soft_tcb,
- atomic_not_fetch<mode>_soft_imask): New insns.
- 2015-02-01 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
- * haifa-sched.c (INSN_RFS_DEBUG_ORIG_ORDER): New access macro.
- (rank_for_schedule_debug): Split from ...
- (rank_for_schedule): ... this.
- (ready_sort): Sort DEBUG_INSNs separately from normal INSNs.
- * sched-int.h (struct _haifa_insn_data): New field rfs_debug_orig_order.
- 2015-01-31 Sandra Loosemore <sandra@codesourcery.com>
- * doc/md.texi (Machine Constraints): Alphabetize table by target.
- * doc/extend.texi (x86 Variable Attributes): Move section to
- correct alphabetization after renaming.
- (x86 Type Attributes): Likewise.
- (Target Builtins): Re-alphabetize menu.
- (x86 Built-in Functions): Move section to correct alphabetization
- after renaming.
- (x86 transactional memory intrinsics): Likewise.
- * doc/invoke.texi (Option Summary): Re-alphabetize x86 Options
- and x86 Windows Options in table and menu.
- (x86 Options): Move section to correct alphabetization after
- renaming.
- (x86 Windows Options): Likewise.
- 2015-01-31 Sandra Loosemore <sandra@codesourcery.com>
- * doc/extend.texi: Use "x86", "x86-32", and "x86-64" as the
- preferred names of the architecture and its 32- and 64-bit
- variants.
- * doc/invoke.texi: Likewise.
- * doc/md.texi: Likewise.
- 2015-01-31 Uros Bizjak <ubizjak@gmail.com>
- PR target/64882
- * config/i386/predicates.md (address_no_seg_operand): Reject
- non-CONST_INT_P operands in invalid mode.
- 2015-01-31 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/i386.md (*prefetch_prefetchw1): Remove mode of
- address_operand 0. Rename from *prefetch_prefetchwt1_<mode>.
- * config/i386/predicates.md (address_no_seg_operand): Call
- address_operand with VOIDmode.
- (vsib_address_operand): Ditto.
- (address_mpx_no_base_operand): Ditto.
- (address_mpx_no_index_operand): Ditto.
- 2015-01-30 Vladimir Makarov <vmakarov@redhat.com>
- PR target/64688
- * lra-constraints.c (original_subreg_reg_mode): New.
- (simplify_operand_subreg): Try to simplify subreg of const. Use
- original_subreg_reg_mode for it.
- (swap_operands): Update original_subreg_reg_mode.
- (curr_insn_transform): Set up original_subreg_reg_mode.
- 2015-01-30 Vladimir Makarov <vmakarov@redhat.com>
- PR target/64617
- * lra-constraints.c (prohibited_class_reg_set_mode_p): New
- function.
- (process_alt_operands): Use it.
- (curr_insn_transform): Check the optional reload pseudo class is
- ok for the mode.
- 2015-01-30 Joseph Myers <joseph@codesourcery.com>
- * diagnostic.c (fatal_error (const char *, ...)): Remove function.
- * diagnostic-core.h (fatal_error (const char *, ...)): Remove
- prototype.
- * toplev.h (init_asm_output): Update comment on use of
- UNKNOWN_LOCATION with fatal_error.
- * cgraph.c, collect-utils.c, collect2.c, config/arc/arc.c,
- config/arc/arc.md, config/avr/avr.c, config/c6x/c6x.h,
- config/darwin.c, config/host-darwin.c, config/i386/host-cygwin.c,
- config/i386/intelmic-mkoffload.c, config/nios2/nios2.c,
- config/nvptx/mkoffload.c, config/nvptx/nvptx.h,
- config/rs6000/host-darwin.c, config/rs6000/rs6000.c,
- config/s390/s390.c, gcc.c, gcov-io.h, gcov-tool.c, ggc-common.c,
- ggc-page.c, graph.c, ipa-inline-analysis.c, ipa-reference.c,
- lto-cgraph.c, lto-section-in.c, lto-streamer-in.c, lto-streamer.c,
- lto-wrapper.c, objc/objc-act.c, opts.c, passes.c, plugin.c,
- tlink.c, toplev.c, tree-streamer-in.c, varpool.c: All callers of
- fatal_error changed to pass input_location as first argument.
- 2015-01-30 Martin Liska <mliska@suse.cz>
- * tree.h: Change GCC_VERSION >= 4004 to GCC_VERSION >= 4006
- in #pragma GCC diagnostic guards.
- 2015-01-30 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64829
- * tree-vect-patterns.c (vect_handle_widen_op_by_const): Do
- not add a widening conversion pattern but hand off extra
- widenings to callers.
- (vect_recog_widen_mult_pattern): Handle extra widening produced
- by vect_handle_widen_op_by_const.
- (vect_recog_widen_shift_pattern): Likewise.
- (vect_pattern_recog_1): Remove excess vertical space in dumping.
- * tree-vect-stmts.c (vect_mark_stmts_to_be_vectorized): Likewise.
- (vect_init_vector_1): Likewise.
- (vect_get_vec_def_for_operand): Likewise.
- (vect_finish_stmt_generation): Likewise.
- (vectorizable_load): Likewise.
- (vect_analyze_stmt): Likewise.
- (vect_is_simple_use): Likewise.
- 2015-01-29 Jeff Law <law@redhat.com>
- * combine.c (try_combine): Fix typo in comment.
- 2015-01-29 Segher Boessenkool <segher@kernel.crashing.org>
- PR target/64580
- * config.rs6000/rs6000.c (compute_vrsave_mask): Reverse loop order.
- (rs6000_stack_info): Add assert.
- (rs6000_output_savres_externs): New function, split off from...
- (rs6000_output_function_prologue): ... here. Do not call it for
- thunks.
- 2015-01-29 Jeff Law <law@redhat.com>
- PR target/15184
- * combine.c (try_combine): If I0 is a memory load and I3 a store
- to a related address, increase the "goodness" of doing a 4-insn
- combination with I0-I3.
- (make_field_assignment): Handle SUBREGs in the ior+and case.
- 2015-01-29 Yuri Rumyantsev <ysrumyan@gmail.com>
- PR tree-optimization/64746
- * tree-if-conv.c (mask_exists): New function.
- (predicate_mem_writes): Save created mask with given size for further
- use.
- (stmt_is_root_of_bool_pattern): Remove argument VAR and store to it.
- (ifcvt_repair_bool_pattern): Collect all statements that are root
- of bool pattern and use iterative algorithm to remove multiple uses
- of predicates, display number of required iterations.
- 2015-01-29 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64853
- * tree-vrp.c (vrp_valueize_1): Do not return anything if the
- stmt will get simulated again.
- * tree-ssa-ccp.c (valueize_op_1): Likewise.
- 2015-01-29 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * config/arm/arm.c (arm_emit_multi_reg_pop): Simplify definition of
- return_in_pc. Remove redundant assignments.
- (thumb2_emit_ldrd_pop): Simplify definition of return_in_pc.
- (arm_expand_epilogue): Don't compare boolean with true in if condition.
- 2015-01-29 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/i386.c (ix86_mode_after): Make static.
- 2015-01-29 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64844
- * tree-vect-loop.c (vect_estimate_min_profitable_iters): Always
- dump cost model analysis.
- * tree-vect-data-refs.c (vect_enhance_data_refs_alignment):
- Do not register adjusted load/store costs here.
- 2015-01-29 Ilya Enkovich <ilya.enkovich@intel.com>
- Uros Bizjak <ubizjak@gmail.com>
- * config/i386/i386-protos.h (ix86_use_pseudo_pic_reg): New.
- * config/i386/i386.h (PIC_OFFSET_TABLE_REGNUM): Simplify by
- using x86_use_pseudo_pic_reg.
- * config/i386/i386.c (ix86_conditional_register_usage): Remove
- support for fixed PIC register.
- (ix86_use_pseudo_pic_reg): Not static any more.
- 2015-01-29 Ilya Enkovich <ilya.enkovich@intel.com>
- PR middle-end/64805
- * ipa-inline.c (early_inliner): Rebuild IPA_REF_CHKP reference
- to avoid error in cgraph node verification.
- 2015-01-29 Marek Polacek <polacek@redhat.com>
- * doc/standards.texi: Reflect that the default for C is gnu11.
- 2015-01-29 Kaz Kojima <kkojima@gcc.gnu.org>
- PR target/64761
- * reorg.c (switch_text_sections_between_p): New function.
- (relax_delay_slots): Call it when testing if the jump insn
- is removable. Use targetm.can_follow_jump when testing if
- the conditional branch can follow an unconditional jump.
- 2015-01-27 Caroline Tice <cmtice@google.com>
- Committing VTV Cywin/Ming patch for Patrick Wollgast
- * config/i386/cygwin.h (STARTFILE_SPEC): Add vtv_start.o,
- if -fvtable-verify=preinit/std is used.
- * config/i386/mingw-w64.h (STARTFILE_SPEC): Likewise.
- * config/i386/mingw32.h (STARTFILE_SPEC): Likewise.
- * config/i386/cygwin.h (ENDFILE_SPEC): Add vtv_end.o,
- if -fvtable-verify=preinit/std is used.
- * config/i386/mingw32.h (ENDFILE_SPEC): Likewise.
- * config/i386/cygwin.h (LIB_SPEC): Pass -lvtv and -lpsapi,
- if -fvtable-verify=preinit/std is used.
- * config/i386/mingw-w64.h (LIB_SPEC): Likewise.
- * config/i386/mingw32.h (LIB_SPEC): Likewise.
- * varasm.c (assemble_variable): Add code to properly set the comdat
- section and name for the .vtable_map_vars section in case the
- target is PE or COFF.
- 2015-01-29 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64801
- * cgraphunit.c (init_lowered_empty_function): Add CoUNT parameter;
- make sane BB profile.
- (cgraph_node::expand_thunk): Make sane BB profile.
- (cgraph_node::create_wrapper): Do not set call_stmt_cannot_inline_p.
- * cgraph.h (init_lowered_empty_function): Update prototype.
- * config/i386/i386.c (make_resolver_func): Update call.
- * predict.c (gate): Disable branch prediction pass if
- profile is already there.
- 2015-01-29 Jan Hubicka <hubicka@ucw.cz>
- * optc-save-gen.awk: flag_fp_contract_mode is no longer speical.
- * opth-gen.awk: Likewise.
- * common.opt: Mark flag_fp_contract_mode as Optimization.
- 2015-01-29 Bernd Edlinger <bernd.edlinger@hotmail.de>
- * config/i386/cygwin.h (LIBGCJ_SONAME): Set libgcj version to -16.
- * config/i386/mingw32.h (LIBGCJ_SONAME): Set libgcj version to -16.
- 2015-01-28 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/64659
- * config/sh/predicates.md (atomic_arith_operand,
- atomic_logical_operand): Remove.
- * config/sh/sync.md (fetchop_predicate, fetchop_constraint): Remove.
- (atomic_arith_operand_0): New predicate.
- (atomic_compare_and_swap<mode>): Use arith_reg_dest for output values.
- Use atomic_arith_operand_0 for input values.
- (atomic_compare_and_swapsi_hard, atomic_compare_and_swap<mode>_hard,
- atomic_compare_and_swap<mode>_soft_gusa,
- atomic_compare_and_swap<mode>_soft_tcb,
- atomic_compare_and_swap<mode>_soft_imask): Use arith_reg_dest and
- arith_reg_operand instead of register_operand.
- (atomic_exchange<mode>): Use arith_reg_dest for output value. Use
- atomic_arith_operand_0 for newval input.
- (atomic_exchangesi_hard, atomic_exchange<mode>_hard,
- atomic_exchange<mode>_soft_gusa, atomic_exchange<mode>_soft_tcb,
- atomic_exchange<mode>_soft_imask): Use arith_reg_dest and
- arith_reg_operand instead of register_operand.
- (atomic_arith_operand_1, atomic_logical_operand_1): New predicates.
- fetchop_predicate_1, fetchop_constraint_1_llcs,
- fetchop_constraint_1_gusa, fetchop_constraint_1_tcb,
- fetchop_constraint_1_imask): New code iterator attributes.
- (atomic_fetch_<fetchop_name><mode>): Use arith_reg_dest instead of
- register_operand. Use fetchop_predicate_1.
- (atomic_fetch_<fetchop_name>si_hard,
- atomic_fetch_<fetchop_name><mode>_hard): Use arith_reg_dest instead of
- register_operand. Use fetchop_predicate_1, fetchop_constraint_1_llcs.
- (atomic_fetch_<fetchop_name><mode>_soft_gusa): Use arith_reg_dest
- and arith_reg_operand instead of register_operand. Use
- fetchop_predicate_1, fetchop_constraint_1_gusa.
- (atomic_fetch_<fetchop_name><mode>_soft_tcb): Use arith_reg_dest
- and arith_reg_operand instead of register_operand. Use
- fetchop_predicate_1, fetchop_constraint_1_tcb. Adjust asm sequence
- to allow R0 usage.
- (atomic_fetch_<fetchop_name><mode>_soft_imask): Use arith_reg_dest
- and arith_reg_operand instead of register_operand. Use
- fetchop_predicate_1, fetchop_constraint_1_imask. Adjust asm sequence
- to allow R0 usage.
- (atomic_fetch_nand<mode>): Use arith_reg_dest instead of
- register_operand. Use atomic_logical_operand_1.
- (atomic_fetch_nandsi_hard, atomic_fetch_nand<mode>_hard,
- atomic_fetch_nand<mode>_soft_gusa): Use arith_reg_dest and
- arith_reg_operand instead of register_operand.
- (atomic_fetch_nand<mode>_soft_tcb, atomic_fetch_nand<mode>_soft_imask):
- Use arith_reg_dest and arith_reg_operand instead of register_operand.
- Use logical_operand and rK08. Adjust asm sequence to allow R0 usage.
- (atomic_<fetchop_name>_fetch<mode>): Use arith_reg_dest instead of
- register_operand. Use fetchop_predicate_1.
- (atomic_<fetchop_name>_fetchsi_hard,
- atomic_<fetchop_name>_fetch<mode>_hard): Use arith_reg_dest and
- arith_reg_operand instead of register_operand. Use fetchop_predicate_1,
- fetchop_constraint_1_llcs.
- (atomic_<fetchop_name>_fetch<mode>_soft_gusa): Use arith_reg_dest and
- arith_reg_operand instead of register_operand. Use fetchop_predicate_1,
- fetchop_constraint_1_gusa.
- (atomic_<fetchop_name>_fetch<mode>_soft_tcb): Use arith_reg_dest and
- arith_reg_operand instead of register_operand. Use fetchop_predicate_1,
- fetchop_constraint_1_tcb. Adjust asm sequence to allow R0 usage.
- (atomic_<fetchop_name>_fetch<mode>_soft_imask): Use arith_reg_dest and
- arith_reg_operand instead of register_operand. Use fetchop_predicate_1,
- fetchop_constraint_1_imask. Adjust asm sequence to allow R0 usage.
- (atomic_nand_fetch<mode>): Use arith_reg_dest instead of
- register_operand. Use atomic_logical_operand_1.
- (atomic_nand_fetchsi_hard, atomic_nand_fetch<mode>_hard,
- atomic_nand_fetch<mode>_soft_gusa): Use arith_reg_dest and
- arith_reg_operand instead of register_operand.
- (atomic_nand_fetch<mode>_soft_tcb): Use arith_reg_dest and
- arith_reg_operand instead of register_operand. Use logical_operand
- and K08. Adjust asm sequence to allow R0 usage.
- (atomic_nand_fetch<mode>_soft_imask): Use arith_reg_dest and
- arith_reg_operand instead of register_operand. Use logical_operand
- and K08.
- 2015-01-28 Jakub Jelinek <jakub@redhat.com>
- PR other/63504
- * dwarf2out.c (add_AT_wide, mem_loc_descriptor, loc_descriptor):
- Use ggc_alloc<wide_int> instead of ggc_cleared_alloc<wide_int>.
- (attr_checksum, attr_checksum_ordered, hash_loc_operands): Checksum
- only get_full_len HOST_WIDE_INTs from get_val () array rather than
- all bits in *val_wide.
- 2015-01-28 Jan Hubicka <hubicka@ucw.cz>
- * varpool.c (tls_model_names): Fix names.
- (varpool_node::dump): Dump tls- prefix for tls models.
- 2015-01-28 Thomas Schwinge <thomas@codesourcery.com>
- Bernd Schmidt <bernds@codesourcery.com>
- Nathan Sidwell <nathan@codesourcery.com>
- * config/nvptx/mkoffload.c: New file.
- * config/nvptx/t-nvptx: Add build rules for it.
- * config.gcc <nvptx-*> [$enable_as_accelerator = yes]
- (extra_programs): Add mkoffload.
- * config/nvptx/nvptx.c (nvptx_record_offload_symbol): New
- function.
- (TARGET_RECORD_OFFLOAD_SYMBOL): Define macro to use it.
- 2015-01-28 Yuri Rumyantsev <ysrumyan@gmail.com>
- PR middle-end/64809
- * cfgexpand.c (reorder_operands): Skip debug gimples.
- 2015-01-28 Ilya Enkovich <ilya.enkovich@intel.com>
- PR tree-optimization/64277
- * tree-ssa-loop-niter.c (record_nonwrapping_iv): Use base
- range info when possible to refine estimation.
- 2015-01-28 Thomas Preud'homme <thomas.preudhomme@arm.com>
- PR tree-optimization/64718
- * tree-ssa-math-opts.c (pass_optimize_bswap::execute): Make bswap_type
- be a 16bit unsigned integer when n->range is 16.
- (bswap_replace): Convert src to that type if necessary for all bswap
- sizes. Fix rotation right notation in nearby comment. Use bswap_type
- set in pass_optimize_bswap::execute ().
- 2015-01-28 James Greenhalgh <james.greenhalgh@arm.com>
- * config/aarch64/aarch64-simd.md (aarch64_abs<mode>): New.
- * config/aarch64/aarch64-simd-builtins.def (abs): Split by
- integer and floating point variants.
- * config/aarch64/iterators.md (unspec): Add UNSPEC_ABS.
- 2015-01-28 Robert Suchanek <robert.suchanek@imgtec.com>
- * config/mips/mips.c (mips_hard_regno_mode_ok_p): Prohibit accumulators
- for all vector modes.
- 2015-01-28 Jakub Jelinek <jakub@redhat.com>
- PR bootstrap/64612
- * doc/sourcebuild.texi (comdat_group): Document.
- 2015-01-28 Terry Guo <terry.guo@arm.com>
- * config/arm/thumb1.md (*thumb1_movpc_insn): New insn pattern.
- 2015-01-27 David Malcolm <dmalcolm@redhat.com>
- * toplev.c (print_version): Add param "show_global_state", and
- only print GGC and plugin information if it is true.
- (init_asm_output): Pass in "true" for the new param when calling
- print_version.
- (process_options): Likewise.
- (toplev::main): Likewise.
- * toplev.h (print_version): Add new param to decl.
- 2015-01-27 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/60871
- PR ipa/64139
- * tree.c (lookup_binfo_at_offset): New function.
- (get_binfo_at_offset): Use it.
- 2015-01-27 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64282
- * gimple-fold.c (gimple_get_virt_method_for_vtable): Remove assert
- on vtable being vtable.
- 2015-01-27 Dominik Vogt <vogt@linux.vnet.ibm.com>
- * doc/extend.texi: s/390: Update documentation of hotpatch attribute.
- * doc/invoke.texi (-mhotpatch): s/390: Update documentation of
- -mhotpatch= option.
- * config/s390/s390.opt (mhotpatch): s/390: Remove -mhotpatch and
- -mno-hotpatch options. Change syntax of -mhotpatch= option.
- * config/s390/s390.c (s390_hotpatch_trampoline_halfwords_default):
- Renamed.
- (s390_hotpatch_trampoline_halfwords_max): Renamed.
- (s390_hotpatch_hw_max): New name.
- (s390_hotpatch_trampoline_halfwords): Renamed.
- (s390_hotpatch_hw_before_label): New name.
- (get_hotpatch_attribute): Removed.
- (s390_hotpatch_hw_after_label): New name.
- (s390_handle_hotpatch_attribute): Add second parameter to hotpatch
- attribute.
- (s390_attribute_table): Ditto.
- (s390_function_num_hotpatch_trampoline_halfwords): Renamed.
- (s390_function_num_hotpatch_hw): New name.
- Remove special handling of inline functions and hotpatching.
- Return number of nops before and after the function label.
- (s390_can_inline_p): Removed.
- (s390_asm_output_function_label): Emit a configurable number of nops
- after the function label.
- (s390_option_override): Update -mhotpatch= syntax and remove -mhotpatch.
- (TARGET_CAN_INLINE_P) Removed.
- (TARGET_FUNCTION_ATTRIBUTE_INLINABLE_P): New.
- 2015-01-27 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
- Jiong Wang <jiong.wang@arm.com>
- * config/aarch64/aarch64.md (tb<optab><mode>1): Clobber CC reg instead
- of scratch reg.
- (cb<optab><mode>1): Likewise.
- * config/aarch64/iterators.md (bcond): New define_code_attr.
- 2015-01-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
- * config/s390/s390.c (s390_memory_move_cost): Increase costs for
- memory accesses.
- 2015-01-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
- * config/s390/s390.c (s390_register_move_cost): Increase costs for
- FPR->GPR moves.
- 2015-01-27 Richard Biener <rguenther@suse.de>
- * tree-vrp.c (update_value_range): Intersect the range with
- old recorded SSA name range information.
- 2015-01-27 Nick Clifton <nickc@redhat.com>
- * config/rl78/rl78.c (rl78_expand_prologue): In G10 mode push the
- BC, DE and HL registers directly, not via AX.
- When decrementing the stack pointer by a large amount, transfer SP
- into AX and perform the subtraction there.
- (rl78_expand_epilogue): Perform the inverse of the above
- enhancements.
- 2015-01-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
- * config/i386/sysv4.h (CRT_GET_RFIB_DATA): Remove.
- 2015-01-27 Jakub Jelinek <jakub@redhat.com>
- Yury Gribov <y.gribov@samsung.com>
- PR ubsan/64741
- * ubsan.c (ubsan_source_location): Refactor code.
- (ubsan_type_descriptor): Update type size. Refactor code.
- 2015-01-27 Richard Biener <rguenther@suse.de>
- PR tree-optimization/56273
- PR tree-optimization/59124
- PR tree-optimization/64277
- * tree-vrp.c (vrp_finalize): Emit array-bound warnings only
- from the first VRP pass.
- 2015-01-27 Jakub Jelinek <jakub@redhat.com>
- PR ipa/64776
- * cgraphunit.c (cgraph_node::expand_thunk): If not this_adjusting,
- handle the first argument in the same loop as all the other arguments.
- PR rtl-optimization/61058
- * jump.c (cleanup_barriers): Update basic block boundaries
- if BLOCK_FOR_INSN is non-NULL on PREV.
- 2015-01-27 Ilya Enkovich <ilya.enkovich@intel.com>
- * tree-chkp.c (chkp_call_returns_bounds_p): Fix handling of
- bounds narrowing, already instrumented calls and calls to
- not instrumentable functions.
- 2015-01-27 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/64807
- * wide-int.cc (wi::divmod_internal): Clear
- b_dividend[dividend_blocks_needed].
- 2015-01-26 DJ Delorie <dj@redhat.com>
- * config/rl78/rl78.c (move_elim_pass): Don't optimize away
- volatile memory references.
- 2015-01-26 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/49263
- * config/sh/sh.c (sh_split_treg_set_expr): Invoke emit_insn before
- remove_insn.
- * config/sh/sh.md (tstsi_t): Don't try to optimize constant with right
- shifts if it already fits into K08.
- 2015-01-26 Jakub Jelinek <jakub@redhat.com>
- PR ipa/64730
- * ipa-inline.c (inline_small_functions): Print "unknown" even
- if edge->call_stmt is non-NULL, but has builtins or unknown
- location.
- PR middle-end/64421
- * omp-low.c (simd_clone_mangle): If DECL_ASSEMBLER_NAME starts
- with asterisk, skip the first character.
- 2015-01-26 H.J. Lu <hongjiu.lu@intel.com>
- PR target/64806
- * config/i386/i386 (feature_priority): Revert the last P_POPCNT
- order change.
- 2015-01-26 Uros Bizjak <ubizjak@gmail.com>
- PR target/64795
- * config/i386/i386.md (*movdi_internal): Also check operand 0
- to determine TYPE_LEA operand.
- (*movsi_internal): Ditto.
- 2015-01-26 Jakub Jelinek <jakub@redhat.com>
- * config/rs6000/rs6000-cpus.def (POWERPC_MASKS): Add
- OPTION_MASK_QUAD_MEMORY_ATOMIC.
- 2015-01-26 Renlin Li <renlin.li@arm.com>
- * config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Correct
- the comment.
- * config/aarch64/aarch64.md (tlsle_small_<mode>): Add left shift 12-bit
- for higher part.
- 2015-01-26 Richard Biener <rguenther@suse.de>
- PR middle-end/64764
- * tree-ssa-uninit.c (is_pred_expr_subset_of): Handle
- combining two BIT_AND_EXPR predicates.
- 2015-01-26 H.J. Lu <hongjiu.lu@intel.com>
- PR bootstrap/64754
- * tree-ssa-structalias.c (new_var_info): Initialize ruid.
- 2015-01-26 Terry Guo <terry.guo@arm.com>
- * config/arm/arm.c (arm_file_start): Update the assignment of
- Tag_ABI_HardFP_use.
- 2015-01-25 James Greenhalgh <james.greenhalgh@arm.com>
- * config/arm/arm-cores.def (cortex-a57): Use the new Cortex-A57
- pipeline model.
- config/arm/arm.md: Include the new Cortex-A57 model.
- (generic_sched): Don't use generic_sched when tuning for
- Cortex-A57.
- 2015-01-25 Allan Sandfeld Jensen <sandfeld@kde.org>
- Uros Bizjak <ubizjak@gmail.com>
- * config/i386/i386.c (get_builtin_code_for_version): Add
- support for BMI and BMI2 multiversion functions.
- 2015-01-25 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
- * emit-rtl.h (store_bit_field): Move prototype to expmed.h.
- (extract_bit_field): Likewise.
- (extract_low_bits): Likewise.
- (expand_mult): Likewise.
- (expand_mult_highpart_adjust): Likewise.
- 2015-01-24 H.J. Lu <hongjiu.lu@intel.com>
- * config/i386/driver-i386.c (host_detect_local_cpu): Check new
- Silvermont, Haswell, Broadwell and Knights Landing model numbers.
- * config/i386/i386.c (processor_model): Add
- M_INTEL_COREI7_BROADWELL.
- (arch_names_table): Add "broadwell".
- 2015-01-24 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/49263
- PR target/53987
- PR target/64345
- PR target/59533
- PR target/52933
- PR target/54236
- PR target/51244
- * config/sh/sh-protos.h
- (sh_extending_set_of_reg::can_use_as_unextended_reg,
- sh_extending_set_of_reg::use_as_unextended_reg,
- sh_is_nott_insn, sh_movt_set_dest, sh_movrt_set_dest, sh_is_movt_insn,
- sh_is_movrt_insn, sh_insn_operands_modified_between_p,
- sh_reg_dead_or_unused_after_insn, sh_in_recog_treg_set_expr,
- sh_recog_treg_set_expr, sh_split_treg_set_expr): New functions.
- (sh_treg_insns): New class.
- * config/sh/sh.c (TARGET_LEGITIMATE_COMBINED_INSN): Define target hook.
- (scope_counter): New class.
- (sh_legitimate_combined_insn, sh_is_nott_insn, sh_movt_set_dest,
- sh_movrt_set_dest, sh_reg_dead_or_unused_after_insn,
- sh_extending_set_of_reg::can_use_as_unextended_reg,
- sh_extending_set_of_reg::use_as_unextended_reg, sh_recog_treg_set_expr,
- sh_in_recog_treg_set_expr, sh_try_split_insn_simple,
- sh_split_treg_set_expr): New functions.
- (addsubcosts): Handle treg_set_expr.
- (sh_rtx_costs): Handle IF_THEN_ELSE and ZERO_EXTRACT.
- (sh_rtx_costs): Use arith_reg_operand in SIGN_EXTEND and ZERO_EXTEND.
- (sh_rtx_costs): Handle additional bit test patterns in EQ and AND cases.
- (sh_insn_operands_modified_between_p): Make non-static.
- * config/sh/predicates.md (zero_extend_movu_operand): Allow
- simple_mem_operand in addition to displacement_mem_operand.
- (zero_extend_operand): Don't allow zero_extend_movu_operand.
- (treg_set_expr, treg_set_expr_not_const01,
- arith_reg_or_treg_set_expr): New predicates.
- * config/sh/sh.md (tstsi_t): Use arith_reg_operand and
- arith_or_int_operand instead of logical_operand. Convert to
- insn_and_split. Try to optimize constant operand in splitter.
- (tsthi_t, tstqi_t): Fold into *tst<mode>_t. Convert to insn_and_split.
- (*tstqi_t_zero): Delete.
- (*tst<mode>_t_subregs): Add !sh_in_recog_treg_set_expr split condition.
- (tstsi_t_and_not): Delete.
- (tst<mode>_t_zero_extract_eq): Rename to *tst<mode>_t_zero_extract.
- Convert to insn_and_split.
- (unnamed split, tstsi_t_zero_extract_xor,
- tstsi_t_zero_extract_subreg_xor_little,
- tstsi_t_zero_extract_subreg_xor_big): Delete.
- (*tstsi_t_shift_mask): New insn_and_split.
- (cmpeqsi_t, cmpgesi_t): Add new split for const_int 0 operands and try
- to recombine with surrounding insns when splitting.
- (*negtstsi): Add !sh_in_recog_treg_set_expr condition.
- (cmp_div0s_0, cmp_div0s_1, *cmp_div0s_0, *cmp_div0s_1): Rewrite as ...
- (cmp_div0s, *cmp_div0s_1, *cmp_div0s_2, *cmp_div0s_3, *cmp_div0s_4,
- *cmp_div0s_5, *cmp_div0s_6): ... these new insn_and_split patterns.
- (*cbranch_div0s: Delete.
- (*addc): Convert to insn_and_split. Use treg_set_expr as 3rd operand.
- Try to recombine with surrounding insns when splitting. Add operand
- order variants.
- (*addc_t_r, *addc_r_t): Use treg_set_expr_not_const01.
- (*addc_r_r_1, *addc_r_lsb, *addc_r_r_lsb, *addc_r_lsb_r, *addc_r_msb,
- *addc_r_r_msb, *addc_2r_msb): Delete.
- (*addc_2r_lsb): Rename to *addc_2r_t. Use treg_set_expr. Add operand
- order variant.
- (*addc_negreg_t): New insn_and_split.
- (*subc): Convert to insn_and_split. Use treg_set_expr as 3rd operand.
- Try to recombine with surrounding insns when splitting.
- Add operand order variants.
- (*subc_negt_reg, *subc_negreg_t, *reg_lsb_t, *reg_msb_t): New
- insn_and_split patterns.
- (*rotcr): Use arith_reg_or_treg_set_expr. Try to recombine with
- surrounding insns when splitting.
- (unnamed rotcr split): Use arith_reg_or_treg_set_expr.
- (*rotcl): Likewise. Add zero_extract variant.
- (*ashrsi2_31): New insn_and_split.
- (*negc): Convert to insn_and_split. Use treg_set_expr.
- (*zero_extend<mode>si2_disp_mem): Update comment.
- (movrt_negc, *movrt_negc, nott): Add !sh_in_recog_treg_set_expr split
- condition.
- (*mov_t_msb_neg, mov_neg_si_t): Use treg_set_expr. Try to recombine
- with surrounding insns when splitting.
- (any_treg_expr_to_reg): New insn_and_split.
- (*neg_zero_extract_0, *neg_zero_extract_1, *neg_zero_extract_2,
- *neg_zero_extract_3, *neg_zero_extract_4, *neg_zero_extract_5,
- *neg_zero_extract_6, *zero_extract_0, *zero_extract_1,
- *zero_extract_2): New single bit zero extract patterns.
- (bld_reg, *bld_regqi): Fold into bld<mode>_reg.
- (*get_thread_pointersi, store_gbr, *mov<mode>_gbr_load,
- *mov<mode>_gbr_load, *mov<mode>_gbr_load, *mov<mode>_gbr_load,
- *movdi_gbr_load): Use arith_reg_dest instead of register_operand for
- set destination.
- (set_thread_pointersi, load_gbr): Use arith_reg_operand instead of
- register_operand for set source.
- 2015-01-23 Jan Hubicka <hubicka@ucw.cz>
- * i386.opt (prefetch_sse): New targetsave.
- * i386.c (ix86_function_specific_save): Save prefetch_sse.
- (ix86_function_specific_restore): Restore prefetch_sse and initialize
- ix86_cost/ix86_tune_cost.
- 2015-01-23 David Malcolm <dmalcolm@redhat.com>
- * config/rs6000/rs6000.c (rs6000_output_function_epilogue):
- Support the JIT by using 0 as the language type.
- 2015-01-23 Vladimir Makarov <vmakarov@redhat.com>
- PR target/64317
- * lra-lives.c (make_hard_regno_born): Add parameter. Don't make
- REAL_PIC_OFFSET_TABLE_REGNUM conflicting with pic offset pseudo.
- (mark_regno_live, process_bb_lives): Pass new parameter value to
- make_hard_regno_born.
- 2015-01-23 Jakub Jelinek <jakub@redhat.com>
- PR rtl-optimization/63637
- PR rtl-optimization/60663
- * cse.c (merge_equiv_classes): Set new_elt->cost to MAX_COST
- if elt->cost is MAX_COST for ASM_OPERANDS.
- (find_sets_in_insn): Fix up comment typo.
- (cse_insn): Don't set src_volatile for all non-volatile
- ASM_OPERANDS in PARALLELs, but just those with multiple outputs
- or with "memory" clobber. Set elt->cost to MAX_COST
- for ASM_OPERANDS in PARALLEL. Set src_elt->cost to MAX_COST
- if new_src is ASM_OPERANDS and elt->cost is MAX_COST.
- 2015-01-23 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/sse.md (sse2_loadld): Set attribute isa to sse2 for
- alternative 1.
- 2015-01-23 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/gnu-user.h (CRT_GET_RFIB_DATA): Move definition to
- libgcc/config/i386/elf-lib.h.
- 2015-01-23 Jakub Jelinek <jakub@redhat.com>
- PR driver/64737
- * gcc.c (print_configuration): Don't print a blank line at the end
- here...
- (run_attempt): ... but here unstead.
- PR middle-end/64734
- * omp-low.c (scan_sharing_clauses): Don't ignore
- OMP_CLAUSE_MAP_ZERO_BIAS_ARRAY_SECTION GOMP_MAP_POINTER clauses
- on target data/update constructs.
- 2015-01-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
- PR target/50928
- * config/m32c/m32c.c (encode_pattern_1): Removed gcc_unreachable here.
- (DEBUG_RELOAD): Removed define.
- (m32c_limit_reload_class): Enable traces with if DEBUG0.
- (m32c_function_arg): Added a type cast.
- (m32c_legitimize_reload_address): Push A_REGS reload with PSImode.
- * config/m32c/addsub.md (addsi3_1): Specify the mode of all arguments.
- * config/m32c/bitops.md (andqi3_16): Likewise.
- * config/m32c/mov.md (m32c_immd_dbl_mov): Likewise.
- (push_a01_l): Likewise.
- 2015-01-23 David Malcolm <dmalcolm@redhat.com>
- PR jit/64721
- * main.c (main): Construct toplev instances with init_signals=true.
- * toplev.c (general_init): Add param "init_signals", and use it to
- conditionalize the calls to signal and host_hooks.extra_signals.
- (toplev::toplev): Add param "init_signals".
- (toplev::main): When invoking general_init, pass m_init_signals
- to control whether signal-handlers are installed.
- * toplev.h (toplev::toplev): Add param "init_signals".
- (toplev::m_init_signals): New field.
- 2015-01-23 David Malcolm <dmalcolm@redhat.com>
- PR jit/64722
- * emit-rtl.c (init_emit_regs): Set pic_offset_table_rtx to
- NULL_RTX before testing PIC_OFFSET_TABLE_REGNUM, since the
- latter may be affected by the former (e.g. on i686).
- 2015-01-23 Martin Liska <mliska@suse.cz>
- * tree.h (tree_vec_elt_check): Workaround -Wstrict-overflow
- false positive during profiledbootstrap.
- 2015-01-23 Tom de Vries <tom@codesourcery.com>
- PR libgomp/64672
- * lto-opts.c (lto_write_options): Output non-explicit conservative
- -fno-openacc.
- * lto-wrapper.c (merge_and_complain): Handle merging -fopenacc.
- (append_compiler_options): Pass -fopenacc through.
- 2015-01-23 Tom de Vries <tom@codesourcery.com>
- PR libgomp/64707
- * lto-opts.c (lto_write_options): Output non-explicit conservative
- -fno-openmp.
- * lto-wrapper.c (merge_and_complain): Handle merging -fopenmp.
- (append_compiler_options): Pass -fopenmp through.
- 2015-01-23 Jakub Jelinek <jakub@redhat.com>
- PR debug/64511
- * dwarf2out.c (struct dw_loc_descr_node): Add chain_next
- GTY markup.
- * diagnostic-core.h (internal_error_no_backtrace): New prototype.
- * diagnostic.def (DK_ICE_NOBT): New kind.
- * diagnostic.c (diagnostic_action_after_output): Handle DK_ICE_NOBT
- like DK_ICE, but never print backtrace.
- (diagnostic_report_diagnostic): Handle DK_ICE_NOBT like DK_ICE.
- (internal_error_no_backtrace): New function.
- * gcc.c (execute): Use internal_error_no_backtrace instead of
- internal_error.
- 2015-01-22 Jeff Law <law@redhat.com>
- PR target/52076
- * config/m68k/m68k.md (xorsi3_internal): Twiddle constraints to
- improve code density for small immediate to memory case.
- (insv): Better handle bitfield assignments when the field is
- being set to all ones.
- * config/m68k/predicates.md (reg_or_pow2_m1_operand): New
- operand predicate.
- 2015-01-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
- Jakub Jelinek <jakub@redhat.com>
- PR middle-end/64729
- * gcc.c (LINK_SSP_SPEC): Handle -fstack-protector-explicit
- for !TARGET_LIBC_PROVIDES_SSP version and
- -fstack-protector-{all,strong,explicit} otherwise.
- * config/freebsd.h (LINK_SSP_SPEC): Handle
- -fstack-protector-{strong,explicit}.
- 2015-01-22 Jan Hubicka <hubicka@ucw.cz>
- H.J. Lu <hongjiu.lu@intel.com>
- PR ipa/64694
- * ipa-inline.c (inline_small_functions): Fix thinko in maintenance of
- heap.
- 2015-01-22 Wei Mi <wmi@google.com>
- PR rtl-optimization/64557
- * dse.c (record_store): Call get_addr for mem_addr.
- (check_mem_read_rtx): Likewise.
- 2015-01-22 Eric Botcazou <ebotcazou@adacore.com>
- * fold-const.c (const_binop): Add early return for non-tcc_binary.
- 2015-01-22 Chen Gang <gang.chen.5i5j@gmail.com>
- * toplev.c (init_local_tick): Process the failure when read
- fails for random_seed.
- * ubsan.c (ubsan_type_descriptor): Use 'pretty_print' for
- 'pretty_name' to avoid memory overflow.
- 2015-01-22 Richard Biener <rguenther@suse.de>
- PR middle-end/64728
- * tree-ssa-coalesce.c (coalesce_partitions): Do not perform
- abnormal coalescing on undefined SSA names.
- 2015-22-01 Uros Bizjak <ubizjak@gmail.com>
- PR target/64688
- PR target/64477
- * config/i386/sse.md (vec_set<mode>_0): Use (Yi/r/C) constraints
- for alternative 3.
- (*vec_dup<mode>): Use (Yi/$r) constraints for alternative 1.
- 2015-01-22 Trevor Saunders <tsaunders@mozilla.com>
- PR middle-end/63325
- * fold-const.c (fold_checksum_tree): Don't include value of
- expr->decl_with_vis.symtab_node in the checksum.
- 2015-01-22 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
- * config/s390/s390.md (atomic code attribute): Fix typo "ior" -> "or".
- 2015-01-22 Max Ostapenko <m.ostapenko@partner.samsung.com>
- PR driver/64690
- * gcc.c (insert_comments): New function.
- (try_generate_repro): Call it.
- (append_text): Removed.
- 2015-01-22 Richard Biener <rguenther@suse.de>
- * ipa-inline.c (can_inline_edge_p): Disable inlining of edges
- with IL incompatible options. Properly honor user optimize
- attributes.
- 2015-01-21 Segher Boessenkool <segher@kernel.crashing.org>
- PR rtl-optimization/64682
- * combine.c (distribute_notes): When moving a death note for
- a register that is set in the new I2, make sure to put it
- before that new I2.
- 2015-01-21 David Edelsohn <dje.gcc@gmail.com>
- * config/rs6000/rs6000.c (rs6000_file_start): Use rs6000_isa_flags
- not TARGET_DEFAULT.
- 2015-01-21 Jakub Jelinek <jakub@redhat.com>
- PR debug/64511
- * simplify-rtx.c (simplify_relational_operation_1): Don't try to
- optimize (eq/ne (and (side_effects) (const_int 0)) (const_int 0))
- into (eq/ne (and (not (side_effects)) (const_int 0)) (const_int 0)).
- PR sanitizer/64706
- * doc/invoke.texi (-fsanitize=vptr): Document.
- PR rtl-optimization/62078
- * dse.c: Include cfgcleanup.h.
- (rest_of_handle_dse): For -fnon-call-exceptions, if DSE removed
- anything call purge_all_dead_edges and cleanup_cfg at the end
- of the pass.
- 2015-01-21 Jan Hubicka <hubicka@ucw.cz>
- * ipa-utils.c (ipa_merge_profiles): Avoid ICE on mismatch in indirect
- edges.
- 2015-01-21 Bernd Edlinger <bernd.edlinger@hotmail.de>
- * gimplify.c (gimplify_function_tree): Check the no_sanitize_thread
- decl attribute.
- 2015-01-21 David Sherwood <david.sherwood@arm.com>
- Tejas Belagod <Tejas.Belagod@arm.com>
- * config/aarch64/aarch64.h (CANNOT_CHANGE_MODE_CLASS): Removed.
- * config/aarch64/aarch64.c (aarch64_cannot_change_mode_class): Removed.
- * config/aarch64/aarch64-protos.h (aarch64_cannot_change_mode_class):
- Removed.
- 2015-01-21 David Sherwood <david.sherwood@arm.com>
- Tejas Belagod <Tejas.Belagod@arm.com>
- * config/aarch64/aarch64-protos.h (aarch64_simd_attr_length_rglist)
- (aarch64_reverse_mask): New decls.
- * config/aarch64/iterators.md (UNSPEC_REV_REGLIST): New enum.
- (insn_count): New mode_attr.
- * config/aarch64/aarch64-simd.md (vec_store_lanesoi, vec_store_lanesci)
- (vec_store_lanesxi, vec_load_lanesoi, vec_load_lanesci)
- (vec_load_lanesxi): Made ABI compliant for Big Endian targets.
- (aarch64_rev_reglist, aarch64_simd_ld2, aarch64_simd_ld3)
- (aarch64_simd_ld4, aarch64_simd_st2, aarch64_simd_st3)
- (aarch64_simd_st4): New patterns.
- * config/aarch64/aarch64.c (aarch64_simd_attr_length_rglist)
- (aarch64_reverse_mask): New functions.
- 2015-01-21 Richard Sandiford <richard.sandiford@arm.com>
- * config/aarch64/aarch64-protos.h (aarch64_simd_disambiguate_copy):
- Declare.
- * config/aarch64/aarch64.c (aarch64_classify_address): Allow extra
- addressing modes for BE.
- (aarch64_print_operand): Add 'R' specifier.
- (aarch64_simd_disambiguate_copy): Delete.
- (aarch64_simd_emit_reg_reg_move): New function.
- * config/aarch64/aarch64-simd.md: Use aarch64_simd_emit_reg_reg_move
- in define_splits for structural moves.
- (mov<mode>): Use less restrictive predicates.
- (*aarch64_mov<mode>): Simplify and only allow for LE.
- (*aarch64_be_movoi, *aarch64_be_movci, *aarch64_be_movxi): New.
- 2015-01-21 Alan Hayward <alan.hayward@arm.com>
- * rtlanal.c (subreg_get_info): Exit early for simple and common cases.
- 2015-01-21 Richard Henderson <rth@redhat.com>
- PR target/64669
- * ccmp.c (used_in_cond_stmt_p): Remove.
- (expand_ccmp_expr): Don't use it.
- 2015-01-21 Nick Clifton <nickc@redhat.com>
- * config/rl78/rl78.c (rl78_calculate_death_notes): Look inside
- PARALLELs.
- 2015-01-21 Richard Biener <rguenther@suse.de>
- PR middle-end/64313
- * tree-core.h (builtin_info, builtin_info_type): Turn from
- an object with two arrays into an array of an object with
- decl and two flags, implicit_p and declared_p.
- * tree.h (builtin_decl_explicit, builtin_decl_implicit,
- set_builtin_decl, set_builtin_decl_implicit_p,
- builtin_decl_explicit_p, builtin_decl_implicit_p): Adjust.
- (set_builtin_decl_declared_p, builtin_decl_declared_p): New functions.
- * builtins.c (builtin_info): Adjust.
- * gimplify.c (gimplify_addr_expr): References to builtins
- that have been declared by the user makes them eligible for
- use by the compiler. Call set_builtin_decl_implicit_p on them.
- 2015-01-20 Jeff Law <law@redhat.com>
- PR target/59946
- * config/m68k/m68k.md (Comparison expanders and patterns): Do not
- allow pc-relative addresses in operand predicates or constraints.
- 2015-01-21 Bin Cheng <bin.cheng@arm.com>
- * config/arm/arm.c (arm_cortex_a53_tune, arm_cortex_a57_tune): Prefer
- neon on aarch32 processors for stringops.
- 2015-01-19 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/63576
- * ipa-utils.c (ipa_merge_profiles): Merge speculative edges.
- 2015-01-19 Jan Hubicka <hubicka@ucw.cz>
- PR lto/45375
- * ipa-inline.c: Include lto-streamer.h
- (report_inline_failed_reason): Output source file differences and
- flags on optimization/target node mismatch.
- (can_inline_edge_p): Consider caller to be the outer inline function;
- be less restrictive about matching opimize and optimize_size attributes.
- (inline_account_function_p): Break out from ...
- (inline_small_functions): ... here.
- * ipa-inline-transform.c (clone_inlined_nodes): Use
- inline_account_function_p.
- (inline_call): Use optimize attribution; use inline_account_function_p.
- (inline_transform): Use opt_for_fn.
- * ipa-inline.h (inline_account_function_p): Declare.
- 2015-01-20 Jakub Jelinek <jakub@redhat.com>
- PR debug/64663
- * dwarf2out.c (decl_piece_node): Don't put bitsize into
- mode if bitsize <= 0.
- (decl_piece_bitsize, adjust_piece_list, add_var_loc_to_decl,
- dw_sra_loc_expr): Use HOST_WIDE_INT instead of int for bit
- sizes and positions.
- 2015-01-20 Chung-Lin Tang <cltang@codesourcery.com>
- * config/nios2/nios2.c (nios2_asm_file_end): Implement
- TARGET_ASM_FILE_END hook for adding .note.GNU-stack section when
- needed.
- (TARGET_ASM_FILE_END): Define.
- 2015-01-20 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
- * config/arm/arm-protos.h (enum arm_sched_autopref): New constants.
- (struct tune_params): Use the enum.
- * arm.c (arm_*_tune): Update.
- (arm_option_override): Update.
- 2015-01-20 Richard Biener <rguenther@suse.de>
- PR ipa/64684
- * ipa-reference.c (add_static_var): Inline ...
- (analyze_function): ... here after splitting out from ...
- (is_proper_for_analysis): ... this.
- 2015-01-20 Matthew Wahab <matthew.wahab@arm.com>
- PR target/64149
- * config/arm/arm.opt: Remove lra option and arm_lra_flag variablesle.
- * config/arm/arm.h (MODE_BASE_REG_CLASS): Remove use of arm_lra_flagag,
- replace the conditional with it's true branch.
- * config/arm/arm.config (TARGET_LRA_P): Set to hook_bool_void_true.
- (arm_lra_p): Remove.
- 2015-01-20 Eric Botcazou <ebotcazou@adacore.com>
- * config/visium/visium.h (LIB_SPEC): Adjust in default case.
- 2015-01-20 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
- * config/tilegx/mul-tables.c: Move symtab.h include after
- coretypes.h include.
- * config/tilepro/mul-tables.c: Add includes hashtab.h, hash-set.h,
- vec.h, machmode.h, tm.h, hard-reg-set.h, input.h, function.h, rtl.h,
- flags.h, statistics.h, double-int.h, real.h, fixed-value.h, alias.h,
- wide-int.h, inchash.h, tree.h, insn-config.h, expmed.h, dojump.h,
- explow.h, calls.h, emit-rtl.h, varasm.h, stmt.h.
- 2015-01-20 Igor Zamyatin <igor.zamyatin@intel.com>
- PR bootstrap/64676
- Revert:
- 2015-01-19 Igor Zamyatin <igor.zamyatin@intel.com>
- PR rtl-optimization/64081
- * loop-iv.c (def_pred_latch_p): New function.
- (latch_dominating_def): Allow specific cases with non-single
- definitions.
- (iv_get_reaching_def): Likewise.
- (check_complex_exit_p): New function.
- (check_simple_exit): Use check_complex_exit_p to allow certain cases
- with exits not executing on any iteration.
- 2015-01-19 Jan Hubicka <hubicka@ucw.cz>
- PR lto/45375
- * i386.c (ix86_option_override_internal): Use ix86_tune_cost
- to set branch cost.
- 2015-01-19 Jan Hubicka <hubicka@ucw.cz>
- PR lto/45375
- * i386.c (gate): Check flag_expensive_optimizations and
- optimize_size.
- (ix86_option_override_internal): Drop optimize_size condition
- on MASK_ACCUMULATE_OUTGOING_ARGS, MASK_VZEROUPPER,
- MASK_AVX256_SPLIT_UNALIGNED_LOAD, MASK_AVX256_SPLIT_UNALIGNED_STORE,
- MASK_PREFER_AVX128.
- (ix86_avx256_split_vector_move_misalign,
- ix86_avx256_split_vector_move_misalign): Check optimize_insn_for_speed.
- * sse.md (all uses of TARGET_PREFER_AVX128): Add
- optimize_insn_for_speed_p check.
- 2015-01-19 Matthew Fortune <matthew.fortune@imgtec.com>
- * config/mips/mips.h (FP_ASM_SPEC): New define.
- (ASM_SPEC): Remove floating-point options and use FP_ASM_SPEC
- instead.
- 2015-01-19 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/53988
- * config/sh/sh-protos.h (sh_find_set_of_reg): Make sure not to return
- nullptr for insn when reaching the first insn.
- * config/sh/sh.c (sh_unspec_insn_p): Rewrite using subrtx_iterator.
- (sh_insn_operands_modified_between_p): Add nullptr check.
- (sh_find_extending_set_of_reg): Fix log message. Don't accept
- sign extending mem load if the insn contains any UNSPEC or
- UNSPEC_VOLATILE.
- 2015-01-19 Jan Hubicka <hubicka@ucw.cz>
- * params.def (inline-unit-growth): Drop to 15%.
- * invoke.texi (inline-unit-growth): Document change.
- 2015-01-19 Martin Liska <mliska@suse.cz>
- PR ipa/64668
- * ipa-icf-gimple.c (func_checker::compare_operand): Call proper
- function for second argument of OBJ_TYPE_REF.
- 2015-01-19 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64218
- * ipa-inline.c (want_inline_function_to_all_callers_p): Fix check
- whether function is an alias.
- 2015-01-19 Jan Hubicka <hubicka@ucw.cz>
- * ipa-devirt.c (ipa_devirt): Drop polymorphic call info in hopeless
- cases.
- 2015-01-19 Vladimir Makarov <vmakarov@redhat.com>
- PR rtl-optimization/64671
- * lra-remat.c (operand_to_remat): Don't consider jump and call
- insns.
- 2015-01-19 David Edelsohn <dje.gcc@gmail.com>
- PR target/59828
- * config/rs6000/default64.h: Include rs6000-cpus.def.
- (TARGET_DEFAULT) [LITTLE_ENDIAN]: Use ISA 2.7 (POWER8).
- (TARGET_DEFAULT) [BIG_ENDIAN]: Use POWER4.
- * config/rs6000/driver-rs6000.c (detect_processor_aix): Add POWER7
- and POWER8.
- * config/rs6000/linux64.h (PROCESSOR_DEFAULT64): Always default to
- POWER8.
- * config/rs6000/rs6000.c (rs6000_file_start): Emit .machine
- pseudo-op to specify assembler dialect.
- 2015-01-19 Martin Liska <mliska@suse.cz>
- PR ipa/64664
- * ipa-icf.c (sem_item_optimizer::filter_removed_items):
- Handle safe potentially removed nodes during filtering.
- 2015-01-19 Martin Liska <mliska@suse.cz>
- * doc/extend.texi (no_icf): Add new attribute description.
- * ipa-icf.c (sem_item_optimizer::merge_classes): Handle cases
- where the pass attempts to merge a function with no_icf attribute.
- 2015-01-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
- PR target/64532
- * doc/md.texi (ARM Options): Document register constraints.
- 2015-01-19 Jiong Wang <jiong.wang@arm.com>
- Andrew Pinski <apinski@cavium.com>
- PR target/64304
- * config/aarch64/aarch64.md (define_insn "*ashl<mode>3_insn"): Deleted.
- (ashl<mode>3): Don't expand if operands[2] is not constant.
- 2015-01-19 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- PR target/64448
- * config/aarch64/aarch64-simd.md (aarch64_simd_bsl<mode>_internal):
- Match xor-and-xor RTL pattern.
- 2015-01-19 Igor Zamyatin <igor.zamyatin@intel.com>
- PR rtl-optimization/64081
- * loop-iv.c (def_pred_latch_p): New function.
- (latch_dominating_def): Allow specific cases with non-single
- definitions.
- (iv_get_reaching_def): Likewise.
- (check_complex_exit_p): New function.
- (check_simple_exit): Use check_complex_exit_p to allow certain cases
- with exits not executing on any iteration.
- 2015-01-19 Jakub Jelinek <jakub@redhat.com>
- * common.opt (fgraphite): Fix a typo.
- 2015-01-19 Felix Yang <felix.yang@huawei.com>
- * config/aarch64/aarch64-simd.md (aarch64_<maxmin_uns>p<mode>): New
- pattern.
- * config/aarch64/aarch64-simd-builtins.def (smaxp, sminp, umaxp,
- uminp, smax_nanp, smin_nanp): New builtins.
- * config/aarch64/arm_neon.h (vpmax_s8, vpmax_s16, vpmax_s32,
- vpmax_u8, vpmax_u16, vpmax_u32, vpmaxq_s8, vpmaxq_s16, vpmaxq_s32,
- vpmaxq_u8, vpmaxq_u16, vpmaxq_u32, vpmax_f32, vpmaxq_f32, vpmaxq_f64,
- vpmaxqd_f64, vpmaxs_f32, vpmaxnm_f32, vpmaxnmq_f32, vpmaxnmq_f64,
- vpmaxnmqd_f64, vpmaxnms_f32, vpmin_s8, vpmin_s16, vpmin_s32, vpmin_u8,
- vpmin_u16, vpmin_u32, vpminq_s8, vpminq_s16, vpminq_s32, vpminq_u8,
- vpminq_u16, vpminq_u32, vpmin_f32, vpminq_f32, vpminq_f64, vpminqd_f64,
- vpmins_f32, vpminnm_f32, vpminnmq_f32, vpminnmq_f64, vpminnmqd_f64,
- vpminnms_f32): Rewrite using builtin functions.
- 2015-01-19 Thomas Schwinge <thomas@codesourcery.com>
- PR libgomp/64625
- * omp-low.c (offload_symbol_decl): Remove variable.
- (get_offload_symbol_decl): Remove function.
- (expand_omp_target): For BUILT_IN_GOMP_TARGET,
- BUILT_IN_GOMP_TARGET_DATA, BUILT_IN_GOMP_TARGET_UPDATE pass NULL
- instead of &__OFFLOAD_TABLE__, for BUILT_IN_GOACC_DATA_START,
- BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_PARALLEL,
- BUILT_IN_GOACC_UPDATE don't pass it at all.
- 2015-01-19 Ilya Enkovich <ilya.enkovich@intel.com>
- * tree-sra.c (some_callers_have_mismatched_arguments_p): Allow thunk
- callers.
- 2015-01-19 Ilya Enkovich <ilya.enkovich@intel.com>
- * ipa-chkp.c (chkp_produce_thunks): Add early param
- to split thunks production into two passes. Keep
- 'always_inline' function bodies after the first pass.
- (pass_data_ipa_chkp_early_produce_thunks): New.
- (pass_ipa_chkp_early_produce_thunks): New.
- (pass_ipa_chkp_produce_thunks::execute): Adjust to new
- chkp_produce_thunks signature.
- (make_pass_ipa_chkp_early_produce_thunks): New.
- * passes.def (pass_ipa_chkp_early_produce_thunks): New.
- (pass_ipa_chkp_produce_thunks): Move after local optimizations.
- * tree-pass.h (make_pass_ipa_chkp_early_produce_thunks): New.
- 2015-01-18 Jan Hubicka <hubicka@ucw.cz>
- * cgraph.c (cgraph_node::dump): Dump profile flags.
- 2015-01-18 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/64652
- * config/sh/sh.md (udivsi3_i4, divsi3_i4): Make use of sfunc address
- reg appear first in the parallel.
- 2015-01-18 Jan Hubicka <hubicka@ucw.cz>
- * ipa-reference.c (set_reference_optimization_summary,
- ipa_reference_get_not_written_global): Do nothing if ipa-reference is
- disabled.
- (ignore_module_statics): New static var.
- (propagate_bits): If ipa-reference is disabled, do not look into local
- properties.
- (analyze_function): Disable analysis when ipa_reference is disabled.
- (generate_summary): Do not dump when reference is disabled;
- collect vars accessed from functions with ipa-reference disabled.
- (get_read_write_all_from_node): When ipa-reference is disabled, use the
- node flags.
- (gate): Enable for LTO.
- (ignore_edge_p): New function.
- (propagate): Skip functions w/o ipa-reference analysis.
- * optc-save-gen.awk: Handle optimize_debug correctly.
- * opth-gen.awk: Likewise.
- * common.opt (fauto-inc-dec, fdelete-dead-exceptions, ffunction-cse,
- fgraphite, fstrict-volatile-bitfields, fira-algorithm, fira-region,
- fira-share-save-slots, fira-share-spill-slots,
- fmodulo-sched-allow-regmoves, fpartial-inlining,
- sched-stalled-insns, fsched-stalled-insns-dep, fstrict-overflow,
- ftracer, ftree-parallelize-loops, fassociative-math,
- freciprocal-math, fvect-cost-model, fsimd-cost-model): Mark as
- Optimization
- (fauto-profile, fcommon, fdata-sections, fipa-icf-variables,
- ftoplevel-reorder, funit-at-a-time, fwhole-program): Do not mark as
- Optimization.
- * ipa-icf.c (gate, sem_item_optimizer::filter_removed_items):
- Fix for IPA.
- 2015-01-18 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64378
- * ipa-prop.c (try_make_edge_direct_virtual_call): Clear speculative
- flag correctly.
- * ipa-cp.c (ipa_get_indirect_edge_target_1): Handle speculation.
- 2015-01-18 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-funroll-loops], [-funroll-all-loops]):
- Remove duplicate option listings.
- 2015-01-18 Felix Yang <felix.yang@huawei.com>
- * auto-profile.c (afdo_find_equiv_class): Remove unnecessary test.
- (autofdo_source_profile::get_callsite_total_count,
- function_instance::get_function_instance_by_decl,
- string_table::get_index, string_table::get_index_by_decl,
- afdo_vpt_for_early_inline, afdo_callsite_hot_enough_for_early_inline):
- Fix comment typos. Reformatting and minor code rearrangement.
- 2015-01-17 Segher Boessenkool <segher@kernel.crashing.org>
- * config/rs6000/rs6000.md (probe_stack): Delete.
- (probe_stack_address): New.
- 2015-01-17 Segher Boessenkool <segher@kernel.crashing.org>
- * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Use TARGET_32BIT
- to test for 32-bit ABIs, not !TARGET_POWERPC64.
- 2015-01-17 Segher Boessenkool <segher@kernel.crashing.org>
- * config/rs6000/rs6000.c (rs6000_parallel_return): New function.
- (rs6000_function_value): Use it. Handle SCmode and TCmode as well,
- for TARGET_32BIT && TARGET_POWERPC64. Fix another BITS_PER_WORD
- snafu.
- (rs6000_libcall_value): Use the new function.
- 2015-01-17 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-ftracer]): Remove duplicate option listing.
- 2015-01-17 Eric Botcazou <ebotcazou@adacore.com>
- * reorg.c (fill_simple_delay_slots): If TARGET_FLAGS_REGNUM is valid,
- implement a more precise life analysis for it during backward scan.
- 2015-01-17 Jan Kratochvil <jan.kratochvil@redhat.com>
- * dwarf2out.c (gen_producer_string): Ignore also OPT_fpreprocessed.
- 2015-01-17 Bernd Schmidt <bernds@codesourcery.com>
- PR rtl-optimization/52773
- * calls.c (emit_library_call_value): When pushing arguments use
- stack_pointer_rtx rather than virtual_outgoing_args_rtx in
- CALL_INSN_FUNCTION_USAGE. Only emit one of use of the magic
- stack pointer reference into CALL_INSN_FUNCTION_USAGE.
- 2015-01-17 Jeff Law <law@redhat.com>
- PR rtl-optimization/32790
- * reginfo.c (reg_scan_mark_refs): Look for ZERO_EXTRACT,
- not ZERO_EXTEND in SET_DESTs.
- 2015-01-17 Alan Modra <amodra@gmail.com>
- * cprop.c (do_local_cprop): Revert last change.
- 2015-01-16 DJ Delorie <dj@redhat.com>
- Nick Clifton <nickc@redhat.com>
- * config/rl78/rl78-real.md (addqi3_real): Allow volatiles.
- (addhi3_real): Likewise. Fix [HL+0] syntax.
- (subqi3_real): Likewise.
- (subhi3_real): Likewise.
- (cbranchqi4_real): Likewise. Allow saddr,#imm.
- (cbranchhi4_real): Likewise.
- (cbranchhi4_real_inverted): Likewise.
- (cbranchsi4_real_lt): Likewise.
- (cbranchsi4_real_ge): Likewise.
- (cbranchsi4_real_ge): Likewise.
- * config/rl78/rl78-virt.md (add<mode>3_virt): Likewise.
- (sub<mode>3_virt): Likewise.
- (cbranchqi4_virt): Likewise.
- (cbranchhi4_virt): Likewise.
- * config/rl78/rl78.c (rl78_print_operand_1): 'p' modifier means
- always use '[reg+imm]' even when imm is zero.
- * config/rl78/predicates.md (rl78_volatile_memory_operand): New.
- (rl78_general_operand): New.
- (rl78_nonimmediate_operand): New.
- (rl78_nonfar_operand): Use them.
- (rl78_nonfar_nonimm_operand): Likewise.
- (rl78_stack_based_mem): Fix.
- * config/rl78/constraints.md (Ibqi): New.
- (IBqi): New.
- (Wsa): New.
- (Wsf): New.
- (Cs1): Fix.
- * config/rl78/rl78-expand.md (andqi3): Accept volatiles.
- (iorqi3): Likewise.
- (xorqi3): Likewise.
- * config/rl78/rl78-protos.h (rl78_sfr_p): New.
- * config/rl78/constrains (Qs8): New constraint.
- * config/rl78/rl78.c (rl78_flags_already_set): New function.
- * config/rl78/rl78-protos.h (rl78_flags_already_set): New prototype.
- * config/rl78/rl78-real.md (update_Z): New attribute.
- Update patterns to set it.
- (cbranchqi4_real): Call rl78_flags_already_set() to determine if a
- shorter compare and branch sequence can be used.
- (cbranchhi4_real): Likewise.
- (cbranchhi4_real_inverted): Likewise.
- * config/rl78/predicates.md (uword_operand): Allow symbol_refs.
- * config/rl78/rl78-c.c (rl78_register_pragmas): Register __near
- address space.
- * config/rl78/rl78.c (rl78_get_name_encoding): New.
- (rl78_option_override): Allow -mes0 only if C.
- (characterize_address): Support subregs of symbol_refs.
- (rl78_addr_space_address_mode): Move. Add __near.
- (rl78_far_p): Likewise.
- (rl78_addr_space_pointer_mode): Likewise.
- (rl78_as_legitimate_address): Likewise.
- (rl78_addr_space_subset_p): Likewise.
- (rl78_addr_space_convert): Likewise.
- (rl78_print_operand_1): Support 16-bit addressing of 32-bit
- symbols with -mes0.
- (transcode_memory_rtx): Don't copy ES if -mes0. Allow symbol[BC]
- addressing.
- (rl78_alloc_physical_registers_op1): Change logic to prefer
- symbol[BC] addressing.
- (frodata_section): New.
- (rl78_asm_init_sections): Initialize it.
- (rl78_select_section): Put __far readonly symbols in .frodata.
- (rl78_make_type_far): New.
- (rl78_insert_attributes): Force all readonly symbols to be
- __far when -mes0.
- (rl78_asm_out_integer): New.
- * config/rl78/rl78.h (ADDR_SPACE_NEAR): New.
- * config/rl78/rl78.opt (-mes0): New.
- * config/rl78/rl78.h (ASM_OUTPUT_LABELREF): New.
- (ASM_OUTPUT_ALIGNED_DECL_COMMON): New.
- (ASM_OUTPUT_ALIGNED_DECL_LOCAL): New.
- * config/rl78/rl78-protos.h (rl78_output_labelref): New.
- (rl78_saddr_p): New.
- (rl78_output_aligned_common): New.
- * config/rl78/rl78.c (rl78_output_symbol_ref): Strip encodings.
- (rl78_handle_saddr_attribute): New.
- (rl78_handle_naked_attribute): New.
- (rl78_attribute_table): Add saddr.
- (rl78_print_operand_1): Don't print '!' on saddr operands.
- (rl78_print_operand_1): Strip encodings.
- (rl78_sfr_p): New.
- (rl78_strip_name_encoding): New.
- (rl78_attrlist_to_encoding): New.
- (rl78_encode_section_info): New.
- (rl78_asm_init_sections): New.
- (rl78_select_section): New.
- (rl78_output_labelref): New.
- (rl78_output_aligned_common): New.
- (rl78_asm_out_integer): New.
- (rl78_asm_ctor_dtor): New.
- (rl78_asm_constructor): New.
- (rl78_asm_destructor): New.
- * config/rl78/rl78-real.md (movqi_es): Rename to movqi_to_es.
- * config/rl78/rl78.c (rl78_expand_epilogue): Update.
- (transcode_memory_rtx): Update.
- (rl78_expand_epilogue): Use A_REG instead of 0.
- 2015-01-17 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
- * config/arm/arm-protos.h (struct tune_params): New field
- sched_autopref_queue_depth.
- * config/arm/arm.c (sched-int.h): Include header.
- (arm_first_cycle_multipass_dfa_lookahead_guard,)
- (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD): Define hook.
- (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune,)
- (arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune,)
- (arm_cortex_a8_tune, arm_cortex_a7_tune, arm_cortex_a15_tune,)
- (arm_cortex_a53_tune, arm_cortex_a57_tune, arm_xgene1_tune,)
- (arm_cortex_a5_tune, arm_cortex_a9_tune, arm_cortex_a12_tune,)
- (arm_v7m_tune, arm_cortex_m7_tune, arm_v6m_tune, arm_fa726te_tune):
- Specify sched_autopref_queue_depth value. Enabled for A15 and A57.
- * config/arm/t-arm (arm.o): Update.
- * haifa-sched.c (update_insn_after_change): Update.
- (rank_for_schedule): Use auto-prefetcher model, if requested.
- (autopref_multipass_init): New static function.
- (autopref_rank_for_schedule): New rank_for_schedule heuristic.
- (autopref_multipass_dfa_lookahead_guard_started_dump_p): New static
- variable for debug dumps.
- (autopref_multipass_dfa_lookahead_guard_1): New static helper function.
- (autopref_multipass_dfa_lookahead_guard): New global function that
- implements TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD hook.
- (init_h_i_d): Update.
- * params.def (PARAM_SCHED_AUTOPREF_QUEUE_DEPTH): New tuning knob.
- * sched-int.h (enum autopref_multipass_data_status): New const enum.
- (autopref_multipass_data_): Structure for auto-prefetcher data.
- (autopref_multipass_data_def, autopref_multipass_data_t): New typedefs.
- (struct _haifa_insn_data:autopref_multipass_data): New field.
- (INSN_AUTOPREF_MULTIPASS_DATA): New access macro.
- (autopref_multipass_dfa_lookahead_guard): Declare.
- 2015-01-17 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
- * rtlanal.c (get_base_term): Handle SCRATCH.
- 2015-01-17 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
- * config/aarch64/aarch64.c
- (aarch64_sched_first_cycle_multipass_dfa_lookahead): Implement hook.
- (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define.
- * config/arm/arm.c
- (arm_first_cycle_multipass_dfa_lookahead): Implement hook.
- (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define.
- 2015-01-17 Alan Modra <amodra@gmail.com>
- * cprop.c (do_local_cprop): Disallow replacement of fixed
- hard registers.
- 2015-01-16 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- PR target/62066
- * config/arm/arm-builtins.c (arm_expand_neon_args): Call va_end before
- early return 0.
- 2015-01-16 Bernd Edlinger <bernd.edlinger@hotmail.de>
- * sanitizer.def (BUILT_IN_TSAN_VPTR_UPDATE): Fixed parameters.
- * tsan.c (instrument_expr): Fixed parameters of __tsan_vptr_update.
- 2015-01-16 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * config/arm/arm.md: Move comment about splitting Thumb1 patterns to...
- * config/arm/thumb1.md: ... Here.
- 2015-01-16 Segher Boessenkool <segher@kernel.crashing.org>
- * config/rs6000/rs6000.c (rs6000_scalar_mode_supported_p): Disallow
- TImode for TARGET_32BIT.
- 2015-01-16 Segher Boessenkool <segher@kernel.crashing.org>
- * config/rs6000/rs6000.c (TARGET_LIBGCC_CMP_RETURN_MODE,
- TARGET_LIBGCC_SHIFT_COUNT_MODE, TARGET_UNWIND_WORD_MODE): Implement
- as ...
- (rs6000_abi_word_mode): New function.
- 2015-01-16 Segher Boessenkool <segher@kernel.crashing.org>
- * config/rs6000/rs6000.c (rs6000_va_start): Use MIN_UNITS_PER_WORD
- instead of UNITS_PER_WORD to describe the size of stack slots.
- 2015-01-16 Segher Boessenkool <segher@kernel.crashing.org>
- * config/rs6000/rs6000.c (TARGET_PROMOTE_FUNCTION_MODE): Implement
- as rs6000_promote_function_mode. Move comment to there.
- (rs6000_promote_function_mode): New function.
- 2015-01-16 Segher Boessenkool <segher@kernel.crashing.org>
- * config/rs6000/rs6000.h (PROMOTE_MODE): Correct test for when -m32
- -mpowerpc64 is active.
- 2015-01-16 Ilya Enkovich <ilya.enkovich@intel.com>
- PR middle-end/64353
- * tree-cfg.c (pass_data_fixup_cfg): Update SSA for
- virtuals on start.
- 2015-01-16 James Greenhalgh <james.greenhalgh@arm.com>
- * config/arm/cortex-a57.md: Remove duplicate of file accidentally
- introduced in revision 219724.
- 2015-01-16 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
- PR target/64263
- * config/aarch64/aarch64.md (*movsi_aarch64): Don't split if the
- destination is not a GP reg.
- (*movdi_aarch64): Likewise.
- 2015-01-16 David Edelsohn <dje.gcc@gmail.com>
- PR target/64623
- * config/rs6000/default64.h: Revert ISA change.
- 2015-01-16 Richard Biener <rguenther@suse.de>
- PR middle-end/64614
- * tree-ssa-uninit.c: Include tree-cfg.h.
- (MAX_SWITCH_CASES): New define.
- (convert_control_dep_chain_into_preds): Handle switch statements.
- (is_pred_expr_subset_of): Handle x == CST vs. (x & CST) != 0.
- (normalize_one_pred_1): Do not split bit-manipulations.
- Record (x & CST).
- 2015-01-16 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64568
- * tree-ssa-forwprop.c (pass_forwprop::execute): Guard
- complex load rewriting for TARGET_MEM_REFs.
- 2015-01-16 Uros Bizjak <ubizjak@gmail.com>
- * builtins.c (expand_builtin_acc_on_device): Check target for NULL.
- 2015-01-16 Matthew Wahab <matthew.wahab@arm.com>
- PR target/64149
- * config/aarch64/aarch64.opt: Remove lra option and aarch64_lra_flag
- variable.
- * config/aarch64/aarch64.c (TARGET_LRA_P): Set to hook_bool_void_true.
- (aarch64_lra_p): Remove.
- 2015-01-16 Ilya Enkovich <ilya.enkovich@intel.com>
- PR target/64363
- * ipa-chkp.h (chkp_instrumentable_p): New.
- * ipa-chkp.c: Include tree-inline.h.
- (chkp_instrumentable_p): New.
- (chkp_maybe_create_clone): Use chkp_instrumentable_p.
- Fix processing of not instrumentable functions.
- (chkp_versioning): Use chkp_instrumentable_p. Warn about
- not instrumentable functions.
- * tree-chkp.c (chkp_add_bounds_to_call_stmt): Use
- chkp_instrumentable_p.
- * tree-inline.h (copy_forbidden): New.
- * tree-inline.c (copy_forbidden): Not static anymore.
- 2015-01-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
- * optc-save-gen.awk (cl_target_option_print_diff): Mark indent,
- ptr1, ptr2 unused.
- 2015-01-16 Robert Suchanek <robert.suchanek@imgtec.com>
- * lra-constraints.c (curr_insn_transform): Change a reload pseudo of
- type OP_OUT to OP_INOUT.
- 2015-01-16 Robert Suchanek <robert.suchanek@imgtec.com>
- * simplify-rtx.c (simplify_replace_fn_rtx): Simplify (lo_sum
- (high x) y) to y if x and y have the same base.
- 2015-01-16 James Greenhalgh <james.greenhalgh@arm.com>
- * config/arm/cortex-a57.md: New.
- * config/aarch64/aarch64.md: Include it.
- * config/aarch64/aarch64-cores.def (cortex-a57): Tune for it.
- * config/aarch64/aarch64-tune.md: Regenerate.
- 2015-01-16 Zhenqiang Chen <zhenqiang.chen@arm.com>
- PR target/64015
- * ccmp.c (expand_ccmp_next): New function.
- (expand_ccmp_expr_1, expand_ccmp_expr): Handle operand insn sequence
- and compare insn sequence.
- * config/aarch64/aarch64.c (aarch64_code_to_ccmode,
- aarch64_gen_ccmp_first, aarch64_gen_ccmp_next): New functions.
- (TARGET_GEN_CCMP_FIRST, TARGET_GEN_CCMP_NEXT): New MICRO.
- * config/aarch64/aarch64.md (*ccmp_and): Changed to ccmp_and<mode>.
- (*ccmp_ior): Changed to ccmp_ior<mode>.
- (cmp<mode>): New pattern.
- * doc/tm.texi (TARGET_GEN_CCMP_FIRST, TARGET_GEN_CCMP_NEXT): Update
- parameters.
- * target.def (gen_ccmp_first, gen_ccmp_next): Update parameters.
- 2015-01-16 Ilya Tocar <ilya.tocar@intel.com>
- * config/i386/avx2intrin.h (_mm256_bslli_epi128,
- _mm256_bsrli_epi128): New.
- * config/i386/emmintrin.h (_mm_bsrli_si128, _mm_bslli_si128): Ditto.
- 2015-01-15 Jiong Wang <jiong.wang@arm.com>
- * expmed.c (store_bit_field_using_insv): Improve warning message.
- Use %wu instead of HOST_WIDE_INT_PRINT_UNSIGNED.
- 2015-01-15 Jiong Wang <jiong.wang@arm.com>
- PR rtl-optimization/64011
- * expmed.c (store_bit_field_using_insv): Warn and truncate bitsize when
- there is partial overflow.
- 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com>
- * config/nds32/nds32-protos.h (nds32_expand_epilogue): Change
- prototype.
- (nds32_expand_epilogue_v3pop): Likewise.
- * config/nds32/nds32.md (sibcall): Define this for sibling call
- optimization.
- (sibcall_register): Likewise.
- (sibcall_immediate): Likewise.
- (sibcall_value): Likewise.
- (sibcall_value_register): Likewise.
- (sibcall_value_immediate): Likewise.
- (sibcall_epilogue): Likewise.
- (epilogue): Pass false to indicate this is not a sibcall epilogue.
- * config/nds32/nds32.c (nds32_expand_epilogue): Consider sibcall case.
- (nds32_expand_epilogue_v3pop): Likewise.
- 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com>
- * config/nds32/nds32-protos.h (nds32_can_use_return_insn): New.
- * config/nds32/nds32.md (unspec_volatile_func_return): Remove.
- (return_internal): New.
- (return): Define this named pattern.
- (simple_return): Define this named pattern.
- * config/nds32/nds32.c (nds32_expand_epilogue): Emit return_internal
- pattern instead of unspec_volatile_func_return.
- (nds32_expand_epilogue_v3pop): Likewise.
- (nds32_can_use_return_insn): New function.
- 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com>
- * config/nds32/constants.md (UNSPEC_VOLATILE_POP25_RETURN): New.
- * config/nds32/nds32.md (pop25return): New.
- * config/nds32/nds32.c (nds32_expand_epilogue_v3pop): Emit
- pop25return pattern.
- 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com>
- * doc/invoke.texi (NDS32 Options): Remove -mforce-fp-as-gp,
- -mforbid-fp-as-gp, and -mex9 options.
- 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com>
- * doc/invoke.texi (NDS32 Options): Add -mcmodel= option and
- remove -mgp-direct option.
- 2015-01-15 Jan Hubicka <hubicka@ucw.cz>
- * doc/invoke.texi (--param early-inlining-insns): Update default value.
- * params.def (PARAM_EARLY_INLINING_INSNS): Set to 14.
- 2015-01-15 Jan Hubicka <hubicka@ucw.cz>
- * ipa-inline.c (inline_small_functions): Work around hints
- cache issue.
- 2015-01-15 Sandra Loosemore <sandra@codesourcery.com>
- PR target/59710
- * doc/invoke.texi (Option Summary): Document new Nios II
- -mgpopt= syntax.
- (Nios II Options): Likewise.
- * config/nios2/nios2.opt: Add -mgpopt= option support.
- Modify existing -mgpopt and -mno-gpopt options to be aliases.
- * config/nios2/nios2-opts.h (enum nios2_gpopt_type): New.
- * config/nios2/nios2.c (nios2_option_override): Adjust
- -mgpopt defaulting.
- (nios2_in_small_data_p): Return true for explicit small data
- sections even with -G0.
- (nios2_symbol_ref_in_small_data_p): Adjust to handle new -mgpopt=
- option choices.
- 2015-01-15 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64612
- * ipa-inline-transform.c (can_remove_node_now_p): Fix handling
- of comdat locals.
- (inline_call): Fix removal of aliases.
- 2015-01-15 Jakub Jelinek <jakub@redhat.com>
- * flag-types.h (enum sanitize_code): Add SANITIZE_VPTR,
- include SANITIZE_VPTR in SANITIZE_UNDEFINED.
- * opts.c (common_handle_option): Add -fsanitize=vptr.
- * sanitizer.def (BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS,
- BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS_ABORT): New.
- * ubsan.h (enum ubsan_null_ckind): Add UBSAN_DOWNCAST_POINTER,
- UBSAN_DOWNCAST_REFERENCE, UBSAN_UPCAST and UBSAN_CAST_TO_VBASE.
- (ubsan_expand_vptr_ifn): New prototype.
- * internal-fn.c (expand_ANNOTATE, expand_GOMP_SIMD_LANE,
- expand_GOMP_SIMD_VF, expand_GOMP_SIMD_LAST_LANE, expand_UBSAN_NULL,
- expand_UBSAN_BOUNDS, expand_UBSAN_OBJECT_SIZE, expand_ASAN_CHECK,
- expand_LOOP_VECTORIZED): Make argument nameless, remove
- ATTRIBUTE_UNUSED.
- (expand_UBSAN_VPTR): New function.
- * internal-fn.def (UBSAN_NULL, ASAN_CHECK): Use R instead of W
- in fn spec.
- (UBSAN_VPTR): New internal function.
- * sanopt.c (tree_map_traits): Renamed to ...
- (sanopt_tree_map_traits): ... this.
- (sanopt_tree_triplet, sanopt_tree_triplet_map_traits): New classes.
- (sanopt_ctx): Adjust asan_check_map type for tree_map_traits
- to sanopt_tree_map_traits renaming. Add vptr_check_map field.
- (maybe_optimize_ubsan_vptr_ifn): New function.
- (sanopt_optimize_walker): Handle IFN_UBSAN_VPTR.
- (pass_sanopt::execute): Likewise. Call sanopt_optimize even for
- -fsanitize=vptr.
- * tree-ssa-alias.c (call_may_clobber_ref_p_1): Handle certain
- internal calls like pure functions for aliasing, even when they
- have other side-effects that prevent making them ECF_PURE.
- * ubsan.c (ubsan_vptr_type_cache_decl): New variable.
- (ubsan_expand_vptr_ifn): New function.
- 2015-01-15 Vladimir Makarov <vmakarov@redhat.com>
- PR rtl-optimization/64110
- * stmt.c (parse_output_constraint): Process '^' and '$'.
- (parse_input_constraint): Ditto.
- * lra-constraints.c (process_alt_operands): Process the new
- constraints.
- * ira-costs.c (record_reg_classes): Process the new constraint
- '^'.
- * genoutput.c (indep_constraints): Add '^' and '$'.
- * config/i386/sse.md (*vec_dup<mode>): Use '$' instead of '!'.
- * doc/md.texi: Add description of the new constraints.
- 2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
- Bernd Schmidt <bernds@codesourcery.com>
- Cesar Philippidis <cesar@codesourcery.com>
- James Norris <jnorris@codesourcery.com>
- Tom de Vries <tom@codesourcery.com>
- Ilmir Usmanov <i.usmanov@samsung.com>
- Dmitry Bocharnikov <dmitry.b@samsung.com>
- Evgeny Gavrin <e.gavrin@samsung.com>
- Jakub Jelinek <jakub@redhat.com>
- * builtin-types.def (BT_FN_VOID_INT_INT_VAR)
- (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
- (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
- New function types.
- * builtins.c: Include "gomp-constants.h".
- (expand_builtin_acc_on_device): New function.
- (expand_builtin, is_inexpensive_builtin): Handle
- BUILT_IN_ACC_ON_DEVICE.
- * builtins.def (DEF_GOACC_BUILTIN, DEF_GOACC_BUILTIN_COMPILER):
- New macros.
- * cgraph.c (cgraph_node::create): Consider flag_openacc next to
- flag_openmp.
- * config.gcc <nvptx-*> (tm_file): Add nvptx/offload.h.
- <*-intelmic-* | *-intelmicemul-*> (tm_file): Add
- i386/intelmic-offload.h.
- * gcc.c (LINK_COMMAND_SPEC, GOMP_SELF_SPECS): For -fopenacc, link
- to libgomp and its dependencies.
- * config/arc/arc.h (LINK_COMMAND_SPEC): Likewise.
- * config/darwin.h (LINK_COMMAND_SPEC_A): Likewise.
- * config/i386/mingw32.h (GOMP_SELF_SPECS): Likewise.
- * config/ia64/hpux.h (LIB_SPEC): Likewise.
- * config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
- * config/pa/pa64-hpux.h (LIB_SPEC): Likewise.
- * doc/generic.texi: Update for OpenACC changes.
- * doc/gimple.texi: Likewise.
- * doc/invoke.texi: Likewise.
- * doc/sourcebuild.texi: Likewise.
- * gimple-pretty-print.c (dump_gimple_omp_for): Handle
- GF_OMP_FOR_KIND_OACC_LOOP.
- (dump_gimple_omp_target): Handle GF_OMP_TARGET_KIND_OACC_KERNELS,
- GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_DATA,
- GF_OMP_TARGET_KIND_OACC_UPDATE,
- GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA.
- Dump more data.
- * gimple.c: Update comments for OpenACC changes.
- * gimple.def: Likewise.
- * gimple.h: Likewise.
- (enum gf_mask): Add GF_OMP_FOR_KIND_OACC_LOOP,
- GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_KERNELS,
- GF_OMP_TARGET_KIND_OACC_DATA, GF_OMP_TARGET_KIND_OACC_UPDATE,
- GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA.
- (gimple_omp_for_cond, gimple_omp_for_set_cond): Sort in the
- appropriate place.
- (is_gimple_omp_oacc, is_gimple_omp_offloaded): New functions.
- * gimplify.c: Include "gomp-constants.h".
- Update comments for OpenACC changes.
- (is_gimple_stmt): Handle OACC_PARALLEL, OACC_KERNELS, OACC_DATA,
- OACC_HOST_DATA, OACC_DECLARE, OACC_UPDATE, OACC_ENTER_DATA,
- OACC_EXIT_DATA, OACC_CACHE, OACC_LOOP.
- (gimplify_scan_omp_clauses, gimplify_adjust_omp_clauses): Handle
- OMP_CLAUSE__CACHE_, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT,
- OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS,
- OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_GANG, OMP_CLAUSE_WORKER,
- OMP_CLAUSE_VECTOR, OMP_CLAUSE_DEVICE_RESIDENT,
- OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE_INDEPENDENT, OMP_CLAUSE_AUTO,
- OMP_CLAUSE_SEQ.
- (gimplify_adjust_omp_clauses_1, gimplify_adjust_omp_clauses): Use
- GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. Use
- OMP_CLAUSE_SET_MAP_KIND.
- (gimplify_oacc_cache): New function.
- (gimplify_omp_for): Handle OACC_LOOP.
- (gimplify_omp_workshare): Handle OACC_KERNELS, OACC_PARALLEL,
- OACC_DATA.
- (gimplify_omp_target_update): Handle OACC_ENTER_DATA,
- OACC_EXIT_DATA, OACC_UPDATE.
- (gimplify_expr): Handle OACC_LOOP, OACC_CACHE, OACC_HOST_DATA,
- OACC_DECLARE, OACC_KERNELS, OACC_PARALLEL, OACC_DATA,
- OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_UPDATE.
- (gimplify_body): Consider flag_openacc next to flag_openmp.
- * lto-streamer-out.c: Include "gomp-constants.h".
- * omp-builtins.def (BUILT_IN_ACC_GET_DEVICE_TYPE)
- (BUILT_IN_GOACC_DATA_START, BUILT_IN_GOACC_DATA_END)
- (BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_PARALLEL)
- (BUILT_IN_GOACC_UPDATE, BUILT_IN_GOACC_WAIT)
- (BUILT_IN_GOACC_GET_THREAD_NUM, BUILT_IN_GOACC_GET_NUM_THREADS)
- (BUILT_IN_ACC_ON_DEVICE): New builtins.
- * omp-low.c: Include "gomp-constants.h".
- Update comments for OpenACC changes.
- (struct omp_context): Add reduction_map, gwv_below, gwv_this
- members.
- (extract_omp_for_data, use_pointer_for_field, install_var_field)
- (new_omp_context, delete_omp_context, scan_sharing_clauses)
- (create_omp_child_function, scan_omp_for, scan_omp_target)
- (check_omp_nesting_restrictions, lower_reduction_clauses)
- (build_omp_regions_1, diagnose_sb_0, make_gimple_omp_edges):
- Update for OpenACC changes.
- (scan_sharing_clauses): Handle OMP_CLAUSE_NUM_GANGS:
- OMP_CLAUSE_NUM_WORKERS: OMP_CLAUSE_VECTOR_LENGTH,
- OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT, OMP_CLAUSE_GANG,
- OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, OMP_CLAUSE_DEVICE_RESIDENT,
- OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE__CACHE_, OMP_CLAUSE_INDEPENDENT,
- OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ. Use GOMP_MAP_* instead of
- OMP_CLAUSE_MAP_*.
- (expand_omp_for_static_nochunk, expand_omp_for_static_chunk):
- Handle GF_OMP_FOR_KIND_OACC_LOOP.
- (expand_omp_target, lower_omp_target): Handle
- GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_KERNELS,
- GF_OMP_TARGET_KIND_OACC_UPDATE,
- GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA,
- GF_OMP_TARGET_KIND_OACC_DATA.
- (pass_expand_omp::execute, execute_lower_omp)
- (pass_diagnose_omp_blocks::gate): Consider flag_openacc next to
- flag_openmp.
- (offload_symbol_decl): New variable.
- (oacc_get_reduction_array_id, oacc_max_threads)
- (get_offload_symbol_decl, get_base_type, lookup_oacc_reduction)
- (maybe_lookup_oacc_reduction, enclosing_target_ctx)
- (oacc_loop_or_target_p, oacc_lower_reduction_var_helper)
- (oacc_gimple_assign, oacc_initialize_reduction_data)
- (oacc_finalize_reduction_data, oacc_process_reduction_data): New
- functions.
- (is_targetreg_ctx): Remove function.
- * tree-core.h (enum omp_clause_code): Add OMP_CLAUSE__CACHE_,
- OMP_CLAUSE_DEVICE_RESIDENT, OMP_CLAUSE_USE_DEVICE,
- OMP_CLAUSE_GANG, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT,
- OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ, OMP_CLAUSE_INDEPENDENT,
- OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, OMP_CLAUSE_NUM_GANGS,
- OMP_CLAUSE_NUM_WORKERS, OMP_CLAUSE_VECTOR_LENGTH.
- * tree.c (omp_clause_code_name, walk_tree_1): Update accordingly.
- * tree.h (OMP_CLAUSE_GANG_EXPR, OMP_CLAUSE_GANG_STATIC_EXPR)
- (OMP_CLAUSE_ASYNC_EXPR, OMP_CLAUSE_WAIT_EXPR)
- (OMP_CLAUSE_VECTOR_EXPR, OMP_CLAUSE_WORKER_EXPR)
- (OMP_CLAUSE_NUM_GANGS_EXPR, OMP_CLAUSE_NUM_WORKERS_EXPR)
- (OMP_CLAUSE_VECTOR_LENGTH_EXPR): New macros.
- * tree-core.h: Update comments for OpenACC changes.
- (enum omp_clause_map_kind): Remove.
- (struct tree_omp_clause): Change type of map_kind member from enum
- omp_clause_map_kind to unsigned char.
- * tree-inline.c: Update comments for OpenACC changes.
- * tree-nested.c: Likewise. Include "gomp-constants.h".
- (convert_nonlocal_reference_stmt, convert_local_reference_stmt)
- (convert_tramp_reference_stmt, convert_gimple_call): Update for
- OpenACC changes. Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. Use
- OMP_CLAUSE_SET_MAP_KIND.
- * tree-pretty-print.c: Include "gomp-constants.h".
- (dump_omp_clause): Handle OMP_CLAUSE_DEVICE_RESIDENT,
- OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE__CACHE_, OMP_CLAUSE_GANG,
- OMP_CLAUSE_ASYNC, OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ,
- OMP_CLAUSE_WAIT, OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR,
- OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS,
- OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_INDEPENDENT. Use GOMP_MAP_*
- instead of OMP_CLAUSE_MAP_*.
- (dump_generic_node): Handle OACC_PARALLEL, OACC_KERNELS,
- OACC_DATA, OACC_HOST_DATA, OACC_DECLARE, OACC_UPDATE,
- OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_CACHE, OACC_LOOP.
- * tree-streamer-in.c: Include "gomp-constants.h".
- (unpack_ts_omp_clause_value_fields) Use GOMP_MAP_* instead of
- OMP_CLAUSE_MAP_*. Use OMP_CLAUSE_SET_MAP_KIND.
- * tree-streamer-out.c: Include "gomp-constants.h".
- (pack_ts_omp_clause_value_fields): Use GOMP_MAP_* instead of
- OMP_CLAUSE_MAP_*.
- * tree.def (OACC_PARALLEL, OACC_KERNELS, OACC_DATA)
- (OACC_HOST_DATA, OACC_LOOP, OACC_CACHE, OACC_DECLARE)
- (OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_UPDATE): New tree codes.
- * tree.c (omp_clause_num_ops): Update accordingly.
- * tree.h (OMP_BODY, OMP_CLAUSES, OMP_LOOP_CHECK, OMP_CLAUSE_SIZE):
- Likewise.
- (OACC_PARALLEL_BODY, OACC_PARALLEL_CLAUSES, OACC_KERNELS_BODY)
- (OACC_KERNELS_CLAUSES, OACC_DATA_BODY, OACC_DATA_CLAUSES)
- (OACC_HOST_DATA_BODY, OACC_HOST_DATA_CLAUSES, OACC_CACHE_CLAUSES)
- (OACC_DECLARE_CLAUSES, OACC_ENTER_DATA_CLAUSES)
- (OACC_EXIT_DATA_CLAUSES, OACC_UPDATE_CLAUSES)
- (OACC_KERNELS_COMBINED, OACC_PARALLEL_COMBINED): New macros.
- * tree.h (OMP_CLAUSE_MAP_KIND): Cast it to enum gomp_map_kind.
- (OMP_CLAUSE_SET_MAP_KIND): New macro.
- * varpool.c (varpool_node::get_create): Consider flag_openacc next
- to flag_openmp.
- * config/i386/intelmic-offload.h: New file.
- * config/nvptx/offload.h: Likewise.
- 2015-01-15 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
- * explow.h: Remove duplicate contents.
- * dojump.h: Likewise.
- 2015-01-15 Richard Earnshaw <rearnsha@arm.com>
- * arm.c (arm_xgene_tune): Add default initializer for instruction
- fusion.
- 2015-01-15 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64068
- PR ipa/64559
- * ipa.c (symbol_table::remove_unreachable_nodes):
- Do not put abstract origins into boundary.
- 2015-01-15 Evgeny Stupachenko <evstupac@gmail.com>
- * config/i386/gnu-user.h (CRT_GET_RFIB_DATA): Remove EBX register usage.
- * config/i386/sysv4.h (CRT_GET_RFIB_DATA): Ditto.
- 2015-01-15 Steve Ellcey <sellcey@mips.com>
- * Makefile.in (PLUGIN_HEADERS): Add dominance.h, cfg.h, cfgrtl.h,
- cfganal.h, cfgbuild.h, cfgcleanup.h, lcm.h, cfgloopmanip.h,
- builtins.def, and chkp-builtins.def.
- 2015-01-15 David Edelsohn <dje.gcc@gmail.com>
- * config/rs6000/default64.h (TARGET_DEFAULT) [LITTLE_ENDIAN]: Use
- ISA 2.7 (POWER8).
- 2015-01-15 Richard Biener <rguenther@suse.de>
- PR tree-optimization/61743
- * tree-ssa-pre.c (insert_into_preds_of_block): Preserve range
- information on PHIs for some simple cases.
- 2015-01-15 Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
- * config/arm/arm.md (generic_sched): Specify xgene1 in 'no' list.
- Include xgene1.md.
- * config/arm/arm.c (arm_issue_rate): Specify 4 for xgene1.
- * config/arm/arm-cores.def (xgene1): New entry.
- * config/arm/arm-tables.opt: Regenerate.
- * config/arm/arm-tune.md: Regenerate.
- * config/arm/bpabi.h (BE8_LINK_SPEC): Specify mcpu=xgene1.
- 2015-01-15 Yuri Rumyantsev <ysrumyan@gmail.com>
- * tree-if-conv.c: Include hash-map.h.
- (aggressive_if_conv): New variable.
- (fold_build_cond_expr): Add simplification of non-zero condition.
- (add_to_dst_predicate_list): Invoke add_to_predicate_list if edge
- destination block is not always executed.
- (if_convertible_phi_p): Fix commentary, allow phi nodes have more
- than two predecessors if AGGRESSIVE_IF_CONV is true.
- (if_convertible_stmt_p): Fix commentary.
- (all_preds_critical_p): New function.
- (has_pred_critical_p): New function.
- (if_convertible_bb_p): Fix commentary, if AGGRESSIVE_IF_CONV is true
- BB can have more than two predecessors and all incoming edges can be
- critical.
- (predicate_bbs): Skip predication for loop exit block, use build2_loc
- to compute predicate for true edge.
- (find_phi_replacement_condition): Delete this function.
- (is_cond_scalar_reduction): Add arguments ARG_0, ARG_1 and EXTENDED.
- Allow interchange PHI arguments if EXTENDED is false.
- Change check that block containing reduction statement candidate
- is predecessor of phi-block since phi may have more than two arguments.
- (phi_args_hash_traits): New helper structure.
- (struct phi_args_hash_traits): New type.
- (phi_args_hash_traits::hash): New function.
- (phi_args_hash_traits::equal_keys): New function.
- (gen_phi_arg_condition): New function.
- (predicate_scalar_phi): Add handling of phi nodes with more than two
- arguments, delete COND and TRUE_BB arguments, insert body of
- find_phi_replacement_condition to predicate ordinary phi nodes.
- (predicate_all_scalar_phis): Skip blocks with the only predecessor,
- delete call of find_phi_replacement_condition and invoke
- predicate_scalar_phi with two arguments.
- (insert_gimplified_predicates): Add assert that non-predicated block
- don't have statements to insert.
- (ifcvt_split_critical_edges): New function.
- (ifcvt_split_def_stmt): Likewise.
- (ifcvt_walk_pattern_tree): Likewise.
- (stmt_is_root_of_bool_pattern): Likewise.
- (ifcvt_repair_bool_pattern): Likewise.
- (ifcvt_local_dce): Likewise.
- (tree_if_conversion): Add initialization of AGGRESSIVE_IF_CONV which
- is copy of inner or outer loop force_vectorize field, invoke
- ifcvt_split_critical_edges, ifcvt_local_dce and
- ifcvt_repair_bool_pattern for aggressive if-conversion.
- 2015-01-15 Philipp Tomsich <ptomsich@theobroma-systems.com>
- * config/aarch64/aarch64.md: Include xgene1.md.
- * config/aarch64/xgene1.md: New file.
- 2015-01-15 Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
- * config/aarch64/aarch64-cores.def (xgene1): Update/add the
- xgene1 (APM XGene-1) core definition.
- * gcc/config/aarch64/aarch64.c: Add cost tables for APM XGene-1
- * config/arm/aarch-cost-tables.h: Add cost tables for APM XGene-1
- * doc/invoke.texi: Document -mcpu=xgene1.
- 2015-01-15 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
- * dojump.h: New header file.
- * explow.h: Likewise.
- * expr.h: Remove includes.
- Move expmed.c prototypes to expmed.h.
- Move dojump.c prototypes to dojump.h.
- Move alias.c prototypes to alias.h.
- Move explow.c prototypes to explow.h.
- Move calls.c prototypes to calls.h.
- Move emit-rtl.c prototypes to emit-rtl.h.
- Move varasm.c prototypes to varasm.h.
- Move stmt.c prototypes to stmt.h.
- (saved_pending_stack_adjust): Move to dojump.h.
- (adjust_address): Move to explow.h.
- (adjust_address_nv): Move to emit-rtl.h.
- (adjust_bitfield_address): Likewise.
- (adjust_bitfield_address_size): Likewise.
- (adjust_bitfield_address_nv): Likewise.
- (adjust_automodify_address_nv): Likewise.
- * explow.c (expr_size): Move to expr.c.
- (int_expr_size): Likewise.
- (tree_expr_size): Likewise.
- Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h statistics.h stmt.h varasm.h.
- * genemit.c (main): Generate includes statistics.h, real.h,
- fixed-value.h, insn-config.h, expmed.h, dojump.h, explow.h, emit-rtl.h,
- stmt.h.
- * genopinit.c (main): Generate includes hashtab.h, hard-reg-set.h,
- function.h, statistics.h, real.h, fixed-value.h, expmed.h, dojump.h,
- explow.h, emit-rtl.h, stmt.h.
- * genoutput.c (main): Generate includes hashtab.h, statistics.h, real.h,
- fixed-value.h, expmed.h, dojump.h, explow.h, emit-rtl.h, stmt.h.
- * genemit.c (open_base_files): Generate includes flags.h, statistics.h,
- real.h, fixed-value.h, tree.h, expmed.h, dojump.h, explow.h, calls.h,
- emit-rtl.h, varasm.h, stmt.h.
- * config/tilepro/gen-mul-tables.cc: Generate includes hashtab.h,
- hash-set.h, vec.h, machmode.h, tm.h, hard-reg-set.h, input.h,
- function.h, rtl.h, flags.h, statistics.h, double-int.h, real.h,
- fixed-value.h, alias.h, wide-int.h, inchash.h, tree.h, insn-config.h,
- expmed.h, dojump.h, explow.h, calls.h, emit-rtl.h, varasm.h, stmt.h.
- * config/tilegx/mul-tables.c: Include alias.h calls.h dojump.h
- double-int.h emit-rtl.h explow.h expmed.h fixed-value.h flags.h
- function.h hard-reg-set.h hash-set.h hashtab.h inchash.h input.h
- insn-config.h machmode.h real.h rtl.h statistics.h stmt.h symtab.h
- tm.h tree.h varasm.h vec.h wide-int.h.
- * rtlhooks.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
- explow.h expmed.h fixed-value.h flags.h function.h hard-reg-set.h
- hash-set.h hashtab.h inchash.h input.h insn-config.h machmode.h
- real.h statistics.h stmt.h tree.h varasm.h vec.h wide-int.h.
- * cfgloopanal.c: Include alias.h calls.h dojump.h double-int.h
- emit-rtl.h explow.h expmed.h fixed-value.h flags.h inchash.h
- insn-config.h real.h statistics.h stmt.h tree.h varasm.h wide-int.h.
- * loop-iv.c: Likewise.
- * lra-assigns.c: Include alias.h calls.h dojump.h double-int.h
- emit-rtl.h explow.h expmed.h fixed-value.h flags.h inchash.h real.h
- statistics.h stmt.h tree.h varasm.h wide-int.h.
- * lra-constraints.c: Likewise.
- * lra-eliminations.c: Likewise.
- * lra-lives.c: Likewise.
- * lra-remat.c: Likewise.
- * bt-load.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
- explow.h expmed.h fixed-value.h inchash.h insn-config.h real.h
- statistics.h stmt.h tree.h varasm.h wide-int.h.
- * hw-doloop.c: Likewise.
- * ira-color.c: Likewise.
- * ira-emit.c: Likewise.
- * loop-doloop.c: Likewise.
- * loop-invariant.c: Likewise.
- * reload.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
- explow.h expmed.h fixed-value.h inchash.h real.h rtl.h
- statistics.h stmt.h tree.h varasm.h wide-int.h.
- * caller-save.c: Include alias.h calls.h dojump.h double-int.h
- emit-rtl.h explow.h expmed.h fixed-value.h inchash.h real.h
- statistics.h stmt.h tree.h varasm.h wide-int.h.
- * combine-stack-adj.c: Likewise.
- * cse.c: Likewise.
- * ddg.c: Likewise.
- * ifcvt.c: Likewise.
- * ira-costs.c: Likewise.
- * jump.c: Likewise.
- * lra-coalesce.c: Likewise.
- * lra-spills.c: Likewise.
- * profile.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
- explow.h expmed.h fixed-value.h insn-config.h real.h statistics.h
- stmt.h varasm.h wide-int.h.
- * lra.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
- explow.h expmed.h fixed-value.h real.h statistics.h stmt.h
- varasm.h.
- * config/sh/sh_treg_combine.cc: Include alias.h calls.h dojump.h
- double-int.h explow.h expmed.h fixed-value.h flags.h real.h
- statistics.h stmt.h varasm.h wide-int.h.
- * reorg.c: Include alias.h calls.h dojump.h double-int.h explow.h
- expmed.h fixed-value.h inchash.h real.h statistics.h stmt.h tree.h
- varasm.h wide-int.h.
- * reload1.c: Include alias.h calls.h dojump.h double-int.h explow.h
- expmed.h fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h.
- * config/tilegx/tilegx.c: Include alias.h dojump.h double-int.h
- emit-rtl.h explow.h expmed.h fixed-value.h flags.h real.h
- statistics.h stmt.h.
- * config/tilepro/tilepro.c: Likewise.
- * config/mmix/mmix.c: Include alias.h dojump.h double-int.h emit-rtl.h
- explow.h expmed.h fixed-value.h real.h statistics.h stmt.h.
- * config/pdp11/pdp11.c: Likewise.
- * config/xtensa/xtensa.c: Likewise.
- * config/lm32/lm32.c: Include alias.h dojump.h double-int.h emit-rtl.h
- explow.h expmed.h fixed-value.h real.h statistics.h stmt.h
- varasm.h.
- * tree-chkp.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h flags.h function.h hard-reg-set.h hashtab.h
- insn-config.h real.h rtl.h statistics.h stmt.h tm.h.
- * cilk-common.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h flags.h function.h hard-reg-set.h hashtab.h
- insn-config.h real.h rtl.h statistics.h stmt.h tm.h varasm.h.
- * rtl-chkp.c: Likewise.
- * tree-chkp-opt.c: Likewise.
- * config/arm/arm-builtins.c: Include calls.h dojump.h emit-rtl.h
- explow.h expmed.h fixed-value.h flags.h function.h hard-reg-set.h
- hashtab.h insn-config.h real.h statistics.h stmt.h varasm.h.
- * ipa-icf.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h flags.h hashtab.h insn-config.h real.h rtl.h
- statistics.h stmt.h.
- * tree-vect-data-refs.c: Likewise.
- * graphite-sese-to-poly.c: Include calls.h dojump.h emit-rtl.h explow.h
- expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h
- rtl.h statistics.h stmt.h varasm.h.
- * internal-fn.c: Likewise.
- * ipa-icf-gimple.c: Likewise.
- * lto-section-out.c: Likewise.
- * tree-data-ref.c: Likewise.
- * tree-nested.c: Likewise.
- * tree-outof-ssa.c: Likewise.
- * tree-predcom.c: Likewise.
- * tree-pretty-print.c: Likewise.
- * tree-scalar-evolution.c: Likewise.
- * tree-ssa-strlen.c: Likewise.
- * tree-vect-loop.c: Likewise.
- * tree-vect-patterns.c: Likewise.
- * tree-vect-slp.c: Likewise.
- * tree-vect-stmts.c: Likewise.
- * tsan.c: Likewise.
- * targhooks.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h flags.h hashtab.h insn-config.h real.h statistics.h
- stmt.h.
- * config/sh/sh-mem.cc: Include calls.h dojump.h emit-rtl.h explow.h
- expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h
- statistics.h stmt.h varasm.h.
- * loop-unroll.c: Likewise.
- * ubsan.c: Likewise.
- * tree-ssa-loop-prefetch.c: Include calls.h dojump.h emit-rtl.h explow.h
- expmed.h fixed-value.h flags.h hashtab.h real.h rtl.h statistics.h
- stmt.h varasm.h.
- * dse.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h function.h hashtab.h statistics.h stmt.h varasm.h.
- * tree-switch-conversion.c: Include calls.h dojump.h emit-rtl.h explow.h
- expmed.h fixed-value.h hashtab.h insn-config.h real.h rtl.h
- statistics.h stmt.h.
- * generic-match-head.c: Include calls.h dojump.h emit-rtl.h explow.h
- expmed.h fixed-value.h hashtab.h insn-config.h real.h rtl.h
- statistics.h stmt.h varasm.h.
- * gimple-match-head.c: Likewise.
- * lto-cgraph.c: Likewise.
- * lto-section-in.c: Likewise.
- * lto-streamer-in.c: Likewise.
- * lto-streamer-out.c: Likewise.
- * tree-affine.c: Likewise.
- * tree-cfg.c: Likewise.
- * tree-cfgcleanup.c: Likewise.
- * tree-if-conv.c: Likewise.
- * tree-into-ssa.c: Likewise.
- * tree-ssa-alias.c: Likewise.
- * tree-ssa-copyrename.c: Likewise.
- * tree-ssa-dse.c: Likewise.
- * tree-ssa-forwprop.c: Likewise.
- * tree-ssa-live.c: Likewise.
- * tree-ssa-math-opts.c: Likewise.
- * tree-ssa-pre.c: Likewise.
- * tree-ssa-sccvn.c: Likewise.
- * tree-tailcall.c: Likewise.
- * tree-vect-generic.c: Likewise.
- * tree-sra.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h insn-config.h real.h rtl.h stmt.h varasm.h.
- * stor-layout.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h insn-config.h real.h statistics.h stmt.h.
- * varasm.c: Likewise.
- * coverage.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h insn-config.h real.h statistics.h stmt.h
- varasm.h.
- * init-regs.c: Likewise.
- * ira.c: Likewise.
- * omp-low.c: Likewise.
- * stack-ptr-mod.c: Likewise.
- * tree-ssa-reassoc.c: Likewise.
- * tree-complex.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h insn-config.h rtl.h statistics.h stmt.h
- varasm.h.
- * dwarf2cfi.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h insn-config.h statistics.h stmt.h varasm.h.
- * shrink-wrap.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h real.h rtl.h statistics.h stmt.h.
- * recog.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h real.h rtl.h statistics.h stmt.h varasm.h.
- * tree-ssa-phiopt.c: Likewise.
- * config/darwin.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h real.h statistics.h stmt.h.
- * config/fr30/fr30.c: Likewise.
- * config/frv/frv.c: Likewise.
- * expr.c: Likewise.
- * final.c: Likewise.
- * optabs.c: Likewise.
- * passes.c: Likewise.
- * simplify-rtx.c: Likewise.
- * stmt.c: Likewise.
- * toplev.c: Likewise.
- * var-tracking.c: Likewise.
- * gcse.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h.
- * lower-subreg.c: Likewise.
- * postreload-gcse.c: Likewise.
- * ree.c: Likewise.
- * reginfo.c: Likewise.
- * store-motion.c: Likewise.
- * combine.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h real.h stmt.h varasm.h.
- * emit-rtl.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h statistics.h stmt.h.
- * dojump.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h statistics.h stmt.h varasm.h.
- * except.c: Likewise.
- * explow.c: Likewise.
- * tree-dfa.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h insn-config.h real.h rtl.h statistics.h stmt.h
- varasm.h.
- * gimple-fold.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h insn-config.h real.h rtl.h statistics.h varasm.h.
- * tree-ssa-structalias.c: Likewise.
- * cfgexpand.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h insn-config.h real.h statistics.h.
- * calls.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h insn-config.h real.h statistics.h stmt.h.
- * bb-reorder.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h insn-config.h real.h statistics.h stmt.h varasm.h.
- * cfgbuild.c: Likewise.
- * function.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h real.h rtl.h statistics.h stmt.h.
- * cfgrtl.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h.
- * dbxout.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h real.h statistics.h stmt.h.
- * auto-inc-dec.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h real.h statistics.h stmt.h varasm.h.
- * cprop.c: Likewise.
- * modulo-sched.c: Likewise.
- * postreload.c: Likewise.
- * ccmp.c: Include calls.h dojump.h emit-rtl.h explow.h fixed-value.h
- flags.h function.h hard-reg-set.h hashtab.h insn-config.h real.h
- statistics.h stmt.h varasm.h.
- * gimple-ssa-strength-reduction.c: Include calls.h dojump.h emit-rtl.h
- explow.h fixed-value.h flags.h hashtab.h insn-config.h real.h
- rtl.h statistics.h stmt.h varasm.h.
- * tree-ssa-loop-ivopts.c: Include calls.h dojump.h emit-rtl.h explow.h
- fixed-value.h flags.h hashtab.h real.h rtl.h statistics.h stmt.h
- varasm.h.
- * expmed.c: Include calls.h dojump.h emit-rtl.h explow.h fixed-value.h
- function.h hard-reg-set.h hashtab.h real.h statistics.h stmt.h
- varasm.h.
- * target-globals.c: Include calls.h dojump.h emit-rtl.h explow.h
- fixed-value.h function.h hashtab.h real.h statistics.h stmt.h
- varasm.h.
- * tree-ssa-address.c: Include calls.h dojump.h emit-rtl.h explow.h
- fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h.
- * cfgcleanup.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h
- function.h real.h statistics.h stmt.h varasm.h.
- * alias.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h
- insn-config.h real.h statistics.h stmt.h.
- * dwarf2out.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h
- statistics.h stmt.h.
- * config/nvptx/nvptx.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h flags.h hard-reg-set.h insn-config.h real.h
- statistics.h stmt.h varasm.h.
- * gimplify.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h flags.h hashtab.h insn-config.h real.h rtl.h statistics.h.
- * asan.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
- flags.h hashtab.h insn-config.h real.h rtl.h statistics.h stmt.h.
- * ipa-devirt.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h flags.h hashtab.h insn-config.h real.h rtl.h
- statistics.h stmt.h varasm.h.
- * ipa-polymorphic-call.c: Likewise.
- * config/aarch64/aarch64.c: Include dojump.h emit-rtl.h explow.h
- expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h
- statistics.h stmt.h.
- * config/c6x/c6x.c: Likewise.
- * config/aarch64/aarch64-builtins.c: Include dojump.h emit-rtl.h
- explow.h expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h
- statistics.h stmt.h varasm.h.
- * ipa-prop.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h insn-config.h real.h rtl.h statistics.h
- stmt.h varasm.h.
- * ipa-split.c: Likewise.
- * tree-eh.c: Likewise.
- * tree-ssa-dce.c: Likewise.
- * tree-ssa-loop-niter.c: Likewise.
- * tree-vrp.c: Likewise.
- * config/nds32/nds32-cost.c: Include dojump.h emit-rtl.h explow.h
- expmed.h fixed-value.h hashtab.h insn-config.h real.h statistics.h
- stmt.h.
- * config/nds32/nds32-fp-as-gp.c: Likewise.
- * config/nds32/nds32-intrinsic.c: Likewise.
- * config/nds32/nds32-isr.c: Likewise.
- * config/nds32/nds32-md-auxiliary.c: Likewise.
- * config/nds32/nds32-memory-manipulation.c: Likewise.
- * config/nds32/nds32-pipelines-auxiliary.c: Likewise.
- * config/nds32/nds32-predicates.c: Likewise.
- * config/nds32/nds32.c: Likewise.
- * config/cris/cris.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h real.h statistics.h.
- * config/alpha/alpha.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h real.h statistics.h stmt.h.
- * config/arm/arm.c: Likewise.
- * config/avr/avr.c: Likewise.
- * config/bfin/bfin.c: Likewise.
- * config/h8300/h8300.c: Likewise.
- * config/i386/i386.c: Likewise.
- * config/ia64/ia64.c: Likewise.
- * config/iq2000/iq2000.c: Likewise.
- * config/m32c/m32c.c: Likewise.
- * config/m32r/m32r.c: Likewise.
- * config/m68k/m68k.c: Likewise.
- * config/mcore/mcore.c: Likewise.
- * config/mep/mep.c: Likewise.
- * config/mips/mips.c: Likewise.
- * config/mn10300/mn10300.c: Likewise.
- * config/moxie/moxie.c: Likewise.
- * config/pa/pa.c: Likewise.
- * config/rl78/rl78.c: Likewise.
- * config/rx/rx.c: Likewise.
- * config/s390/s390.c: Likewise.
- * config/sh/sh.c: Likewise.
- * config/sparc/sparc.c: Likewise.
- * config/spu/spu.c: Likewise.
- * config/stormy16/stormy16.c: Likewise.
- * config/v850/v850.c: Likewise.
- * config/vax/vax.c: Likewise.
- * config/cr16/cr16.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h.
- * config/msp430/msp430.c: Likewise.
- * predict.c: Likewise.
- * value-prof.c: Likewise.
- * config/epiphany/epiphany.c: Include dojump.h emit-rtl.h explow.h
- expmed.h fixed-value.h hashtab.h statistics.h stmt.h.
- * config/microblaze/microblaze.c: Likewise.
- * config/nios2/nios2.c: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * tree.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
- insn-config.h real.h rtl.h statistics.h stmt.h.
- * cgraph.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
- insn-config.h real.h statistics.h stmt.h.
- * fold-const.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h insn-config.h real.h statistics.h stmt.h varasm.h.
- * tree-inline.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h.
- * builtins.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h real.h statistics.h stmt.h.
- * config/arc/arc.c: Include dojump.h emit-rtl.h explow.h expmed.h
- fixed-value.h statistics.h stmt.h.
- * config/visium/visium.c: Include dojump.h emit-rtl.h explow.h expmed.h
- stmt.h.
- 2015-01-15 Jakub Jelinek <jakub@redhat.com>
- * gengtype.c (create_user_defined_type): Workaround
- -Wmaybe-uninitialized false positives.
- * cse.c (fold_rtx): Likewise.
- * loop-invariant.c (gain_for_invariant): Likewise.
- 2015-01-15 Eric Botcazou <ebotcazou@adacore.com>
- * expr.c (expand_expr_real_1) <normal_inner_ref>: Use the expression to
- set the memory attributes in all cases but clear MEM_EXPR if need be.
- 2015-01-15 Yuri Rumyantsev <ysrumyan@gmail.com>
- PR tree-optimization/64434
- * cfgexpand.c (reorder_operands): New function.
- (expand_gimple_basic_block): Insert call of reorder_operands if
- optimized is true.
- 2015-01-15 Matthew Fortune <matthew.fortune@imgtec.com>
- * config/mips/micromips.md (*swp): Remove explicit parallel.
- (jraddiusp, *movep<MOVEP1:mode><MOVEP2:mode>): Likewise.
- * config/mips/mips-dsp.md (add<DSPV:mode>3): Likewise.
- (mips_add<DSP:dspfmt1>_s_<DSP:dspfmt2>, sub<DSPV:mode>3): Likewise.
- (mips_sub<DSP:dspfmt1>_s_<DSP:dspfmt2>, mips_addsc): Likewise.
- (mips_addwc, mips_absq_s_<DSPQ:dspfmt2>): Likewise.
- (mips_precrq_rs_ph_w, mips_precrqu_s_qb_ph): Likewise.
- (mips_shll_<DSPV:dspfmt2>, mips_shll_s_<DSPQ:dspfmt2>): Likewise.
- (mips_muleu_s_ph_qbl, mips_muleu_s_ph_qbr): Likewise.
- (mips_mulq_rs_ph, mips_muleq_s_w_phl, mips_muleq_s_w_phr): Likewise.
- (mips_dpaq_s_w_ph, mips_dpsq_s_w_ph, mips_mulsaq_s_w_ph): Likewise.
- (mips_dpaq_sa_l_w, mips_dpsq_sa_l_w, mips_maq_s_w_phl): Likewise.
- (mips_maq_s_w_phr, mips_maq_sa_w_phl, mips_maq_sa_w_phr): Likewise.
- (mips_extr_w, mips_extr_r_w, mips_extr_rs_w): Likewise.
- (mips_extr_s_h, mips_extp, mips_extpdp, mips_mthlip): Likewise.
- (mips_wrdsp): Likewise.
- * config/mips/mips-dspr2.md (mips_absq_s_qb): Remove explicit
- parallel.
- (mips_addu_ph, mips_addu_s_ph, mips_cmpgdu_eq_qb): Likewise.
- (mips_cmpgdu_lt_qb, mips_cmpgdu_le_qb, mulv2hi3): Likewise.
- (mips_mul_s_ph, mips_mulq_rs_w, mips_mulq_s_ph): Likewise.
- (mips_mulq_s_w, mips_subu_ph, mips_subu_s_ph): Likewise.
- (mips_dpaqx_s_w_ph, mips_dpaqx_sa_w_ph): Likewise.
- (mips_dpsqx_s_w_ph, mips_dpsqx_sa_w_ph): Likewise.
- * config/mips/mips-fixed.md (usadd<mode>3): Remove explicit parallel.
- (ssadd<mode>3, ussub<mode>3, sssub<mode>3, ssmul<mode>3): Likewise.
- (ssmaddsqdq4, ssmsubsqdq4): Likewise.
- 2015-01-14 Matthew Fortune <matthew.fortune@imgtec.com>
- * config/mips/mips.c (mips_rtx_costs): Set costs for LSA/DLSA.
- (mips_print_operand): Support 'y' to print exact log2 in decimal
- of a const_int.
- * config/mips/mips.h (ISA_HAS_LSA): New define.
- (ISA_HAS_DLSA): Likewise.
- * config/mips/mips.md (<GPR:d>lsa): New define_insn.
- * config/mips/predicates.md (const_immlsa_operand): New predicate.
- 2015-01-15 Martin Liska <mliska@suse.cz>
- PR target/64377
- * optc-save-gen.awk: Add support for array types.
- 2015-01-15 Richard Biener <rguenther@suse.de>
- PR middle-end/64365
- * tree-data-ref.c (dr_analyze_indices): Make sure that accesses
- for MEM_REF access functions with the same base can never partially
- overlap.
- 2015-01-14 Marcos Diaz <marcos.diaz@tallertechnologies.com>
- * common.opt: New option -fstack-protector-explicit.
- * cfgexpand.c (SPCT_FLAG_EXPLICIT): New enum.
- (stack_protect_decl_phase): Handle stack_protect attribute for
- explicit stack protection requests.
- (expand_used_vars): Similarly.
- * doc/cpp.texi (__SSP_EXPLICIT__): Document predefined macro.
- * doc/extend.texi: Add documentation for "stack_protect" attribute.
- * doc/invoke.texi: Add documentation for -fstack-protector-explicit.
- 2015-01-14 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/53988
- * config/sh/sh-protos.h (sh_find_set_of_reg): Add option to ignore
- reg-reg copies.
- (sh_extending_set_of_reg): New struct.
- (sh_find_extending_set_of_reg, sh_split_tst_subregs,
- sh_remove_reg_dead_or_unused_notes): New Declarations.
- * config/sh/sh.c (sh_remove_reg_dead_or_unused_notes,
- sh_find_extending_set_of_reg, sh_split_tst_subregs,
- sh_extending_set_of_reg::use_as_extended_reg): New functions.
- * config/sh/sh.md (*tst<mode>_t_zero): Rename to *tst<mode>_t_subregs,
- convert to insn_and_split and use new function sh_split_tst_subregs.
- 2015-01-14 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi (Option Summary): Reclassify -fuse-ld as a linker
- option.
- (Optimization Options): Move -fuse-ld documentation to...
- (Link Options): ...here.
- 2015-01-14 Matthew Fortune <matthew.fortune@imgtec.com>
- * config/mips/constraints.md (ZC): Add support for R6 LL/SC
- offsets.
- (ZD): Update to use ISA_HAS_9BIT_DISPLACEMENT.
- * config/mips/mips.h (ISA_HAS_PREFETCH_9BIT): Rename to...
- (ISA_HAS_9BIT_DISPLACEMENT): ... this. New macro.
- * config/mips/sync.md (sync_compare_and_swap<mode>): Use ZC
- instead of ZR for the memory operand of LL/SC.
- (compare_and_swap_12, sync_add<mode>): Likewise.
- (sync_<optab>_12, sync_old_<optab>_12): Likewise.
- (sync_new_<optab>_12, sync_nand_12): Likewise.
- (sync_old_nand_12, sync_new_nand_12): Likewise.
- (sync_sub<mode>, sync_old_add<mode>): Likewise.
- (sync_old_sub<mode>, sync_new_add<mode>): Likewise.
- (sync_new_sub<mode>, sync_<optab><mode>): Likewise.
- (sync_old_<optab><mode>, sync_new_<optab><mode>"): Likewise.
- (sync_nand<mode>, sync_old_nand<mode>): Likewise.
- (sync_new_nand<mode>, sync_lock_test_and_set<mode>): Likewise.
- (test_and_set_12, atomic_compare_and_swap<mode>): Likewise.
- (atomic_exchange<mode>_llsc, atomic_fetch_add<mode>_llsc): Likewise.
- * doc/md.texi (ZC): Update description.
- 2015-01-14 Andrew MacLeod <amacleod@redhat.com>
- * builtins.c (expand_builtin_atomic_exchange): Remove error when
- memory model is CONSUME.
- (expand_builtin_atomic_compare_exchange, expand_builtin_atomic_load,
- expand_builtin_atomic_store): Change invalid memory model errors to
- warnings.
- (expand_builtin_atomic_clear): Change invalid model errors to warnings
- and issue warning for CONSUME.
- 2015-01-14 Aldy Hernandez <aldyh@redhat.com>
- * lto-cgraph: Update function comments for
- lto_symtab_encoder_encode_*.
- 2015-01-14 Ilya Verbin <ilya.verbin@intel.com>
- * Makefile.in (site.exp): Do not set ENABLE_LTO.
- 2015-01-14 Ilya Verbin <ilya.verbin@intel.com>
- * cgraphunit.c (ipa_passes): Remove argument from ipa_write_summaries.
- * lto-cgraph.c (select_what_to_stream): Remove argument, use
- lto_stream_offload_p instead.
- * lto-streamer.h (select_what_to_stream): Remove argument.
- * passes.c (ipa_write_summaries): Likewise.
- * tree-pass.h (ipa_write_summaries): Likewise.
- 2015-01-14 Richard Biener <rguenther@suse.de>
- PR tree-optimization/59354
- * tree-vect-slp.c (vect_build_slp_tree_1): Treat loads from
- groups larger than the slp group size as having gaps.
- 2015-01-14 Andrew MacLeod <amacleod@redhat.com>
- PR middle-end/59448
- * builtins.c (get_memmodel): Promote consume to acquire always.
- 2015-01-14 Ilya Tocar <ilya.tocar@intel.com>
- PR target/64386
- * config/i386/i386.c (ix86_expand_sse_cmp): Handle V64QImode,
- V32HImode.
- 2015-01-14 Ilya Tocar <ilya.tocar@intel.com>
- PR target/64393
- * common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX512VBMI_SET):
- Enable AVX512BW.
- (OPTION_MASK_ISA_AVX512BW_UNSET): Disable AVX512VBMI.
- * config/i386/i386.c (ix86_hard_regno_mode_ok): Don't check
- AVX512VBMI, as it implies AVX512BW.
- 2015-01-14 Ilya Tocar <ilya.tocar@intel.com>
- PR target/64387
- * config/i386/sse.md (vec_unpacks_hi_v8sf): Fix predicate.
- (vec_unpacks_hi_v16sf): Ditto.
- 2015-01-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * config/aarch64/arm_neon.h: Error out if AdvancedSIMD
- is not available.
- 2015-01-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * doc/invoke.texi (mapcs): Mention deprecation.
- (mapcs-frame): Likewise.
- 2015-01-14 Thomas Preud'homme <thomas.preudhomme@arm.com>
- PR target/64453
- * config/arm/arm.c (callee_saved_reg_p): Define.
- (arm_compute_save_reg0_reg12_mask): Use callee_saved_reg_p to check if
- register is callee saved instead of !call_used_regs[reg].
- (thumb1_compute_save_reg_mask): Likewise.
- 2015-01-14 Hale Wang <hale.wang@arm.com>
- * config/arm/arm.c: Tune the max_cond_insns/branch_cost for
- Cortex-M7.
- 2015-01-14 Richard Biener <rguenther@suse.de>
- PR lto/64415
- * tree-inline.c (insert_debug_decl_map): Check destination
- function MAY_HAVE_DEBUG_STMTS.
- (insert_init_debug_bind): Likewise.
- (insert_init_stmt): Remove redundant check.
- (remap_gimple_stmt): Drop debug stmts if the destination
- function has var-tracking assignments disabled.
- 2015-01-14 Martin Liska <mliska@suse.cz>
- * ipa-icf-gimple.c (func_checker::compare_operand): Add support for
- IMAGPART_EXPR and REALPART_EXPR and fix BIT_FIELD_REF comparison.
- 2015-01-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- PR target/64460
- * config/arm/arm.md (*<arith_shift_insn>_multsi): Set 'shift' to 2.
- (*<arith_shift_insn>_shiftsi): Set 'shift' attr to 3.
- 2015-01-14 Matthew Fortune <matthew.fortune@imgtec.com>
- * config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Only infer an ISA
- level from an ARCH; do not inject the default.
- (MIPS_DEFAULT_ISA_LEVEL_SPEC): New macro split out from
- MIPS_ISA_LEVEL_SPEC.
- (MIPS_ISA_NAN2008_SPEC): Update comment.
- (BASE_DRIVER_SELF_SPECS): Likewise.
- * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Add
- MIPS_DEFAULT_ISA_LEVEL_SPEC.
- * config/mips/mti-elf.h (DRIVER_SELF_SPECS): Likewise.
- * config/mips/mti-linux.h (DRIVER_SELF_SPECS): Likewise.
- * config/mips/sde.h (DRIVER_SELF_SPECS): Likewise.
- 2015-01-14 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64493
- PR tree-optimization/64495
- * tree-vect-loop.c (vect_finalize_reduction): For double-reductions
- assign the proper vectorized PHI to the inner loop exit PHIs.
- 2015-01-14 Joey Ye <joey.ye@arm.com>
- * config/arm/arm.c (arm_compute_save_reg_mask):
- Do not save lr in case of tail call.
- * config/arm/thumb2.md (*thumb2_pop_single): New pattern.
- 2015-01-14 Martin Uecker <uecker@eecs.berkeley.edu>
- * tree-vrp.c (check_array_ref): Emit more warnings
- for warn_array_bounds >= 2.
- * common.opt: New option -Warray-bounds=.
- * doc/invoke.texi: Document -Warray-bounds=.
- 2015-01-14 Chung-Ju Wu <jasonwucj@gmail.com>
- * config/nds32/nds32.opt (mforce-fp-as-gp): Remove.
- (mforbid-fp-as-gp): Remove.
- (mex9): Remove.
- * config/nds32/nds32-fp-as-gp.c (nds32_have_prologue_p): Remove.
- (nds32_symbol_load_store_p): Remove.
- (nds32_fp_as_gp_check_available): Clean up implementation.
- * config/nds32/nds32.h (LINK_SPEC): Remove -mforce-as-gp and -mex9
- cases.
- * config/nds32/nds32.c (nds32_asm_file_start): No need to consider
- fp-as-gp and ex9 cases.
- 2015-01-13 Jan Hubicka <hubicka@ucw.cz>
- * tree-profile.c (init_ic_make_global_vars): Drop workaround
- for bintuils bug 14342.
- (init_ic_make_global_vars): Likewise.
- (gimple_init_edge_profiler): Likewise.
- (gimple_gen_ic_func_profiler): Likewise.
- 2015-01-13 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
- * ipa-inline.c (inline_small_functions): Swap the operands in
- enum.
- 2015-01-13 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64481
- * ipa-inline-analysis.c (node_growth_cache): Remove.
- (initialize_growth_caches): Do not initialize it.
- (free_growth_caches): Do not free it.
- (do_estimate_growth): Rename to ...
- (estimate_growth): ... this one; drop growth cache code.
- (growth_likely_positive): Always go the heuristics way.
- * ipa-inline.c (can_inline_edge_p): Walk through aliases.
- (reset_edge_caches): Do not reset node growth.
- (heap_edge_removal_hook): Do not maintain cache.
- (inline_small_functions): Likewise; strenghten sanity check.
- (ipa_inline): Do not maintain caches.
- * ipa-inline.h (node_growth_cache): Remove.
- (do_estimate_growth): Remove to ...
- (estimate_growth): this one; remove inline version.
- (reset_node_growth_cache): Remove.
- 2015-01-13 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/64565
- * ipa-inline.c (inline_small_functions): Update callee keys after
- resolving speculation
- (inline_small_functions): Always check monotonicity of the queue.
- 2015-01-13 Marek Polacek <polacek@redhat.com>
- PR middle-end/64391
- * trans-mem.c (get_attrs_for): Return NULL_TREE if X is NULL_TREE.
- 2015-01-13 Jakub Jelinek <jakub@redhat.com>
- PR rtl-optimization/64286
- * ree.c (combine_reaching_defs): Move part of comment earlier,
- remove !SCALAR_INT_MODE_P check.
- (add_removable_extension): Don't add vector mode
- extensions if all uses of the source register aren't the same
- vector extensions.
- 2015-01-13 Renlin Li <renlin.li@arm.com>
- * config/arm/arm.h (CLZ_DEFINED_VALUE_AT_ZERO): Return 2.
- (CTZ_DEFINED_VALUE_AT_ZERO): Ditto.
- 2015-01-13 Martin Liska <mliska@suse.cz>
- * ipa-icf.c (sem_function::equals_private): Call new functions
- cl_target_option_print_diff and cl_optimization_print_diff.
- * optc-save-gen.awk (cl_target_option_print_diff): New function.
- (cl_optimization_print_diff): Likewise.
- * opth-gen.awk: Likewise.
- 2015-01-13 Richard Sandiford <richard.sandiford@arm.com>
- * config/aarch64/aarch64.md (subsi3, *subsi3_uxtw, subdi3)
- (*sub_<optab><ALLX:mode>_<GPI:mode>, *sub_<optab><SHORT:mode>_si_uxtw)
- (*sub_<optab><ALLX:mode>_shft_<GPI:mode>)
- (*sub_<optab><SHORT:mode>_shft_si_uxtw, *sub_<optab><mode>_multp2)
- (*sub_<optab>si_multp2_uxtw, *sub_uxt<mode>_multp2)
- (*sub_uxtsi_multp2_uxtw): Add stack pointer sources.
- 2015-01-13 Andrew Pinski <apinski@cavium.com>
- * config/aarch64/aarch64.c (fusion_load_store): Check dest mode
- instead of src mode.
- 2015-01-13 Richard Biener <rguenther@suse.de>
- PR lto/64373
- * lto-streamer-out.c (tree_is_indexable): Guard for NULL
- DECL_CONTEXT.
- 2015-01-13 Andrew Pinski <apinski@cavium.com>
- * config/aarch64/aarch64.c (aarch64_operands_ok_for_ldpstp): Reject
- volatile mems.
- (aarch64_operands_adjust_ok_for_ldpstp): Likewise.
- 2015-01-13 Jakub Jelinek <jakub@redhat.com>
- PR middle-end/63974
- * cfgexpand.c (expand_computed_goto): Don't call
- convert_memory_address here.
- 2015-01-13 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64406
- * tree-loop-distibution.c (pass_loop_distribution::execute):
- Reset the SCEV hashtable if we distributed anything.
- 2015-01-13 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64404
- * tree-vect-stmts.c (vectorizable_load): Reject conflicting
- SLP types for CSEd loads.
- 2015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
- PR tree-optimization/64436
- * tree-ssa-math-opts.c (find_bswap_or_nop_1): Move code performing the
- merge of two symbolic numbers for a bitwise OR to ...
- (perform_symbolic_merge): This. Also fix computation of the range and
- end of the symbolic number corresponding to the result of a bitwise OR.
- 2015-01-13 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64568
- * tree-ssa-forwprop.c (pass_forwprop::execute): Properly
- release defs of removed stmts, avoid splitting TARGET_MEM_REFs.
- 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
- * config/nds32/nds32.c (nds32_legitimate_address_p): Consider
- TARGET_CMODEL_LARGE and TARGET_CMODEL_MEDIUM cases.
- 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
- * config/nds32/nds32.h (NDS32_SYMBOL_FLAG_RODATA): Define our own
- target-specific symbol_ref flag.
- (NDS32_SYMBOL_REF_RODATA_P): Define it to check if the symbol_ref
- resides in rodata section.
- * config/nds32/nds32.c (TARGET_ENCODE_SECTION_INFO): Define.
- (nds32_encode_section_info): New function.
- 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
- * config/nds32/nds32.md (call): Use pseudo instruction bal which
- clobbers TA_REGNUM if large code model is specified.
- (call_register): Likewise.
- (call_immediate): Likewise.
- (call_value): Likewise.
- (call_value_register): Likewise.
- (call_value_immediate): Likewise.
- 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
- * config/nds32/nds32.h (TARGET_CMODEL_SMALL): New macro.
- (TARGET_CMODEL_MEDIUM): New macro.
- (TARGET_CMODEL_LARGE): New macro.
- * config/nds32/nds32.c (nds32_asm_file_start): Display corresponding
- code model setting in assembly code.
- 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
- * common/config/nds32/nds32-common.c (TARGET_DEFAULT_TARGET_FLAGS):
- Remove MASK_GP_DIRECT flag.
- * config/nds32/nds32.h (MULTILIB_DEFAULTS): Have -mcmodel=medium as
- one of the multilib default options.
- * config/nds32/nds32.opt (mgp-direct): Remove.
- * config/nds32/t-mlibs (MULTILIB_OPTIONS): Use -mcmodel instead of
- -mgp-direct. We also remove unnecessary -mlittle-endian/-mbig-endian.
- 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
- * config/nds32/nds32.opt (mcmodel): Add new option.
- * config/nds32/nds32-opts.h (nds32_cmodel_type): Add new enum type
- to describe code model.
- 2015-01-13 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/64479
- * rtlanal.c (set_reg_p): Handle SEQUENCE constructs.
- 2015-01-12 Kaz Kojima <kkojima@gcc.gnu.org>
- * config/sh/sh.c (sh_atomic_assign_expand_fenv): New function.
- (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): Define.
- (sh_builtin_get_fpscr, sh_builtin_set_fpscr): New variables.
- (sh_init_builtins): Record decls for __builtin_sh_get_fpscr and
- __builtin_sh_set_fpscr.
- 2015-01-12 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-Wsuggest-attribute=]): Don't use parentheses
- after a funtion name just to indicate it is a function.
- ([-fsanitize-undefined-trap-on-error]): Likewise.
- ([-fdbg-cnt=]): Likewise.
- ([-mmemcpy]): Likewise.
- ([-mflush-func]): Likewise.
- ([-msynci]): Likewise.
- 2015-01-12 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-Wbad-function-cast]): Rewrite to avoid confusing
- example.
- 2015-01-12 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/64563
- * tree-vrp.c (vrp_evaluate_conditional): Check for VR_RANGE
- instead of != VR_VARYING.
- PR target/64513
- * config/i386/i386.c (ix86_expand_prologue): Add
- REG_FRAME_RELATED_EXPR to %rax and %r10 pushes.
- PR tree-optimization/64454
- * tree-vrp.c (simplify_div_or_mod_using_ranges): Optimize
- op0 % op1 into op0 if op0 is in range [-op1 + 1, op1 - 1]
- for signed or [0, op1 - 1] for unsigned modulo.
- (simplify_stmt_using_ranges): Call simplify_div_or_mod_using_ranges
- even if op1 does not satisfy integer_pow2p.
- PR other/64370
- * sreal.c (sreal::to_double): Use ldexp instead of scalbnl.
- 2015-01-12 Jeff Law <law@redhat.com>
- PR target/64461
- * config/m68k/m68k.md (truncsiqi2): Disable for TARGET_COLDFIRE.
- (trunchiqi2, truncsihi2): Similarly.
- * config/h8300/h8300.c (Fpa): Use RTX_FRAME_RELATED_P directly
- rather than calling F.
- 2015-01-12 Bernd Edlinger <bernd.edlinger@hotmail.de>
- * tsan.c (instrument_expr): Use force_gimple_operand.
- Use may_be_nonaddressable_p instead of is_gimple_addressable.
- 2015-01-12 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64530
- * tree-loop-distribution.c (pg_add_dependence_edges): Shuffle
- back dr1.
- 2015-01-12 Richard Biener <rguenther@suse.de>
- PR middle-end/64357
- * tree-cfg.c (gimple_can_merge_blocks_p): Protect simple
- latches properly.
- 2015-01-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * config/arm/arm.c (arm_cortex_a12_tune): Update entries to match
- Cortex-A17 tuning parameters.
- * config/arm/arm-cores.def (cortex-a12): Schedule for cortex-a17.
- 2015-01-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * config/arm/arm-protos.h (tune_params): Add fuseable_ops field.
- * config/arm/arm.c (arm_macro_fusion_p): New function.
- (arm_macro_fusion_pair_p): Likewise.
- (TARGET_SCHED_MACRO_FUSION_P): Define.
- (TARGET_SCHED_MACRO_FUSION_PAIR_P): Likewise.
- (ARM_FUSE_NOTHING): Likewise.
- (ARM_FUSE_MOVW_MOVT): Likewise.
- (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune,
- arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune,
- arm_cortex_a8_tune, arm_cortex_a7_tune, arm_cortex_a15_tune,
- arm_cortex_a53_tune, arm_cortex_a57_tune, arm_cortex_a9_tune,
- arm_cortex_a12_tune, arm_v7m_tune, arm_v6m_tune, arm_fa726te_tune
- arm_cortex_a5_tune): Specify fuseable_ops value.
- 2015-01-12 H.J. Lu <hongjiu.lu@intel.com>
- PR bootstrap/64561
- * configure.ac (HAVE_LD_PIE_COPYRELOC): Update Linux/x86-64 linker
- test for PIE with copy reloc.
- * configure: Regenerated.
- 2015-01-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
- * config/arm/arm.c (arm_load_tp): Use R0_REGNUM instead of constant 0
- in gen_rtx_REG.
- (arm_tls_descseq_addr): Likewise.
- (arm_gen_movmemqi): Likewise.
- (arm_expand_epilogue_apcs_frame): Likewise.
- (arm_expand_epilogue): Likewise.
- (arm_expand_prologue): Likewise. Use R1_REGNUM instead of constant 1
- in gen_rtx_REG.
- 2015-01-12 Martin Liska <mliska@suse.cz>
- PR ipa/64550
- * ipa-icf-gimple.c (func_checker::compare_memory_operand): Compare
- volatility for correct operands.
- 2015-01-12 Martin Liska <mliska@suse.cz>
- * ipa-icf.c (sem_function::equals_wpa): Add indirect_calls as indication
- that a function is not leaf.
- (sem_function::compare_polymorphic_p): Likewise.
- 2015-01-12 Martin Liska <mliska@suse.cz>
- * ipa-icf.c (sem_function::equals_wpa): Add indirect_calls as indication
- that a function is not leaf.
- (sem_function::compare_polymorphic_p): Likewise.
- 2015-01-12 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
- * config/visium/visium.c: Add includes hashtab.h, hash-set.h,
- machmode.h, input.h, statistics.h, vec.h, double-int.h, real.h,
- fixed-value.h, alias.h, symtab.h, tree-core.h, wide-int.h, inchash.h,
- fold-const.h, tree-check.h.
- 2015-01-12 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/63967
- PR ipa/64425
- * ipa-inline.c (compute_uninlined_call_time,
- compute_inlined_call_time): Use counts for extra precision when
- needed possible.
- (big_speedup_p): Fix formating.
- (RELATIVE_TIME_BENEFIT_RANGE): Remove.
- (relative_time_benefit): Remove.
- (edge_badness): Turn DECL_DISREGARD_INLINE_LIMITS into hint;
- merge guessed and read profile paths.
- (inline_small_functions): Count only !optimize_size functions into
- initial size; be more lax about sanity check when profile is used;
- be sure to update inlined function profile when profile is read.
- 2015-01-12 Jan Hubicka <hubicka@ucw.cz>
- PR ipa/63470
- * ipa-inline-analysis.c (inline_edge_duplication_hook): Adjust
- cost when edge becomes direct.
- * ipa-prop.c (make_edge_direct): Do not adjust when speculation
- is resolved or when introducing new speculation.
- 2015-01-12 Chen Gang <gang.chen.5i5j@gmail.com>
- PR ipa/64551
- PR ipa/64552
- * ipa-icf.c (sem_function::equals_private): Use '&&' instead of
- '||' to fix typo issue.
- * gcc/tree.h (target_opts_for_fn): Check NULL_TREE since it can
- accept and return NULL.
- 2015-01-12 Martin Liska <mliska@suse.cz>
- * cgraph.c (cgraph_edge::remove_callee): Move function to header
- file for being inlined.
- (cgraph_set_edge_callee): Delete.
- (cgraph_edge::redirect_callee): Move function to header file
- for being inlined.
- (cgraph_edge::make_direct): Use new function.
- (cgraph_edge::dump_edge_flags): New function created from
- static dump_edge_flags function.
- (cgraph_node::dump): Use new function.
- (cgraph_edge::verify_count_and_frequency): New function created
- from verify_edge_count_and_frequency.
- (cgraph_edge::verify_corresponds_to_fndecl): New function created
- from verify_edge_corresponds_to_fndecl.
- (verify_edge_corresponds_to_fndecl): Delete.
- (cgraph_node::verify_node): Use new function.
- * cgraph.h (cgraph_edge::set_callee): New function.
- (cgraph_edge::dump_edge_flags): Likewise.
- (cgraph_edge::verify_corresponds_to_fndecl): Likewise.
- 2015-01-11 Jan Hubicka <hubicka@ucw.cz>
- * ipa-utils.c (estimate_function_body_sizes): Do not
- free node params when called late with early=true.
- 2015-01-11 James Greenhalgh <james.greenhalgh@arm.com>
- * doc/md.texi (Instruction Patterns): Rewrite text for
- clarity.
- (Example): Likewise.
- 2015-01-10 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi (Option Summary): Break long lines.
- [(-fdiagnostics-color)]: Put long literal in @smallexample
- instead of inline.
- [(-fsanitize-recover)]: Likewise.
- [(-fdump-rtl-split*)]: Rewrite to fix over-full hbox.
- [(-ffast-math)]: Likewise.
- [(--param max-inline-insns-recursive)]: Likewise.
- [(--param max-inline-recursive-depth)]: Likewise.
- [(-mno-text-section-literals)]: Likewise.
- 2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
- * doc/install.texi: Update for libgomp being renamed from "GNU
- OpenMP Runtime Library" to "GNU Offloading and Multi Processing
- Runtime Library".
- * doc/sourcebuild.texi: Likewise.
- 2015-01-10 Anthony Green <green@moxielogic.com>
- * config/moxie/moxie.c (moxie_option_override): Fix forcing of
- mul.x availability for moxiebox configuration.
- 2015-01-09 Anthony Green <green@moxielogic.com>
- * config/moxie/moxie.md: Tabify assembly output.
- 2015-01-09 Anthony Green <green@moxielogic.com>
- * config/moxie/moxie.md (CC_REG): Correct register definition.
- 2015-01-09 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-fvtable-verify]): Copy-edit and fix markup.
- ([-fvtv-debug], [-fvtv-counts]): Likewise. Correct location
- of log files.
- 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
- * config/arm/arm.h (MAX_SYNC_LIBFUNC_SIZE): Delete semicolon.
- 2015-01-09 Bernd Schmidt <bernds@codesourcery.com>
- Jakub Jelinek <jakub@redhat.com>
- PR middle-end/64412
- * lto-streamer.h (lto_stream_offload_p): New declaration.
- * lto-streamer.c (lto_stream_offload_p): New variable.
- * cgraphunit.c (ipa_passes): Set lto_stream_offload_p
- at the same time as section_name_prefix.
- * lto-streamer-out.c (hash_tree): Don't hash TREE_TARGET_OPTION
- if lto_stream_offload_p.
- * tree-streamer-out.c (streamer_pack_tree_bitfields): Don't
- stream TREE_TARGET_OPTION if lto_stream_offload_p.
- (write_ts_function_decl_tree_pointers): Don't
- stream DECL_FUNCTION_SPECIFIC_TARGET if lto_stream_offload_p.
- * tree-streamer-in.c (unpack_value_fields): Don't stream
- TREE_TARGET_OPTION in if ACCEL_COMPILER.
- (lto_input_ts_function_decl_tree_pointers): Don't stream
- DECL_FUNCTION_SPECIFIC_TARGET in if ACCEL_COMPILER.
- * lto-opts.c (lto_write_options): Use lto_stream_offload_p
- instead of section_name_prefix string comparisons.
- 2015-01-09 Jakub Jelinek <jakub@redhat.com>
- PR rtl-optimization/64536
- * cfgrtl.c (rtl_tidy_fallthru_edge): Handle removal of degenerate
- tablejumps.
- 2015-01-09 Michael Collison <michael.collison@linaro.org>
- PR tree-optimization/64322
- * tree-vrp.c (extract_range_from_binary_expr_1): Attempt to derive
- range for RSHIFT_EXPR even if vr0 range is not VR_RANGE or is symbolic.
- 2015-01-09 Tom de Vries <tom@codesourcery.com>
- PR rtl-optimization/64539
- * regcprop.c (kill_clobbered_values): Factor out of ...
- (copyprop_hardreg_forward_1): ... here. Use kill_clobbered_values
- instead of note_stores with kill_clobbered_value.
- 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
- * ginclude/unwind-arm-common.h: Revert previous commit.
- 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
- * config.gcc (arm*-*-freebsd*): New configuration.
- * config/arm/freebsd.h: New file.
- * config.host: Add extra components for arm*-*-freebsd*.
- * config/arm/arm.h: Introduce MAX_SYNC_LIBFUNC_SIZE.
- * config/arm/arm.c (arm_init_libfuncs): Use MAX_SYNC_LIBFUNC_SIZE.
- 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
- * config/rs6000/rtems.h (CPP_OS_RTEMS_SPEC): Define __PPC_CPU_E6500__
- for -mcpu=e6500.
- * config/rs6000/t-rtems: Add e6500 multilibs.
- 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
- * config/rs6000/t-rtems: Add -mno-spe to soft-float multilib for
- MPC8540.
- 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
- * config/rs6000/t-rtems: Use MULTILIB_REQUIRED instead of
- MULTILIB_EXCEPTIONS.
- 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
- * config/arm/t-rtems: Use MULTILIB_REQUIRED instead of
- MULTILIB_EXCEPTIONS.
- 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
- * config/arm/t-rtems-eabi: Rename to...
- * config/arm/t-rtems: ...this.
- * config/arm/rtems-eabi.h: Rename to...
- * config/arm/rtems.h: ...this.
- * config.gcc (arm*-*-rtems*): Reflect changes above.
- 2015-01-09 Richard Biener <rguenther@suse.de>
- PR tree-optimization/64410
- * tree-ssa.c (non_rewritable_lvalue_p): Allow REALPART/IMAGPART_EXPR
- on the LHS.
- (execute_update_addresses_taken): Deal with that.
- * tree-ssa-forwprop.c (pass_forwprop::execute): Use component-wise
- loads/stores for complex variables.
- 2015-01-09 Martin Liska <mliska@suse.cz>
- * ipa-icf-gimple.c (func_checker::compare_ssa_name): Enhance SSA
- name comparison.
- (func_checker::compare_memory_operand): New function.
- (func_checker::compare_operand): Split case to newly
- added functions.
- (func_checker::compare_cst_or_decl): New function.
- (func_checker::compare_gimple_call): Identify
- memory operands.
- (func_checker::compare_gimple_assign): Likewise.
- * ipa-icf-gimple.h: New function.
- 2015-01-09 Martin Liska <mliska@suse.cz>
- PR ipa/64503
- * sreal.c (sreal::dump): Change unsigned format to signed for
- m_exp value.
- (sreal::to_double): Replace exp2 with scalbln.
- 2015-01-09 Martin Liska <mliska@suse.cz>
- * cgraphunit.c (cgraph_node::create_wrapper): Fix level of indentation.
- * ipa-icf.c (sem_function::equals_private): Add support for target and
- (sem_item_optimizer::merge_classes): Remove redundant function
- optimization flags comparison.
- * tree.h (target_opts_for_fn): New function.
- 2015-01-09 Tom de Vries <tom@codesourcery.com>
- * omp-low.c (expand_omp_for_static_chunk): Fix assert.
- 2015-01-09 Kito Cheng <kito@0xlab.org>
- PR rtl-optimization/64348
- * lra-constraints.c (split_reg): Fix caller-save store/restore
- instruction generation.
- 2015-01-08 John David Anglin <danglin@gcc.gnu.org>
- PR gcov-profile/61790
- * gcov-tool.c (do_rewrite): Use strtoll instead of atoll if host has
- long long. Fallback to int64_t if host doesn't have long long and
- use strtol if int64_t is long. Otherwise, use sscanf for conversion.
- 2015-01-08 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/63989
- * params.def (PARAM_MAX_TRACKED_STRLENS): Increment default
- from 1000 to 10000.
- * tree-ssa-strlen.c (get_strinfo): Moved earlier.
- (get_stridx): If we don't have a record for certain SSA_NAME,
- but it is POINTER_PLUS_EXPR of some SSA_NAME we do with
- constant offset, call get_stridx_plus_constant.
- (get_stridx_plus_constant): New function.
- (zero_length_string): Don't use get_stridx here.
- PR target/55023
- PR middle-end/64388
- * dse.c (struct insn_info): Mention frame_read set also
- before reload for tail calls on some targets.
- (scan_insn): Revert 2014-12-22 change. Set frame_read
- also before reload for tail calls if
- HARD_FRAME_POINTER_IS_ARG_POINTER. Call add_wild_read
- instead of add_non_frame_wild_read for non-const/memset
- tail calls after reload.
- 2015-01-08 Jason Merrill <jason@redhat.com>
- * ubsan.c (do_ubsan_in_current_function): New.
- (pass_ubsan::gate): Use it.
- * ubsan.h: Declare it.
- * convert.c (convert_to_integer): Use it.
- 2015-01-08 Jakub Jelinek <jakub@redhat.com>
- PR target/64338
- * config/i386/i386.c (ix86_expand_int_movcc): Don't reverse
- compare_code when it is unconditionally overwritten afterwards.
- Use ix86_reverse_condition instead of reverse_condition. Don't
- change code if *reverse_condition* returned UNKNOWN and don't
- swap ct/cf and negate diff in that case.
- 2015-01-08 Mike Stump <mikestump@comcast.net>
- * tsan.c (pass_tsan::gate): Add no_sanitize_thread support.
- (pass_tsan_O0::gate): Likewise.
- * extend.texi (Function Attributes): Add no_sanitize_thread
- documentation.
- 2015-01-08 Thomas Schwinge <thomas@codesourcery.com>
- * builtins.def (DEF_GOMP_BUILTIN): Also consider flag_offload_abi
- for registering builtins.
- * config/i386/intelmic-mkoffload.c (prepare_target_image): Don't
- add -fopenmp to the argv_obstack used when invoking
- compile_for_target.
- * config/i386/intelmic-mkoffload.c (compile_for_target): Always
- add "-m32" or "-m64" to argv_obstack.
- (generate_host_descr_file): Likewise, when invoking host_compiler.
- (main): Always add "-m elf_i386" or "-m elf_x86_64" when invoking
- ld.
- 2015-01-08 Oleg Endo <olegendo@gcc.gnu.org>
- * config/sh/sh-mem.cc: Use constant as second operand when emitting
- tstsi_t insns.
- 2015-01-08 Oleg Endo <olegendo@gcc.gnu.org>
- PR target/55212
- * config/sh/sh.md (*addsi3_compact): Emit reg-reg copy instead of
- constant load if constant operand fits into I08.
- 2015-01-08 Jakub Jelinek <jakub@redhat.com>
- PR sanitizer/64336
- * tree.c (build2_stat): Fix up initialization of TREE_READONLY
- and TREE_THIS_VOLATILE for MEM_REFs.
- (build5_stat): Fix up initialization of TREE_READONLY and
- TREE_THIS_VOLATILE for TARGET_MEM_REFs.
- 2015-01-08 Kaz Kojima <kkojima@gcc.gnu.org>
- PR target/64533
- * config/sh/sh.md (*addsi3_compact): Use u constraint instead
- of r for the second alternative of the destination operand.
- 2015-01-07 Segher Boessenkool <segher@kernel.crashing.org>
- PR target/36557
- * config/rs6000/rs6000.md (*eqsi3_ext<mode>, *nesi3_ext<mode>): New.
- 2015-01-07 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-fvtable-verify]): Fix markup on option
- keywords.
- ([-fivar-visibility], [-fvisibility]): Likewise.
- 2015-01-07 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi: Fix incorrect uses of @samp markup throughout
- the file where @code, @command, etc is more appropriate.
- 2015-01-06 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi (RS/6000 and PowerPC Options): Tidy formatting
- of -mrecip= documentation.
- 2015-01-06 Michael Meissner <meissner@linux.vnet.ibm.com>
- PR target/64505
- * config/rs6000/rs6000.c (rs6000_secondary_reload): Return the
- correct reload handler if -m32 -mpowerpc64 is used.
- 2015-01-06 Tom de Vries <tom@codesourcery.com>
- * tree-ssa-tail-merge.c: Fix typo in struct same_succ_def comment.
- 2015-01-08 Christian Bruel <christian.bruel@st.com>
- PR target/64507
- * config/sh/sh-mem.cc (sh_expand_cmpnstr): Check 0 length.
- 2015-01-06 Thomas Preud'homme <thomas.preudhomme@arm.com>
- PR tree-optimization/63259
- * tree-ssa-math-opts.c (pass_optimize_bswap::execute): Stop checking
- if optab exists for 16bit byteswap.
- 2015-01-06 Jakub Jelinek <jakub@redhat.com>
- * opts.c (common_handle_option): Add support for
- -fno-sanitize=all and -f{,no-}sanitize-recover=all.
- * doc/invoke.texi: Document -fno-sanitize=all,
- -f{,no-}sanitize-recover=all. Document that
- -fsanitize=float-cast-overflow is not enabled
- by -fsanitize=undefined. Fix up documentation
- of -f{,no-}sanitize-recover.
- 2015-01-06 Eric Botcazou <ebotcazou@adacore.com>
- * config.gcc: Add Visium support.
- * configure.ac: Likewise.
- * configure: Regenerate.
- * doc/extend.texi (interrupt attribute): Add Visium.
- * doc/invoke.texi: Document Visium options.
- * doc/install.texi: Document Visium target.
- * doc/md.texi: Document Visium constraints.
- * common/config/visium: New directory.
- * config/visium: Likewise.
- 2015-01-05 Segher Boessenkool <segher@kernel.crashing.org>
- * simplify-rtx.c (simplify_binary_operation_1): Handle more cases
- for the "(and X (ior (not X) Y) -> (and X Y)" transform.
- 2015-01-05 Segher Boessenkool <segher@kernel.crashing.org>
- * combine.c (combine_validate_cost): Do not count the cost of a
- split I2 twice. Do not display it twice in the dump, either.
- 2015-01-05 Sandra Loosemore <sandra@codesourcery.com>
- Revert parts of r219199.
- * doc/invoke.texi ([-Wliteral-suffix]): Restore markup on
- <inttypes.h>.
- ([-Wtraditional]): Restore markup on <limits.h>.
- 2015-01-05 Trevor Saunders <tsaunders@mozilla.com>
- PR c++/31397
- * doc/invoke.texi: Document -Wsuggest-override.
- 2015-01-05 Radovan Obradovic <radovan.obradovic@imgtec.com>
- PR rtl-optimization/64287
- * toplev.c (HAVE_epilogue, HAVE_prologue): Provide default.
- (process_options): Disable flag_ipa_ra if profiling.
- 2015-01-05 Eric Botcazou <ebotcazou@adacore.com>
- * config/nds32/nds32-peephole2.md: Do not mention define_peephole.
- 2015-01-05 Max Filippov <jcmvbkbc@gmail.com>
- * config/xtensa/xtensa.c (hwloop_optimize, hwloop_fail,
- hwloop_pattern_reg, xtensa_doloop_hooks, xtensa_reorg_loops):
- put under #if TARGET_LOOPS guard.
- 2015-01-05 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/i386.c (output_387_binary_op): Use std::swap.
- 2015-01-05 Oleg Endo <olegendo@gcc.gnu.org>
- * rtlanal.c (refers_to_regno_p): Change return value from int to bool.
- * rtl.h (refers_to_regno_p): Add overload.
- * cse.c: Use it.
- * bt-load.c: Likewise.
- * combine.c: Likewise.
- * df-scan.c: Likewise.
- * sched-deps.c: Likewise.
- * config/s390/s390.c: Likewise.
- * config/m32r/m32r.c: Likewise.
- * config/rs6000/spe.md: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * config/pa/pa.c: Likewise.
- * config/stormy16/stormy16.c: Likewise.
- * config/cris/cris.c: Likewise.
- * config/arc/arc.md: Likewise.
- * config/arc/arc.c: Likewise.
- * config/sh/sh.md: Likewise.
- * config/sh/sh.c: Likewise.
- * config/frv/frv.c: Likewise.
- 2015-01-05 Jakub Jelinek <jakub@redhat.com>
- PR sanitizer/64265
- * gimplify.c (gimplify_function_tree): Add TSAN_FUNC_EXIT internal
- call as cleanup of the whole body.
- * internal-fn.def (TSAN_FUNC_EXIT): New internal call.
- * tsan.c (replace_func_exit): New function.
- (instrument_func_exit): Moved earlier.
- (instrument_memory_accesses): Adjust TSAN_FUNC_EXIT internal calls.
- Call instrument_func_exit if no TSAN_FUNC_EXIT internal calls have
- been found.
- (tsan_pass): Don't call instrument_func_exit.
- * internal-fn.c (expand_TSAN_FUNC_EXIT): New function.
- * tree-inline.c (copy_bb): Drop TSAN_FUNC_EXIT internal calls during
- inlining.
- PR sanitizer/64344
- * ubsan.h (ubsan_instrument_float_cast): Add ARG argument.
- * ubsan.c (ubsan_instrument_float_cast): Add ARG argument, pass
- it to libubsan handler instead of EXPR. Fold comparisons earlier,
- if the result is integer_zerop, return NULL_TREE.
- * convert.c (convert_to_integer): Pass expr as ARG.
- PR tree-optimization/64465
- * tree-inline.c (redirect_all_calls): During inlining
- clean up EH stmts and EH edges if redirect_call_stmt_to_callee
- changed the stmt to a non-throwing call.
- 2015-01-05 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi: Fix incorrect uses of @code, @option, @samp,
- etc markup throughout the file.
- 2015-01-05 Bernd Edlinger <bernd.edlinger@hotmail.de>
- Enable experimental TSAN support for Ada.
- * tsan.c (instrument_expr): Handle VIEW_CONVERT_EXPR.
- 2015-01-05 Jakub Jelinek <jakub@redhat.com>
- PR tree-optimization/64494
- * tree-ssa-loop-im.c (move_computations_dom_walker::before_dom): Also
- clear SSA_NAME_ANTI_RANGE_P flag.
- 2015-01-05 Marek Polacek <polacek@redhat.com>
- * doc/extend.texi (Arrays of Length Zero): Add missing comma.
- 2015-01-05 Jakub Jelinek <jakub@redhat.com>
- Update copyright years.
- * gcc.c (process_command): Update copyright notice dates.
- * gcov-dump.c: Ditto.
- * gcov.c: Ditto.
- * doc/cpp.texi: Bump @copying's copyright year.
- * doc/cppinternals.texi: Ditto.
- * doc/gcc.texi: Ditto.
- * doc/gccint.texi: Ditto.
- * doc/gcov.texi: Ditto.
- * doc/install.texi: Ditto.
- * doc/invoke.texi: Ditto.
- * auto-profile.c, auto-profile.h: Fix up Copyright line.
- 2015-01-04 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-fsized-deallocation]): Copy-edit to fix
- verb tense, etc.
- ([-fvtable-verify], [-fvtv-debug]): Likewise.
- ([-Wabi]): Likewise.
- ([-fmessage-length]): Likewise.
- ([-Wsuggest-final-types], [-Wsuggest-final-methods]): Likewise.
- ([-Wno-discarded-qualifiers]): Likewise.
- ([-Wnodiscarded-array-qualifiers]): Likewise.
- ([-Wno-virtual-move-assign]): Likewise.
- ([-fsanitize=address], [-fsanitize=thread]): Likewise.
- ([-fsanitize=leak], [-fsanitize=undefined]): Likewise.
- ([-fsanitize=unreachable], [-fsanitize-recover]): Likewise.
- ([-fsanitize-undefined-trap-on-error]): Likewise.
- ([-floop-interchange]): Likewise.
- ([-ftree-coalesce-inlined-vars]): Likewise.
- ([-fvect-cost-model]): Likewise.
- ([-flto]): Likewise.
- ([--param]): Likewise.
- (Spec Files): Likewise.
- ([-mstrict-align]): Likewise.
- ([-mfix-cortex-a53-835769]): Likewise.
- ([-march], [-mtune]): Likewise.
- ([-mpic-register]): Likewise.
- ([-munaligned-access]): Likewise.
- ([-msp8]): Likewise.
- (EIND and Devices with more than 128 Ki Bytes of Flash): Likewise.
- (AVR Built-in Macros): Likewise.
- ([-mpreferred-stack-boundary]): Likewise.
- ([-mtune-crtl]): Likewise.
- ([-mashf]): Likewise.
- ([-mmcu=]): Likewise.
- ([-minrt]): Likewise.
- ([-maltivec], [-maltivec=be], [-maltivec=le]): Likewise.
- ([-mupper-regs]): Likewise.
- ([-matomic-model]): Likewise.
- ([-mdiv]): Likewise.
- ([-mzdcbranch]): Likewise.
- ([-mdisable-callt]): Likewise.
- ([-msoft-float]): Likewise.
- ([-m8byte-align]): Likewise.
- ([-fstack-reuse]): Likewise.
- 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-fprofile-generate], [-fprofile-use]):
- Fix markup, light copy-editing.
- ([-fauto-profile]): Rewrite to fix formatting and content
- problems.
- 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-fisolate-erroneous-paths-dereference]):
- Copy-edit description.
- ([-fisolate-erroneous-paths-attribute]): Likewise.
- * common.opt (fisolate-erroneous-paths-dereference):
- Copy-edit description.
- (fisolate-erroneous-paths-attribute): Likewise.
- 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-fsemantic-interposition]): Fix typos and
- tidy grammar.
- 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-fplan9-extensions]): Add/fix @opindex.
- ([-fvtv-debug]): Likewise.
- ([-Wc++-compat]): Likewise.
- ([-Wc++11-compat]): Likewise.
- ([-Wc++14-compat]): Likewise.
- ([-Wno-sized-deallocation]): Likewise.
- ([-femit-class-debug-always]): Likewise.
- ([-femit-struct-debug-detailed]): Likewise.
- ([-fno-keep-inline-dllexport]): Likewise.
- ([-fira-algorithm]): Likewise.
- ([-fira-region]): Likewise.
- ([-flra-remat]): Likewise.
- ([-fipa-ra]): Likewise.
- ([-fhoist-adjacent-loads]): Likewise.
- ([-fisolate-erroneous-paths-dereference]): Likewise.
- ([-fisolate-erroneous-paths-attribute]): Likewise.
- ([-ftree-switch-conversion]): Likewise.
- ([-ftree-tail-merge]): Likewise.
- ([-ftree-loop-if-convert]): Likewise.
- ([-ftree-loop-if-convert-stores]): Likewise.
- ([-ftree-loop-distribution]): Likewise.
- ([-ftree-loop-distribute-patterns]): Likewise.
- ([-flto-compression-level]): Likewise.
- ([-flto-report]): Likewise.
- ([-flto-report-wpa]): Likewise.
- ([-fuse-linker-plugin]): Likewise.
- ([-mfix-cortex-a53-835769]): Likewise.
- ([-mno-fix-cortex-a53-835769]): Likewise.
- ([-mmmx]...[-mno-3dnow]): Remove the -mno- forms from the
- explicit listing; add a note to the discussion indicating they
- exist. Reorder table to group similar options. Add missing
- @opindex entries. Add @need commands throughout the table to
- allow it to be split across multiple pages.
- ([-m8bit-idiv]): Fix @opindex.
- ([-mavx256-split-unaligned-load]): Likewise.
- ([-mavx256-split-unaligned-store]): Likewise.
- ([-mstack-protector-guard]): Likewise.
- ([-mcpu=]): Likewise.
- ([-mcpu]): Likewise.
- ([-mpointer-size=]): Likewise.
- 2015-01-03 John David Anglin <danglin@gcc.gnu.org>
- * config/pa/pa.md (decrement_and_branch_until_zero): Use `Q' constraint
- instead of `m' constraint. Likewise for unnamed movb comparison
- patterns using reg_before_reload_operand predicate.
- * config/pa/predicates.md (reg_before_reload_operand): Tighten
- predicate to reject register index and LO_SUM DLT memory forms
- after reload.
- 2015-01-02 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi (Option Summary): Fix spelling of
- -fdevirtualize-at-ltrans.
- ([-fdevirtualize]): Fix markup.
- ([-fdevirtualize-speculatively]): Fix typo.
- ([-fdevirtualize-at-ltrans]): Likewise. Make description less
- implementor-speaky.
- * common.opt (fdevirtualize-at-ltrans): Likewise.
- * ipa-devirt.c: Fix typos in comments throughout the file.
- (ipa_devirt): Fix typos in format strings for dump output.
- 2015-01-02 Sandra Loosemore <sandra@codesourcery.com>
- * doc/invoke.texi ([-fopt-info]): Fix markup, consolidate
- discussion of defaults, light copy-editing.
- 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
- * tsan.c (instrument_expr): corrected previous checkin.
- 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
- Instrument bit field and unaligned accesses for TSAN.
- * sanitizer.def (BUILT_IN_TSAN_READ_RANGE): New built-in function.
- (BUILT_IN_TSAN_WRITE_RANGE): New built-in function.
- * tsan.c (instrument_expr): Handle COMPONENT_REF and BIT_FIELD_REF.
- Use BUILT_IN_TSAN_READ_RANGE and BUILT_IN_TSAN_WRITE_RANGE for
- unaligned memory regions.
- 2015-01-01 Anthony Green <green@moxielogic.com>
- * config/moxie/predicates.md (moxie_general_movsrc_operand):
- Restrict move source register offsets to 16 bits.
- Copyright (C) 2015 Free Software Foundation, Inc.
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved.
|