ChangeLog 671 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173
  1. 2022-04-06 Thomas Schwinge <thomas@codesourcery.com>
  2. * plugin/cuda/cuda.h: Remove file.
  3. * plugin/plugin-nvptx.c [PLUGIN_NVPTX_DYNAMIC]: Include
  4. "cuda/cuda.h" instead of <cuda.h>.
  5. * plugin/configfrag.ac <PLUGIN_NVPTX_DYNAMIC>: Don't set
  6. 'PLUGIN_NVPTX_CPPFLAGS'.
  7. * configure: Regenerate.
  8. 2022-04-05 Chung-Lin Tang <cltang@codesourcery.com>
  9. * testsuite/libgomp.fortran/use_device_ptr-4.f90: New testcase.
  10. 2022-04-04 Tom de Vries <tdevries@suse.de>
  11. * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Use
  12. on_device_arch_nvptx instead of offload_target_nvptx.
  13. * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
  14. 2022-04-01 Tom de Vries <tdevries@suse.de>
  15. * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Define
  16. and use REC_DEPTH.
  17. * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
  18. 2022-04-01 Tom de Vries <tdevries@suse.de>
  19. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: Fix
  20. num_workers check.
  21. 2022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
  22. Lulu Cheng <chenglulu@loongson.cn>
  23. * configure.tgt: Add LoongArch triplet.
  24. 2022-03-28 Tom de Vries <tdevries@suse.de>
  25. * plugin/configfrag.ac: Use /$(libexecdir:\$(exec_prefix)/%=%)/
  26. instead of /libexec/.
  27. * configure: Regenerate.
  28. 2022-03-25 Tom de Vries <tdevries@suse.de>
  29. PR libgomp/105042
  30. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Reduce
  31. execution time.
  32. * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Same.
  33. * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Same.
  34. 2022-03-23 Tobias Burnus <tobias@codesourcery.com>
  35. PR middle-end/104285
  36. * testsuite/libgomp.c++/target-same-name-2-a.C: New test.
  37. * testsuite/libgomp.c++/target-same-name-2-b.C: New test.
  38. * testsuite/libgomp.c++/target-same-name-2.C: New test.
  39. * testsuite/libgomp.c-c++-common/target-same-name-1-a.c: New test.
  40. * testsuite/libgomp.c-c++-common/target-same-name-1-b.c: New test.
  41. * testsuite/libgomp.c-c++-common/target-same-name-1.c: New test.
  42. 2022-03-22 Tom de Vries <tdevries@suse.de>
  43. PR target/104916
  44. PR target/104783
  45. * testsuite/libgomp.c/pr104783-2.c: New test.
  46. 2022-03-18 Tobias Burnus <tobias@codesourcery.com>
  47. PR fortran/103039
  48. * testsuite/libgomp.fortran/associate4.f90: New test.
  49. 2022-03-18 Tom de Vries <tdevries@suse.de>
  50. PR target/104952
  51. * testsuite/libgomp.c/pr104952-1.c: New test.
  52. * testsuite/libgomp.c/pr104952-2.c: New test.
  53. 2022-03-18 Jakub Jelinek <jakub@redhat.com>
  54. * config/linux/affinity.c (gomp_affinity_init_numa_domains): Move seen
  55. variable next to pl variable.
  56. 2022-03-17 Thomas Schwinge <thomas@codesourcery.com>
  57. * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
  58. Enhance.
  59. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
  60. * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
  61. 2022-03-17 Thomas Schwinge <thomas@codesourcery.com>
  62. PR middle-end/90115
  63. * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Enhance.
  64. * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
  65. 2022-03-16 Marcel Vollweiler <marcel@codesourcery.com>
  66. * fortran.c (omp_set_num_teams_8_): Call omp_set_num_teams instead of
  67. omp_set_max_active_levels.
  68. * testsuite/libgomp.fortran/icv-8.f90: New test.
  69. 2022-03-16 Thomas Schwinge <thomas@codesourcery.com>
  70. PR testsuite/102841
  71. * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Adjust.
  72. 2022-03-13 Tobias Burnus <tobias@codesourcery.com>
  73. * libgomp.texi: Fix typo.
  74. 2022-03-12 Thomas Schwinge <thomas@codesourcery.com>
  75. PR middle-end/100280
  76. PR middle-end/104892
  77. * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
  78. * testsuite/libgomp.oacc-c-c++-common/default-1.c: Likewise.
  79. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  80. Likewise.
  81. * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
  82. Likewise.
  83. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
  84. * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
  85. * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
  86. Likewise.
  87. 2022-03-12 Thomas Schwinge <thomas@codesourcery.com>
  88. PR middle-end/104892
  89. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Point
  90. to PR104892.
  91. * testsuite/libgomp.oacc-c-c++-common/default-1.c: Likewise,
  92. enable '--param=openacc-kernels=decompose' and adjust.
  93. * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
  94. Likewise.
  95. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
  96. * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
  97. Likewise.
  98. 2022-03-12 Thomas Schwinge <thomas@codesourcery.com>
  99. PR middle-end/90115
  100. * testsuite/libgomp.oacc-c-c++-common/default-1.c: Enhance.
  101. * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c: Likewise.
  102. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
  103. * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Likewise.
  104. 2022-03-12 Thomas Schwinge <thomas@codesourcery.com>
  105. PR middle-end/100280
  106. PR middle-end/104086
  107. * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
  108. Merge this...
  109. * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
  110. ..., and this...
  111. * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: ... into
  112. this, and adjust.
  113. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  114. Extend.
  115. 2022-03-10 Hafiz Abid Qadeer <abidh@codesourcery.com>
  116. * testsuite/libgomp.fortran/allocate-1.f90: Remove pool_size
  117. trait. Test last index in w and v array. Remove redundant
  118. assignment to V(1). Move alignment checks at the end of
  119. parallel region.
  120. 2022-03-10 Tom de Vries <tdevries@suse.de>
  121. * testsuite/libgomp.c/pr104783.c: New test.
  122. 2022-03-10 Thomas Schwinge <thomas@codesourcery.com>
  123. PR middle-end/90115
  124. PR middle-end/102330
  125. PR middle-end/104774
  126. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  127. Enhance.
  128. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
  129. Adjust.
  130. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
  131. Likewise.
  132. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
  133. Likewise.
  134. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
  135. Likewise.
  136. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
  137. Likewise.
  138. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
  139. Likewise.
  140. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
  141. Likewise.
  142. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
  143. Likewise.
  144. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
  145. Likewise.
  146. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
  147. Likewise.
  148. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
  149. Likewise.
  150. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
  151. Likewise.
  152. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
  153. Likewise.
  154. * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
  155. * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
  156. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
  157. 2022-03-10 Thomas Schwinge <thomas@codesourcery.com>
  158. PR middle-end/90115
  159. * testsuite/libgomp.oacc-fortran/routine-1.f90: Enhance.
  160. * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
  161. * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
  162. * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
  163. 2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
  164. PR testsuite/104791
  165. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Fix
  166. expected diagnostics.
  167. 2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
  168. PR middle-end/104784
  169. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
  170. Test with '--param=openacc-kernels=decompose'.
  171. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
  172. Likewise.
  173. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
  174. Likewise.
  175. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
  176. Likewise.
  177. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
  178. Likewise.
  179. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
  180. Likewise.
  181. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
  182. Likewise.
  183. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
  184. Likewise.
  185. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
  186. Likewise.
  187. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
  188. Likewise.
  189. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
  190. Likewise.
  191. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
  192. Likewise.
  193. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
  194. Likewise.
  195. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
  196. Likewise.
  197. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
  198. Likewise.
  199. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
  200. Likewise.
  201. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
  202. Likewise.
  203. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
  204. Likewise.
  205. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
  206. Likewise.
  207. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
  208. Likewise.
  209. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
  210. Likewise.
  211. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
  212. Likewise.
  213. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
  214. Likewise.
  215. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
  216. Likewise.
  217. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
  218. Likewise.
  219. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
  220. Likewise.
  221. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
  222. Likewise.
  223. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
  224. Likewise.
  225. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
  226. Likewise.
  227. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
  228. Likewise.
  229. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
  230. Likewise.
  231. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
  232. Likewise.
  233. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
  234. Likewise.
  235. 2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
  236. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
  237. Test '-fopt-info-omp-all'.
  238. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
  239. Likewise.
  240. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
  241. Likewise.
  242. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
  243. Likewise.
  244. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
  245. Likewise.
  246. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
  247. Likewise.
  248. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
  249. Likewise.
  250. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
  251. Likewise.
  252. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
  253. Likewise.
  254. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
  255. Likewise.
  256. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
  257. Likewise.
  258. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
  259. Likewise.
  260. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
  261. Likewise.
  262. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
  263. Likewise.
  264. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
  265. Likewise.
  266. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
  267. Likewise.
  268. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
  269. Likewise.
  270. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
  271. Likewise.
  272. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
  273. Likewise.
  274. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
  275. Likewise.
  276. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
  277. Likewise.
  278. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
  279. Likewise.
  280. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
  281. Likewise.
  282. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
  283. Likewise.
  284. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
  285. Likewise.
  286. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
  287. Likewise.
  288. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
  289. Likewise.
  290. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
  291. Likewise.
  292. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
  293. Likewise.
  294. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
  295. Likewise.
  296. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
  297. Likewise.
  298. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
  299. Likewise.
  300. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
  301. Likewise.
  302. 2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
  303. PR middle-end/100280
  304. PR middle-end/104132
  305. PR middle-end/104133
  306. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  307. Extend.
  308. 2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
  309. PR middle-end/100280
  310. * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Adjust.
  311. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  312. Likewise.
  313. 2022-03-04 Thomas Schwinge <thomas@codesourcery.com>
  314. PR middle-end/100280
  315. * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Adjust.
  316. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  317. Likewise.
  318. 2022-02-28 Tom de Vries <tdevries@suse.de>
  319. * testsuite/libgomp.c/declare-variant-3-sm30.c: Add -foffload=-mptx=_.
  320. * testsuite/libgomp.c/declare-variant-3-sm35.c: Same.
  321. * testsuite/libgomp.c/declare-variant-3-sm53.c: Same.
  322. * testsuite/libgomp.c/declare-variant-3-sm70.c: Same.
  323. * testsuite/libgomp.c/declare-variant-3-sm75.c: Same.
  324. * testsuite/libgomp.c/declare-variant-3-sm80.c: Same.
  325. 2022-02-24 Tom de Vries <tdevries@suse.de>
  326. * testsuite/libgomp.c/declare-variant-3-sm30.c: New test.
  327. * testsuite/libgomp.c/declare-variant-3-sm35.c: New test.
  328. * testsuite/libgomp.c/declare-variant-3-sm53.c: New test.
  329. * testsuite/libgomp.c/declare-variant-3-sm70.c: New test.
  330. * testsuite/libgomp.c/declare-variant-3-sm75.c: New test.
  331. * testsuite/libgomp.c/declare-variant-3-sm80.c: New test.
  332. * testsuite/libgomp.c/declare-variant-3.h: New header file.
  333. 2022-02-22 Thomas Schwinge <thomas@codesourcery.com>
  334. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Fix OpenACC
  335. gang-redundant execution.
  336. 2022-02-22 Tom de Vries <tdevries@suse.de>
  337. PR target/99555
  338. * config/nvptx/bar.c (generation_to_barrier): New function, copied
  339. from config/rtems/bar.c.
  340. (futex_wait, futex_wake): New function.
  341. (do_spin, do_wait): New function, copied from config/linux/wait.h.
  342. (gomp_barrier_wait_end, gomp_barrier_wait_last)
  343. (gomp_team_barrier_wake, gomp_team_barrier_wait_end):
  344. (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): Remove
  345. and replace with include of config/linux/bar.c.
  346. * config/nvptx/bar.h (gomp_barrier_t): Add fields waiters and lock.
  347. (gomp_barrier_init): Init new fields.
  348. * testsuite/libgomp.c-c++-common/task-detach-6.c: Remove nvptx-specific
  349. workarounds.
  350. * testsuite/libgomp.c/pr99555-1.c: Same.
  351. * testsuite/libgomp.fortran/task-detach-6.f90: Same.
  352. 2022-02-22 Tom de Vries <tdevries@suse.de>
  353. PR testsuite/104146
  354. * testsuite/libgomp.c++/pr96390.C: Add additional-option
  355. -foffload=-Wa,--verify for nvptx.
  356. * testsuite/libgomp.c-c++-common/pr96390.c: Same.
  357. 2022-02-15 Tobias Burnus <tobias@codesourcery.com>
  358. * testsuite/libgomp.fortran/depend-4.f90: New test.
  359. 2022-02-10 Tobias Burnus <tobias@codesourcery.com>
  360. PR c++/102204
  361. * testsuite/libgomp.c++/target-virtual-1.C: New test.
  362. 2022-02-10 Marcel Vollweiler <marcel@codesourcery.com>
  363. * libgomp.texi: Updated entry for HAS_DEVICE_ADDR.
  364. * target.c (copy_firstprivate_data): Copy only if host address is not
  365. NULL.
  366. * testsuite/libgomp.c++/target-has-device-addr-2.C: New test.
  367. * testsuite/libgomp.c++/target-has-device-addr-4.C: New test.
  368. * testsuite/libgomp.c++/target-has-device-addr-5.C: New test.
  369. * testsuite/libgomp.c++/target-has-device-addr-6.C: New test.
  370. * testsuite/libgomp.c-c++-common/target-has-device-addr-1.c: New test.
  371. * testsuite/libgomp.c/target-has-device-addr-3.c: New test.
  372. * testsuite/libgomp.fortran/target-has-device-addr-1.f90: New test.
  373. * testsuite/libgomp.fortran/target-has-device-addr-2.f90: New test.
  374. * testsuite/libgomp.fortran/target-has-device-addr-3.f90: New test.
  375. * testsuite/libgomp.fortran/target-has-device-addr-4.f90: New test.
  376. 2022-02-08 Jakub Jelinek <jakub@redhat.com>
  377. PR libgomp/104385
  378. * task.c (gomp_task_run_post_handle_dependers): If parent is NULL,
  379. clear task->parent.
  380. * testsuite/libgomp.c/pr104385.c: New test.
  381. 2022-02-04 Tobias Burnus <tobias@codesourcery.com>
  382. * testsuite/libgomp.fortran/allocate-1.f90: Remove spurious
  383. STOP of previous commit.
  384. 2022-02-04 Tobias Burnus <tobias@codesourcery.com>
  385. * testsuite/libgomp.fortran/allocate-1.c (is_64bit_aligned): Renamed
  386. from is_64bit_aligned_.
  387. * testsuite/libgomp.fortran/allocate-1.f90: Fix interface decl
  388. and use it, more implicit none, remove unused argument.
  389. 2022-02-03 David Seifert <soap@gentoo.org>
  390. Jakub Jelinek <jakub@redhat.com>
  391. * configure.ac: Support --disable-werror.
  392. * configure: Regenerate.
  393. 2022-02-01 Tom de Vries <tdevries@suse.de>
  394. * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: Remove
  395. PR83812 workaround.
  396. * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: Same.
  397. * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90: Same.
  398. 2022-02-01 Tom de Vries <tdevries@suse.de>
  399. * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Reduce
  400. num_workers for nvidia accelerator to fix libgomp error 'insufficient
  401. resources'.
  402. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
  403. Same.
  404. * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Same.
  405. 2022-02-01 Tom de Vries <tdevries@suse.de>
  406. * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
  407. recursion depth.
  408. * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
  409. 2022-01-31 Martin Liska <mliska@suse.cz>
  410. * acinclude.m4: Detect *_ld_is_mold and use it.
  411. * configure: Regenerate.
  412. 2022-01-27 Tobias Burnus <tobias@codesourcery.com>
  413. * libgomp.texi (OpenMP 5.0): Update implementation status.
  414. 2022-01-21 Thomas Schwinge <thomas@codesourcery.com>
  415. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Strengthen.
  416. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
  417. * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
  418. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
  419. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
  420. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
  421. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
  422. * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
  423. * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
  424. * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
  425. * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
  426. * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
  427. * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
  428. * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
  429. * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
  430. 2022-01-19 Marcel Vollweiler <marcel@codesourcery.com>
  431. * config/gcn/icv-device.c: Make GOMP_DEVICE_NUM_VAR public (remove
  432. "static") to make the device num available in the offload image.
  433. 2022-01-19 Martin Liska <mliska@suse.cz>
  434. Thomas Schwinge <thomas@codesourcery.com>
  435. * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Update scanning
  436. patterns.
  437. * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
  438. * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
  439. Likewise.
  440. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
  441. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
  442. * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
  443. * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: Likewise.
  444. * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
  445. Likewise.
  446. * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c:
  447. Likewise.
  448. * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c:
  449. Likewise.
  450. * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c:
  451. Likewise.
  452. * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90:
  453. Likewise.
  454. * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
  455. Likewise.
  456. * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
  457. * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
  458. * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
  459. 2022-01-18 Martin Liska <mliska@suse.cz>
  460. * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Update keyword
  461. in dg-warning.
  462. * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
  463. * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
  464. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
  465. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
  466. * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
  467. * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: Likewise.
  468. * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c: Likewise.
  469. * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: Likewise.
  470. * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: Likewise.
  471. * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: Likewise.
  472. * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Likewise.
  473. * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: Likewise.
  474. * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
  475. * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
  476. * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
  477. 2022-01-17 Thomas Schwinge <thomas@codesourcery.com>
  478. * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Extend.
  479. * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
  480. * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
  481. 2022-01-17 Julian Brown <julian@codesourcery.com>
  482. Thomas Schwinge <thomas@codesourcery.com>
  483. * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: New test.
  484. * testsuite/libgomp.oacc-c++/privatized-ref-2.C: New test.
  485. * testsuite/libgomp.oacc-c++/privatized-ref-3.C: New test.
  486. 2022-01-16 Kwok Cheung Yeung <kcy@codesourcery.com>
  487. Andrew Stubbs <ams@codesourcery.com>
  488. * plugin/plugin-gcn.c (parse_target_attributes): Automatically set
  489. the number of teams and threads if necessary.
  490. (gcn_exec): Automatically set the number of gangs and workers if
  491. necessary.
  492. 2022-01-13 Hafiz Abid Qadeer <abidh@codesourcery.com>
  493. * testsuite/libgomp.fortran/allocate-1.c: New test.
  494. * testsuite/libgomp.fortran/allocate-1.f90: New test.
  495. * libgomp.texi: Remove string that says that allocate clause
  496. support is for C/C++ only.
  497. 2022-01-13 Thomas Schwinge <thomas@codesourcery.com>
  498. * testsuite/libgomp.c-c++-common/on_device_arch.h
  499. (any_device_arch, any_device_arch_intel_mic): New.
  500. * testsuite/lib/libgomp.exp
  501. (check_effective_target_offload_device_any_intel_mic): New.
  502. * testsuite/libgomp.c-c++-common/target-45.c: Use it.
  503. * testsuite/libgomp.fortran/target10.f90: Likewise.
  504. 2022-01-13 Thomas Schwinge <thomas@codesourcery.com>
  505. PR tree-optimization/102192
  506. * testsuite/libgomp.oacc-fortran/routine-10.f90: Document current
  507. '-Wuninitialized' diagnostics.
  508. 2022-01-13 Thomas Schwinge <thomas@codesourcery.com>
  509. * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Document
  510. current '-Wuninitialized' diagnostics.
  511. * testsuite/libgomp.oacc-fortran/data-5.f90: Likewise.
  512. * testsuite/libgomp.oacc-fortran/gemm-2.f90: Likewise.
  513. * testsuite/libgomp.oacc-fortran/gemm.f90: Likewise.
  514. * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Likewise.
  515. * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
  516. * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
  517. * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: Likewise.
  518. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
  519. * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
  520. * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
  521. * testsuite/libgomp.oacc-fortran/reference-reductions.f90:
  522. Likewise.
  523. 2022-01-13 Thomas Schwinge <thomas@codesourcery.com>
  524. * testsuite/libgomp.c/address-space-1.c: Remove 'dg-xfail-run-if'
  525. for 'offload_device_intel_mic'.
  526. 2022-01-13 Julian Brown <julian@codesourcery.com>
  527. Thomas Schwinge <thomas@codesourcery.com>
  528. * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Remove GCN
  529. offloading execution XFAIL.
  530. 2022-01-13 Thomas Schwinge <thomas@codesourcery.com>
  531. PR middle-end/100280
  532. * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
  533. Update.
  534. * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Likewise.
  535. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  536. Likewise.
  537. 2022-01-13 Thomas Schwinge <thomas@codesourcery.com>
  538. * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
  539. Enhance.
  540. * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
  541. Likewise.
  542. * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Likewise.
  543. * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Likewise.
  544. * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: Likewise.
  545. * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: Likewise.
  546. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  547. Likewise.
  548. * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
  549. * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
  550. * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
  551. * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
  552. 2022-01-04 Tobias Burnus <tobias@codesourcery.com>
  553. * testsuite/libgomp.c-c++-common/target-45.c: Iterate over all devices.
  554. * testsuite/libgomp.fortran/target10.f90: Likewise.
  555. 2022-01-04 Chung-Lin Tang <cltang@codesourcery.com>
  556. * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Change uses of STRINGX
  557. into XSTRING when looking for GOMP_DEVICE_NUM_VAR in offload image.
  558. * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
  559. 2022-01-03 Jakub Jelinek <jakub@redhat.com>
  560. * libgomp.texi: Bump @copying's copyright year.
  561. 2021-12-13 Tobias Burnus <tobias@codesourcery.com>
  562. * libgomp.texi (OpenMP 5.1): Set Fortran support for atomic to 'Y'.
  563. * testsuite/libgomp.fortran/atomic-19.f90: New test.
  564. 2021-12-10 Andrew Stubbs <ams@codesourcery.com>
  565. * plugin/plugin-gcn.c (struct gcn_image_desc): Remove global_variables.
  566. (GOMP_OFFLOAD_load_image): Locate the offload variables via the
  567. table, not individual symbols.
  568. 2021-12-09 Chung-Lin Tang <cltang@codesourcery.com>
  569. * testsuite/libgomp.c++/target-lambda-1.C: Only run under
  570. "target offload_device_nonshared_as"
  571. * testsuite/libgomp.c++/target-this-3.C: Likewise.
  572. * testsuite/libgomp.c++/target-this-4.C: Likewise.
  573. 2021-12-08 Chung-Lin Tang <cltang@codesourcery.com>
  574. * target.c (gomp_map_vars_existing): Make sure attached pointer is
  575. not overwritten during cross-host/device copying.
  576. (gomp_update): Likewise.
  577. (gomp_exit_data): Likewise.
  578. * testsuite/libgomp.c++/target-11.C: Adjust testcase.
  579. * testsuite/libgomp.c++/target-12.C: Likewise.
  580. * testsuite/libgomp.c++/target-15.C: Likewise.
  581. * testsuite/libgomp.c++/target-16.C: Likewise.
  582. * testsuite/libgomp.c++/target-17.C: Likewise.
  583. * testsuite/libgomp.c++/target-21.C: Likewise.
  584. * testsuite/libgomp.c++/target-23.C: Likewise.
  585. * testsuite/libgomp.c/target-23.c: Likewise.
  586. * testsuite/libgomp.c/target-29.c: Likewise.
  587. * testsuite/libgomp.c-c++-common/target-implicit-map-2.c: New testcase.
  588. 2021-12-08 Chung-Lin Tang <cltang@codesourcery.com>
  589. PR middle-end/92120
  590. * libgomp.h (gomp_attach_pointer): Add bool parameter.
  591. * oacc-mem.c (acc_attach_async): Update call to gomp_attach_pointer.
  592. (goacc_enter_data_internal): Likewise.
  593. * target.c (gomp_map_vars_existing): Update assert condition to
  594. include GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION.
  595. (gomp_map_pointer): Add 'bool allow_zero_length_array_sections'
  596. parameter, add support for mapping a pointer with NULL target.
  597. (gomp_attach_pointer): Add 'bool allow_zero_length_array_sections'
  598. parameter, add support for attaching a pointer with NULL target.
  599. (gomp_map_vars_internal): Update calls to gomp_map_pointer and
  600. gomp_attach_pointer, add handling for
  601. GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION, and
  602. GOMP_MAP_POINTER_TO_ZERO_LENGTH_ARRAY_SECTION cases.
  603. * testsuite/libgomp.c++/target-23.C: New testcase.
  604. * testsuite/libgomp.c++/target-lambda-1.C: New testcase.
  605. * testsuite/libgomp.c++/target-lambda-2.C: New testcase.
  606. * testsuite/libgomp.c++/target-this-1.C: New testcase.
  607. * testsuite/libgomp.c++/target-this-2.C: New testcase.
  608. * testsuite/libgomp.c++/target-this-3.C: New testcase.
  609. * testsuite/libgomp.c++/target-this-4.C: New testcase.
  610. * testsuite/libgomp.c++/target-this-5.C: New testcase.
  611. 2021-12-04 Tobias Burnus <tobias@codesourcery.com>
  612. * libgomp.texi (OpenMP 5.1): Update status.
  613. 2021-12-04 Tobias Burnus <tobias@codesourcery.com>
  614. * libgomp.texi (OMP_PLACES): Extend description for OMP 5.1 changes.
  615. 2021-12-02 Chung-Lin Tang <cltang@codesourcery.com>
  616. PR fortran/90030
  617. * testsuite/libgomp.oacc-fortran/pr90030.f90: New test.
  618. * testsuite/libgomp.fortran/pr90030.f90: New test.
  619. 2021-11-30 Kwok Cheung Yeung <kcy@codesourcery.com>
  620. Thomas Schwinge <thomas@codesourcery.com>
  621. * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Remove
  622. temporary skip.
  623. 2021-11-30 Cesar Philippidis <cesar@codesourcery.com>
  624. Thomas Schwinge <thomas@codesourcery.com>
  625. * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Temporarily
  626. skip.
  627. 2021-11-29 Richard Biener <rguenther@suse.de>
  628. * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): Remove unreachable
  629. return.
  630. 2021-11-24 Jakub Jelinek <jakub@redhat.com>
  631. PR middle-end/103384
  632. * testsuite/libgomp.c/declare-variant-2.c: New test.
  633. 2021-11-18 David Edelsohn <dje.gcc@gmail.com>
  634. * alloc.c (gomp_aligned_alloc): Fix typo.
  635. 2021-11-18 Jakub Jelinek <jakub@redhat.com>
  636. PR libgomp/102838
  637. * libgomp.h (GOMP_USE_ALIGNED_WORK_SHARES): Define if
  638. GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined and __AMDGCN__ is not.
  639. (struct gomp_work_share): Use GOMP_USE_ALIGNED_WORK_SHARES instead of
  640. GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC.
  641. * work.c (alloc_work_share, gomp_work_share_start): Likewise.
  642. * team.c (gomp_new_team): If GOMP_USE_ALIGNED_WORK_SHARES, use
  643. gomp_aligned_alloc instead of team_malloc.
  644. 2021-11-18 Jakub Jelinek <jakub@redhat.com>
  645. PR libgomp/102838
  646. * alloc.c (gomp_aligned_alloc): Prefer _aligned_alloc over
  647. memalign over posix_memalign over aligned_alloc over fallback
  648. with malloc instead of aligned_alloc over _aligned_alloc over
  649. posix_memalign over memalign over fallback with malloc. For
  650. aligned_alloc, round up size up to multiple of al.
  651. 2021-11-16 Jakub Jelinek <jakub@redhat.com>
  652. * libgomp.texi (OpenMP 5.1): Mark thread_limit clause to target
  653. construct as implemented.
  654. 2021-11-15 Tobias Burnus <tobias@codesourcery.com>
  655. * testsuite/libgomp.fortran/thread-limit-1.f90: New test.
  656. 2021-11-15 Jakub Jelinek <jakub@redhat.com>
  657. * task.c (gomp_create_target_task): Copy args array as well.
  658. * target.c (gomp_target_fallback): Add args argument.
  659. Set gomp_icv (true)->thread_limit_var if thread_limit is present.
  660. (GOMP_target): Adjust gomp_target_fallback caller.
  661. (GOMP_target_ext): Likewise.
  662. (gomp_target_task_fn): Likewise.
  663. * config/nvptx/team.c (gomp_nvptx_main): Set
  664. gomp_global_icv.thread_limit_var.
  665. * testsuite/libgomp.c-c++-common/thread-limit-1.c: New test.
  666. 2021-11-15 Jakub Jelinek <jakub@redhat.com>
  667. * config/nvptx/team.c (__gomp_team_num): Define as
  668. __attribute__((shared)) var.
  669. (gomp_nvptx_main): Initialize __gomp_team_num to 0.
  670. * config/nvptx/target.c (__gomp_team_num): Declare as
  671. extern __attribute__((shared)) var.
  672. (GOMP_teams4): Use __gomp_team_num as the team number instead of
  673. %ctaid.x. If first, initialize it to %ctaid.x. If num_teams_lower
  674. is bigger than num_blocks, use num_teams_lower teams and arrange for
  675. bumping of __gomp_team_num if !first and returning false once we run
  676. out of teams.
  677. * config/nvptx/teams.c (__gomp_team_num): Declare as
  678. extern __attribute__((shared)) var.
  679. (omp_get_team_num): Return __gomp_team_num value instead of %ctaid.x.
  680. 2021-11-15 Jakub Jelinek <jakub@redhat.com>
  681. * testsuite/libgomp.c/teams-5.c: New test.
  682. 2021-11-12 Jakub Jelinek <jakub@redhat.com>
  683. PR target/103201
  684. * config/gcn/icv-device.c (omp_get_num_teams, omp_get_team_num): Move
  685. to ...
  686. * config/gcn/teams.c: ... here. New file.
  687. 2021-11-12 Chung-Lin Tang <cltang@codesourcery.com>
  688. * target.c (gomp_map_vars_existing): Add 'bool implicit' parameter, add
  689. implicit map handling to allow a "superset" existing map as valid case.
  690. (get_kind): Adjust to filter out GOMP_MAP_IMPLICIT bits in return value.
  691. (get_implicit): New function to extract implicit status.
  692. (gomp_map_fields_existing): Adjust arguments in calls to
  693. gomp_map_vars_existing, and add uses of get_implicit.
  694. (gomp_map_vars_internal): Likewise.
  695. * testsuite/libgomp.c-c++-common/target-implicit-map-1.c: New test.
  696. 2021-11-12 Jakub Jelinek <jakub@redhat.com>
  697. * libgomp_g.h (GOMP_teams4): Declare.
  698. * libgomp.map (GOMP_5.1): Export GOMP_teams4.
  699. * target.c (GOMP_teams4): New function.
  700. * config/nvptx/target.c (GOMP_teams): Remove.
  701. (GOMP_teams4): New function.
  702. * config/gcn/target.c (GOMP_teams): Remove.
  703. (GOMP_teams4): New function.
  704. * testsuite/libgomp.c/teams-4.c (main): Expect exactly 2
  705. teams instead of <= 2.
  706. * testsuite/libgomp.c-c++-common/teams-2.c: New test.
  707. 2021-11-11 Tobias Burnus <tobias@codesourcery.com>
  708. * testsuite/libgomp.fortran/teams-1.f90: New test.
  709. 2021-11-11 Jakub Jelinek <jakub@redhat.com>
  710. * libgomp.h (struct gomp_thread): Add num_teams and team_num members.
  711. * team.c (struct gomp_thread_start_data): Likewise.
  712. (gomp_thread_start): Initialize thr->num_teams and thr->team_num.
  713. (gomp_team_start): Initialize start_data->num_teams and
  714. start_data->team_num. Update nthr->num_teams and nthr->team_num.
  715. * teams.c (gomp_num_teams, gomp_team_num): Remove.
  716. (GOMP_teams_reg): Set and restore thr->num_teams and thr->team_num
  717. instead of gomp_num_teams and gomp_team_num.
  718. (omp_get_num_teams): Use thr->num_teams + 1 instead of gomp_num_teams.
  719. (omp_get_team_num): Use thr->team_num instead of gomp_team_num.
  720. * testsuite/libgomp.c/teams-4.c: New test.
  721. 2021-11-11 Jakub Jelinek <jakub@redhat.com>
  722. * testsuite/libgomp.c-c++-common/teams-1.c: New test.
  723. 2021-11-09 Thomas Schwinge <thomas@codesourcery.com>
  724. * env.c (parse_gomp_openacc_dim): Restore parsing.
  725. 2021-10-30 Tobias Burnus <tobias@codesourcery.com>
  726. PR middle-end/102972
  727. * testsuite/libgomp.c-c++-common/icv-3.c: Nest API calls inside
  728. parallel construct.
  729. * testsuite/libgomp.c-c++-common/icv-4.c: Likewise.
  730. * testsuite/libgomp.c/target-3.c: Likewise.
  731. * testsuite/libgomp.c/target-5.c: Likewise.
  732. * testsuite/libgomp.c/target-6.c: Likewise.
  733. * testsuite/libgomp.c/target-teams-1.c: Likewise.
  734. * testsuite/libgomp.c/teams-1.c: Likewise.
  735. * testsuite/libgomp.c/thread-limit-2.c: Likewise.
  736. * testsuite/libgomp.c/thread-limit-3.c: Likewise.
  737. * testsuite/libgomp.c/thread-limit-4.c: Likewise.
  738. * testsuite/libgomp.c/thread-limit-5.c: Likewise.
  739. * testsuite/libgomp.fortran/icv-3.f90: Likewise.
  740. * testsuite/libgomp.fortran/icv-4.f90: Likewise.
  741. * testsuite/libgomp.fortran/teams1.f90: Likewise.
  742. 2021-10-29 Aldy Hernandez <aldyh@redhat.com>
  743. * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for threading changes.
  744. * testsuite/libgomp.graphite/force-parallel-8.c: Same.
  745. 2021-10-27 Jakub Jelinek <jakub@redhat.com>
  746. * libgomp.texi (OpenMP 5.0): Mention that Non-rectangular loop nests
  747. aren't implemented for Fortran yet.
  748. 2021-10-27 Jakub Jelinek <jakub@redhat.com>
  749. * testsuite/libgomp.c/loop-26.c: New test.
  750. * testsuite/libgomp.c/loop-27.c: New test.
  751. 2021-10-25 Tobias Burnus <tobias@codesourcery.com>
  752. PR testsuite/102910
  753. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Use __builtin_alloca
  754. instead of #include <alloca.h> + alloca.
  755. 2021-10-21 Chung-Lin Tang <cltang@codesourcery.com>
  756. * libgomp.texi (Support of strictly structured blocks in Fortran):
  757. Adjust to 'Y'.
  758. * testsuite/libgomp.fortran/task-reduction-16.f90: Adjust testcase.
  759. 2021-10-20 Chung-Lin Tang <cltang@codesourcery.com>
  760. * testsuite/libgomp.fortran/target-in-reduction-1.f90: New test.
  761. * testsuite/libgomp.fortran/target-in-reduction-2.f90: New test.
  762. 2021-10-20 Jakub Jelinek <jakub@redhat.com>
  763. PR libgomp/102838
  764. * libgomp.h (struct gomp_work_share_1st_cacheline): New type.
  765. (struct gomp_work_share): Only use aligned(64) attribute if
  766. GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined, otherwise just
  767. add padding before lock to ensure lock is at offset 64 bytes
  768. into the structure.
  769. (gomp_workshare_struct_check1, gomp_workshare_struct_check2):
  770. New poor man's static assertions.
  771. * work.c (gomp_work_share_start): Use gomp_aligned_alloc instead of
  772. gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC.
  773. 2021-10-20 Aldy Hernandez <aldyh@redhat.com>
  774. Richard Biener <rguenther@suse.de>
  775. * testsuite/libgomp.graphite/force-parallel-5.c: Remove xfail.
  776. 2021-10-18 Jakub Jelinek <jakub@redhat.com>
  777. * config/linux/affinity.c (gomp_affinity_init_numa_domains): Add
  778. && gomp_places_list_len < count after nfirst <= nlast loop condition.
  779. 2021-10-18 Tobias Burnus <tobias@codesourcery.com>
  780. PR fortran/102086
  781. PR fortran/92189
  782. PR fortran/92621
  783. PR fortran/101308
  784. PR fortran/101309
  785. PR fortran/101635
  786. PR fortran/92482
  787. * testsuite/libgomp.fortran/optional-bind-c.f90: New test.
  788. 2021-10-15 Jakub Jelinek <jakub@redhat.com>
  789. * testsuite/libgomp.c/affinity-1.c (struct places): Change name field
  790. type from char [50] to const char *.
  791. (places_array): Add a testcase for simplified syntax place followed
  792. by length or length and stride.
  793. 2021-10-15 Jakub Jelinek <jakub@redhat.com>
  794. * env.c (parse_one_place): Handle non-negative-number the same
  795. as { non-negative-number }. Reject even !number:1 and
  796. !number:1:stride or !place:1 or !place:1:stride instead of just
  797. length other than 1.
  798. * libgomp.texi (OpenMP 5.1): Document OMP_PLACES syntax extensions
  799. and OMP_NUM_TEAMS/OMP_TEAMS_THREAD_LIMIT and
  800. omp_{set_num,get_max}_teams/omp_{s,g}et_teams_thread_limit features
  801. as implemented.
  802. * testsuite/libgomp.c/affinity-1.c: Add a test for the 5.1 place
  803. simplified syntax.
  804. 2021-10-15 Jakub Jelinek <jakub@redhat.com>
  805. * env.c (parse_schedule): For strtoul or strtoull calls which don't
  806. clearly reject return value 0 as invalid handle the case where end
  807. pointer is the same as first argument as invalid.
  808. (parse_unsigned_long_1): Likewise.
  809. (parse_one_place): Likewise.
  810. (parse_places_var): Likewise.
  811. (parse_stacksize): Likewise.
  812. (parse_spincount): Likewise.
  813. (parse_affinity): Likewise.
  814. (parse_gomp_openacc_dim): Likewise. Avoid strict aliasing violation.
  815. Make code valid C89.
  816. * config/linux/affinity.c (gomp_affinity_find_last_cache_level):
  817. For strtoul calls which don't clearly reject return value 0 as
  818. invalid handle the case where end pointer is the same as first
  819. argument as invalid.
  820. (gomp_affinity_init_level_1): Likewise.
  821. (gomp_affinity_init_numa_domains): Likewise.
  822. * config/rtems/proc.c (parse_thread_pools): Likewise.
  823. 2021-10-15 Jakub Jelinek <jakub@redhat.com>
  824. * config/linux/affinity.c (gomp_affinity_init_level_1): For level 1
  825. after creating count places clean up and return immediately.
  826. * testsuite/libgomp.c/places-6.c: New test.
  827. * testsuite/libgomp.c/places-7.c: New test.
  828. * testsuite/libgomp.c/places-8.c: New test.
  829. * testsuite/libgomp.c/places-9.c: New test.
  830. * testsuite/libgomp.c/places-10.c: New test.
  831. 2021-10-15 Jakub Jelinek <jakub@redhat.com>
  832. * env.c (parse_places_var): Handle numa_domains as level 5.
  833. * config/linux/affinity.c (gomp_affinity_init_numa_domains): New
  834. function.
  835. (gomp_affinity_init_level): Use it instead of
  836. gomp_affinity_init_level_1 for level == 5.
  837. * testsuite/libgomp.c/places-5.c: New test.
  838. 2021-10-15 Jakub Jelinek <jakub@redhat.com>
  839. * env.c (parse_places_var): Handle ll_caches as level 4.
  840. * config/linux/affinity.c (gomp_affinity_find_last_cache_level): New
  841. function.
  842. (gomp_affinity_init_level_1): Handle level 4 as logical cpus sharing
  843. last level cache.
  844. (gomp_affinity_init_level): Likewise.
  845. * testsuite/libgomp.c/places-1.c: New test.
  846. * testsuite/libgomp.c/places-2.c: New test.
  847. * testsuite/libgomp.c/places-3.c: New test.
  848. * testsuite/libgomp.c/places-4.c: New test.
  849. 2021-10-14 Kwok Cheung Yeung <kcy@codesourcery.com>
  850. * libgomp.texi (OpenMP 5.0): Update entry for declare variant
  851. directive.
  852. 2021-10-14 Kwok Cheung Yeung <kcy@codesourcery.com>
  853. * testsuite/libgomp.fortran/declare-variant-1.f90: New test.
  854. 2021-10-12 Julian Brown <julian@codesourcery.com>
  855. * target.c (gomp_copy_host2dev): Release device lock on cbuf
  856. error path.
  857. 2021-10-12 Tobias Burnus <tobias@codesourcery.com>
  858. * testsuite/libgomp.fortran/icv-3.f90: New.
  859. * testsuite/libgomp.fortran/icv-4.f90: New.
  860. 2021-10-12 Jakub Jelinek <jakub@redhat.com>
  861. * libgomp.texi (omp_get_max_teams, omp_get_teams_thread_limit,
  862. omp_set_num_teams, omp_set_teams_thread_limit, OMP_NUM_TEAMS,
  863. OMP_TEAMS_THREAD_LIMIT): Document.
  864. 2021-10-12 Jakub Jelinek <jakub@redhat.com>
  865. * libgomp.texi (omp_get_device_num): Move @node before omp_get_dynamic
  866. to avoid makeinfo warnings.
  867. 2021-10-12 Jakub Jelinek <jakub@redhat.com>
  868. * testsuite/libgomp.c-c++-common/icv-3.c: New test.
  869. * testsuite/libgomp.c-c++-common/icv-4.c: New test.
  870. 2021-10-12 Jakub Jelinek <jakub@redhat.com>
  871. PR libgomp/102628
  872. PR libgomp/102668
  873. * testsuite/libgomp.c-c++-common/alloc-9.c (main): Decrease
  874. allocation sizes from 420 to 320 and from 768 to 568.
  875. * testsuite/libgomp.fortran/alloc-11.f90: Likewise.
  876. * testsuite/libgomp.fortran/alloc-1.F90: Change expected alignment
  877. for cr from 16 to 4.
  878. 2021-10-12 Jakub Jelinek <jakub@redhat.com>
  879. * testsuite/libgomp.c/scan-11.c: Remove option -fvect-cost-model=cheap.
  880. * testsuite/libgomp.c/scan-12.c: Likewise.
  881. * testsuite/libgomp.c/scan-13.c: Likewise.
  882. * testsuite/libgomp.c/scan-14.c: Likewise.
  883. * testsuite/libgomp.c/scan-15.c: Likewise.
  884. * testsuite/libgomp.c/scan-16.c: Likewise.
  885. * testsuite/libgomp.c/scan-17.c: Likewise.
  886. * testsuite/libgomp.c/scan-18.c: Likewise.
  887. * testsuite/libgomp.c/scan-19.c: Likewise.
  888. * testsuite/libgomp.c/scan-20.c: Likewise.
  889. * testsuite/libgomp.c/scan-21.c: Likewise.
  890. * testsuite/libgomp.c/scan-22.c: Likewise.
  891. * testsuite/libgomp.c++/scan-9.C: Likewise.
  892. * testsuite/libgomp.c++/scan-10.C: Likewise.
  893. * testsuite/libgomp.c++/scan-11.C: Likewise.
  894. * testsuite/libgomp.c++/scan-12.C: Likewise.
  895. * testsuite/libgomp.c++/scan-13.C: Likewise.
  896. * testsuite/libgomp.c++/scan-14.C: Likewise.
  897. * testsuite/libgomp.c++/scan-15.C: Likewise.
  898. * testsuite/libgomp.c++/scan-16.C: Likewise.
  899. 2021-10-12 Kewen Lin <linkw@linux.ibm.com>
  900. * testsuite/libgomp.graphite/force-parallel-8.c: Add --param max-stores-to-sink=0.
  901. 2021-10-11 Marcel Vollweiler <marcel@codesourcery.com>
  902. * allocator.c (omp_init_allocator): Replace omp_atv_sequential with
  903. omp_atv_serialized.
  904. * omp.h.in: Add deprecated flag for omp_atv_sequential.
  905. * omp_lib.f90.in: Add deprecated flag for omp_atv_sequential.
  906. * testsuite/libgomp.c-c++-common/alloc-10.c: New test.
  907. * testsuite/libgomp.fortran/alloc-12.f90: New test.
  908. 2021-10-11 Jakub Jelinek <jakub@redhat.com>
  909. * omp.h.in (omp_set_num_teams, omp_get_max_teams,
  910. omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
  911. * omp_lib.f90.in (omp_set_num_teams, omp_get_max_teams,
  912. omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
  913. * omp_lib.h.in (omp_set_num_teams, omp_get_max_teams,
  914. omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
  915. * libgomp.h (gomp_nteams_var, gomp_teams_thread_limit_var): Declare.
  916. * libgomp.map (OMP_5.1): Export omp_get_max_teams{,_},
  917. omp_get_teams_thread_limit{,_}, omp_set_num_teams{,_,_8_} and
  918. omp_set_teams_thread_limit{,_,_8_}.
  919. * icv.c (omp_set_num_teams, omp_get_max_teams,
  920. omp_set_teams_thread_limit, omp_get_teams_thread_limit): New
  921. functions.
  922. * env.c (gomp_nteams_var, gomp_teams_thread_limit_var): Define.
  923. (omp_display_env): Print OMP_NUM_TEAMS and OMP_TEAMS_THREAD_LIMIT.
  924. (initialize_env): Handle OMP_NUM_TEAMS and OMP_TEAMS_THREAD_LIMIT env
  925. vars.
  926. * teams.c (GOMP_teams_reg): If thread_limit is not specified, use
  927. gomp_teams_thread_limit_var as fallback if not zero. If num_teams
  928. is not specified, use gomp_nteams_var.
  929. * fortran.c (omp_set_num_teams, omp_get_max_teams,
  930. omp_set_teams_thread_limit, omp_get_teams_thread_limit): Add
  931. ialias_redirect.
  932. (omp_set_num_teams_, omp_set_num_teams_8_, omp_get_max_teams_,
  933. omp_set_teams_thread_limit_, omp_set_teams_thread_limit_8_,
  934. omp_get_teams_thread_limit_): New functions.
  935. 2021-10-09 liuhongt <hongtao.liu@intel.com>
  936. * testsuite/libgomp.c++/scan-10.C: Add option -fvect-cost-model=cheap.
  937. * testsuite/libgomp.c++/scan-11.C: Ditto.
  938. * testsuite/libgomp.c++/scan-12.C: Ditto.
  939. * testsuite/libgomp.c++/scan-13.C: Ditto.
  940. * testsuite/libgomp.c++/scan-14.C: Ditto.
  941. * testsuite/libgomp.c++/scan-15.C: Ditto.
  942. * testsuite/libgomp.c++/scan-16.C: Ditto.
  943. * testsuite/libgomp.c++/scan-9.C: Ditto.
  944. * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: Ditto.
  945. * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: Ditto.
  946. * testsuite/libgomp.c/scan-11.c: Ditto.
  947. * testsuite/libgomp.c/scan-12.c: Ditto.
  948. * testsuite/libgomp.c/scan-13.c: Ditto.
  949. * testsuite/libgomp.c/scan-14.c: Ditto.
  950. * testsuite/libgomp.c/scan-15.c: Ditto.
  951. * testsuite/libgomp.c/scan-16.c: Ditto.
  952. * testsuite/libgomp.c/scan-17.c: Ditto.
  953. * testsuite/libgomp.c/scan-18.c: Ditto.
  954. * testsuite/libgomp.c/scan-19.c: Ditto.
  955. * testsuite/libgomp.c/scan-20.c: Ditto.
  956. * testsuite/libgomp.c/scan-21.c: Ditto.
  957. * testsuite/libgomp.c/scan-22.c: Ditto.
  958. 2021-10-09 Jakub Jelinek <jakub@redhat.com>
  959. * libgomp.texi (OpenMP 5.1): Mention implemented support for
  960. structured block sequences in C/C++. Mention support for
  961. unconstrained/reproducible modifiers on order clause.
  962. Mention partial (C/C++ only) support of extentensions to atomics
  963. construct. Mention partial (C/C++ on clause only) support of
  964. align/allocator modifiers on allocate clause.
  965. 2021-10-02 Tobias Burnus <tobias@codesourcery.com>
  966. * testsuite/libgomp.fortran/order-reproducible-1.f90: New test
  967. based on libgomp.c-c++-common/order-reproducible-1.c.
  968. * testsuite/libgomp.fortran/order-reproducible-2.f90: Likewise.
  969. * testsuite/libgomp.fortran/my-usleep.c: New test.
  970. 2021-10-01 Tobias Burnus <tobias@codesourcery.com>
  971. * testsuite/libgomp.fortran/alloc-10.f90: Fix alignment check.
  972. * testsuite/libgomp.fortran/alloc-7.f90: Fix array access.
  973. * testsuite/libgomp.fortran/alloc-8.f90: Likewise.
  974. * testsuite/libgomp.fortran/alloc-11.f90: New test for omp_realloc,
  975. based on libgomp.c-c++-common/alloc-9.c.
  976. 2021-10-01 Jakub Jelinek <jakub@redhat.com>
  977. * testsuite/libgomp.c-c++-common/order-reproducible-1.c: New test.
  978. * testsuite/libgomp.c-c++-common/order-reproducible-2.c: New test.
  979. 2021-10-01 Jakub Jelinek <jakub@redhat.com>
  980. * affinity-fmt.c (omp_get_team_num, omp_get_num_teams): Add
  981. ialias_redirect.
  982. * env.c (handle_omp_display_env): Use ialias_call.
  983. * icv-device.c: Move ialias right below each function.
  984. (omp_get_device_num): Use ialias_call.
  985. * fortran.c (omp_fulfill_event): Add ialias_redirect.
  986. * icv.c (omp_get_active_level): Add ialias_redirect.
  987. 2021-10-01 Jakub Jelinek <jakub@redhat.com>
  988. * omp.h.in (omp_aligned_alloc, omp_aligned_calloc): Add
  989. __alloc_align__ (1) attribute.
  990. * testsuite/libgomp.c-c++-common/alloc-9.c: New test.
  991. 2021-09-30 Tobias Burnus <tobias@codesourcery.com>
  992. * testsuite/libgomp.fortran/alloc-7.f90: Add dg-prune-output
  993. for -fintrinsic-modules-path= warning of the C compiler.
  994. * testsuite/libgomp.fortran/alloc-9.f90: Likewise.
  995. * testsuite/libgomp.fortran/alloc-10.f90: Likewise.
  996. 2021-09-30 Tobias Burnus <tobias@codesourcery.com>
  997. * libgomp.texi (OpenMP 5.1): Set implementation status to Y for
  998. omp_aligned_{,c}alloc and omp_{c,re}alloc routines.
  999. * omp_lib.f90.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
  1000. omp_realloc): Add.
  1001. * omp_lib.h.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
  1002. omp_realloc): Add.
  1003. * testsuite/libgomp.fortran/alloc-10.f90: New test.
  1004. * testsuite/libgomp.fortran/alloc-6.f90: New test.
  1005. * testsuite/libgomp.fortran/alloc-7.c: New test.
  1006. * testsuite/libgomp.fortran/alloc-7.f90: New test.
  1007. * testsuite/libgomp.fortran/alloc-8.f90: New test.
  1008. * testsuite/libgomp.fortran/alloc-9.f90: New test.
  1009. 2021-09-30 Jakub Jelinek <jakub@redhat.com>
  1010. * omp.h.in (omp_aligned_alloc, omp_calloc, omp_aligned_calloc,
  1011. omp_realloc): New prototypes.
  1012. (omp_alloc): Move after omp_free prototype, add __malloc__ (omp_free)
  1013. attribute.
  1014. * allocator.c: Include string.h.
  1015. (omp_aligned_alloc): No longer static, add ialias. Add new_alignment
  1016. variable and use it instead of alignment so that when retrying the old
  1017. alignment is used again. Don't retry if new alignment is the same
  1018. as old alignment, unless allocator had pool size.
  1019. (omp_alloc, GOMP_alloc, GOMP_free): Use ialias_call.
  1020. (omp_aligned_calloc, omp_calloc, omp_realloc): New functions.
  1021. * libgomp.map (OMP_5.0.2): Export omp_aligned_alloc, omp_calloc,
  1022. omp_aligned_calloc and omp_realloc.
  1023. * testsuite/libgomp.c-c++-common/alloc-4.c (main): Add
  1024. omp_aligned_alloc, omp_calloc and omp_aligned_calloc tests.
  1025. * testsuite/libgomp.c-c++-common/alloc-5.c: New test.
  1026. * testsuite/libgomp.c-c++-common/alloc-6.c: New test.
  1027. * testsuite/libgomp.c-c++-common/alloc-7.c: New test.
  1028. * testsuite/libgomp.c-c++-common/alloc-8.c: New test.
  1029. 2021-09-28 Tobias Burnus <tobias@codesourcery.com>
  1030. PR libgomp/96661
  1031. * configure.ac: Only check for int-type = 2*size_t support when
  1032. building with Fortran support.
  1033. * configure: Regenerate.
  1034. 2021-09-28 Thomas Schwinge <thomas@codesourcery.com>
  1035. * testsuite/libgomp.oacc-fortran/if-1.f90: Adjust.
  1036. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
  1037. 2021-09-27 Aldy Hernandez <aldyh@redhat.com>
  1038. * team.c: Initialize start_data.
  1039. * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
  1040. * testsuite/libgomp.graphite/force-parallel-8.c: Adjust.
  1041. 2021-09-27 Tobias Burnus <tobias@codesourcery.com>
  1042. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Change
  1043. dg-message back to dg-note.
  1044. 2021-09-27 Tobias Burnus <tobias@codesourcery.com>
  1045. PR fortran/94070
  1046. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Update
  1047. expected dg-note output.
  1048. 2021-09-22 Tobias Burnus <tobias@codesourcery.com>
  1049. PR fortran/55534
  1050. * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Revert
  1051. r12-3722 by removing -Wno-missing-include-dirs.
  1052. * testsuite/libgomp.oacc-fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
  1053. 2021-09-22 Jakub Jelinek <jakub@redhat.com>
  1054. * testsuite/libgomp.c-c++-common/allocate-2.c: New test.
  1055. * testsuite/libgomp.c-c++-common/allocate-3.c: New test.
  1056. 2021-09-21 Tobias Burnus <tobias@codesourcery.com>
  1057. PR fortran/55534
  1058. * testsuite/libgomp.fortran/fortran.exp: Add -Wno-missing-include-dirs
  1059. to ALWAYS_CFLAGS.
  1060. * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
  1061. 2021-09-18 Jakub Jelinek <jakub@redhat.com>
  1062. * testsuite/libgomp.c++/default-1.C: New test.
  1063. * testsuite/libgomp.c-c++-common/default-1.c: New test.
  1064. * libgomp.texi (OpenMP 5.1): Mark "private and firstprivate argument
  1065. to default clause in C and C++" as implemented.
  1066. 2021-09-17 Julian Brown <julian@codesourcery.com>
  1067. * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Update.
  1068. 2021-09-17 Julian Brown <julian@codesourcery.com>
  1069. * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: New test.
  1070. 2021-09-17 Jakub Jelinek <jakub@redhat.com>
  1071. * libgomp.texi (OpenMP 5.1): Spelling fix,
  1072. declare variante -> declare variant.
  1073. 2021-09-17 Jakub Jelinek <jakub@redhat.com>
  1074. * testsuite/libgomp.c-c++-common/atomic-19.c: Drop c effective target.
  1075. Use /* */ comments instead of //.
  1076. * testsuite/libgomp.c-c++-common/atomic-20.c: Likewise.
  1077. * testsuite/libgomp.c-c++-common/atomic-21.c: Likewise.
  1078. * testsuite/libgomp.c++/atomic-16.C: New test.
  1079. * testsuite/libgomp.c++/atomic-17.C: New test.
  1080. 2021-09-10 Jakub Jelinek <jakub@redhat.com>
  1081. * testsuite/libgomp.c-c++-common/atomic-19.c: New test.
  1082. * testsuite/libgomp.c-c++-common/atomic-20.c: New test.
  1083. * testsuite/libgomp.c-c++-common/atomic-21.c: New test.
  1084. 2021-09-07 Tobias Burnus <tobias@codesourcery.com>
  1085. * libgomp.texi (OpenMP Implementation Status): Extend
  1086. OpenMP 5.0 section.
  1087. (OpenACC Profiling Interface): Fix typo.
  1088. 2021-09-07 Tobias Burnus <tobias@codesourcery.com>
  1089. * libgomp.texi (Enabling OpenMP): Refer to OMP spec in general
  1090. not to 4.5; link to new section.
  1091. (OpenMP Implementation Status): New.
  1092. 2021-09-06 Thomas Schwinge <thomas@codesourcery.com>
  1093. * testsuite/libgomp.c/target-43.c: '-latomic' for nvptx offloading.
  1094. 2021-09-03 Tobias Burnus <tobias@codesourcery.com>
  1095. * testsuite/libgomp.c-c++-common/error-1.c: Use \r\n not \n\r in
  1096. dg-output.
  1097. * testsuite/libgomp.fortran/error-1.f90: Likewise.
  1098. 2021-08-23 Thomas Schwinge <thomas@codesourcery.com>
  1099. Jakub Jelinek <jakub@redhat.com>
  1100. * testsuite/libgomp.c/address-space-1.c: New file.
  1101. 2021-08-23 Thomas Schwinge <thomas@codesourcery.com>
  1102. * testsuite/lib/libgomp.exp
  1103. (check_effective_target_offload_target_intelmic): Remove 'proc'.
  1104. (check_effective_target_offload_device_intel_mic): New 'proc'.
  1105. * testsuite/libgomp.c-c++-common/on_device_arch.h
  1106. (device_arch_intel_mic, on_device_arch_intel_mic): New.
  1107. * testsuite/libgomp.c-c++-common/target-45.c: Use that for
  1108. 'dg-xfail-run-if'.
  1109. * testsuite/libgomp.fortran/target10.f90: Likewise.
  1110. 2021-08-23 Tobias Burnus <tobias@codesourcery.com>
  1111. * testsuite/libgomp.fortran/taskloop-4-a.f90: New test.
  1112. * testsuite/libgomp.fortran/taskloop-4.f90: New test.
  1113. * testsuite/libgomp.fortran/taskloop-5-a.f90: New test.
  1114. * testsuite/libgomp.fortran/taskloop-5.f90: New test.
  1115. 2021-08-23 Jakub Jelinek <jakub@redhat.com>
  1116. * taskloop.c (GOMP_taskloop): Handle GOMP_TASK_FLAG_STRICT.
  1117. * testsuite/libgomp.c-c++-common/taskloop-4.c (main): Fix up comment.
  1118. * testsuite/libgomp.c-c++-common/taskloop-5.c: New test.
  1119. 2021-08-22 Thomas Schwinge <thomas@codesourcery.com>
  1120. * config/nvptx/error.c (fwrite, exit): Override, too.
  1121. * testsuite/libgomp.c-c++-common/error-1.c: Add a minimum amount
  1122. of offloading testing.
  1123. * testsuite/libgomp.fortran/error-1.f90: Likewise.
  1124. 2021-08-20 Tobias Burnus <tobias@codesourcery.com>
  1125. * testsuite/libgomp.fortran/error-1.f90: New test.
  1126. 2021-08-20 Jakub Jelinek <jakub@redhat.com>
  1127. * libgomp.map (GOMP_5.1): Add GOMP_error and GOMP_warning.
  1128. * libgomp_g.h (GOMP_warning, GOMP_error): Declare.
  1129. * error.c (GOMP_warning, GOMP_error): New functions.
  1130. * testsuite/libgomp.c-c++-common/error-1.c: New test.
  1131. 2021-08-18 Tobias Burnus <tobias@codesourcery.com>
  1132. * omp_lib.f90.in (omp_alloc, omp_free, omp_target_alloc,
  1133. omp_target_free. omp_target_is_present, omp_target_memcpy,
  1134. omp_target_memcpy_rect, omp_target_associate_ptr,
  1135. omp_target_disassociate_ptr): Add interface.
  1136. * omp_lib.h.in (omp_alloc, omp_free, omp_target_alloc,
  1137. omp_target_free. omp_target_is_present, omp_target_memcpy,
  1138. omp_target_memcpy_rect, omp_target_associate_ptr,
  1139. omp_target_disassociate_ptr): Add interface.
  1140. * testsuite/libgomp.fortran/alloc-1.F90: Remove local
  1141. interface block for omp_alloc + omp_free.
  1142. * testsuite/libgomp.fortran/alloc-4.f90: Likewise.
  1143. * testsuite/libgomp.fortran/refcount-1.f90: New test.
  1144. * testsuite/libgomp.fortran/target-12.f90: New test.
  1145. 2021-08-18 Jakub Jelinek <jakub@redhat.com>
  1146. * testsuite/libgomp.c-c++-common/nothing-1.c: New test.
  1147. 2021-08-17 Tobias Burnus <tobias@codesourcery.com>
  1148. * testsuite/libgomp.fortran/scope-1.f90: New test.
  1149. * testsuite/libgomp.fortran/task-reduction-16.f90: New test.
  1150. 2021-08-17 Jakub Jelinek <jakub@redhat.com>
  1151. * Makefile.am (libgomp_la_SOURCES): Add scope.c
  1152. * Makefile.in: Regenerated.
  1153. * libgomp_g.h (GOMP_scope_start): Declare.
  1154. * libgomp.map: Add GOMP_scope_start@@GOMP_5.1.
  1155. * scope.c: New file.
  1156. * testsuite/libgomp.c-c++-common/scope-1.c: New test.
  1157. * testsuite/libgomp.c-c++-common/task-reduction-16.c: New test.
  1158. 2021-08-16 Thomas Schwinge <thomas@codesourcery.com>
  1159. * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Address
  1160. '?:' issues.
  1161. 2021-08-16 Tobias Burnus <tobias@codesourcery.com>
  1162. * testsuite/libgomp.fortran/masked-1.f90: New test.
  1163. 2021-08-13 Thomas Schwinge <thomas@codesourcery.com>
  1164. * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Adjust.
  1165. 2021-08-12 Jakub Jelinek <jakub@redhat.com>
  1166. * testsuite/libgomp.c-c++-common/masked-1.c: New test.
  1167. 2021-08-12 Tobias Burnus <tobias@codesourcery.com>
  1168. * env.c (parse_bind_var): Accept 'primary' as alias for
  1169. 'master'.
  1170. (omp_display_env): Add TODO comment to
  1171. change 'master' to 'primary' in proc_bind for OpenMP 5.1.
  1172. * libgomp.texi: Change 'master thread' to 'primary thread'
  1173. in line with OpenMP 5.1.
  1174. (omp_get_proc_bind): Add omp_proc_bind_primary and note that
  1175. omp_proc_bind_master is an alias of it.
  1176. (OMP_PROC_BIND): Mention 'PRIMARY'.
  1177. * omp.h.in (__GOMP_DEPRECATED_5_1): Define.
  1178. (omp_proc_bind_primary): Add.
  1179. (omp_proc_bind_master): Deprecate for OpenMP 5.1.
  1180. * omp_lib.f90.in (omp_proc_bind_primary): Add.
  1181. (omp_proc_bind_master): Deprecate for OpenMP 5.1.
  1182. * omp_lib.h.in (omp_proc_bind_primary): Add.
  1183. * testsuite/libgomp.c/affinity-1.c: Check that
  1184. 'primary' works and is identical to 'master'.
  1185. 2021-08-09 Julian Brown <julian@codesourcery.com>
  1186. Kwok Cheung Yeung <kcy@codesourcery.com>
  1187. Thomas Schwinge <thomas@codesourcery.com>
  1188. * plugin/plugin-gcn.c (gcn_exec): Change default number of workers to
  1189. 16.
  1190. * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
  1191. [acc_device_radeon]: Update.
  1192. * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c
  1193. [ACC_DEVICE_TYPE_radeon]: Likewise.
  1194. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
  1195. [acc_device_radeon]: Likewise.
  1196. * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c
  1197. [ACC_DEVICE_TYPE_radeon]: Likewise.
  1198. * testsuite/libgomp.oacc-fortran/optional-reduction.f90: XFAIL for
  1199. 'openacc_radeon_accel_selected' and '-O0'.
  1200. * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
  1201. 2021-08-05 Chung-Lin Tang <cltang@codesourcery.com>
  1202. * icv-device.c (omp_get_device_num): New API function, host side.
  1203. * fortran.c (omp_get_device_num_): New interface function.
  1204. * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Define macro symbol.
  1205. * libgomp.map (OMP_5.0.2): New version space with omp_get_device_num,
  1206. omp_get_device_num_.
  1207. * libgomp.texi (omp_get_device_num): Add documentation for new API
  1208. function.
  1209. * omp.h.in (omp_get_device_num): Add declaration.
  1210. * omp_lib.f90.in (omp_get_device_num): Likewise.
  1211. * omp_lib.h.in (omp_get_device_num): Likewise.
  1212. * target.c (gomp_load_image_to_device): If additional entry for device
  1213. number exists at end of returned entries from 'load_image_func' hook,
  1214. copy the assigned device number over to the device variable.
  1215. * config/gcn/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
  1216. (omp_get_device_num): New API function, device side.
  1217. * plugin/plugin-gcn.c ("symcat.h"): Add include.
  1218. (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
  1219. at end of returned 'target_table' entries.
  1220. * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
  1221. (omp_get_device_num): New API function, device side.
  1222. * plugin/plugin-nvptx.c ("symcat.h"): Add include.
  1223. (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
  1224. at end of returned 'target_table' entries.
  1225. * testsuite/lib/libgomp.exp
  1226. (check_effective_target_offload_target_intelmic): New function for
  1227. testing for intelmic offloading.
  1228. * testsuite/libgomp.c-c++-common/target-45.c: New test.
  1229. * testsuite/libgomp.fortran/target10.f90: New test.
  1230. 2021-07-30 Thomas Schwinge <thomas@codesourcery.com>
  1231. Ulrich Drepper <drepper@redhat.com>
  1232. * fortran.c (omp_display_env_, omp_display_env_8_): Only
  1233. '#ifndef LIBGOMP_OFFLOADED_ONLY'.
  1234. 2021-07-29 Thomas Schwinge <thomas@codesourcery.com>
  1235. Julian Brown <julian@codesourcery.com>
  1236. Kwok Cheung Yeung <kcy@codesourcery.com>
  1237. * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c:
  1238. 's%oaccdevlow%oaccloops%g'.
  1239. * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
  1240. * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
  1241. * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c:
  1242. Likewise.
  1243. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c:
  1244. Likewise.
  1245. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c:
  1246. Likewise.
  1247. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c:
  1248. Likewise.
  1249. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c:
  1250. Likewise.
  1251. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c:
  1252. Likewise.
  1253. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c:
  1254. Likewise.
  1255. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c:
  1256. Likewise.
  1257. * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
  1258. 2021-07-29 Aldy Hernandez <aldyh@redhat.com>
  1259. * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for
  1260. threader.
  1261. * testsuite/libgomp.graphite/force-parallel-8.c: Same.
  1262. 2021-07-27 Ulrich Drepper <drepper@gmail.com>
  1263. * env.c (wait_policy, stacksize): New static variables,
  1264. move out of handle_omp_display_env.
  1265. (omp_display_env): New function. The meat of the old
  1266. handle_omp_display_env function.
  1267. (handle_omp_display_env): Change to not take parameters
  1268. and instead use the global variables. Only perform
  1269. parsing, defer to omp_display_env for the implementation.
  1270. (initialize_env): Remove local variables wait_policy and
  1271. stacksize. Don't pass parameters to handle_omp_display_env.
  1272. * fortran.c: Add ialias_redirect for omp_display_env.
  1273. (omp_display_env_, omp_display_env_8_): New functions.
  1274. * libgomp.map (OMP_5.1): New version. Add omp_display_env,
  1275. omp_display_env_, and omp_display_env_8_.
  1276. * omp.h.in: Declare omp_display_env.
  1277. * omp_lib.f90.in: Likewise.
  1278. * omp_lib.h.in: Likewise.
  1279. 2021-07-27 Thomas Schwinge <thomas@codesourcery.com>
  1280. Julian Brown <julian@codesourcery.com>
  1281. * target.c (gomp_coalesce_buf_add): Update comment.
  1282. (gomp_copy_host2dev, gomp_map_vars_internal): Don't expect to see
  1283. 'aq && cbuf'.
  1284. (gomp_map_vars_internal): Only 'if (!aq)', do
  1285. 'gomp_coalesce_buf_add'.
  1286. * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Remove
  1287. XFAIL.
  1288. 2021-07-27 Julian Brown <julian@codesourcery.com>
  1289. Thomas Schwinge <thomas@codesourcery.com>
  1290. * libgomp.h (gomp_copy_host2dev): Update prototype.
  1291. * oacc-mem.c (memcpy_tofrom_device, update_dev_host): Add new
  1292. argument to gomp_copy_host2dev (false).
  1293. * plugin/plugin-gcn.c (struct copy_data): Remove free_src field.
  1294. (copy_data): Don't free src.
  1295. (queue_push_copy): Remove free_src handling.
  1296. (GOMP_OFFLOAD_dev2dev): Update call to queue_push_copy.
  1297. (GOMP_OFFLOAD_openacc_async_host2dev): Remove source-data
  1298. snapshotting.
  1299. (GOMP_OFFLOAD_openacc_async_dev2host): Update call to
  1300. queue_push_copy.
  1301. * target.c (goacc_device_copy_async): Add SRCADDR_ORIG parameter.
  1302. (gomp_copy_host2dev): Add EPHEMERAL parameter. Snapshot source
  1303. data when true, and set up deferred freeing of temporary buffer.
  1304. (gomp_copy_dev2host): Update call to goacc_device_copy_async.
  1305. (gomp_map_vars_existing, gomp_map_pointer, gomp_attach_pointer)
  1306. (gomp_detach_pointer, gomp_map_vars_internal, gomp_update): Update
  1307. calls to gomp_copy_host2dev with appropriate ephemeral argument.
  1308. * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: Remove
  1309. XFAIL.
  1310. 2021-07-27 Thomas Schwinge <thomas@codesourcery.com>
  1311. Tom de Vries <tom@codesourcery.com>
  1312. * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: New file.
  1313. * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Likewise.
  1314. 2021-07-27 Thomas Schwinge <thomas@codesourcery.com>
  1315. * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Clarify
  1316. sequencing of 'async' data copying vs. profiling events.
  1317. * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
  1318. Likewise.
  1319. 2021-07-27 Thomas Schwinge <thomas@codesourcery.com>
  1320. Julian Brown <julian@codesourcery.com>
  1321. * testsuite/libgomp.oacc-c-c++-common/lib-94.c: Fix OpenACC
  1322. 'async'/'wait' issue.
  1323. * testsuite/libgomp.oacc-c-c++-common/lib-95.c: Likewise.
  1324. * testsuite/libgomp.oacc-fortran/lib-16-2.f90: Likewise.
  1325. * testsuite/libgomp.oacc-fortran/lib-16.f90: Likewise.
  1326. 2021-07-21 Thomas Schwinge <thomas@codesourcery.com>
  1327. Joseph Myers <joseph@codesourcery.com>
  1328. Cesar Philippidis <cesar@codesourcery.com>
  1329. * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c: New
  1330. file.
  1331. * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
  1332. Likewise.
  1333. * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2_2.c:
  1334. Likewise.
  1335. * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
  1336. 2021-07-20 Thomas Schwinge <thomas@codesourcery.com>
  1337. PR target/101484
  1338. * configure.tgt [amdgcn*-*-*] (XCFLAGS): Add
  1339. '-Wno-error=array-bounds'.
  1340. * config/gcn/team.c: Remove '-Werror=array-bounds' work-around.
  1341. * libgomp.h [__AMDGCN__]: Likewise.
  1342. 2021-07-19 Thomas Schwinge <thomas@codesourcery.com>
  1343. PR target/101484
  1344. * config/gcn/team.c: Apply '-Werror=array-bounds' work-around.
  1345. * libgomp.h [__AMDGCN__]: Likewise.
  1346. 2021-07-13 Jakub Jelinek <jakub@redhat.com>
  1347. Florian Weimer <fweimer@redhat.com>
  1348. * config/linux/sem.h: Don't include limits.h.
  1349. (SEM_WAIT): Define to -__INT_MAX__ - 1 instead of INT_MIN.
  1350. * config/linux/affinity.c: Include limits.h.
  1351. 2021-07-01 Jakub Jelinek <jakub@redhat.com>
  1352. PR middle-end/94366
  1353. * testsuite/libgomp.c-c++-common/pr94366.c: New test.
  1354. 2021-06-29 Tobias Burnus <tobias@codesourcery.com>
  1355. PR other/67300
  1356. * testsuite/libgomp.c-c++-common/reduction-16.c: Replace
  1357. -foffload=nvptx-none= by -foffload-options=nvptx-none= to
  1358. avoid disabling other offload targets.
  1359. * testsuite/libgomp.c-c++-common/reduction-5.c: Likewise.
  1360. * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
  1361. * testsuite/libgomp.c/target-44.c: Likewise.
  1362. 2021-06-29 Tobias Burnus <tobias@codesourcery.com>
  1363. * testsuite/libgomp.fortran/defaultmap-8.f90 (bar): Determine whether
  1364. target has shared memory and disable some scalar pointer/allocatable
  1365. checks if not as firstprivate does not work.
  1366. 2021-06-25 Chung-Lin Tang <cltang@codesourcery.com>
  1367. PR testsuite/101114
  1368. * testsuite/libgomp.c-c++-common/struct-elem-5.c:
  1369. Add "target offload_device_nonshared_as" condition for enabling test.
  1370. 2021-06-24 Jakub Jelinek <jakub@redhat.com>
  1371. * testsuite/libgomp.c-c++-common/target-in-reduction-1.c: New test.
  1372. * testsuite/libgomp.c-c++-common/target-in-reduction-2.c: New test.
  1373. * testsuite/libgomp.c++/target-in-reduction-1.C: New test.
  1374. * testsuite/libgomp.c++/target-in-reduction-2.C: New test.
  1375. 2021-06-23 Jakub Jelinek <jakub@redhat.com>
  1376. PR middle-end/101167
  1377. * testsuite/libgomp.c-c++-common/task-reduction-15.c: New test.
  1378. 2021-06-17 Chung-Lin Tang <cltang@codesourcery.com>
  1379. * hashtab.h (htab_clear): New function with initialization code
  1380. factored out from...
  1381. (htab_create): ...here, adjust to use htab_clear function.
  1382. * libgomp.h (REFCOUNT_SPECIAL): New symbol to denote range of
  1383. special refcount values, add comments.
  1384. (REFCOUNT_INFINITY): Adjust definition to use REFCOUNT_SPECIAL.
  1385. (REFCOUNT_LINK): Likewise.
  1386. (REFCOUNT_STRUCTELEM): New special refcount range for structure
  1387. element siblings.
  1388. (REFCOUNT_STRUCTELEM_P): Macro for testing for structure element
  1389. sibling maps.
  1390. (REFCOUNT_STRUCTELEM_FLAG_FIRST): Flag to indicate first sibling.
  1391. (REFCOUNT_STRUCTELEM_FLAG_LAST): Flag to indicate last sibling.
  1392. (REFCOUNT_STRUCTELEM_FIRST_P): Macro to test _FIRST flag.
  1393. (REFCOUNT_STRUCTELEM_LAST_P): Macro to test _LAST flag.
  1394. (struct splay_tree_key_s): Add structelem_refcount and
  1395. structelem_refcount_ptr fields into a union with dynamic_refcount.
  1396. Add comments.
  1397. (gomp_map_vars): Delete declaration.
  1398. (gomp_map_vars_async): Likewise.
  1399. (gomp_unmap_vars): Likewise.
  1400. (gomp_unmap_vars_async): Likewise.
  1401. (goacc_map_vars): New declaration.
  1402. (goacc_unmap_vars): Likewise.
  1403. * oacc-mem.c (acc_map_data): Adjust to use goacc_map_vars.
  1404. (goacc_enter_datum): Likewise.
  1405. (goacc_enter_data_internal): Likewise.
  1406. * oacc-parallel.c (GOACC_parallel_keyed): Adjust to use goacc_map_vars
  1407. and goacc_unmap_vars.
  1408. (GOACC_data_start): Adjust to use goacc_map_vars.
  1409. (GOACC_data_end): Adjust to use goacc_unmap_vars.
  1410. * target.c (hash_entry_type): New typedef.
  1411. (htab_alloc): New function hook for hashtab.h.
  1412. (htab_free): Likewise.
  1413. (htab_hash): Likewise.
  1414. (htab_eq): Likewise.
  1415. (hashtab.h): Add file include.
  1416. (gomp_increment_refcount): New function.
  1417. (gomp_decrement_refcount): Likewise.
  1418. (gomp_map_vars_existing): Add refcount_set parameter, adjust to use
  1419. gomp_increment_refcount.
  1420. (gomp_map_fields_existing): Add refcount_set parameter, adjust calls
  1421. to gomp_map_vars_existing.
  1422. (gomp_map_vars_internal): Add refcount_set parameter, add local openmp_p
  1423. variable to guard OpenMP specific paths, adjust calls to
  1424. gomp_map_vars_existing, add structure element sibling splay_tree_key
  1425. sequence creation code, adjust Fortran map case to avoid increment
  1426. under OpenMP.
  1427. (gomp_map_vars): Adjust to static, add refcount_set parameter, manage
  1428. local refcount_set if caller passed in NULL, adjust call to
  1429. gomp_map_vars_internal.
  1430. (gomp_map_vars_async): Adjust and rename into...
  1431. (goacc_map_vars): ...this new function, adjust call to
  1432. gomp_map_vars_internal.
  1433. (gomp_remove_splay_tree_key): New function with code factored out from
  1434. gomp_remove_var_internal.
  1435. (gomp_remove_var_internal): Add code to handle removing multiple
  1436. splay_tree_key sequence for structure elements, adjust code to use
  1437. gomp_remove_splay_tree_key for splay-tree key removal.
  1438. (gomp_unmap_vars_internal): Add refcount_set parameter, adjust to use
  1439. gomp_decrement_refcount.
  1440. (gomp_unmap_vars): Adjust to static, add refcount_set parameter, manage
  1441. local refcount_set if caller passed in NULL, adjust call to
  1442. gomp_unmap_vars_internal.
  1443. (gomp_unmap_vars_async): Adjust and rename into...
  1444. (goacc_unmap_vars): ...this new function, adjust call to
  1445. gomp_unmap_vars_internal.
  1446. (GOMP_target): Manage refcount_set and adjust calls to gomp_map_vars and
  1447. gomp_unmap_vars.
  1448. (GOMP_target_ext): Likewise.
  1449. (gomp_target_data_fallback): Adjust call to gomp_map_vars.
  1450. (GOMP_target_data): Likewise.
  1451. (GOMP_target_data_ext): Likewise.
  1452. (GOMP_target_end_data): Adjust call to gomp_unmap_vars.
  1453. (gomp_exit_data): Add refcount_set parameter, adjust to use
  1454. gomp_decrement_refcount, adjust to queue splay-tree keys for removal
  1455. after main loop.
  1456. (GOMP_target_enter_exit_data): Manage refcount_set and adjust calls to
  1457. gomp_map_vars and gomp_exit_data.
  1458. (gomp_target_task_fn): Likewise.
  1459. * testsuite/libgomp.c-c++-common/refcount-1.c: New testcase.
  1460. * testsuite/libgomp.c-c++-common/struct-elem-1.c: New testcase.
  1461. * testsuite/libgomp.c-c++-common/struct-elem-2.c: New testcase.
  1462. * testsuite/libgomp.c-c++-common/struct-elem-3.c: New testcase.
  1463. * testsuite/libgomp.c-c++-common/struct-elem-4.c: New testcase.
  1464. * testsuite/libgomp.c-c++-common/struct-elem-5.c: New testcase.
  1465. 2021-06-15 Tobias Burnus <tobias@codesourcery.com>
  1466. PR fortran/92568
  1467. * testsuite/libgomp.fortran/defaultmap-8.f90: New test.
  1468. 2021-06-10 Andrew Stubbs <ams@codesourcery.com>
  1469. Thomas Schwinge <thomas@codesourcery.com>
  1470. * libgomp.map (GOACC_2.0.2): New symbol version.
  1471. * libgomp_g.h (GOACC_enter_data, GOACC_exit_data) New prototypes.
  1472. * oacc-mem.c (GOACC_enter_data, GOACC_exit_data) New functions.
  1473. 2021-06-10 Thomas Schwinge <thomas@codesourcery.com>
  1474. Andrew Stubbs <ams@codesourcery.com>
  1475. * oacc-mem.c (goacc_enter_exit_data_internal): New function,
  1476. extracted from...
  1477. (GOACC_enter_exit_data): ... here.
  1478. (GOACC_declare): Use it.
  1479. 2021-06-10 Thomas Schwinge <thomas@codesourcery.com>
  1480. * oacc-parallel.c (GOACC_declare): Move...
  1481. * oacc-mem.c: ... here.
  1482. * libgomp_g.h: Adjust.
  1483. 2021-06-10 Andrew Stubbs <ams@codesourcery.com>
  1484. Thomas Schwinge <thomas@codesourcery.com>
  1485. * oacc-parallel.c (GOACC_declare): Clean up 'GOMP_MAP_POINTER'
  1486. handling.
  1487. 2021-06-10 Jakub Jelinek <jakub@redhat.com>
  1488. PR tree-optimization/100981
  1489. * testsuite/libgomp.fortran/pr100981-2.f90 (cdcdot): Initialize
  1490. dsdotr and dsdoti to 0.
  1491. 2021-06-09 H.J. Lu <hjl.tools@gmail.com>
  1492. * testsuite/lib/libgomp.exp (libgomp_init): Don't add -march=i486
  1493. if atomic compare-and-swap is supported on 'int'.
  1494. 2021-06-09 Richard Biener <rguenther@suse.de>
  1495. PR tree-optimization/100981
  1496. * testsuite/libgomp.fortran/pr100981-2.f90: New testcase.
  1497. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1498. * plugin/plugin-gcn.c (gcn_exec): Force 'num_workers (1)'
  1499. unconditionally.
  1500. * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
  1501. Update.
  1502. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
  1503. * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
  1504. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1505. * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Enable for all but
  1506. '-DACC_MEM_SHARED=0'.
  1507. * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
  1508. * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
  1509. * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
  1510. * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
  1511. * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
  1512. * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
  1513. * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
  1514. * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
  1515. * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
  1516. * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
  1517. * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
  1518. * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
  1519. * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
  1520. * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
  1521. * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Add
  1522. 'acc_device_radeon' testing.
  1523. * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
  1524. * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
  1525. * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
  1526. * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Enable for all.
  1527. * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
  1528. * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
  1529. * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
  1530. * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
  1531. * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
  1532. * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
  1533. * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Improve checking
  1534. for non-'openacc_nvidia_accel_selected'.
  1535. * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
  1536. * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Clarify that "Not
  1537. all implement this checking".
  1538. * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
  1539. * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
  1540. * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
  1541. * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
  1542. * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
  1543. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1544. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Simplify.
  1545. * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: Update.
  1546. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1547. * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Fix
  1548. for 'acc_device_radeon'.
  1549. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1550. * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Enhance
  1551. for non-'acc_device_nvidia'.
  1552. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1553. * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Add
  1554. 'acc_device_radeon' testing.
  1555. * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
  1556. * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
  1557. * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
  1558. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1559. * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Don't
  1560. require 'openacc_nvidia_accel_selected'. Fix up for
  1561. 'ACC_DEVICE_TYPE_radeon'.
  1562. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1563. * testsuite/libgomp.oacc-c++/declare-1.C: Don't require
  1564. 'openacc_nvidia_accel_selected'.
  1565. * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
  1566. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1567. * testsuite/lib/libgomp.exp
  1568. (check_effective_target_openacc_radeon_accel_selected):
  1569. Streamline.
  1570. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1571. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Revert
  1572. PR80547 workaround.
  1573. 2021-06-08 Thomas Schwinge <thomas@codesourcery.com>
  1574. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
  1575. <acc_device_nvidia>: Update comment.
  1576. 2021-05-28 Tobias Burnus <tobias@codesourcery.com>
  1577. * testsuite/libgomp.fortran/depend-iterator-2.f90: New test.
  1578. 2021-05-27 Jakub Jelinek <jakub@redhat.com>
  1579. * testsuite/lib/libgomp.exp (check_effective_target_openacc_cuda,
  1580. check_effective_target_openacc_cublas,
  1581. check_effective_target_openacc_cudart): New.
  1582. * testsuite/libgomp.oacc-fortran/host_data-4.f90: Require effective
  1583. target openacc_cublas.
  1584. * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
  1585. * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
  1586. * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Require effective
  1587. target openacc_cuda.
  1588. * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
  1589. * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
  1590. * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
  1591. * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
  1592. * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
  1593. * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
  1594. * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
  1595. * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
  1596. * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Likewise.
  1597. * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
  1598. * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
  1599. * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
  1600. * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
  1601. * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
  1602. * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
  1603. * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
  1604. * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Require effective
  1605. targets openacc_cublas and openacc_cudart.
  1606. * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
  1607. * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
  1608. * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
  1609. * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
  1610. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c:
  1611. Require effective target openacc_cudart.
  1612. * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Add -DUSE_CUDA_H
  1613. for effective target openacc_cuda and add && defined USE_CUDA_H to
  1614. preprocessor conditionals. Guard -lcuda also on openacc_cuda
  1615. effective target.
  1616. 2021-05-26 Jakub Jelinek <jakub@redhat.com>
  1617. PR libgomp/100573
  1618. * config/nvptx/target.c (GOMP_target_ext, GOMP_target_data_ext,
  1619. GOMP_target_end_data, GOMP_target_update_ext,
  1620. GOMP_target_enter_exit_data): New dummy entrypoints.
  1621. * config/gcn/target.c (GOMP_target_ext, GOMP_target_data_ext,
  1622. GOMP_target_end_data, GOMP_target_update_ext,
  1623. GOMP_target_enter_exit_data): Likewise.
  1624. * testsuite/libgomp.c-c++-common/for-3.c (DO_PRAGMA, OMPTEAMS,
  1625. OMPFROM, OMPTO): Define.
  1626. (main): Remove #pragma omp target teams around all the tests.
  1627. * testsuite/libgomp.c-c++-common/target-41.c: New test.
  1628. * testsuite/libgomp.c-c++-common/target-42.c: New test.
  1629. 2021-05-25 Jakub Jelinek <jakub@redhat.com>
  1630. PR middle-end/99928
  1631. * testsuite/libgomp.c-c++-common/reduction-17.c: New test.
  1632. 2021-05-24 Tobias Burnus <tobias@codesourcery.com>
  1633. PR fortran/86470
  1634. * testsuite/libgomp.fortran/class-firstprivate-1.f90: New test.
  1635. * testsuite/libgomp.fortran/class-firstprivate-2.f90: New test.
  1636. * testsuite/libgomp.fortran/class-firstprivate-3.f90: New test.
  1637. 2021-05-22 Thomas Schwinge <thomas@codesourcery.com>
  1638. PR testsuite/90115
  1639. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Prune
  1640. uninteresting/varying diagnostics.
  1641. 2021-05-21 Thomas Schwinge <thomas@codesourcery.com>
  1642. PR middle-end/90115
  1643. * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Update.
  1644. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
  1645. 2021-05-21 Thomas Schwinge <thomas@codesourcery.com>
  1646. PR middle-end/90115
  1647. * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: New
  1648. file.
  1649. * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
  1650. * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Likewise.
  1651. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  1652. Likewise.
  1653. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
  1654. Likewise.
  1655. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
  1656. Likewise.
  1657. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
  1658. Likewise.
  1659. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
  1660. Likewise.
  1661. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
  1662. Likewise.
  1663. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
  1664. Likewise.
  1665. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
  1666. Likewise.
  1667. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
  1668. Likewise.
  1669. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
  1670. Likewise.
  1671. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
  1672. Likewise.
  1673. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
  1674. Likewise.
  1675. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
  1676. Likewise.
  1677. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
  1678. Likewise.
  1679. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
  1680. Likewise.
  1681. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
  1682. Likewise.
  1683. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
  1684. Likewise.
  1685. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
  1686. Likewise.
  1687. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
  1688. Likewise.
  1689. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
  1690. Likewise.
  1691. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
  1692. Likewise.
  1693. * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
  1694. * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
  1695. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
  1696. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
  1697. * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
  1698. * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
  1699. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
  1700. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
  1701. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
  1702. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
  1703. * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
  1704. * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
  1705. * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
  1706. * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
  1707. * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
  1708. Likewise.
  1709. * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c:
  1710. Likewise.
  1711. * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c:
  1712. Likewise.
  1713. * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
  1714. Likewise.
  1715. * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
  1716. * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
  1717. Likewise.
  1718. * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
  1719. * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
  1720. * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
  1721. * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
  1722. * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
  1723. * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
  1724. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
  1725. Likewise.
  1726. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
  1727. Likewise.
  1728. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
  1729. Likewise.
  1730. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
  1731. Likewise.
  1732. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
  1733. Likewise.
  1734. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
  1735. Likewise.
  1736. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
  1737. Likewise.
  1738. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
  1739. Likewise.
  1740. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
  1741. Likewise.
  1742. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
  1743. Likewise.
  1744. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
  1745. Likewise.
  1746. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
  1747. Likewise.
  1748. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
  1749. Likewise.
  1750. * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
  1751. * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
  1752. * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
  1753. Likewise.
  1754. * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
  1755. Likewise.
  1756. * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
  1757. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
  1758. * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
  1759. 2021-05-21 Julian Brown <julian@codesourcery.com>
  1760. Chung-Lin Tang <cltang@codesourcery.com>
  1761. Thomas Schwinge <thomas@codesourcery.com>
  1762. PR middle-end/90115
  1763. * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c: New
  1764. test.
  1765. * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
  1766. Likewise.
  1767. * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
  1768. Likewise.
  1769. 2021-05-21 Thomas Schwinge <thomas@codesourcery.com>
  1770. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Don't skip
  1771. for nvptx offloading.
  1772. 2021-05-21 Tobias Burnus <tobias@codesourcery.com>
  1773. * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: New.
  1774. 2021-05-19 Thomas Schwinge <thomas@codesourcery.com>
  1775. PR target/83812
  1776. * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: New.
  1777. 2021-05-19 Julian Brown <julian@codesourcery.com>
  1778. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: New.
  1779. 2021-05-18 Thomas Schwinge <thomas@codesourcery.com>
  1780. * testsuite/lib/libgomp.exp
  1781. (check_effective_target_offload_target_nvptx): Don't shadow global
  1782. 'offload_targets' variable.
  1783. 2021-05-18 Thomas Schwinge <thomas@codesourcery.com>
  1784. * testsuite/libgomp.c-c++-common/reduction-5.c: Restrict
  1785. '-latomic' to nvptx offloading compilation.
  1786. * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
  1787. 2021-05-18 Thomas Schwinge <thomas@codesourcery.com>
  1788. * testsuite/libgomp.c/target-44.c: Restrict '-latomic' to nvptx
  1789. offloading compilation.
  1790. 2021-05-17 Kwok Cheung Yeung <kcy@codesourcery.com>
  1791. * task.c (omp_fulfill_event): Call gomp_team_barrier_set_task_pending
  1792. if new tasks generated.
  1793. * testsuite/libgomp.c-c++-common/task-detach-13.c: New.
  1794. 2021-05-14 Tobias Burnus <tobias@codesourcery.com>
  1795. * testsuite/libgomp.fortran/parallel-master.f90: New test.
  1796. 2021-05-13 Martin Liska <mliska@suse.cz>
  1797. PR testsuite/100569
  1798. * testsuite/libgomp.c/omp-nested-3.c: Prune new LTO warning.
  1799. * testsuite/libgomp.c/pr46032-2.c: Likewise.
  1800. * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c: Likewise.
  1801. * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c: Likewise.
  1802. 2021-05-12 Tobias Burnus <tobias@codesourcery.com>
  1803. * testsuite/libgomp.c-c++-common/task-detach-12.c: New test.
  1804. * testsuite/libgomp.fortran/task-detach-12.f90: New test.
  1805. 2021-05-11 Jakub Jelinek <jakub@redhat.com>
  1806. PR middle-end/100471
  1807. * taskloop.c (GOMP_taskloop): If GOMP_TASK_FLAG_REDUCTION and not
  1808. GOMP_TASK_FLAG_NOGROUP, when doing early return clear the task
  1809. reduction pointer.
  1810. * testsuite/libgomp.c/task-reduction-4.c: New test.
  1811. 2021-05-07 Tobias Burnus <tobias@codesourcery.com>
  1812. Tom de Vries <tdevries@suse.de>
  1813. * testsuite/libgomp.c-c++-common/reduction-5.c: New test, testing
  1814. complex/floating-point || + && reduction with 'omp target'.
  1815. * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
  1816. 2021-05-04 Tobias Burnus <tobias@codesourcery.com>
  1817. * testsuite/libgomp.c-c++-common/reduction-1.c: New test.
  1818. * testsuite/libgomp.c-c++-common/reduction-2.c: New test.
  1819. * testsuite/libgomp.c-c++-common/reduction-3.c: New test.
  1820. * testsuite/libgomp.c-c++-common/reduction-4.c: New file.
  1821. 2021-05-04 Tobias Burnus <tobias@codesourcery.com>
  1822. PR testsuite/100397
  1823. * testsuite/libgomp.fortran/depobj-1.f90 (dep2, dep3): Move var
  1824. declaration to scope of non-'depend'-guarded assignment to avoid races.
  1825. 2021-05-03 Tom de Vries <tdevries@suse.de>
  1826. PR target/100321
  1827. * testsuite/libgomp.c/target-44.c: New test.
  1828. 2021-04-30 Roman Zhuykov <zhroma@ispras.ru>
  1829. * testsuite/libgomp.oacc-c-c++-common/atomic_capture-3.c: New test.
  1830. 2021-04-29 Tom de Vries <tdevries@suse.de>
  1831. * testsuite/libgomp.c/pr81778.c: New test.
  1832. 2021-04-29 Tom de Vries <tdevries@suse.de>
  1833. PR target/100232
  1834. * testsuite/libgomp.c/target-43.c: New file.
  1835. 2021-04-28 Jakub Jelinek <jakub@redhat.com>
  1836. Tobias Burnus <tobias@codesourcery.com>
  1837. * configure.ac (OFFLOAD_DEFAULTED): AC_DEFINE if offload-defaulted.
  1838. * target.c (gomp_load_plugin_for_device): If set and if a plugin
  1839. can't be dlopened, silently assume it has no devices.
  1840. * Makefile.in: Regenerate.
  1841. * config.h.in: Regenerate.
  1842. * configure: Regenerate.
  1843. 2021-04-26 Tobias Burnus <tobias@codesourcery.com>
  1844. * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
  1845. Use [Ww]arning in dg-bogus as FE diagnostic and default
  1846. diagnostic differ and the result depends on ENABLE_OFFLOAD.
  1847. * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
  1848. * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
  1849. * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
  1850. 2021-04-26 Tobias Burnus <tobias@codesourcery.com>
  1851. * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
  1852. Correct spelling in dg-bogus to match -Wopenacc-parallelism.
  1853. * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
  1854. * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
  1855. * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
  1856. 2021-04-26 Thomas Schwinge <thomas@codesourcery.com>
  1857. Nathan Sidwell <nathan@codesourcery.com>
  1858. Tom de Vries <vries@codesourcery.com>
  1859. Julian Brown <julian@codesourcery.com>
  1860. Kwok Cheung Yeung <kcy@codesourcery.com>
  1861. * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Specify
  1862. '-Wopenacc-parallelism', and match diagnostics, as appropriate.
  1863. * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
  1864. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
  1865. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
  1866. * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
  1867. * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c:
  1868. Likewise.
  1869. * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
  1870. * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
  1871. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
  1872. * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
  1873. Likewise.
  1874. * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
  1875. * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
  1876. Likewise.
  1877. * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
  1878. * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
  1879. * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
  1880. * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
  1881. * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
  1882. * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
  1883. Likewise.
  1884. * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
  1885. * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
  1886. * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
  1887. * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
  1888. * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
  1889. * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
  1890. * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
  1891. * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
  1892. * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
  1893. * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
  1894. * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
  1895. 2021-04-26 Thomas Schwinge <thomas@codesourcery.com>
  1896. * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Don't
  1897. compile with '-w'.
  1898. * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
  1899. * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
  1900. Likewise.
  1901. * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
  1902. * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: Likewise.
  1903. * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
  1904. * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
  1905. * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
  1906. * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
  1907. * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
  1908. 2021-04-22 Richard Biener <rguenther@suse.de>
  1909. * testsuite/libgomp.c-c++-common/reduction-16.c: Use -latomic
  1910. only on nvptx-none.
  1911. 2021-04-21 Tobias Burnus <tobias@codesourcery.com>
  1912. * testsuite/libgomp.fortran/depobj-1.f90: Use omp_lib's
  1913. omp_depend_kind instead of defining it as 16.
  1914. 2021-04-21 Tobias Burnus <tobias@codesourcery.com>
  1915. * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
  1916. New, based on check_effective_target_offload_target_nvptx.
  1917. (check_effective_target_offload_target_nvptx): Call it.
  1918. (check_effective_target_offload_target_amdgcn): New.
  1919. * testsuite/libgomp.c-c++-common/function-not-offloaded.c:
  1920. Require target offload_target_nvptx || offload_target_amdgcn.
  1921. * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: Likewise.
  1922. * testsuite/libgomp.c/pr86416-1.c: Likewise.
  1923. * testsuite/libgomp.c/pr86416-2.c: Likewise.
  1924. 2021-04-21 Tobias Burnus <tobias@codesourcery.com>
  1925. * testsuite/libgomp.fortran/depobj-1.f90: New test.
  1926. 2021-04-19 Thomas Schwinge <thomas@codesourcery.com>
  1927. * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
  1928. '-fopenacc-kernels=[...]' -> '--param=openacc-kernels=[...]'.
  1929. * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
  1930. Likewise.
  1931. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  1932. Likewise.
  1933. * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
  1934. 2021-04-15 Thomas Schwinge <thomas@codesourcery.com>
  1935. PR target/99555
  1936. * testsuite/lib/libgomp.exp
  1937. (check_effective_target_offload_device_nvptx): New.
  1938. * testsuite/libgomp.c/pr99555-1.c <nvptx offload device>: Until
  1939. resolved, make sure that we exit quickly, with error status,
  1940. XFAILed.
  1941. * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise.
  1942. * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
  1943. 2021-04-14 Jakub Jelinek <jakub@redhat.com>
  1944. PR testsuite/100071
  1945. * testsuite/libgomp.fortran/alloc-1.F90: Call c_f_pointer after last
  1946. cp = omp_alloc with cp, p arguments instead of cq, q and call
  1947. c_f_pointer after last cq = omp_alloc with cq, q.
  1948. 2021-04-11 Hafiz Abid Qadeer <abidh@codesourcery.com>
  1949. PR middle-end/98088
  1950. * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Add check
  1951. for loop with GT/GE condition.
  1952. * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
  1953. 2021-04-09 Thomas Schwinge <thomas@codesourcery.com>
  1954. PR middle-end/84991
  1955. PR middle-end/84992
  1956. PR middle-end/90779
  1957. * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: New.
  1958. 2021-04-09 Jakub Jelinek <jakub@redhat.com>
  1959. PR libgomp/99984
  1960. * team.c (gomp_thread_start): Call pthread_setspecific for
  1961. !(defined HAVE_TLS || defined USE_EMUTLS) only after local_thr
  1962. has been initialized to avoid false positive warning.
  1963. 2021-03-29 Tobias Burnus <tobias@codesourcery.com>
  1964. PR target/99555
  1965. * testsuite/lib/on_device_arch.c: Move to ...
  1966. * testsuite/libgomp.c-c++-common/on_device_arch.h: ... here.
  1967. * testsuite/libgomp.fortran/on_device_arch.c: New file;
  1968. #include on_device_arch.h.
  1969. * testsuite/libgomp.c-c++-common/task-detach-6.c: #include
  1970. on_device_arch.h instead of using dg-additional-source.
  1971. * testsuite/libgomp.c/pr99555-1.c: Likewise.
  1972. * testsuite/libgomp.fortran/task-detach-6.f90: Update to use
  1973. on_device_arch.c without relative paths.
  1974. 2021-03-25 Thomas Schwinge <thomas@codesourcery.com>
  1975. * plugin/plugin-gcn.c (init_environment_variables): Don't prepend
  1976. the 'HSA_RUNTIME_LIB' path to 'libhsa-runtime64.so'.
  1977. * plugin/configfrag.ac (HSA_RUNTIME_LIB): Clean up.
  1978. * config.h.in: Regenerate.
  1979. * configure: Likewise.
  1980. 2021-03-25 Thomas Schwinge <thomas@codesourcery.com>
  1981. PR target/99555
  1982. * testsuite/lib/on_device_arch.c: New file.
  1983. * testsuite/libgomp.c/pr99555-1.c: Likewise.
  1984. * testsuite/libgomp.c-c++-common/task-detach-6.c: Until resolved,
  1985. skip for nvptx offloading, with error status.
  1986. * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
  1987. 2021-03-25 Thomas Schwinge <thomas@codesourcery.com>
  1988. * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
  1989. OpenACC 'serial' construct diagnostic for nvptx offloading.
  1990. 2021-03-15 Tobias Burnus <tobias@codesourcery.com>
  1991. PR c++/99509
  1992. * testsuite/libgomp.c-c++-common/declare_target-1.c: New test.
  1993. 2021-03-12 Tobias Burnus <tobias@codesourcery.com>
  1994. PR fortran/98858
  1995. * testsuite/libgomp.fortran/use_device_ptr-3.f90: New test.
  1996. 2021-03-04 Jakub Jelinek <jakub@redhat.com>
  1997. * configure.ac: Add AC_CHECK_SIZEOF([void *]).
  1998. * plugin/configfrag.ac: Check $ac_cv_sizeof_void_p value instead of
  1999. checking of -m32 or -mx32 options on the command line.
  2000. * config.h.in: Regenerated.
  2001. * configure: Regenerated.
  2002. 2021-02-27 Iain Sandoe <iain@sandoe.co.uk>
  2003. * testsuite/libgomp.c-c++-common/pr96390.c: Require alias
  2004. support from the target.
  2005. 2021-02-25 Kwok Cheung Yeung <kcy@codesourcery.com>
  2006. Jakub Jelinek <jakub@redhat.com>
  2007. PR libgomp/98738
  2008. * libgomp.h (enum gomp_task_kind): Add GOMP_TASK_DETACHED.
  2009. (struct gomp_task): Replace detach and completion_sem fields with
  2010. union containing completion_sem and detach_team. Add deferred_p
  2011. field.
  2012. (struct gomp_team): Remove task_detach_queue.
  2013. * task.c: Include assert.h.
  2014. (gomp_init_task): Initialize deferred_p and completion_sem fields.
  2015. Rearrange initialization order of fields.
  2016. (task_fulfilled_p): Delete.
  2017. (GOMP_task): Use address of task as the event handle. Remove
  2018. initialization of detach field. Initialize deferred_p field.
  2019. Use automatic local for completion_sem. Initialize detach_team field
  2020. for deferred tasks.
  2021. (gomp_barrier_handle_tasks): Remove handling of task_detach_queue.
  2022. Set kind of suspended detach task to GOMP_TASK_DETACHED and
  2023. decrement task_running_count. Move finish_cancelled block out of
  2024. else branch. Relocate call to gomp_team_barrier_done.
  2025. (GOMP_taskwait): Handle tasks with completion events that have not
  2026. been fulfilled.
  2027. (GOMP_taskgroup_end): Likewise.
  2028. (omp_fulfill_event): Use address of task as event handle. Post to
  2029. completion_sem for undeferred tasks. Clear detach_team if task
  2030. has not finished. For finished tasks, handle post-execution tasks,
  2031. call gomp_team_barrier_wake if necessary, and free task.
  2032. * team.c (gomp_new_team): Remove initialization of task_detach_queue.
  2033. (free_team): Remove free of task_detach_queue.
  2034. * testsuite/libgomp.c-c++-common/task-detach-1.c: Fix formatting.
  2035. * testsuite/libgomp.c-c++-common/task-detach-2.c: Fix formatting.
  2036. * testsuite/libgomp.c-c++-common/task-detach-3.c: Fix formatting.
  2037. * testsuite/libgomp.c-c++-common/task-detach-4.c: Fix formatting.
  2038. * testsuite/libgomp.c-c++-common/task-detach-5.c: Fix formatting.
  2039. Change data-sharing of detach events on enclosing parallel to private.
  2040. * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise. Remove
  2041. taskwait directive.
  2042. * testsuite/libgomp.c-c++-common/task-detach-7.c: New.
  2043. * testsuite/libgomp.c-c++-common/task-detach-8.c: New.
  2044. * testsuite/libgomp.c-c++-common/task-detach-9.c: New.
  2045. * testsuite/libgomp.c-c++-common/task-detach-10.c: New.
  2046. * testsuite/libgomp.c-c++-common/task-detach-11.c: New.
  2047. * testsuite/libgomp.fortran/task-detach-1.f90: Fix formatting.
  2048. * testsuite/libgomp.fortran/task-detach-2.f90: Fix formatting.
  2049. * testsuite/libgomp.fortran/task-detach-3.f90: Fix formatting.
  2050. * testsuite/libgomp.fortran/task-detach-4.f90: Fix formatting.
  2051. * testsuite/libgomp.fortran/task-detach-5.f90: Fix formatting.
  2052. Change data-sharing of detach events on enclosing parallel to private.
  2053. * testsuite/libgomp.fortran/task-detach-6.f90: Likewise. Remove
  2054. taskwait directive.
  2055. * testsuite/libgomp.fortran/task-detach-7.f90: New.
  2056. * testsuite/libgomp.fortran/task-detach-8.f90: New.
  2057. * testsuite/libgomp.fortran/task-detach-9.f90: New.
  2058. * testsuite/libgomp.fortran/task-detach-10.f90: New.
  2059. * testsuite/libgomp.fortran/task-detach-11.f90: New.
  2060. 2021-02-22 Tobias Burnus <tobias@codesourcery.com>
  2061. PR fortran/99171
  2062. * testsuite/libgomp.fortran/dummy-procs-1.f90: New test.
  2063. 2021-02-17 Julian Brown <julian@codesourcery.com>
  2064. * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Remove
  2065. expected errors.
  2066. 2021-02-17 Julian Brown <julian@codesourcery.com>
  2067. * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: New test.
  2068. * testsuite/libgomp.oacc-fortran/update-dt-array.f90: Likewise.
  2069. 2021-02-11 Uroš Bizjak <ubizjak@gmail.com>
  2070. * config/linux/x86/futex.h (__futex_wait):
  2071. Revert output type back to long.
  2072. (__futex_wake): Ditto.
  2073. (futex_wait): Update for revert.
  2074. (futex_wake): Ditto.
  2075. 2021-02-11 Uroš Bizjak <ubizjak@gmail.com>
  2076. * config/linux/x86/futex.h (__futex_wait): New static inline
  2077. wrapper function. Correct output type to int and
  2078. timeout type to void *.
  2079. (__futex_wake): New static inline wrapper function.
  2080. Correct output type to int.
  2081. (futex_wait): Use __futex_wait.
  2082. (futex_wake): Use __futex_wake.
  2083. 2021-02-10 Julian Brown <julian@codesourcery.com>
  2084. PR fortran/98979
  2085. * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Add expected
  2086. errors.
  2087. 2021-02-04 Julian Brown <julian@codesourcery.com>
  2088. * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: New test.
  2089. 2021-02-03 Andrew Stubbs <ams@codesourcery.com>
  2090. * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
  2091. EF_AMDGPU_MACH_AMDGCN_GFX908.
  2092. (gcn_gfx908_s): New constant string.
  2093. (isa_hsa_name): Add gfx908.
  2094. (isa_code): Add gfx908.
  2095. 2021-01-25 Kwok Cheung Yeung <kcy@codesourcery.com>
  2096. * libgomp.texi (omp_fulfill_event): New entry.
  2097. 2021-01-20 Jakub Jelinek <jakub@redhat.com>
  2098. * task.c (GOMP_task): Rename priority argument to priority_arg,
  2099. add priority automatic variable and modify that variable. Instead of
  2100. clearing detach argument when GOMP_TASK_FLAG_DETACH bit is not set,
  2101. check flags for that bit.
  2102. 2021-01-19 Tobias Burnus <tobias@codesourcery.com>
  2103. PR fortran/98476
  2104. * testsuite/libgomp.fortran/is_device_ptr-1.f90: New test.
  2105. 2021-01-18 Andreas Schwab <schwab@suse.de>
  2106. * configure.tgt (riscv64*-*-linux*): Add linux to config_path.
  2107. 2021-01-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
  2108. * config/rtems/sem.h (gomp_sem_getcount): New function.
  2109. 2021-01-18 Jakub Jelinek <jakub@redhat.com>
  2110. * config/linux/sem.h (gomp_sem_getcount): New function.
  2111. * config/posix/sem.h (gomp_sem_getcount): New function.
  2112. * config/posix/sem.c (gomp_sem_getcount): New function.
  2113. * config/accel/sem.h (gomp_sem_getcount): New function.
  2114. * task.c (task_fulfilled_p): Use gomp_sem_getcount.
  2115. (omp_fulfill_event): Likewise.
  2116. 2021-01-16 Kwok Cheung Yeung <kcy@codesourcery.com>
  2117. * fortran.c (omp_fulfill_event_): New.
  2118. * libgomp.h (struct gomp_task): Add detach and completion_sem fields.
  2119. (struct gomp_team): Add task_detach_queue and task_detach_count
  2120. fields.
  2121. * libgomp.map (OMP_5.0.1): Add omp_fulfill_event and omp_fulfill_event_.
  2122. * libgomp_g.h (GOMP_task): Add extra argument.
  2123. * omp.h.in (enum omp_event_handle_t): New.
  2124. (omp_fulfill_event): New.
  2125. * omp_lib.f90.in (omp_event_handle_kind): New.
  2126. (omp_fulfill_event): New.
  2127. * omp_lib.h.in (omp_event_handle_kind): New.
  2128. (omp_fulfill_event): Declare.
  2129. * priority_queue.c (priority_tree_find): New.
  2130. (priority_list_find): New.
  2131. (priority_queue_find): New.
  2132. * priority_queue.h (priority_queue_predicate): New.
  2133. (priority_queue_find): New.
  2134. * task.c (gomp_init_task): Initialize detach field.
  2135. (task_fulfilled_p): New.
  2136. (GOMP_task): Add detach argument. Ignore detach argument if
  2137. GOMP_TASK_FLAG_DETACH not set in flags. Initialize completion_sem
  2138. field. Copy address of completion_sem into detach argument and
  2139. into the start of the data record. Wait for detach event if task
  2140. not deferred.
  2141. (gomp_barrier_handle_tasks): Queue tasks with unfulfilled events.
  2142. Remove completed tasks and requeue dependent tasks.
  2143. (omp_fulfill_event): New.
  2144. * team.c (gomp_new_team): Initialize task_detach_queue and
  2145. task_detach_count fields.
  2146. (free_team): Free task_detach_queue field.
  2147. * testsuite/libgomp.c-c++-common/task-detach-1.c: New testcase.
  2148. * testsuite/libgomp.c-c++-common/task-detach-2.c: New testcase.
  2149. * testsuite/libgomp.c-c++-common/task-detach-3.c: New testcase.
  2150. * testsuite/libgomp.c-c++-common/task-detach-4.c: New testcase.
  2151. * testsuite/libgomp.c-c++-common/task-detach-5.c: New testcase.
  2152. * testsuite/libgomp.c-c++-common/task-detach-6.c: New testcase.
  2153. * testsuite/libgomp.fortran/task-detach-1.f90: New testcase.
  2154. * testsuite/libgomp.fortran/task-detach-2.f90: New testcase.
  2155. * testsuite/libgomp.fortran/task-detach-3.f90: New testcase.
  2156. * testsuite/libgomp.fortran/task-detach-4.f90: New testcase.
  2157. * testsuite/libgomp.fortran/task-detach-5.f90: New testcase.
  2158. * testsuite/libgomp.fortran/task-detach-6.f90: New testcase.
  2159. 2021-01-15 Jakub Jelinek <jakub@redhat.com>
  2160. PR target/70454
  2161. * configure.tgt: For i?86 and x86_64 determine if -march=i486 needs to
  2162. be added through preprocessor check on
  2163. __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4.
  2164. 2021-01-14 Thomas Schwinge <thomas@codesourcery.com>
  2165. PR libgomp/65099
  2166. * plugin/configfrag.ac (PLUGIN_NVPTX): Restrict to supported
  2167. configurations.
  2168. * configure: Regenerate.
  2169. * plugin/plugin-nvptx.c (nvptx_get_num_devices): Remove 64-bit
  2170. check.
  2171. 2021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
  2172. * configure: Re-generate.
  2173. 2021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
  2174. * configure: Re-generate.
  2175. 2021-01-05 Julian Brown <julian@codesourcery.com>
  2176. * plugin/plugin-nvptx.c (SOFTSTACK_CACHE_LIMIT): New define.
  2177. (struct ptx_device): Add omp_stacks struct.
  2178. (nvptx_open_device): Initialise cached-stacks housekeeping info.
  2179. (nvptx_close_device): Free cached stacks block and mutex.
  2180. (nvptx_stacks_free): New function.
  2181. (nvptx_alloc): Add SUPPRESS_ERRORS parameter.
  2182. (GOMP_OFFLOAD_alloc): Add strategies for freeing soft-stacks block.
  2183. (nvptx_stacks_alloc): Rename to...
  2184. (nvptx_stacks_acquire): This. Cache stacks block between runs if same
  2185. size or smaller is required.
  2186. (nvptx_stacks_free): Remove.
  2187. (GOMP_OFFLOAD_run): Call nvptx_stacks_acquire and lock stacks block
  2188. during kernel execution.
  2189. 2021-01-01 Jakub Jelinek <jakub@redhat.com>
  2190. * libgomp.texi: Bump @copying's copyright year.
  2191. 2020-12-28 Gerald Pfeifer <gerald@pfeifer.com>
  2192. * libgomp.texi (Top): Avoid bad "up" link.
  2193. 2020-12-18 Jakub Jelinek <jakub@redhat.com>
  2194. * testsuite/libgomp.c/task-6.c: New test.
  2195. 2020-12-09 Andrew Stubbs <ams@codesourcery.com>
  2196. * plugin/plugin-gcn.c: Include hsa_ext_amd.h.
  2197. (HSA_AMD_AGENT_INFO_COMPUTE_UNIT_COUNT): Delete redundant definition.
  2198. 2020-12-08 Tobias Burnus <tobias@codesourcery.com>
  2199. * testsuite/libgomp.fortran/scan-1.f90: New test.
  2200. 2020-12-05 Iain Sandoe <iain@sandoe.co.uk>
  2201. PR target/97865
  2202. * configure: Regenerate.
  2203. 2020-11-29 John David Anglin <danglin@gcc.gnu.org>
  2204. * configure: Regenerate.
  2205. 2020-11-25 Thomas Schwinge <thomas@codesourcery.com>
  2206. * testsuite/libgomp.oacc-c++/cache-1.C: New.
  2207. * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Update.
  2208. 2020-11-25 Andrew Stubbs <ams@codesourcery.com>
  2209. * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Adjust
  2210. expected results.
  2211. 2020-11-24 Andrew Stubbs <ams@codesourcery.com>
  2212. * plugin/plugin-gcn.c: Don't redefine relocations if elf.h has them.
  2213. (reserved): Delete unused define.
  2214. 2020-11-24 Thomas Schwinge <thomas@codesourcery.com>
  2215. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Avoid
  2216. Tcl 8.5-specific behavior.
  2217. * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
  2218. 2020-11-18 Kwok Cheung Yeung <kcy@codesourcery.com>
  2219. * env.c (gomp_global_icv): Remove nest_var field. Add
  2220. max_active_levels_var field.
  2221. (gomp_max_active_levels_var): Remove.
  2222. (parse_boolean): Return true on success.
  2223. (handle_omp_display_env): Express OMP_NESTED in terms of
  2224. max_active_levels_var. Change format specifier for
  2225. max_active_levels_var.
  2226. (initialize_env): Set max_active_levels_var from
  2227. OMP_MAX_ACTIVE_LEVELS, OMP_NESTED, OMP_NUM_THREADS and
  2228. OMP_PROC_BIND.
  2229. * icv.c (omp_set_nested): Express in terms of
  2230. max_active_levels_var.
  2231. (omp_get_nested): Likewise.
  2232. (omp_set_max_active_levels): Use max_active_levels_var field instead
  2233. of gomp_max_active_levels_var.
  2234. (omp_get_max_active_levels): Likewise.
  2235. * libgomp.h (struct gomp_task_icv): Remove nest_var field. Add
  2236. max_active_levels_var field.
  2237. (gomp_supported_active_levels): Set to UCHAR_MAX.
  2238. (gomp_max_active_levels_var): Delete.
  2239. * libgomp.texi (omp_get_nested): Update documentation.
  2240. (omp_set_nested): Likewise.
  2241. (OMP_MAX_ACTIVE_LEVELS): Likewise.
  2242. (OMP_NESTED): Likewise.
  2243. (OMP_NUM_THREADS): Likewise.
  2244. (OMP_PROC_BIND): Likewise.
  2245. * parallel.c (gomp_resolve_num_threads): Replace reference
  2246. to nest_var with max_active_levels_var. Use max_active_levels_var
  2247. field instead of gomp_max_active_levels_var.
  2248. 2020-11-18 Tobias Burnus <tobias@codesourcery.com>
  2249. * testsuite/libgomp.c/usleep.h (fallback_usleep): Renamed from
  2250. nvptx_usleep; use also for device={arch(gcn)}.
  2251. 2020-11-14 Jakub Jelinek <jakub@redhat.com>
  2252. * testsuite/libgomp.c-c++-common/allocate-1.c (struct S): New type.
  2253. (foo): Add tests for non-VLA private and firstprivate clauses on
  2254. omp task.
  2255. (bar): Likewise. Remove taking of address from private/firstprivate
  2256. variables.
  2257. * testsuite/libgomp.c++/allocate-1.C (struct S): New type.
  2258. (foo): Add p, q, px and s arguments. Add tests for array reductions
  2259. and for non-VLA private and firstprivate clauses on omp task.
  2260. (bar): Removed.
  2261. (main): Adjust foo caller. Don't call bar.
  2262. 2020-11-13 Gergö Barany <gergo@codesourcery.com>
  2263. Thomas Schwinge <thomas@codesourcery.com>
  2264. * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
  2265. New.
  2266. * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
  2267. Likewise.
  2268. * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
  2269. Likewise.
  2270. * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
  2271. * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
  2272. 2020-11-13 Gergö Barany <gergo@codesourcery.com>
  2273. Thomas Schwinge <thomas@codesourcery.com>
  2274. PR fortran/94358
  2275. * testsuite/libgomp.oacc-fortran/pr94358-1.f90: New.
  2276. 2020-11-13 Jakub Jelinek <jakub@redhat.com>
  2277. * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add tests
  2278. for array reductions.
  2279. (main): Adjust foo callers.
  2280. 2020-11-12 Jakub Jelinek <jakub@redhat.com>
  2281. * libgomp.map (GOMP_alloc, GOMP_free): Export at GOMP_5.0.1.
  2282. * omp.h.in (omp_alloc): Add malloc and alloc_size attributes.
  2283. * libgomp_g.h (GOMP_alloc, GOMP_free): Declare.
  2284. * allocator.c (omp_aligned_alloc): New for now static function,
  2285. add alignment argument and handle it.
  2286. (omp_alloc): Reimplement using omp_aligned_alloc.
  2287. (GOMP_alloc, GOMP_free): New functions.
  2288. (omp_free): Add ialias.
  2289. * testsuite/libgomp.c-c++-common/allocate-1.c: New test.
  2290. * testsuite/libgomp.c++/allocate-1.C: New test.
  2291. 2020-11-12 Thomas Schwinge <thomas@codesourcery.com>
  2292. PR fortran/97782
  2293. * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Adjust.
  2294. 2020-11-10 Chung-Lin Tang <cltang@codesourcery.com>
  2295. * libgomp.h (enum gomp_map_vars_kind): Adjust enum values to be bit-flag
  2296. usable.
  2297. * oacc-mem.c (acc_map_data): Adjust gomp_map_vars argument flags to
  2298. 'GOMP_MAP_VARS_OPENACC | GOMP_MAP_VARS_ENTER_DATA'.
  2299. (goacc_enter_datum): Likewise for call to gomp_map_vars_async.
  2300. (goacc_enter_data_internal): Likewise.
  2301. * target.c (gomp_map_vars_internal):
  2302. Change checks of GOMP_MAP_VARS_ENTER_DATA to use bit-and (&). Adjust use
  2303. of gomp_attach_pointer for OpenMP cases.
  2304. (gomp_exit_data): Add handling of GOMP_MAP_DETACH.
  2305. (GOMP_target_enter_exit_data): Add handling of GOMP_MAP_ATTACH.
  2306. * testsuite/libgomp.c-c++-common/ptr-attach-1.c: New testcase.
  2307. 2020-11-05 Ulrich Drepper <drepper@redhat.com>
  2308. Kwok Cheung Yeung <kcy@codesourcery.com>
  2309. * Makefile.am (%.mod): Add -cpp and -fopenmp to compile flags.
  2310. * Makefile.in: Regenerate.
  2311. * fortran.c: Wrap uses of omp_set_nested and omp_get_nested with
  2312. pragmas to ignore -Wdeprecated-declarations warnings.
  2313. * icv.c: Likewise.
  2314. * omp.h.in (__GOMP_DEPRECATED_5_0): Define.
  2315. Mark omp_lock_hint_* enum values, omp_lock_hint_t, omp_set_nested,
  2316. and omp_get_nested with __GOMP_DEPRECATED_5_0.
  2317. * omp_lib.f90.in: Mark omp_get_nested and omp_set_nested as
  2318. deprecated.
  2319. * testsuite/libgomp.c++/affinity-1.C: Add -Wno-deprecated-declarations
  2320. to test options.
  2321. * testsuite/libgomp.c/affinity-1.c: Likewise.
  2322. * testsuite/libgomp.c/affinity-2.c: Likewise.
  2323. * testsuite/libgomp.c/appendix-a/a.15.1.c: Likewise.
  2324. * testsuite/libgomp.c/lib-1.c: Likewise.
  2325. * testsuite/libgomp.c/nested-1.c: Likewise.
  2326. * testsuite/libgomp.c/nested-2.c: Likewise.
  2327. * testsuite/libgomp.c/nested-3.c: Likewise.
  2328. * testsuite/libgomp.c/pr32362-1.c: Likewise.
  2329. * testsuite/libgomp.c/pr32362-2.c: Likewise.
  2330. * testsuite/libgomp.c/pr32362-3.c: Likewise.
  2331. * testsuite/libgomp.c/pr35549.c: Likewise.
  2332. * testsuite/libgomp.c/pr42942.c: Likewise.
  2333. * testsuite/libgomp.c/pr61200.c: Likewise.
  2334. * testsuite/libgomp.c/sort-1.c: Likewise.
  2335. * testsuite/libgomp.c/target-5.c: Likewise.
  2336. * testsuite/libgomp.c/target-6.c: Likewise.
  2337. * testsuite/libgomp.c/teams-1.c: Likewise.
  2338. * testsuite/libgomp.c/thread-limit-1.c: Likewise.
  2339. * testsuite/libgomp.c/thread-limit-2.c: Likewise.
  2340. * testsuite/libgomp.c/thread-limit-4.c: Likewise.
  2341. * testsuite/libgomp.fortran/affinity1.f90: Likewise.
  2342. * testsuite/libgomp.fortran/lib1.f90: Likewise.
  2343. * testsuite/libgomp.fortran/lib2.f: Likewise.
  2344. * testsuite/libgomp.fortran/nested1.f90: Likewise.
  2345. * testsuite/libgomp.fortran/teams1.f90: Likewise.
  2346. 2020-11-02 Thomas Schwinge <thomas@codesourcery.com>
  2347. PR target/85486
  2348. * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: Simplify and enhance.
  2349. * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
  2350. * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
  2351. 2020-11-02 Thomas Schwinge <thomas@codesourcery.com>
  2352. PR testsuite/80219
  2353. PR testsuite/85303
  2354. * testsuite/lib/libgomp.exp (libgomp_init): Set
  2355. 'gcc_warning_prefix', 'gcc_error_prefix'.
  2356. 2020-10-30 Jakub Jelinek <jakub@redhat.com>
  2357. * target.c (gomp_map_vars_internal): Use FIELD_TGT_EMPTY macro
  2358. even in field_tgt_clear initializer.
  2359. 2020-10-28 Jakub Jelinek <jakub@redhat.com>
  2360. * testsuite/libgomp.c/target-42.c: New test.
  2361. 2020-10-28 Jakub Jelinek <jakub@redhat.com>
  2362. Tom de Vries <tdevries@suse.de>
  2363. PR testsuite/81690
  2364. * testsuite/libgomp.c/usleep.h: New file.
  2365. * testsuite/libgomp.c/target-32.c: Include usleep.h.
  2366. (main): Use tgt_usleep instead of usleep.
  2367. * testsuite/libgomp.c/thread-limit-2.c: Include usleep.h.
  2368. (main): Use tgt_usleep instead of usleep.
  2369. 2020-10-28 Jakub Jelinek <jakub@redhat.com>
  2370. PR lto/96680
  2371. * testsuite/libgomp.c/declare-variant-1.c: New test.
  2372. 2020-10-22 Jakub Jelinek <jakub@redhat.com>
  2373. * testsuite/libgomp.c/target-41.c: New test.
  2374. 2020-10-22 Jakub Jelinek <jakub@redhat.com>
  2375. * icv.c (omp_get_initial_device): Remove including corresponding
  2376. ialias.
  2377. * icv-device.c (omp_get_initial_device): New function. Return
  2378. gomp_get_num_devices (). Add ialias.
  2379. * target.c (resolve_device): Don't fail with
  2380. OMP_TARGET_OFFLOAD=mandatory if device_id is equal to
  2381. gomp_get_num_devices ().
  2382. (omp_target_alloc, omp_target_free, omp_target_is_present,
  2383. omp_target_memcpy, omp_target_memcpy_rect, omp_target_associate_ptr,
  2384. omp_target_disassociate_ptr, omp_pause_resource): Use
  2385. gomp_get_num_devices () instead of GOMP_DEVICE_HOST_FALLBACK on the
  2386. first use in the functions, in uses dominated by the
  2387. gomp_get_num_devices call use num_devices_openmp instead.
  2388. * libgomp.texi (omp_get_initial_device): Document.
  2389. * config/gcn/icv-device.c (omp_get_initial_device): New function.
  2390. Add ialias.
  2391. * config/nvptx/icv-device.c (omp_get_initial_device): Likewise.
  2392. * testsuite/libgomp.c/target-40.c: New test.
  2393. 2020-10-21 Jakub Jelinek <jakub@redhat.com>
  2394. * env.c (parse_target_offload): Change new_offload var type to int,
  2395. preinitialize to -1, remove found var and test new_offload != -1
  2396. instead of found.
  2397. 2020-10-20 Jakub Jelinek <jakub@redhat.com>
  2398. * target.c (gomp_target_init): Inside of the function, use automatic
  2399. variables corresponding to num_devices, num_devices_openmp and devices
  2400. global variables and update the globals only at the end of the
  2401. function.
  2402. 2020-10-20 Kwok Cheung Yeung <kcy@codesourcery.com>
  2403. * env.c (gomp_target_offload_var): New.
  2404. (parse_target_offload): New.
  2405. (handle_omp_display_env): Print value of OMP_TARGET_OFFLOAD.
  2406. (initialize_env): Parse OMP_TARGET_OFFLOAD.
  2407. * libgomp.h (gomp_target_offload_t): New.
  2408. (gomp_target_offload_var): New.
  2409. * libgomp.texi (OMP_TARGET_OFFLOAD): New section.
  2410. * target.c (resolve_device): Generate error if device not found and
  2411. offloading is mandatory.
  2412. (gomp_target_fallback): Generate error if offloading is mandatory.
  2413. (GOMP_target): Add argument in call to gomp_target_fallback.
  2414. (GOMP_target_ext): Likewise.
  2415. (gomp_target_data_fallback): Generate error if offloading is mandatory.
  2416. (GOMP_target_data): Add argument in call to gomp_target_data_fallback.
  2417. (GOMP_target_data_ext): Likewise.
  2418. (gomp_target_task_fn): Add argument in call to gomp_target_fallback.
  2419. (gomp_target_init): Return early if offloading is disabled.
  2420. 2020-10-15 Kwok Cheung Yeung <kcy@codesourcery.com>
  2421. * libgomp.texi (omp_get_max_active_levels): Modify description.
  2422. (omp_get_supported_active_levels): Make descriptions consistent.
  2423. 2020-10-14 Jakub Jelinek <jakub@redhat.com>
  2424. * libgomp.texi (omp_get_supported_active_levels): Fix a typo.
  2425. 2020-10-13 Kwok Cheung Yeung <kcy@codesourcery.com>
  2426. * env.c (gomp_max_active_levels_var): Initialize to
  2427. gomp_supported_active_levels.
  2428. (initialize_env): Limit gomp_max_active_levels_var to be at most
  2429. equal to gomp_supported_active_levels.
  2430. * fortran.c (omp_get_supported_active_levels): Add ialias_redirect.
  2431. (omp_get_supported_active_levels_): New.
  2432. * icv.c (omp_set_max_active_levels): Limit gomp_max_active_levels_var
  2433. to at most equal to gomp_supported_active_levels.
  2434. (omp_get_supported_active_levels): New.
  2435. * libgomp.h (gomp_supported_active_levels): New.
  2436. * libgomp.map (OMP_5.0.1): Add omp_get_supported_active_levels and
  2437. omp_get_supported_active_levels_.
  2438. * libgomp.texi (omp_get_supported_active_levels): New.
  2439. (omp_set_max_active_levels): Update. Add reference to
  2440. omp_get_supported_active_levels.
  2441. * omp.h.in (omp_get_supported_active_levels): New.
  2442. * omp_lib.f90.in (omp_get_supported_active_levels): New.
  2443. * omp_lib.h.in (omp_get_supported_active_levels): New.
  2444. * testsuite/libgomp.c/lib-2.c (main): Check omp_get_max_active_levels
  2445. against omp_get_supported_active_levels.
  2446. * testsuite/libgomp.fortran/lib4.f90 (lib4): Likewise.
  2447. 2020-10-11 Clement Chigot <clement.chigot@atos.net>
  2448. * config/t-aix: Delete and recreate libgomp before creating
  2449. FAT library.
  2450. 2020-10-08 Tom de Vries <tdevries@suse.de>
  2451. PR libgomp/81802
  2452. * plugin/plugin-nvptx.c (GOMP_OFFLOAD_run): Report launch
  2453. dimensions.
  2454. 2020-10-06 Tom de Vries <tdevries@suse.de>
  2455. * testsuite/libgomp.oacc-fortran/declare-5.f90: Add xfail for PR92790.
  2456. 2020-10-06 Tom de Vries <tdevries@suse.de>
  2457. PR middle-end/90861
  2458. * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Remove xfail.
  2459. 2020-10-05 Tom de Vries <tdevries@suse.de>
  2460. PR fortran/95654
  2461. * testsuite/libgomp.fortran/pr95654.f90: New test.
  2462. 2020-10-02 Tobias Burnus <tobias@codesourcery.com>
  2463. * Makefile.in: Regenerate with automake 1.15.1.
  2464. * aclocal.m4: Likewise.
  2465. * configure: Likewise.
  2466. * testsuite/Makefile.in: Likewise.
  2467. 2020-09-30 Andrew Stubbs <ams@codesourcery.com>
  2468. * parallel.c (gomp_resolve_num_threads): Ignore nest_var on nvptx
  2469. and amdgcn targets.
  2470. 2020-09-30 Tobias Burnus <tobias@codesourcery.com>
  2471. * testsuite/libgomp.fortran/declare-target-3.f90: New test.
  2472. 2020-09-29 Andrew Stubbs <ams@codesourcery.com>
  2473. * config/gcn/bar.c (gomp_barrier_wait_end): Skip the barrier if the
  2474. total number of threads is one.
  2475. (gomp_team_barrier_wake): Likewise.
  2476. (gomp_team_barrier_wait_end): Likewise.
  2477. (gomp_team_barrier_wait_cancel_end): Likewise.
  2478. * config/nvptx/bar.c (gomp_barrier_wait_end): Likewise.
  2479. (gomp_team_barrier_wake): Likewise.
  2480. (gomp_team_barrier_wait_end): Likewise.
  2481. (gomp_team_barrier_wait_cancel_end): Likewise.
  2482. * testsuite/libgomp.c-c++-common/nested-parallel-unbalanced.c: New test.
  2483. 2020-09-28 Tobias Burnus <tobias@codesourcery.com>
  2484. PR middle-end/96390
  2485. * testsuite/libgomp.c++/pr96390.C: New test.
  2486. * testsuite/libgomp.c-c++-common/pr96390.c: New test.
  2487. 2020-09-27 Clement Chigot <clement.chigot@atos.net>
  2488. * config/t-aix: Use $(AR) without -X32_64.
  2489. 2020-09-25 Jakub Jelinek <jakub@redhat.com>
  2490. * testsuite/libgomp.c/loop-25.c: New test.
  2491. 2020-09-22 Tobias Burnus <tobias@codesourcery.com>
  2492. PR fortran/95654
  2493. * testsuite/libgomp.fortran/pr66199-5.f90: Make stop codes unique.
  2494. 2020-09-22 Tom de Vries <tdevries@suse.de>
  2495. * plugin/plugin-nvptx.c (link_ptx): Print elog if cuLinkComplete call
  2496. fails.
  2497. 2020-09-16 Nathan Sidwell <nathan@acm.org>
  2498. * testsuite/libgomp.c++/udr-3.C: Add missing ctor.
  2499. 2020-09-15 Tobias Burnus <tobias@codesourcery.com>
  2500. PR fortran/96668
  2501. * target.c (gomp_map_vars_internal): Initialize has_nullptr.
  2502. 2020-09-15 Tobias Burnus <tobias@codesourcery.com>
  2503. PR fortran/96668
  2504. * libgomp.h (struct target_var_desc): Add has_null_ptr_assoc member.
  2505. * target.c (gomp_map_vars_existing): Add always_to_flag flag.
  2506. (gomp_map_vars_existing): Update call to it.
  2507. (gomp_map_fields_existing): Likewise
  2508. (gomp_map_vars_internal): Update PSET handling such that if a nullptr is
  2509. now allocated or if GOMP_MAP_POINTER is used PSET is updated and pointer
  2510. remapped.
  2511. (GOMP_target_enter_exit_data): Hanlde GOMP_MAP_ALWAYS_POINTER like
  2512. GOMP_MAP_POINTER.
  2513. * testsuite/libgomp.fortran/map-alloc-ptr-1.f90: New test.
  2514. * testsuite/libgomp.fortran/map-alloc-ptr-2.f90: New test.
  2515. 2020-09-14 Tom de Vries <tdevries@suse.de>
  2516. * config/nvptx/atomic.c: New file. Add
  2517. __sync_val_compare_and_swap_16.
  2518. * testsuite/libgomp.c-c++-common/reduction-16.c: Add -latomic for
  2519. target offload_target_nvptx.
  2520. 2020-09-08 Julian Brown <julian@codesourcery.com>
  2521. * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c: Remove
  2522. iteration-ordering assumptions.
  2523. 2020-09-08 Julian Brown <julian@codesourcery.com>
  2524. * testsuite/libgomp.oacc-fortran/collapse-1.f90: Fix race condition.
  2525. * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
  2526. 2020-08-20 Chung-Lin Tang <cltang@codesourcery.com>
  2527. * plugin/plugin-nvptx.c (nvptx_free):
  2528. Change "GOMP_PLUGIN_acc_thread () == NULL" test into check of
  2529. CUDA_ERROR_NOT_PERMITTED status for cuMemGetAddressRange. Adjust
  2530. comments.
  2531. 2020-08-20 Tobias Burnus <tobias@codesourcery.com>
  2532. * testsuite/libgomp.fortran/lastprivate-conditional-10.f90: New test.
  2533. 2020-08-13 Kwok Cheung Yeung <kcy@codesourcery.com>
  2534. * testsuite/libgomp.c-c++-common/reduction-16.c: New.
  2535. 2020-08-13 Jakub Jelinek <jakub@redhat.com>
  2536. * testsuite/libgomp.c/loop-22.c (main): Add some further tests.
  2537. * testsuite/libgomp.c/loop-23.c (main): Likewise.
  2538. * testsuite/libgomp.c/loop-24.c: New test.
  2539. 2020-08-08 Jakub Jelinek <jakub@redhat.com>
  2540. Tobias Burnus <tobias@codesourcery.com>
  2541. PR fortran/93553
  2542. * testsuite/libgomp.fortran/pr93553.f90: New test.
  2543. 2020-08-05 Jakub Jelinek <jakub@redhat.com>
  2544. * testsuite/libgomp.c/loop-22.c: New test.
  2545. * testsuite/libgomp.c/loop-23.c: New test.
  2546. 2020-08-05 Jakub Jelinek <jakub@redhat.com>
  2547. PR middle-end/96459
  2548. * testsuite/libgomp.c/teams-3.c: New test.
  2549. * testsuite/libgomp.c-c++-common/for-2.h (OMPTEAMS): Define to nothing
  2550. if not defined yet.
  2551. (N(test)): Use it before all N(f*) calls.
  2552. * testsuite/libgomp.c-c++-common/for-14.c (DO_PRAGMA, OMPTEAMS): Define.
  2553. (main): Don't call all test_* functions from within
  2554. #pragma omp teams reduction(|:err), call them directly.
  2555. 2020-08-04 Tom de Vries <tdevries@suse.de>
  2556. PR target/96428
  2557. * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: New test.
  2558. * testsuite/libgomp.oacc-fortran/pr96628-part2.f90: New test.
  2559. 2020-08-03 Julian Brown <julian@codesourcery.com>
  2560. Thomas Schwinge <thomas@codesourcery.com>
  2561. * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Don't run for
  2562. shared-memory devices. Extend with further checking.
  2563. 2020-08-03 Martin Jambor <mjambor@suse.cz>
  2564. * plugin/Makefrag.am: Remove configuration of HSA plugin.
  2565. * aclocal.m4: Regenerated.
  2566. * Makefile.in: Regenerated.
  2567. * config.h.in: Regenerated.
  2568. * configure: Regenerated.
  2569. * plugin/configfrag.ac: Likewise.
  2570. * plugin/hsa_ext_finalize.h: Removed.
  2571. * plugin/plugin-hsa.c: Likewise.
  2572. * testsuite/Makefile.in: Regenerated.
  2573. * testsuite/lib/libgomp.exp
  2574. (offload_target_to_openacc_device_type): Remove hsa case.
  2575. (check_effective_target_hsa_offloading_selected_nocache): Removed
  2576. (check_effective_target_hsa_offloading_selected): Likewise.
  2577. (libgomp_init): Do not add -Wno-hsa to additional_flags.
  2578. * testsuite/libgomp.hsa.c/alloca-1.c: Removed test.
  2579. * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
  2580. * testsuite/libgomp.hsa.c/bits-insns.c: Likewise.
  2581. * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
  2582. * testsuite/libgomp.hsa.c/c.exp: Likewise.
  2583. * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
  2584. * testsuite/libgomp.hsa.c/complex-align-2.c: Likewise.
  2585. * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
  2586. * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
  2587. * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
  2588. * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
  2589. * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
  2590. * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
  2591. * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
  2592. * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
  2593. * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
  2594. * testsuite/libgomp.hsa.c/pr82416.c: Likewise.
  2595. * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
  2596. * testsuite/libgomp.hsa.c/staticvar.c: Likewise.
  2597. * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
  2598. * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
  2599. * testsuite/libgomp.hsa.c/switch-sbr-2.c: Likewise.
  2600. * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
  2601. * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
  2602. 2020-07-27 Julian Brown <julian@codesourcery.com>
  2603. Thomas Schwinge <thomas@codesourcery.com>
  2604. * libgomp.h (struct target_var_desc): Rename do_detach field to
  2605. is_attach.
  2606. * oacc-mem.c (goacc_exit_datum_1): Add assert. Don't set finalize for
  2607. GOMP_MAP_FORCE_DETACH. Update checking to use is_attach field.
  2608. (goacc_enter_data_internal): Don't affect reference counts
  2609. for attach mappings.
  2610. (goacc_exit_data_internal): Don't affect reference counts for detach
  2611. mappings.
  2612. * target.c (gomp_map_vars_existing): Don't affect reference counts for
  2613. attach mappings.
  2614. (gomp_map_vars_internal): Set renamed is_attach flag unconditionally to
  2615. mark attach mappings.
  2616. (gomp_unmap_vars_internal): Use is_attach flag to prevent affecting
  2617. reference count for attach mappings.
  2618. * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-1.c: New test.
  2619. * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
  2620. * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
  2621. * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Mark
  2622. test as shouldfail.
  2623. * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust to fail
  2624. gracefully in no-finalize mode.
  2625. * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-3.c: New file.
  2626. 2020-07-24 Thomas Schwinge <thomas@codesourcery.com>
  2627. * testsuite/libgomp.oacc-c++/c++.exp: Unset 'offload_target' after
  2628. use.
  2629. * testsuite/libgomp.oacc-c/c.exp: Likewise.
  2630. * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
  2631. 2020-07-23 Julian Brown <julian@codesourcery.com>
  2632. Thomas Schwinge <thomas@codesourcery.com>
  2633. * target.c (gomp_unmap_vars_internal): Remove unnecessary forcing of
  2634. finalization for detach operation.
  2635. * testsuite/libgomp.oacc-c-c++-common/structured-detach-underflow.c:
  2636. New test.
  2637. 2020-07-23 Tobias Burnus <tobias@codesourcery.com>
  2638. * configure.ac: Add OMP_DEPEND_KIND and OMP_INT128_SIZE.
  2639. * libgomp_f.h.in (omp_check_defines): Check whether
  2640. sizeof of determined Fortran kind and C typedef match.
  2641. * omp_lib.f90.in: Add omp_depened_kind.
  2642. * omp_lib.h.in: Likewise; fix omp_alloctrait_key_kind.
  2643. * configure: Regenerate.
  2644. * Makefile.in: Regenerate.
  2645. * testsuite/Makefile.in: Regenerate.
  2646. 2020-07-22 Tobias Burnus <tobias@codesourcery.com>
  2647. * testsuite/libgomp.c-c++-common/critical-hint-1.c: New; moved from
  2648. gcc/testsuite/c-c++-common/gomp/.
  2649. * testsuite/libgomp.c-c++-common/critical-hint-2.c: Likewise.
  2650. * testsuite/libgomp.fortran/critical-hint-1.f90: New; moved
  2651. from gcc/testsuite/gfortran.dg/gomp/.
  2652. * testsuite/libgomp.fortran/critical-hint-2.f90: Likewise.
  2653. 2020-07-22 Tobias Burnus <tobias@codesourcery.com>
  2654. * omp_lib.f90.in: Add omp_sync_hint_* and omp_sync_hint_kind.
  2655. * omp_lib.h.in: Likewise.
  2656. 2020-07-18 H.J. Lu <hjl.tools@gmail.com>
  2657. PR target/95620
  2658. * testsuite/libgomp.c/pr95620.c: New test.
  2659. 2020-07-16 Julian Brown <julian@codesourcery.com>
  2660. Thomas Schwinge <thomas@codesourcery.com>
  2661. * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: New test.
  2662. * testsuite/libgomp.oacc-fortran/attach-descriptor-2.f90: New test.
  2663. 2020-07-15 Tobias Burnus <tobias@codesourcery.com>
  2664. * testsuite/libgomp.fortran/alloc-1.F90: Use c_size_t to
  2665. avoid conversion on 32bit systems from 32bit to 64bit due
  2666. to -fdefault-integer-8.
  2667. 2020-07-15 Tobias Burnus <tobias@codesourcery.com>
  2668. * testsuite/libgomp.fortran/struct-elem-map-1.f90: Remove unused
  2669. variables; add character(kind=4) tests; update TODO comment.
  2670. 2020-07-15 Tobias Burnus <tobias@codesourcery.com>
  2671. * allocator.c: Add ialias for omp_init_allocator and
  2672. omp_destroy_allocator.
  2673. * configure.ac: Set INTPTR_T_KIND.
  2674. * configure: Regenerate.
  2675. * Makefile.in: Regenerate.
  2676. * testsuite/Makefile.in: Regenerate.
  2677. * fortran.c (omp_init_allocator_, omp_destroy_allocator_,
  2678. omp_set_default_allocator_, omp_get_default_allocator_): New
  2679. functions and ialias_redirect.
  2680. * icv.c: Add ialias for omp_set_default_allocator and
  2681. omp_get_default_allocator.
  2682. * libgomp.map (OMP_5.0.1): Add omp_init_allocator_,
  2683. omp_destroy_allocator_, omp_set_default_allocator_ and
  2684. omp_get_default_allocator_.
  2685. * omp_lib.f90.in: Add allocator traits parameters, declare
  2686. allocator routines and add related kind parameters.
  2687. * omp_lib.h.in: Likewise.
  2688. * testsuite/libgomp.c-c++-common/alloc-2.c: Fix sizeof.
  2689. * testsuite/libgomp.fortran/alloc-1.F90: New test.
  2690. * testsuite/libgomp.fortran/alloc-2.F90: New test.
  2691. * testsuite/libgomp.fortran/alloc-3.F: New test.
  2692. * testsuite/libgomp.fortran/alloc-4.f90: New test.
  2693. * testsuite/libgomp.fortran/alloc-5.f90: New test.
  2694. 2020-07-14 Tom de Vries <tom@codesourcery.com>
  2695. Cesar Philippidis <cesar@codesourcery.com>
  2696. Thomas Schwinge <thomas@codesourcery.com>
  2697. Kwok Cheung Yeung <kcy@codesourcery.com>
  2698. * oacc-init.c (acc_init_state_lock, acc_init_state, acc_init_thread):
  2699. New variable.
  2700. (acc_init_1): Set acc_init_thread to pthread_self (). Set
  2701. acc_init_state to initializing at the start, and to initialized at the
  2702. end.
  2703. (self_initializing_p): New function.
  2704. (acc_get_device_type): Return acc_device_none if called by thread that
  2705. is currently executing acc_init_1.
  2706. * libgomp.texi (acc_get_device_type): Update documentation.
  2707. (Implementation Status and Implementation-Defined Behavior): Likewise.
  2708. * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-2.c: New.
  2709. 2020-07-14 David Edelsohn <dje.gcc@gmail.com>
  2710. * config/t-aix: Set BITS from compiler cpp macro.
  2711. 2020-07-14 Tobias Burnus <tobias@codesourcery.com>
  2712. * testsuite/libgomp.fortran/struct-elem-map-1.f90: New test.
  2713. 2020-07-14 Tobias Burnus <tobias@codesourcery.com>
  2714. PR fortran/67311
  2715. * testsuite/libgomp.fortran/target-map-1.f90: New test.
  2716. 2020-07-14 Jakub Jelinek <jakub@redhat.com>
  2717. * testsuite/libgomp.c/loop-21.c: New test.
  2718. 2020-07-13 Julian Brown <julian@codesourcery.com>
  2719. Thomas Schwinge <thomas@codesourcery.com>
  2720. * testsuite/libgomp.oacc-fortran/dynamic-pointer-1.f90: New test.
  2721. 2020-07-10 Julian Brown <julian@codesourcery.com>
  2722. Thomas Schwinge <thomas@codesourcery.com>
  2723. * libgomp.h (struct splay_tree_key_s): Change virtual_refcount to
  2724. dynamic_refcount.
  2725. (struct gomp_device_descr): Remove GOMP_MAP_VARS_OPENACC_ENTER_DATA.
  2726. * oacc-mem.c (acc_map_data): Substitute virtual_refcount for
  2727. dynamic_refcount.
  2728. (acc_unmap_data): Update comment.
  2729. (goacc_map_var_existing, goacc_enter_datum): Adjust for
  2730. dynamic_refcount semantics.
  2731. (goacc_exit_datum_1, goacc_exit_datum): Re-add some error checking.
  2732. Adjust for dynamic_refcount semantics.
  2733. (goacc_enter_data_internal): Implement "present" case of dynamic
  2734. memory-map handling here. Update "non-present" case for
  2735. dynamic_refcount semantics.
  2736. (goacc_exit_data_internal): Use goacc_exit_datum_1.
  2737. * target.c (gomp_map_vars_internal): Remove
  2738. GOMP_MAP_VARS_OPENACC_ENTER_DATA handling. Update for dynamic_refcount
  2739. handling.
  2740. (gomp_unmap_vars_internal): Remove virtual_refcount handling.
  2741. (gomp_load_image_to_device): Substitute dynamic_refcount for
  2742. virtual_refcount.
  2743. * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Remove XFAILs.
  2744. * testsuite/libgomp.oacc-c-c++-common/refcounting-1.c: New test.
  2745. * testsuite/libgomp.oacc-c-c++-common/refcounting-2.c: New test.
  2746. * testsuite/libgomp.oacc-c-c++-common/struct-3-1-1.c: New test.
  2747. * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Remove XFAILs and
  2748. trace output.
  2749. * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Remove
  2750. trace output.
  2751. * testsuite/libgomp.oacc-fortran/dynamic-incr-structural-1.f90: New
  2752. test.
  2753. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
  2754. Remove stale comment.
  2755. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Remove XFAILs.
  2756. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
  2757. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
  2758. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
  2759. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
  2760. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Adjust XFAIL.
  2761. 2020-07-10 Julian Brown <julian@codesourcery.com>
  2762. Thomas Schwinge <thomas@codesourcery.com>
  2763. * oacc-mem.c (goacc_map_var_existing): New function.
  2764. (goacc_enter_datum): Use above function.
  2765. (goacc_exit_datum_1): New function.
  2766. (goacc_exit_datum): Use above function.
  2767. 2020-07-09 Julian Brown <julian@codesourcery.com>
  2768. Thomas Schwinge <thomas@codesourcery.com>
  2769. PR middle-end/95270
  2770. * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: New test.
  2771. * testsuite/libgomp.oacc-c-c++-common/pr95270-2.c: New test.
  2772. 2020-07-09 Julian Brown <julian@codesourcery.com>
  2773. * oacc-mem.c (find_group_last): Group data-movement clauses
  2774. (GOMP_MAP_TO_PSET, GOMP_MAP_TO, etc.) together with a subsequent
  2775. GOMP_MAP_ATTACH. Allow standalone GOMP_MAP_ATTACH also.
  2776. 2020-07-09 Jakub Jelinek <jakub@redhat.com>
  2777. * testsuite/libgomp.c/loop-19.c: New test.
  2778. * testsuite/libgomp.c/loop-20.c: New test.
  2779. 2020-07-09 Jakub Jelinek <jakub@redhat.com>
  2780. * omp.h.in (omp_alloctrait_value_t): Change omp_atv_default from
  2781. 2 to -1. Add omp_atv_serialized and define omp_atv_sequential using
  2782. it. Remove __omp_alloctrait_value_max__.
  2783. * allocator.c (omp_init_allocator): Handle omp_atv_default for
  2784. omp_atk_alignment and omp_atk_pool_size.
  2785. 2020-07-03 Thomas Schwinge <thomas@codesourcery.com>
  2786. * oacc-mem.c (goacc_exit_data_internal): Revert always-copyfrom
  2787. behavior for 'GOMP_MAP_FORCE_FROM'.
  2788. * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Adjust XFAIL.
  2789. 2020-07-03 Thomas Schwinge <thomas@codesourcery.com>
  2790. * oacc-mem.c (goacc_exit_data_internal): Remove
  2791. 'GOMP_MAP_ALWAYS_FROM' handling.
  2792. 2020-06-30 Thomas Schwinge <thomas@codesourcery.com>
  2793. * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Replace fragile
  2794. 'scan-assembler' with 'scan-offload-rtl'.
  2795. * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
  2796. * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
  2797. * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: Likewise.
  2798. * testsuite/libgomp.oacc-c-c++-common/pr85381.c: Likewise.
  2799. 2020-06-30 Thomas Schwinge <thomas@codesourcery.com>
  2800. * target.c (gomp_map_vars_existing): Assert 'kind !=
  2801. GOMP_MAP_ATTACH'.
  2802. (gomp_map_vars_internal): Clean up.
  2803. 2020-06-27 Jakub Jelinek <jakub@redhat.com>
  2804. * testsuite/libgomp.c/loop-17.c: New test.
  2805. * testsuite/libgomp.c/loop-18.c: New test.
  2806. 2020-06-26 Marek Polacek <polacek@redhat.com>
  2807. * testsuite/libgomp.c++/atomic-3.C: Use -std=gnu++14.
  2808. 2020-06-23 Alexandre Oliva <oliva@adacore.com>
  2809. * testsuite/lib/libgomp.exp: Load gcc lib scanoffload.exp.
  2810. * testsuite/lib/libgomp-dg.exp: Drop now-obsolete -save-temps.
  2811. 2020-06-22 David Edelsohn <dje.gcc@gmail.com>
  2812. * Makefile.am: Use -include.
  2813. * Makefile.in: Regenerate.
  2814. 2020-06-21 David Edelsohn <dje.gcc@gmail.com>
  2815. * Makefile.am (tmake_file): Build and install AIX-style FAT libraries.
  2816. * Makefile.in: Regenerate
  2817. * configure.ac (tmake_file): Substitute.
  2818. * configure: Regenerate.
  2819. * configure.tgt (powerpc-ibm-aix*): Define tmake_file.
  2820. * config/t-aix: New file.
  2821. 2020-06-17 Thomas Schwinge <thomas@codesourcery.com>
  2822. PR lto/94848
  2823. * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: Add
  2824. 'dg-do run'.
  2825. 2020-06-17 Andrew Stubbs <ams@codesourcery.com>
  2826. * plugin/plugin-gcn.c (init_environment_variables): Use ".so.1"
  2827. variant for HSA_RUNTIME_LIB name.
  2828. (find_executable_symbol_1): Delete.
  2829. (find_executable_symbol): Delete.
  2830. (init_kernel_properties): Add ".kd" suffix to symbol names.
  2831. (find_load_offset): Delete.
  2832. (create_and_finalize_hsa_program): Remove relocation handling.
  2833. 2020-06-16 Tobias Burnus <tobias@codesourcery.com>
  2834. * testsuite/libgomp.oacc-fortran/routine-10.f90: New test.
  2835. 2020-06-08 Tobias Burnus <tobias@codesourcery.com>
  2836. PR lto/94848
  2837. PR middle-end/95551
  2838. * testsuite/libgomp.fortran/target-var.f90: New test.
  2839. 2020-06-05 Thomas Schwinge <thomas@codesourcery.com>
  2840. Julian Brown <julian@codesourcery.com>
  2841. * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>: Explain
  2842. special handling.
  2843. 2020-06-05 Thomas Schwinge <thomas@codesourcery.com>
  2844. Julian Brown <julian@codesourcery.com>
  2845. * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
  2846. Simplify.
  2847. 2020-06-05 Julian Brown <julian@codesourcery.com>
  2848. * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: New test.
  2849. * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: New test.
  2850. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2851. * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
  2852. Evaluate 'copyfrom' individually for each entry.
  2853. * testsuite/libgomp.oacc-c-c++-common/struct-1.c: Update.
  2854. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2855. * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
  2856. Evaluate 'finalize' individually for each entry.
  2857. * testsuite/libgomp.oacc-c-c++-common/struct-1.c: New file.
  2858. * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: Remove
  2859. file.
  2860. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2861. * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: Fix 'sizeof'
  2862. usage.
  2863. * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: Likewise.
  2864. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2865. Julian Brown <julian@codesourcery.com>
  2866. * oacc-mem.c (goacc_exit_datum): Repair 'is_tgt_unmapped'
  2867. checking.
  2868. (acc_unmap_data, goacc_exit_data_internal): Restore
  2869. 'is_tgt_unmapped' checking.
  2870. * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: New
  2871. file.
  2872. * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust.
  2873. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
  2874. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
  2875. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
  2876. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
  2877. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
  2878. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2879. Julian Brown <julian@codesourcery.com>
  2880. * oacc-mem.c (acc_unmap_data): Don't open-code 'gomp_remove_var'.
  2881. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2882. PR libgomp/92854
  2883. * oacc-mem.c (acc_unmap_data): Remove 'tgt' reference counting.
  2884. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2885. PR libgomp/92854
  2886. * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: Extend some
  2887. more.
  2888. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2889. Julian Brown <julian@codesourcery.com>
  2890. * oacc-mem.c (goacc_enter_datum): Use 'tgt' returned from
  2891. 'gomp_map_vars'.
  2892. (acc_map_data): Clean up accordingly.
  2893. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2894. * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: XFAIL behavior
  2895. of over-eager 'finalize' clause.
  2896. * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: New
  2897. file.
  2898. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
  2899. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
  2900. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
  2901. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
  2902. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
  2903. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-2.f90: Likewise.
  2904. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
  2905. * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-2.f90: Likewise.
  2906. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2907. * oacc-mem.c (goacc_exit_data_internal): Unlock on error path.
  2908. 2020-06-04 Julian Brown <julian@codesourcery.com>
  2909. * oacc-mem.c (acc_attach_async): Add missing gomp_mutex_unlock on
  2910. error path.
  2911. (goacc_detach_internal): Likewise.
  2912. 2020-06-04 Thomas Schwinge <thomas@codesourcery.com>
  2913. * testsuite/libgomp.oacc-fortran/error_stop-1.f: Initialize before
  2914. the checkpoint.
  2915. * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
  2916. * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
  2917. * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
  2918. * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
  2919. * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
  2920. 2020-06-02 Jakub Jelinek <jakub@redhat.com>
  2921. * allocator.c (omp_free): Fix up build if HAVE_SYNC_BUILTINS is not
  2922. defined.
  2923. 2020-05-30 Jakub Jelinek <jakub@redhat.com>
  2924. * testsuite/libgomp.c-c++-common/alloc-4.c: New test.
  2925. 2020-05-30 Jakub Jelinek <jakub@redhat.com>
  2926. * allocator.c (omp_alloc): For size == 0, return NULL early.
  2927. 2020-05-29 H.J. Lu <hjl.tools@gmail.com>
  2928. PR bootstrap/95413
  2929. * configure: Regenerated.
  2930. 2020-05-23 Thomas Koenig <tkoenig@gcc.gnu.org>
  2931. PR libfortran/95191
  2932. * testsuite/libgomp.fortran/async_io_9.f90: New test.
  2933. 2020-05-19 Jakub Jelinek <jakub@redhat.com>
  2934. * omp.h.in (omp_uintptr_t): New typedef.
  2935. (__GOMP_UINTPTR_T_ENUM): Define.
  2936. (omp_memspace_handle_t, omp_allocator_handle_t, omp_alloctrait_key_t,
  2937. omp_alloctrait_value_t, omp_alloctrait_t): New typedefs.
  2938. (__GOMP_DEFAULT_NULL_ALLOCATOR): Define.
  2939. (omp_init_allocator, omp_destroy_allocator, omp_set_default_allocator,
  2940. omp_get_default_allocator, omp_alloc, omp_free): Declare.
  2941. * libgomp.h (struct gomp_team_state): Add def_allocator field.
  2942. (gomp_def_allocator): Declare.
  2943. * libgomp.map (OMP_5.0.1): Export omp_set_default_allocator,
  2944. omp_get_default_allocator, omp_init_allocator, omp_destroy_allocator,
  2945. omp_alloc and omp_free.
  2946. * team.c (gomp_team_start): Copy over ts.def_allocator.
  2947. * env.c (gomp_def_allocator): New variable.
  2948. (parse_wait_policy): Adjust function comment.
  2949. (parse_allocator): New function.
  2950. (handle_omp_display_env): Print OMP_ALLOCATOR.
  2951. (initialize_env): Call parse_allocator.
  2952. * Makefile.am (libgomp_la_SOURCES): Add allocator.c.
  2953. * allocator.c: New file.
  2954. * icv.c (omp_set_default_allocator, omp_get_default_allocator): New
  2955. functions.
  2956. * testsuite/libgomp.c-c++-common/alloc-1.c: New test.
  2957. * testsuite/libgomp.c-c++-common/alloc-2.c: New test.
  2958. * testsuite/libgomp.c-c++-common/alloc-3.c: New test.
  2959. * Makefile.in: Regenerated.
  2960. 2020-05-15 H.J. Lu <hongjiu.lu@intel.com>
  2961. PR bootstrap/95147
  2962. * configure: Regenerated.
  2963. 2020-05-14 Thomas Koenig <tkoenig@gcc.gnu.org>
  2964. PR libfortran/95119
  2965. * testsuite/libgomp.fortran/close_errors_1.f90: New test.
  2966. 2020-05-14 H.J. Lu <hongjiu.lu@intel.com>
  2967. * configure: Regenerated.
  2968. 2020-05-14 Jakub Jelinek <jakub@redhat.com>
  2969. * testsuite/libgomp.c-c++-common/target-40.c: New test.
  2970. 2020-05-13 Tobias Burnus <tobias@codesourcery.com>
  2971. PR fortran/94690
  2972. * testsuite/libgomp.fortran/pr66199-3.f90: New.
  2973. * testsuite/libgomp.fortran/pr66199-4.f90: New.
  2974. * testsuite/libgomp.fortran/pr66199-5.f90: New.
  2975. * testsuite/libgomp.fortran/pr66199-6.f90: New.
  2976. * testsuite/libgomp.fortran/pr66199-7.f90: New.
  2977. * testsuite/libgomp.fortran/pr66199-8.f90: New.
  2978. * testsuite/libgomp.fortran/pr66199-9.f90: New.
  2979. 2020-05-12 Jakub Jelinek <jakub@redhat.com>
  2980. * testsuite/libgomp.c/target-39.c: New test.
  2981. 2020-04-29 Thomas Schwinge <thomas@codesourcery.com>
  2982. * config/accel/openacc.f90 (acc_device_current): Set to '-1'.
  2983. * openacc.f90 (acc_device_current): Likewise.
  2984. * openacc.h (acc_device_current): Likewise.
  2985. * openacc_lib.h (acc_device_current): Likewise.
  2986. PR target/94282
  2987. * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Remove
  2988. 'dg-allow-blank-lines-in-output'.
  2989. * oacc-init.c (get_openacc_name): Handle 'gcn'.
  2990. * testsuite/lib/libgomp.exp
  2991. (offload_target_to_openacc_device_type) [amdgcn*]: Return
  2992. 'radeon'. Adjust all users.
  2993. (check_effective_target_openacc_amdgcn_accel_present): Rename
  2994. to...
  2995. (check_effective_target_openacc_radeon_accel_present): ... this.
  2996. Adjust all users.
  2997. (check_effective_target_openacc_amdgcn_accel_selected): Rename to...
  2998. (check_effective_target_openacc_radeon_accel_selected): ... this.
  2999. Adjust all users.
  3000. * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Add
  3001. 'dg-do run'.
  3002. 2020-04-23 Andrew Stubbs <ams@codesourcery.com>
  3003. PR other/94629
  3004. * plugin/plugin-gcn.c (init_hsa_context): Check return value from
  3005. hsa_iterate_agents.
  3006. (GOMP_OFFLOAD_init_device): Check return values from both calls to
  3007. hsa_agent_iterate_regions.
  3008. 2020-04-20 Thomas Schwinge <thomas@codesourcery.com>
  3009. PR middle-end/94635
  3010. * testsuite/libgomp.fortran/target-enter-data-2.F90: Add 'dg-do
  3011. run'.
  3012. 2020-04-20 Tobias Burnus <tobias@codesourcery.com>
  3013. PR middle-end/94120
  3014. * testsuite/libgomp.oacc-c++/declare-pr94120.C: Fix 'declare copy(out)'
  3015. test case.
  3016. 2020-04-17 Tobias Burnus <tobias@codesourcery.com>
  3017. PR middle-end/94635
  3018. * testsuite/libgomp.fortran/target-enter-data-2.F90: New.
  3019. 2020-04-13 Thomas Schwinge <thomas@codesourcery.com>
  3020. PR libgomp/92843
  3021. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
  3022. Rename to...
  3023. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1-lib.c:
  3024. ... this.
  3025. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
  3026. Rename to...
  3027. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1.c:
  3028. ... this.
  3029. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
  3030. Rename to...
  3031. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2-lib.c:
  3032. ... this.
  3033. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
  3034. Rename to...
  3035. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2.c:
  3036. ... this.
  3037. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
  3038. Rename to...
  3039. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3-lib.c:
  3040. ... this.
  3041. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
  3042. Rename to...
  3043. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3.c:
  3044. ... this.
  3045. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
  3046. Rename to...
  3047. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4-lib.c:
  3048. ... this.
  3049. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
  3050. Rename to...
  3051. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
  3052. ... this.
  3053. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
  3054. Rename to...
  3055. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5-lib.c:
  3056. ... this.
  3057. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
  3058. Rename to...
  3059. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5.c:
  3060. ... this.
  3061. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
  3062. Rename to...
  3063. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6-lib.c:
  3064. ... this.
  3065. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
  3066. Rename to...
  3067. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6.c:
  3068. ... this.
  3069. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
  3070. Rename to...
  3071. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7-lib.c:
  3072. ... this.
  3073. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
  3074. Rename to...
  3075. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7.c:
  3076. ... this.
  3077. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
  3078. Rename to...
  3079. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8-lib.c:
  3080. ... this.
  3081. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c::
  3082. Rename to...
  3083. * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8.c:
  3084. ... this.
  3085. 2020-04-10 Julian Brown <julian@codesourcery.com>
  3086. Thomas Schwinge <thomas@codesourcery.com>
  3087. PR libgomp/92843
  3088. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
  3089. New file.
  3090. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
  3091. Likewise.
  3092. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
  3093. Likewise.
  3094. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
  3095. Likewise.
  3096. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
  3097. Likewise.
  3098. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
  3099. Likewise.
  3100. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
  3101. Likewise.
  3102. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
  3103. Likewise.
  3104. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
  3105. Likewise.
  3106. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
  3107. Likewise.
  3108. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
  3109. Likewise.
  3110. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
  3111. Likewise.
  3112. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
  3113. Likewise.
  3114. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
  3115. Likewise.
  3116. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
  3117. Likewise.
  3118. * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c:
  3119. Likewise.
  3120. 2020-04-10 Thomas Schwinge <thomas@codesourcery.com>
  3121. * testsuite/libgomp.fortran/target-enter-data-1.f90: Add 'dg-do
  3122. run'.
  3123. 2020-04-08 Tobias Burnus <tobias@codesourcery.com>
  3124. PR middle-end/94120
  3125. * libgomp.oacc-c++/declare-pr94120.C: New.
  3126. 2020-04-06 Maciej W. Rozycki <macro@wdc.com>
  3127. * configure.ac: Add testsuite/libgomp-site-extra.exp to output
  3128. files.
  3129. * configure: Regenerate.
  3130. * testsuite/libgomp-site-extra.exp.in: New file.
  3131. * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): Remove
  3132. variable.
  3133. * testsuite/Makefile.am (EXTRA_DEJAGNU_SITE_CONFIG): New
  3134. variable.
  3135. * testsuite/Makefile.in: Regenerate.
  3136. 2020-04-03 Thomas Schwinge <thomas@codesourcery.com>
  3137. PR tree-optimization/89713
  3138. PR c/94392
  3139. * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Again expect
  3140. 'bar.sync'.
  3141. * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
  3142. 2020-03-31 Tobias Burnus <tobias@codesourcery.com>
  3143. * target.c (GOMP_target_enter_exit_data): Handle PSET/MAP_POINTER.
  3144. * testsuite/libgomp.fortran/target-enter-data-1.f90: New.
  3145. 2020-03-24 Tobias Burnus <tobias@codesourcery.com>
  3146. PR libgomp/81689
  3147. * testsuite/libgomp.c/target-link-1.c: Remove xfail.
  3148. 2020-03-20 Tobias Burnus <tobias@codesourcery.com>
  3149. PR libgomp/94251
  3150. * target.c (gomp_load_image_to_device): Fix link
  3151. variable handling.
  3152. 2020-03-19 Jakub Jelinek <jakub@redhat.com>
  3153. PR c++/93931
  3154. * testsuite/libgomp.c++/pr93931.C: New test.
  3155. 2020-03-19 Tobias Burnus <tobias@codesourcery.com>
  3156. * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Add
  3157. dg-allow-blank-lines-in-output.
  3158. 2020-03-18 Julian Brown <julian@codesourcery.com>
  3159. Tobias Burnus <tobias@codesourcery.com>
  3160. * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Really make
  3161. it work concurrently.
  3162. 2020-03-18 Tobias Burnus <tobias@codesourcery.com>
  3163. * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: Add
  3164. #define DO_LONG_DOUBLE; set to 1, except for nvidia + gcn.
  3165. * libgomp.oacc-c-c++-common/firstprivate-mappings-1.c: Likewise.
  3166. 2020-03-14 Jakub Jelinek <jakub@redhat.com>
  3167. PR middle-end/93566
  3168. * testsuite/libgomp.c/pr93566.c: New test.
  3169. 2020-02-21 Frederik Harwath <frederik@codesourcery.com>
  3170. * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Adapt to
  3171. changes from 2020-02-19, i.e. use integer(c_size_t) instead of
  3172. integer(acc_device_property) for the type of the return value of
  3173. acc_get_property.
  3174. 2020-02-19 Tobias Burnus <tobias@codesourcery.com>
  3175. * .gitattributes: New; whitespace handling for Fortran's openacc_lib.h.
  3176. * config/accel/openacc.f90 (openacc_kinds): Add acc_device_current.
  3177. (openacc_internal, acc_on_device_h): Fix argument name; minor cleanup.
  3178. * libgomp.texi (Enabling OpenACC): No longer mark as experimental.
  3179. (acc_set_device_num): Fix Fortran argument name, use same name for C.
  3180. (acc_get_property): Update Fortran interface to post-OpenACC 3.0
  3181. corrections; add note about the previous interface and named constant.
  3182. (OpenACC library and environment variables): Fix two typos.
  3183. * openacc.f90: Use for all procedures the argument names from the spec
  3184. as for …_h they are user visible.
  3185. (openacc_kinds): Rename acc_device_property to
  3186. acc_device_property_kinds and change value to int32 ; and update users.
  3187. Re-add acc_device_property for for backward compatibility.
  3188. (acc_get_property_string_h): Clean up as acc_device_property_kind
  3189. changed.
  3190. (acc_get_property_h): Likewise and return c_size_t instead of
  3191. acc_device_property.
  3192. (openacc): Also export acc_device_property_kinds.
  3193. (acc_async_test_h, acc_async_test_all_h, acc_on_device_h,
  3194. acc_is_present_32_h, acc_is_present_64_h): Simplify logical-return-value
  3195. handling; check against /= 0 instead of == 1 to match C.
  3196. * openacc_lib.h: Use for all procedures the argument names from the spec
  3197. as for …_h they are user visible. Place !GCC$ into the first column to
  3198. be active also for fixed-form souce form.
  3199. (acc_device_current, acc_device_property_kind, acc_device_property,
  3200. acc_property_memory, acc_property_free_memory, acc_property_name,
  3201. acc_property_vendor, acc_property_driver): New named constants.
  3202. (acc_get_property, acc_get_property_string): New generic interface.
  3203. 2020-02-13 Frederik Harwath <frederik@codesourcery.com>
  3204. PR libgomp/93481
  3205. * plugin/plugin-nvptx.c: Remove GOMP_OFFLOAD_async_run stub.
  3206. * target.c (gomp_load_plugin_for_device): Make "async_run" loading
  3207. optional.
  3208. (gomp_target_task_fn): Assert "devicep->async_run_func".
  3209. (clear_unsupported_flags): New function to remove unsupported flags
  3210. (right now only GOMP_TARGET_FLAG_NOWAIT) that can be be ignored.
  3211. (GOMP_target_ext): Apply clear_unsupported_flags to flags.
  3212. * testsuite/libgomp.c/target-33.c:
  3213. Remove xfail for offload_target_nvptx.
  3214. * testsuite/libgomp.c/target-34.c: Likewise.
  3215. 2020-02-10 Frederik Harwath <frederik@codesourcery.com>
  3216. * testsuite/libgomp.c/target-33.c: Add xfail for execution on
  3217. offload_target_nvptx, cf. https://gcc.gnu.org/PR81688.
  3218. * testsuite/libgomp.c/target-34.c: Likewise.
  3219. * testsuite/libgomp.c/target-link-1.c: Add xfail for
  3220. offload_target_nvptx, cf. https://gcc.gnu.org/PR81689.
  3221. 2020-02-09 Jakub Jelinek <jakub@redhat.com>
  3222. * testsuite/libgomp.c/target-38.c: New test.
  3223. 2020-02-06 Jakub Jelinek <jakub@redhat.com>
  3224. PR libgomp/93515
  3225. * testsuite/libgomp.c-c++-common/pr93515.c: New test.
  3226. 2020-02-05 Tobias Burnus <tobias@codesourcery.com>
  3227. * testsuite/lib/libgomp.exp
  3228. (check_effective_target_offload_target_nvptx): Pass flags as 'options'
  3229. and not as 'source' argument to libgomp_target_compile.
  3230. 2020-02-03 Andrew Stubbs <ams@codesourcery.com>
  3231. * plugin/plugin-gcn.c (EF_AMDGPU_MACH_AMDGCN_GFX801): Remove.
  3232. (gcn_gfx801_s): Remove.
  3233. (isa_hsa_name): Remove gfx801.
  3234. (isa_gcc_name): Remove gfx801/carizzo.
  3235. (isa_code): Remove gfx801.
  3236. 2020-02-03 Julian Brown <julian@codesourcery.com>
  3237. Tobias Burnus <tobias@codesourcery.com>
  3238. * libgomp.texi (OpenACC Runtime Library Routines): Document *_async
  3239. and *_finalize variants; document acc_attach and acc_detach; update
  3240. references from OpenACC 2.0 to 2.6.
  3241. * openacc.f90 (openacc_version): Update to 201711.
  3242. * openacc_lib.h (openacc_version): Update to 201711.
  3243. * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Update expected
  3244. openacc_version to 201711.
  3245. * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
  3246. 2020-01-31 Kwok Cheung Yeung <kcy@codesourcery.com>
  3247. * plugin/plugin-gcn.c (struct hsa_kernel_description): Add sgpr_count
  3248. and vgpr_count fields.
  3249. (struct kernel_info): Add a field for a hsa_kernel_description.
  3250. (run_kernel): Reduce the number of threads/workers if the requested
  3251. number would require too many VGPRs.
  3252. (init_basic_kernel_info): Initialize description field with
  3253. the hsa_kernel_description entry for the kernel.
  3254. 2020-01-29 Tobias Burnus <tobias@codesourcery.com>
  3255. PR bootstrap/93409
  3256. * plugin/configfrag.ac (enable_offload_targets): Skip
  3257. HSA and GCN plugin besides -m32 also for -mx32.
  3258. * configure: Regenerate.
  3259. 2020-01-29 Frederik Harwath <frederik@codesourcery.com>
  3260. * oacc-init.c (name_of_acc_device_t): Handle acc_device_radeon.
  3261. 2020-01-29 Frederik Harwath <frederik@codesourcery.com>
  3262. * plugin-gcn.c (struct agent_info): Add fields "name" and
  3263. "vendor_name" ...
  3264. (GOMP_OFFLOAD_init_device): ... and init from here.
  3265. (struct hsa_context_info): Add field "driver_version_s" ...
  3266. (init_hsa_contest): ... and init from here.
  3267. (GOMP_OFFLOAD_openacc_get_property): Replace stub with a proper
  3268. implementation.
  3269. * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
  3270. Enable test execution for amdgcn and host offloading targets.
  3271. * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Likewise.
  3272. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
  3273. (expect_device_properties): Split function into ...
  3274. (expect_device_string_properties): ... this new function ...
  3275. (expect_device_memory): ... and this new function.
  3276. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c:
  3277. Add test.
  3278. 2020-01-28 Julian Brown <julian@codesourcery.com>
  3279. * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: Remove test from here.
  3280. * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: Don't use mixed
  3281. component/non-component variable refs in a single directive.
  3282. * testsuite/libgomp.oacc-fortran/classtypes-1.f95: Likewise.
  3283. 2020-01-24 Maciej W. Rozycki <macro@wdc.com>
  3284. * configure.ac: Handle `--with-toolexeclibdir='.
  3285. * Makefile.in: Regenerate.
  3286. * aclocal.m4: Regenerate.
  3287. * configure: Regenerate.
  3288. * testsuite/Makefile.in: Regenerate.
  3289. 2020-01-24 Frederik Harwath <frederik@codesourcery.com>
  3290. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
  3291. (expect_device_properties): Remove "expected_free_mem" argument,
  3292. change "expected_total_mem" argument type to size_t;
  3293. change types of acc_get_property results to size_t,
  3294. adapt format strings.
  3295. * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
  3296. Use %zu instead of %zd to print size_t values.
  3297. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: Adapt and
  3298. rename to ...
  3299. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c: ... this.
  3300. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: Adapt and
  3301. rename to ...
  3302. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-host.c: ... this.
  3303. 2020-01-23 Andrew Stubbs <ams@codesourcery.com>
  3304. * plugin/plugin-gcn.c (parse_target_attributes): Use correct mask for
  3305. the device id.
  3306. 2020-01-20 Andrew Stubbs <ams@codesourcery.com>
  3307. * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Skip test on gcn.
  3308. * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c (main):
  3309. Adjust test dimensions for amdgcn.
  3310. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c (main): Adjust
  3311. gang/worker/vector expectations dynamically.
  3312. * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c
  3313. (main): Likewise.
  3314. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c (main): Likewise.
  3315. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c (main): Likewise.
  3316. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c (main): Likewise.
  3317. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c (main): Likewise.
  3318. * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c (main): Likewise.
  3319. * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c (main): Likewise.
  3320. * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c (main): Likewise.
  3321. * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c (main): Likewise.
  3322. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
  3323. (acc_gang): Recognise acc_device_radeon.
  3324. (acc_worker): Likewise.
  3325. (acc_vector): Likewise.
  3326. (main): Set expectations for amdgcn.
  3327. * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c
  3328. (main): Adjust gang/worker/vector expectations dynamically.
  3329. * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c (main): Likewise.
  3330. * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c (main): Likewise.
  3331. * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c (main): Likewise.
  3332. * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Set expectations
  3333. for amdgcn.
  3334. 2020-01-17 Andrew Stubbs <ams@codesourcery.com>
  3335. * config/accel/openacc.f90 (openacc_kinds): Rename acc_device_gcn to
  3336. acc_device_radeon.
  3337. (openacc): Likewise.
  3338. * openacc.f90 (openacc_kinds): Likewise.
  3339. (openacc): Likewise.
  3340. * openacc.h (acc_device_t): Likewise.
  3341. * openacc_lib.h: Likewise.
  3342. * testsuite/lib/libgomp.exp
  3343. (check_effective_target_openacc_amdgcn_accel_present): Likewise.
  3344. * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
  3345. (cb_compute_construct_end): Likewise.
  3346. * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
  3347. (cb_enqueue_launch_start): Likewise.
  3348. * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
  3349. (cb_enter_data_end): Likewise.
  3350. (cb_exit_data_start): Likewise.
  3351. (cb_exit_data_end): Likewise.
  3352. (cb_compute_construct_end): Likewise.
  3353. (cb_enqueue_launch_start): Likewise.
  3354. (cb_enqueue_launch_end): Likewise.
  3355. * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c
  3356. (main): Likewise.
  3357. 2020-01-10 Thomas Schwinge <thomas@codesourcery.com>
  3358. * libgomp-plugin.h (enum goacc_property): New. Adjust all users
  3359. to use this instead of 'enum gomp_device_property'.
  3360. (GOMP_OFFLOAD_get_property): Rename to...
  3361. (GOMP_OFFLOAD_openacc_get_property): ... this. Adjust all users.
  3362. * libgomp.h (struct gomp_device_descr): Move
  3363. 'GOMP_OFFLOAD_openacc_get_property'...
  3364. (struct acc_dispatch_t): ... here. Adjust all users.
  3365. * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): Remove.
  3366. * target.c (gomp_map_vars_internal)
  3367. <GOMP_MAP_USE_DEVICE_PTR_IF_PRESENT>: Clean up/elaborate code
  3368. paths.
  3369. 2020-01-10 Jakub Jelinek <jakub@redhat.com>
  3370. PR libgomp/93219
  3371. * libgomp.h (gomp_print_string): Change return type from void to int.
  3372. * affinity-fmt.c (gomp_print_string): Likewise. Return true if
  3373. not all characters have been written.
  3374. 2020-01-08 Tobias Burnus <tobias@codesourcery.com>
  3375. * libgomp.texi: Fix typos, use https.
  3376. 2020-01-03 Tobias Burnus <tobias@codesourcery.com>
  3377. * testsuite/libgomp.fortran/optional-map.f90: Add test for
  3378. unallocated/disassociated actual arguments to nonallocatable/nonpointer
  3379. dummy arguments; those are/shall be regarded as absent arguments.
  3380. * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
  3381. * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: New.
  3382. 2020-01-01 Jakub Jelinek <jakub@redhat.com>
  3383. Update copyright years.
  3384. * libgomp.texi: Bump @copying's copyright year.
  3385. 2019-12-31 Ayush Mittal <ayush.m@samsung.com>
  3386. PR libgomp/93065
  3387. * oacc-init.c (goacc_runtime_deinitialize): New function.
  3388. 2019-12-28 Jakub Jelinek <jakub@redhat.com>
  3389. PR bootstrap/93074
  3390. * plugin/cuda/cuda.h (cuDeviceGetName, cuDriverGetVersion): Declare.
  3391. (cuDeviceTotalMem, cuMemGetInfo): Likewise. Define to *_v2.
  3392. 2019-12-22 Maciej W. Rozycki <macro@codesourcery.com>
  3393. Frederik Harwath <frederik@codesourcery.com>
  3394. Thomas Schwinge <tschwinge@codesourcery.com>
  3395. * libgomp.h (gomp_device_descr): Add `get_property_func' member.
  3396. * libgomp-plugin.h (gomp_device_property_value): New union.
  3397. (gomp_device_property_value): New prototype.
  3398. * openacc.h (acc_device_t): Add `acc_device_current' enumeration
  3399. constant.
  3400. (acc_device_property_t): New enum.
  3401. (acc_get_property, acc_get_property_string): New prototypes.
  3402. * oacc-init.c (acc_get_device_type): Also assert that result
  3403. is not `acc_device_current'.
  3404. (get_property_any, acc_get_property, acc_get_property_string):
  3405. New functions.
  3406. * openacc.f90 (openacc_kinds): Add `acc_device_current' and
  3407. `acc_property_memory', `acc_property_free_memory',
  3408. `acc_property_name', `acc_property_vendor' and
  3409. `acc_property_driver' constants. Add `acc_device_property' data
  3410. type.
  3411. (openacc_internal): Add `acc_get_property' and
  3412. `acc_get_property_string' interfaces. Add `acc_get_property_h',
  3413. `acc_get_property_string_h', `acc_get_property_l' and
  3414. `acc_get_property_string_l'.
  3415. * oacc-host.c (host_get_property): New function.
  3416. (host_dispatch): Wire it.
  3417. * target.c (gomp_load_plugin_for_device): Handle `get_property'.
  3418. * libgomp.map (OACC_2.6): Add `acc_get_property', `acc_get_property_h_',
  3419. `acc_get_property_string' and `acc_get_property_string_h_' symbols.
  3420. * libgomp.texi (OpenACC Runtime Library Routines): Add
  3421. `acc_get_property'.
  3422. (acc_get_property): New node.
  3423. * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_property): New
  3424. function (stub).
  3425. * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): New function.
  3426. * plugin/plugin-nvptx.c (CUDA_CALLS): Add `cuDeviceGetName',
  3427. `cuDeviceTotalMem', `cuDriverGetVersion' and `cuMemGetInfo'
  3428. calls.
  3429. (GOMP_OFFLOAD_get_property): New function.
  3430. (struct ptx_device): Add new field "name".
  3431. (cuda_driver_version_s): Add new static variable ...
  3432. (nvptx_init): ... and init from here.
  3433. * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c: New test.
  3434. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: New test.
  3435. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: New test.
  3436. * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c: New file
  3437. with test helper functions.
  3438. * testsuite/libgomp.oacc-fortran/acc_get_property.f90: New test.
  3439. 2019-12-22 Maciej W. Rozycki <macro@wdc.com>
  3440. * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): New
  3441. variable.
  3442. 2019-12-21 Thomas Schwinge <thomas@codesourcery.com>
  3443. * target.c (gomp_map_vars_internal): Restore 'omp declare target
  3444. link' handling.
  3445. 2019-12-19 Julian Brown <julian@codesourcery.com>
  3446. * testsuite/libgomp.oacc-fortran/class-ptr-param.f95: New test.
  3447. * testsuite/libgomp.oacc-fortran/classtypes-1.f95: New test.
  3448. * testsuite/libgomp.oacc-fortran/classtypes-2.f95: New test.
  3449. 2019-12-19 Julian Brown <julian@codesourcery.com>
  3450. Cesar Philippidis <cesar@codesourcery.com>
  3451. * testsuite/libgomp.oacc-fortran/deep-copy-1.f90: New test.
  3452. * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: New test.
  3453. * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: New test.
  3454. * testsuite/libgomp.oacc-fortran/deep-copy-4.f90: New test.
  3455. * testsuite/libgomp.oacc-fortran/deep-copy-5.f90: New test.
  3456. * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: New test.
  3457. * testsuite/libgomp.oacc-fortran/deep-copy-7.f90: New test.
  3458. * testsuite/libgomp.oacc-fortran/deep-copy-8.f90: New test.
  3459. * testsuite/libgomp.oacc-fortran/derived-type-1.f90: New test.
  3460. * testsuite/libgomp.oacc-fortran/derivedtype-1.f95: New test.
  3461. * testsuite/libgomp.oacc-fortran/derivedtype-2.f95: New test.
  3462. * testsuite/libgomp.oacc-fortran/multidim-slice.f95: New test.
  3463. * testsuite/libgomp.oacc-fortran/update-2.f90: New test.
  3464. 2019-12-19 Julian Brown <julian@codesourcery.com>
  3465. * testsuite/libgomp.oacc-c-c++-common/deep-copy-1.c: New test.
  3466. * testsuite/libgomp.oacc-c-c++-common/deep-copy-2.c: New test.
  3467. * testsuite/libgomp.oacc-c-c++-common/deep-copy-4.c: New test.
  3468. * testsuite/libgomp.oacc-c-c++-common/deep-copy-6.c: New test.
  3469. * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: New test.
  3470. * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: New test.
  3471. * testsuite/libgomp.oacc-c-c++-common/deep-copy-9.c: New test.
  3472. * testsuite/libgomp.oacc-c-c++-common/deep-copy-10.c: New test.
  3473. * testsuite/libgomp.oacc-c-c++-common/deep-copy-11.c: New test.
  3474. * testsuite/libgomp.oacc-c-c++-common/deep-copy-14.c: New test.
  3475. * testsuite/libgomp.oacc-c++/deep-copy-12.C: New test.
  3476. * testsuite/libgomp.oacc-c++/deep-copy-13.C: New test.
  3477. 2019-12-19 Julian Brown <julian@codesourcery.com>
  3478. * libgomp.h (struct target_var_desc): Add do_detach flag.
  3479. * oacc-init.c (acc_shutdown_1): Free aux block if present.
  3480. * oacc-mem.c (find_group_last): Add SIZES parameter. Support
  3481. struct components. Tidy up and add some new checks.
  3482. (goacc_enter_data_internal): Update call to find_group_last.
  3483. (goacc_exit_data_internal): Support detach operations and
  3484. GOMP_MAP_STRUCT.
  3485. (GOACC_enter_exit_data): Handle initial GOMP_MAP_STRUCT or
  3486. GOMP_MAP_FORCE_PRESENT in finalization detection code. Handle
  3487. attach/detach in enter/exit data detection code.
  3488. * target.c (gomp_map_vars_existing): Initialise do_detach field of
  3489. tgt_var_desc.
  3490. (gomp_map_vars_internal): Support attach.
  3491. (gomp_unmap_vars_internal): Support detach.
  3492. 2019-12-19 Julian Brown <julian@codesourcery.com>
  3493. Thomas Schwinge <thomas@codesourcery.com>
  3494. * libgomp.h (struct splay_tree_aux): Add attach_count field.
  3495. (gomp_attach_pointer, gomp_detach_pointer): Add prototypes.
  3496. * libgomp.map (OACC_2.6): New section. Add acc_attach,
  3497. acc_attach_async, acc_detach, acc_detach_async, acc_detach_finalize,
  3498. acc_detach_finalize_async.
  3499. * oacc-mem.c (acc_attach_async, acc_attach, goacc_detach_internal,
  3500. acc_detach, acc_detach_async, acc_detach_finalize,
  3501. acc_detach_finalize_async): New functions.
  3502. * openacc.h (acc_attach, acc_attach_async, acc_detach,
  3503. (acc_detach_async, acc_detach_finalize, acc_detach_finalize_async): Add
  3504. prototypes.
  3505. * target.c (gomp_attach_pointer, gomp_detach_pointer): New functions.
  3506. (gomp_remove_var_internal): Free attachment counts if present.
  3507. * testsuite/libgomp.oacc-c-c++-common/deep-copy-3.c: New test.
  3508. * testsuite/libgomp.oacc-c-c++-common/deep-copy-5.c: New test.
  3509. 2019-12-19 Julian Brown <julian@codesourcery.com>
  3510. Cesar Philippidis <cesar@codesourcery.com>
  3511. * libgomp.h (gomp_map_val): Add prototype.
  3512. * oacc-parallel.c (GOACC_parallel_keyed): Use gomp_map_val instead of
  3513. open-coding device-address calculation.
  3514. * target.c (gomp_map_val): Make global. Use OFFSET_POINTER in
  3515. non-present case.
  3516. 2019-12-19 Julian Brown <julian@codesourcery.com>
  3517. * libgomp.h (struct splay_tree_key_s): Substitute dynamic_refcount
  3518. field for virtual_refcount.
  3519. (enum gomp_map_vars_kind): Add GOMP_MAP_VARS_OPENACC_ENTER_DATA.
  3520. (gomp_free_memmap): Remove prototype.
  3521. * oacc-init.c (acc_shutdown_1): Iteratively call gomp_remove_var
  3522. instead of calling gomp_free_memmap.
  3523. * oacc-mem.c (acc_map_data): Use virtual_refcount instead of
  3524. dynamic_refcount.
  3525. (acc_unmap_data): Open code instead of forcing target_mem_desc's
  3526. to_free field to NULL then calling gomp_unmap_vars. Handle
  3527. REFCOUNT_INFINITY on target blocks.
  3528. (goacc_enter_data): Rename to...
  3529. (goacc_enter_datum): ...this. Remove MAPNUM parameter and special
  3530. handling for mapping groups. Use virtual_refcount instead of
  3531. dynamic_refcount. Use GOMP_MAP_VARS_OPENACC_ENTER_DATA for
  3532. map_map_vars_async call. Re-do lookup for target pointer return value.
  3533. (acc_create, acc_create_async, acc_copyin, acc_copyin_async): Call
  3534. renamed goacc_enter_datum function.
  3535. (goacc_exit_data): Rename to...
  3536. (goacc_exit_datum): ...this. Update for virtual_refcount semantics.
  3537. (acc_delete, acc_delete_async, acc_delete_finalize,
  3538. acc_delete_finalize_async, acc_copyout, acc_copyout_async,
  3539. acc_copyout_finalize, acc_copyout_finalize_async): Call renamed
  3540. goacc_exit_datum function.
  3541. (gomp_acc_remove_pointer, find_pointer): Remove functions.
  3542. (find_group_last, goacc_enter_data_internal, goacc_exit_data_internal):
  3543. New functions.
  3544. (GOACC_enter_exit_data): Use goacc_enter_data_internal and
  3545. goacc_exit_data_internal helper functions.
  3546. * target.c (gomp_map_vars_internal): Handle
  3547. GOMP_MAP_VARS_OPENACC_ENTER_DATA. Update for virtual_refcount
  3548. semantics.
  3549. (gomp_unmap_vars_internal): Update for virtual_refcount semantics.
  3550. (gomp_load_image_to_device, omp_target_associate_ptr): Zero-initialise
  3551. virtual_refcount field instead of dynamic_refcount.
  3552. (gomp_free_memmap): Remove function.
  3553. * testsuite/libgomp.oacc-c-c++-common/unmap-infinity-1.c: New test.
  3554. * testsuite/libgomp.c-c++-common/unmap-infinity-2.c: New test.
  3555. * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Add XFAIL.
  3556. 2019-12-19 Julian Brown <julian@codesourcery.com>
  3557. Thomas Schwinge <thomas@codesourcery.com>
  3558. * libgomp.h (struct splay_tree_aux): New.
  3559. (struct splay_tree_key_s): Replace link_key field with aux pointer.
  3560. * target.c (gomp_map_vars_internal): Adjust for link_key being moved
  3561. to aux struct.
  3562. (gomp_remove_var_internal): Free aux block if present.
  3563. (gomp_load_image_to_device): Zero-initialise aux field instead of
  3564. link_key field.
  3565. (omp_target_associate_pointer): Zero-initialise aux field.
  3566. 2019-12-18 Jakub Jelinek <jakub@redhat.com>
  3567. PR middle-end/86416
  3568. * testsuite/libgomp.c/pr86416-1.c (main): Use L suffixes rather than
  3569. q or none.
  3570. * testsuite/libgomp.c/pr86416-2.c (main): Use Q suffixes rather than
  3571. L or none.
  3572. 2019-12-19 Julian Brown <julian@codesourcery.com>
  3573. Maciej W. Rozycki <macro@codesourcery.com>
  3574. Tobias Burnus <tobias@codesourcery.com>
  3575. Thomas Schwinge <thomas@codesourcery.com>
  3576. * target.c (gomp_map_vars_async): Support GOMP_MAP_NO_ALLOC.
  3577. * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: New test.
  3578. * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: New test.
  3579. * testsuite/libgomp.oacc-c-c++-common/no_create-3.c: New test.
  3580. * testsuite/libgomp.oacc-c-c++-common/no_create-4.c: New test.
  3581. * testsuite/libgomp.oacc-c-c++-common/no_create-5.c: New test.
  3582. * testsuite/libgomp.oacc-fortran/no_create-1.f90: New test.
  3583. * testsuite/libgomp.oacc-fortran/no_create-2.f90: New test.
  3584. * testsuite/libgomp.oacc-fortran/no_create-3.F90: New test.
  3585. 2019-12-18 Thomas Schwinge <thomas@codesourcery.com>
  3586. * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
  3587. called...
  3588. (goacc_insert_pointer): ... from here, "present" case.
  3589. (goacc_insert_pointer): Inline function into...
  3590. (GOACC_enter_exit_data): ... here, and simplify.
  3591. * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
  3592. called...
  3593. (goacc_insert_pointer): ... from here, "not present" case.
  3594. * oacc-mem.c (goacc_remove_pointer): Refactor interface. Adjust
  3595. all users.
  3596. * oacc-mem.c (GOACC_enter_exit_data): Refactor code to call
  3597. 'goacc_enter_data', 'goacc_exit_data'.
  3598. * oacc-mem.c (delete_copyout): Refactor into...
  3599. (goacc_exit_data): ... this. Adjust all users.
  3600. * oacc-mem.c (present_create_copy): Refactor into...
  3601. (goacc_enter_data): ... this. Adjust all users.
  3602. * target.c (gomp_unmap_vars_internal): Add a safeguard to
  3603. 'gomp_remove_var'.
  3604. * target.c (gomp_to_device_kind_p): Handle 'GOMP_MAP_FORCE_FROM'
  3605. like 'GOMP_MAP_FROM'.
  3606. PR libgomp/92726
  3607. PR libgomp/92970
  3608. PR libgomp/92984
  3609. * oacc-mem.c (delete_copyout): No-op behavior if 'lookup_host'
  3610. fails.
  3611. (GOACC_enter_exit_data): Simplify accordingly.
  3612. * testsuite/libgomp.oacc-c-c++-common/pr92970-1.c: New file,
  3613. subsuming...
  3614. * testsuite/libgomp.oacc-c-c++-common/lib-17.c: ... this file...
  3615. * testsuite/libgomp.oacc-c-c++-common/lib-18.c: ..., and this
  3616. file.
  3617. * testsuite/libgomp.oacc-c-c++-common/pr92984-1.c: New file,
  3618. subsuming...
  3619. * testsuite/libgomp.oacc-c-c++-common/lib-21.c: ... this file...
  3620. * testsuite/libgomp.oacc-c-c++-common/lib-29.c: ..., and this
  3621. file.
  3622. * testsuite/libgomp.oacc-c-c++-common/pr92726-1.c: New file,
  3623. subsuming...
  3624. * testsuite/libgomp.oacc-c-c++-common/lib-28.c: ... this file.
  3625. * oacc-mem.c (GOACC_enter_exit_data): Simplify 'exit data'
  3626. 'finalize' handling.
  3627. PR libgomp/92848
  3628. * oacc-mem.c (acc_map_data, present_create_copy)
  3629. (goacc_insert_pointer): Use 'GOMP_MAP_VARS_ENTER_DATA'.
  3630. (acc_unmap_data, delete_copyout, goacc_remove_pointer): Adjust.
  3631. * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Remove.
  3632. * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-a.c: New file
  3633. * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-p.c: Likewise.
  3634. * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-a.c: Likewise.
  3635. * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-p.c: Likewise.
  3636. * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
  3637. Remove "XFAIL"s.
  3638. * target.c (gomp_unmap_tgt): Make it 'static'.
  3639. * libgomp.h (gomp_unmap_tgt): Remove.
  3640. 2019-12-18 Tobias Burnus <tobias@codesourcery.com>
  3641. PR middle-end/86416
  3642. * testsuite/libgomp.c/pr86416-1.c: New.
  3643. * testsuite/libgomp.c/pr86416-2.c: New.
  3644. 2019-12-17 Tobias Burnus <tobias@codesourcery.com>
  3645. * config/accel/openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark
  3646. all symbols as public except for the 'use …, only' imported symbol,
  3647. which is private.
  3648. (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
  3649. all symbols from module openacc_kinds as PUBLIC
  3650. * openacc.f90: Add comment with crossref to that file and openmp_lib.h;
  3651. fix comment typo.
  3652. * openacc_lib.h (acc_device_gcn): Add this PARAMETER.
  3653. 2019-12-13 Julian Brown <julian@codesourcery.com>
  3654. PR libgomp/92881
  3655. * libgomp.h (gomp_remove_var_async): Add prototype.
  3656. * oacc-mem.c (delete_copyout): Call gomp_remove_var_async instead of
  3657. gomp_remove_var.
  3658. * target.c (gomp_unref_tgt): Change return type to bool, indicating
  3659. whether target_mem_desc was unmapped.
  3660. (gomp_unref_tgt_void): New.
  3661. (gomp_remove_var): Reimplement in terms of...
  3662. (gomp_remove_var_internal): ...this new helper function.
  3663. (gomp_remove_var_async): New, implemented using above helper function.
  3664. (gomp_unmap_vars_internal): Use gomp_unref_tgt_void instead of
  3665. gomp_unref_tgt.
  3666. 2019-12-13 Andrew Stubbs <ams@codesourcery.com>
  3667. * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Handle gcn.
  3668. * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
  3669. * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c: Likewise.
  3670. * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Likewise.
  3671. * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c:
  3672. Likewise.
  3673. * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Disable on GCN.
  3674. * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Likewise.
  3675. 2019-12-13 Tobias Burnus <tobias@codesourcery.com>
  3676. * openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark all symbols
  3677. as public except for the 'use …, only' imported symbol, which is
  3678. private.
  3679. (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
  3680. all symbols from module openacc_kinds as PUBLIC; add missing PUBLIC
  3681. attributes for acc_copyout_finalize and acc_delete_finalize.
  3682. 2019-12-11 Jakub Jelinek <jakub@redhat.com>
  3683. PR fortran/92899
  3684. * testsuite/libgomp.fortran/atomic1.f90: New test.
  3685. 2019-12-11 Thomas Schwinge <thomas@codesourcery.com>
  3686. PR libgomp/92843
  3687. * oacc-mem.c (present_create_copy, delete_copyout): Fix dynamic
  3688. reference counting for structured 'REFCOUNT_INFINITY'. Add some
  3689. assertions.
  3690. (goacc_insert_pointer, goacc_remove_pointer): Adjust accordingly.
  3691. * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: New file.
  3692. * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Fix OpenACC.
  3693. * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
  3694. * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
  3695. * oacc-parallel.c (find_pointer, GOACC_enter_exit_data): Move...
  3696. * oacc-mem.c: ... here.
  3697. (gomp_acc_insert_pointer, gomp_acc_remove_pointer): Rename to
  3698. 'goacc_insert_pointer', 'goacc_remove_pointer', and make 'static'.
  3699. * libgomp.h (gomp_acc_insert_pointer, gomp_acc_remove_pointer):
  3700. Remove.
  3701. * libgomp_g.h: Update.
  3702. * oacc-parallel.c (GOACC_wait, goacc_wait): Move...
  3703. * oacc-async.c: ... here.
  3704. * oacc-int.h (goacc_wait): Declare.
  3705. * libgomp_g.h: Update
  3706. PR libgomp/92854
  3707. * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-1.c:
  3708. New file.
  3709. * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-2.c:
  3710. Likewise.
  3711. * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-3.c:
  3712. Likewise.
  3713. * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-1.c:
  3714. Likewise.
  3715. * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-2.c:
  3716. Likewise.
  3717. * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-3.c:
  3718. Likewise.
  3719. 2019-12-11 Thomas Schwinge <thomas@codesourcery.com>
  3720. Julian Brown <julian@codesourcery.com>
  3721. * target.c (gomp_load_image_to_device, omp_target_associate_ptr):
  3722. Initialize 'dynamic_refcount' whenever we initialize 'refcount'.
  3723. 2019-12-11 Tobias Burnus <tobias@codesourcery.com>
  3724. * omp_lib.h.in: Fix spelling of function declaration
  3725. omp_get_cancell(l)ation.
  3726. * libgomp.texi (acc_is_present, acc_async_test, acc_async_test_all):
  3727. Fix typos.
  3728. * env.c: Fix comment typos.
  3729. * oacc-host.c: Likewise.
  3730. * ordered.c: Likewise.
  3731. * task.c: Likewise.
  3732. * team.c: Likewise.
  3733. * config/gcn/task.c: Likewise.
  3734. * config/gcn/team.c: Likewise.
  3735. * config/nvptx/task.c: Likewise.
  3736. * config/nvptx/team.c: Likewise.
  3737. * plugin/plugin-gcn.c: Likewise.
  3738. * testsuite/libgomp.fortran/jacobi.f: Likewise.
  3739. * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
  3740. * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: Likewise.
  3741. 2019-12-11 Tobias Burnus <tobias@codesourcery.com>
  3742. * testsuite/libgomp.oacc-fortran/optional-cache.f95: Add 'dg-do run'.
  3743. * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Remove
  3744. unnecessary 'dg-additional-options "-w"'.
  3745. 2019-12-09 Thomas Schwinge <thomas@codesourcery.com>
  3746. Julian Brown <julian@codesourcery.com>
  3747. PR libgomp/92116
  3748. PR libgomp/92877
  3749. * oacc-mem.c (lookup_dev): Reimplement. Adjust all users.
  3750. * libgomp.h (struct acc_dispatch_t): Remove 'data_environ' member.
  3751. Adjust all users.
  3752. * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
  3753. Remove XFAIL.
  3754. * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
  3755. Likewise.
  3756. * testsuite/libgomp.oacc-c-c++-common/pr92877-1.c: New file.
  3757. 2019-12-09 Thomas Schwinge <thomas@codesourcery.com>
  3758. PR libgomp/92503
  3759. * oacc-mem.c (acc_free): Error out instead of 'acc_unmap_data'.
  3760. * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-1.c: New
  3761. file.
  3762. * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-2.c:
  3763. Likewise.
  3764. * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3-2.c:
  3765. Likewise.
  3766. * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3.c:
  3767. Likewise.
  3768. * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
  3769. Likewise.
  3770. * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
  3771. Likewise.
  3772. * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
  3773. * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
  3774. * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
  3775. * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
  3776. * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
  3777. * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
  3778. * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
  3779. * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
  3780. * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
  3781. * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
  3782. PR libgomp/92840
  3783. * oacc-mem.c (acc_map_data): Clarify reference counting behavior.
  3784. (acc_unmap_data): Add error case for 'REFCOUNT_INFINITY'.
  3785. * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-1.c:
  3786. New file.
  3787. * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-2.c:
  3788. Likewise.
  3789. * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-3.c:
  3790. Likewise.
  3791. * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
  3792. * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Adjust.
  3793. PR libgomp/92511
  3794. * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: Remove
  3795. this file...
  3796. * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: ..., and
  3797. this file...
  3798. * testsuite/libgomp.oacc-c-c++-common/lib-22.c: ..., and this
  3799. file...
  3800. * testsuite/libgomp.oacc-c-c++-common/lib-30.c: ..., and this
  3801. file...
  3802. * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
  3803. ... with their content moved into, and extended in this new file.
  3804. * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-a.c:
  3805. New file.
  3806. * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-p.c:
  3807. Likewise.
  3808. * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-a.c:
  3809. Likewise.
  3810. * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-2.c:
  3811. Likewise.
  3812. * testsuite/libgomp.oacc-c-c++-common/map-data-1.c: New file.
  3813. PR libgomp/92854
  3814. * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: New file.
  3815. * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New file.
  3816. * target.c (gomp_exit_data): Use 'gomp_remove_var'.
  3817. 2019-12-09 Tobias Burnus <tobias@codesourcery.com>
  3818. * testsuite/libgomp.fortran/use_device_addr-3.f90: Make 'stop' codes
  3819. unique.
  3820. * testsuite/libgomp.fortran/use_device_addr-4.f90: Ditto.
  3821. * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
  3822. * testsuite/libgomp.oacc-fortran/declare-5.f90: Ditto.
  3823. * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90:
  3824. Ditto.
  3825. * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: Ditto.
  3826. * testsuite/libgomp.oacc-fortran/optional-update-host.f90: Ditto.
  3827. 2019-12-06 Kwok Cheung Yeung <kcy@codesourcery.com>
  3828. * config/accel/proc.c (omp_get_num_procs): Apply ialias macro.
  3829. 2019-12-06 Tobias Burnus <tobias@codesourcery.com>
  3830. Kwok Cheung Yeung <kcy@codesourcery.com>
  3831. * oacc-mem.c (update_dev_host, gomp_acc_insert_pointer): Just return
  3832. if input it a NULL pointer.
  3833. * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Remove; dependent on
  3834. diagnostic of NULL pointer.
  3835. * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Ditto.
  3836. * testsuite/libgomp.fortran/optional-map.f90: New.
  3837. * testsuite/libgomp.fortran/use_device_addr-1.f90
  3838. (test_dummy_opt_callee_1_absent): New.
  3839. (test_dummy_opt_call_1): Call it.
  3840. * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
  3841. * testsuite/libgomp.fortran/use_device_addr-3.f90: Likewise.
  3842. * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
  3843. * testsuite/libgomp.oacc-fortran/optional-cache.f95: New.
  3844. * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90: New.
  3845. * testsuite/libgomp.oacc-fortran/optional-data-copyin.f90: New.
  3846. * testsuite/libgomp.oacc-fortran/optional-data-copyout.f90: New.
  3847. * testsuite/libgomp.oacc-fortran/optional-data-enter-exit.f90: New.
  3848. * testsuite/libgomp.oacc-fortran/optional-declare.f90: New.
  3849. * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: New.
  3850. * testsuite/libgomp.oacc-fortran/optional-host_data.f90: New.
  3851. * testsuite/libgomp.oacc-fortran/optional-nested-calls.f90: New.
  3852. * testsuite/libgomp.oacc-fortran/optional-private.f90: New.
  3853. * testsuite/libgomp.oacc-fortran/optional-reduction.f90: New.
  3854. * testsuite/libgomp.oacc-fortran/optional-update-device.f90: New.
  3855. * testsuite/libgomp.oacc-fortran/optional-update-host.f90: New.
  3856. 2019-12-05 Tobias Burnus <tobias@codesourcery.com>
  3857. * testsuite/libgomp.oacc-fortran/error_stop-1.f: Also don't
  3858. expect dg-output of 'Error termination.' for GCN.
  3859. * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
  3860. * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
  3861. 2019-12-04 Jakub Jelinek <jakub@redhat.com>
  3862. PR fortran/92756
  3863. * testsuite/libgomp.fortran/teams1.f90: New test.
  3864. * testsuite/libgomp.fortran/teams2.f90: New test.
  3865. 2019-12-03 Frederik Harwath <frederik@codesourcery.com>
  3866. * oacc-init.c (acc_known_device_type): Add function.
  3867. (unknown_device_type_error): Add function.
  3868. (name_of_acc_device_t): Change to call unknown_device_type_error
  3869. on unknown type.
  3870. (resolve_device): Use acc_known_device_type.
  3871. (acc_init): Fail if acc_device_t argument is not valid.
  3872. (acc_shutdown): Likewise.
  3873. (acc_get_num_devices): Likewise.
  3874. (acc_set_device_type): Likewise.
  3875. (acc_get_device_num): Likewise.
  3876. (acc_set_device_num): Likewise.
  3877. (acc_on_device): Add comment that argument validity is not checked.
  3878. 2019-12-03 Andrew Stubbs <ams@codesourcery.com>
  3879. * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
  3880. Recognize amdgcn.
  3881. (check_effective_target_openacc_amdgcn_accel_present): New proc.
  3882. (check_effective_target_openacc_amdgcn_accel_selected): New proc.
  3883. * testsuite/libgomp.oacc-c++/c++.exp: Add support for amdgcn.
  3884. * testsuite/libgomp.oacc-c/c.exp: Likewise.
  3885. * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
  3886. 2019-12-03 Szabolcs Nagy <szabolcs.nagy@arm.com>
  3887. PR libgomp/91938
  3888. * configure.tgt: Avoid IE tls on *-*-musl*.
  3889. 2019-11-29 Tobias Burnus <tobias@codesourcery.com>
  3890. * testsuite/libgomp.oacc-fortran/declare-5.f90: Extend by
  3891. adding a common-block test case.
  3892. 2019-11-29 Jakub Jelinek <jakub@redhat.com>
  3893. PR c++/60228
  3894. * testsuite/libgomp.c++/udr-20.C: New test.
  3895. * testsuite/libgomp.c++/udr-21.C: New test.
  3896. 2019-11-27 Thomas Schwinge <thomas@codesourcery.com>
  3897. * testsuite/lib/libgomp.exp
  3898. (check_effective_target_offload_target_nvptx): New proc.
  3899. * testsuite/libgomp.fortran/target-print-1.f90: Use it with
  3900. 'dg-skip-if'.
  3901. * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
  3902. * testsuite/libgomp.fortran/target-print-1-nvptx.f90: New file.
  3903. * testsuite/libgomp.oacc-fortran/print-1-nvptx.f90: Likewise.
  3904. 2019-11-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  3905. * testsuite/libgomp.c/pr39591-1.c: Rename err to e.
  3906. * testsuite/libgomp.c/pr39591-2.c: Likewise.
  3907. * testsuite/libgomp.c/pr39591-3.c: Likewise.
  3908. * testsuite/libgomp.c/private-1.c: Likewise.
  3909. * testsuite/libgomp.c/task-1.c: Likewise.
  3910. * testsuite/libgomp.c/task-5.c: Renamed err to serr.
  3911. 2019-11-20 Julian Brown <julian@codesourcery.com>
  3912. * plugin/plugin-gcn.c (wait_for_queue_nonfull): Don't lock/unlock
  3913. aq->mutex here.
  3914. (queue_push_launch): Lock aq->mutex before calling
  3915. wait_for_queue_nonfull.
  3916. (queue_push_callback): Likewise.
  3917. (queue_push_asyncwait): Likewise.
  3918. (queue_push_placeholder): Likewise.
  3919. 2019-11-20 Julian Brown <julian@codesourcery.com>
  3920. * plugin/plugin-gcn.c (hsa_memory_copy_wrapper): New.
  3921. (copy_data, GOMP_OFFLOAD_host2dev): Use above function.
  3922. (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_dev2dev): Check hsa_memory_copy
  3923. return code.
  3924. 2019-11-20 Julian Brown <julian@codesourcery.com>
  3925. PR libgomp/92511
  3926. * oacc-mem.c (present_create_copy): Fix device pointer return value in
  3927. case of "present" subarray. Use tgt->tgt_start instead of tgt->to_free
  3928. in non-present/create case.
  3929. (delete_copyout): Change error condition to fail only on copies outside
  3930. of mapped block. Adjust error message accordingly.
  3931. * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: New test.
  3932. * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: New test.
  3933. * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Adjust expected error
  3934. message.
  3935. * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
  3936. * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Allow test to pass now.
  3937. * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
  3938. 2019-11-20 Maciej W. Rozycki <macro@wdc.com>
  3939. * testsuite/lib/libgomp.exp (libgomp_init): Add flags to find
  3940. libatomic in build-tree testing.
  3941. 2019-11-18 Maciej W. Rozycki <macro@wdc.com>
  3942. * testsuite/Makefile.in: Regenerate.
  3943. 2019-11-15 Andrew Stubbs <ams@codesourcery.com>
  3944. * testsuite/libgomp.c/target-print-1.c: New file.
  3945. * testsuite/libgomp.fortran/target-print-1.f90: New file.
  3946. * testsuite/libgomp.oacc-c/print-1.c: New file.
  3947. * testsuite/libgomp.oacc-fortran/print-1.f90: New file.
  3948. 2019-11-13 Andrew Stubbs <ams@codesourcery.com>
  3949. Kwok Cheung Yeung <kcy@codesourcery.com>
  3950. Julian Brown <julian@codesourcery.com>
  3951. Tom de Vries <tom@codesourcery.com>
  3952. * plugin/Makefrag.am: Add amdgcn plugin support.
  3953. * plugin/configfrag.ac: Likewise.
  3954. * plugin/plugin-gcn.c: New file.
  3955. * configure: Regenerate.
  3956. * Makefile.in: Regenerate.
  3957. * testsuite/Makefile.in: Regenerate.
  3958. 2019-11-13 Andrew Stubbs <ams@codesourcery.com>
  3959. * config/gcn/team.c (gomp_gcn_enter_kernel): Set up the team arena
  3960. and use team_malloc variants.
  3961. (gomp_gcn_exit_kernel): Use team_free.
  3962. * libgomp.h (TEAM_ARENA_SIZE): Define.
  3963. (TEAM_ARENA_START): Define.
  3964. (TEAM_ARENA_FREE): Define.
  3965. (TEAM_ARENA_END): Define.
  3966. (team_malloc): New function.
  3967. (team_malloc_cleared): New function.
  3968. (team_free): New function.
  3969. * team.c (gomp_new_team): Initialize and use team_malloc.
  3970. (free_team): Use team_free.
  3971. (gomp_free_thread): Use team_free.
  3972. (gomp_pause_host): Use team_free.
  3973. * work.c (gomp_init_work_share): Use team_malloc.
  3974. (gomp_fini_work_share): Use team_free.
  3975. 2019-11-13 Andrew Stubbs <ams@codesourcery.com>
  3976. Kwok Cheung Yeung <kcy@codesourcery.com>
  3977. Julian Brown <julian@codesourcery.com>
  3978. Tom de Vries <tom@codesourcery.com>
  3979. * Makefile.am (libgomp_la_SOURCES): Add oacc-target.c.
  3980. * Makefile.in: Regenerate.
  3981. * config.h.in (PLUGIN_GCN): Add new undef.
  3982. * config/accel/openacc.f90 (acc_device_gcn): New parameter.
  3983. * config/gcn/affinity-fmt.c: New file.
  3984. * config/gcn/bar.c: New file.
  3985. * config/gcn/bar.h: New file.
  3986. * config/gcn/doacross.h: New file.
  3987. * config/gcn/icv-device.c: New file.
  3988. * config/gcn/oacc-target.c: New file.
  3989. * config/gcn/simple-bar.h: New file.
  3990. * config/gcn/target.c: New file.
  3991. * config/gcn/task.c: New file.
  3992. * config/gcn/team.c: New file.
  3993. * config/gcn/time.c: New file.
  3994. * configure.ac: Add amdgcn*-*-*.
  3995. * configure: Regenerate.
  3996. * configure.tgt: Add amdgcn*-*-*.
  3997. * libgomp-plugin.h (offload_target_type): Add OFFLOAD_TARGET_TYPE_GCN.
  3998. * libgomp.h (gcn_thrs): Add amdgcn variant.
  3999. (set_gcn_thrs): Likewise.
  4000. (gomp_thread): Likewise.
  4001. * oacc-int.h (goacc_thread): Likewise.
  4002. * oacc-target.c: New file.
  4003. * openacc.f90 (acc_device_gcn): New parameter.
  4004. * openacc.h (acc_device_t): Add acc_device_gcn.
  4005. * team.c (gomp_free_pool_helper): Add amdgcn support.
  4006. 2019-11-13 Andrew Stubbs <ams@codesourcery.com>
  4007. Julian Brown <julian@codesourcery.com>
  4008. * libgomp-plugin.h (GOMP_OFFLOAD_openacc_async_construct): Add int
  4009. parameter.
  4010. * oacc-async.c (lookup_goacc_asyncqueue): Pass device number to the
  4011. queue constructor.
  4012. * oacc-host.c (host_openacc_async_construct): Add device parameter.
  4013. * plugin/plugin-nvptx.c (GOMP_OFFLOAD_openacc_async_construct): Add
  4014. device parameter.
  4015. 2019-11-13 Andrew Stubbs <ams@codesourcery.com>
  4016. * configure.tgt (nvptx*-*-*): Add "accel" directory.
  4017. * config/nvptx/libgomp-plugin.c: Move ...
  4018. * config/accel/libgomp-plugin.c: ... to here.
  4019. * config/nvptx/lock.c: Move ...
  4020. * config/accel/lock.c: ... to here.
  4021. * config/nvptx/mutex.c: Move ...
  4022. * config/accel/mutex.c: ... to here.
  4023. * config/nvptx/mutex.h: Move ...
  4024. * config/accel/mutex.h: ... to here.
  4025. * config/nvptx/oacc-async.c: Move ...
  4026. * config/accel/oacc-async.c: ... to here.
  4027. * config/nvptx/oacc-cuda.c: Move ...
  4028. * config/accel/oacc-cuda.c: ... to here.
  4029. * config/nvptx/oacc-host.c: Move ...
  4030. * config/accel/oacc-host.c: ... to here.
  4031. * config/nvptx/oacc-init.c: Move ...
  4032. * config/accel/oacc-init.c: ... to here.
  4033. * config/nvptx/oacc-mem.c: Move ...
  4034. * config/accel/oacc-mem.c: ... to here.
  4035. * config/nvptx/oacc-plugin.c: Move ...
  4036. * config/accel/oacc-plugin.c: ... to here.
  4037. * config/nvptx/omp-lock.h: Move ...
  4038. * config/accel/omp-lock.h: ... to here.
  4039. * config/nvptx/openacc.f90: Move ...
  4040. * config/accel/openacc.f90: ... to here.
  4041. * config/nvptx/pool.h: Move ...
  4042. * config/accel/pool.h: ... to here.
  4043. * config/nvptx/proc.c: Move ...
  4044. * config/accel/proc.c: ... to here.
  4045. * config/nvptx/ptrlock.c: Move ...
  4046. * config/accel/ptrlock.c: ... to here.
  4047. * config/nvptx/ptrlock.h: Move ...
  4048. * config/accel/ptrlock.h: ... to here.
  4049. * config/nvptx/sem.c: Move ...
  4050. * config/accel/sem.c: ... to here.
  4051. * config/nvptx/sem.h: Move ...
  4052. * config/accel/sem.h: ... to here.
  4053. * config/nvptx/thread-stacksize.h: Move ...
  4054. * config/accel/thread-stacksize.h: ... to here.
  4055. 2019-11-12 Maciej W. Rozycki <macro@codesourcery.com>
  4056. Tobias Burnus <tobias@codesourcery.com>
  4057. Frederik Harwath <frederik@codesourcery.com>
  4058. Thomas Schwinge <thomas@codesourcery.com>
  4059. libgomp/
  4060. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New test.
  4061. * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: New test.
  4062. * testsuite/libgomp.oacc-fortran/parallel-dims.f89: New test.
  4063. 2019-11-11 Tobias Burnus <tobias@codesourcery.com>
  4064. Kwok Cheung Yeung <kcy@codesourcery.com>
  4065. * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90: Extend.
  4066. * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: New.
  4067. 2019-11-11 Thomas Schwinge <thomas@codesourcery.com>
  4068. * testsuite/libgomp.fortran/target9.f90: Specify 'dg-do run'.
  4069. * testsuite/libgomp.fortran/use_device_addr-3.f90: Specify 'dg-do
  4070. run'.
  4071. * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
  4072. * testsuite/libgomp.fortran/use_device_ptr-1.f90: Likewise.
  4073. 2019-11-06 Thomas Schwinge <thomas@codesourcery.com>
  4074. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c:
  4075. Add expected warnings about missing reduction clauses.
  4076. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
  4077. Likewise.
  4078. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c:
  4079. Likewise.
  4080. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
  4081. Likewise.
  4082. 2019-11-04 Tobias Burnus <tobias@codesourcery.com>
  4083. * testsuite/libgomp.fortran/pr66199-1.f90: Remove
  4084. 'dg-do run' (implies torture test) as 'dg-options "O2"' is used.
  4085. * testsuite/libgomp.fortran/pr66199-2.f90: Ditto.
  4086. * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
  4087. * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
  4088. * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
  4089. 2019-11-04 Tobias Burnus <tobias@codesourcery.com>
  4090. PR fortran/92305
  4091. * testsuite/libgomp.fortran/allocatable2.f90: Use
  4092. unique numbers with 'stop'.
  4093. * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
  4094. * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
  4095. * testsuite/libgomp.fortran/use_device_ptr-1.f90: Ditto.
  4096. * testsuite/libgomp.oacc-fortran/lib-15.f90: Ditto.
  4097. * testsuite/libgomp.oacc-fortran/pset-1.f90: Ditto.
  4098. 2019-11-01 Tobias Burnus <tobias@codesourcery.com>
  4099. * testsuite/libgomp.fortran/use_device_addr-1.f90 (test_nullptr_1,
  4100. test_dummy_opt_nullptr_callee_1): Add present but unallocated test.
  4101. * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
  4102. * testsuite/libgomp.fortran/use_device_addr-3.f90: New.
  4103. * testsuite/libgomp.fortran/use_device_addr-4.f90: New.
  4104. * testsuite/testsuite/libgomp.fortran/use_device_ptr-1.f90: New.
  4105. 2019-10-30 Tobias Burnus <tobias@codesourcery.com>
  4106. * testsuite/libgomp.fortran/target9.f90: New.
  4107. 2019-10-30 Tobias Burnus <tobias@codesourcery.com>
  4108. * testsuite/libgomp.fortran/aligned1.f03: Replace 'STOP' by 'stop'.
  4109. * testsuite/libgomp.fortran/alloc-comp-1.f90: Ditto.
  4110. * testsuite/libgomp.fortran/alloc-comp-2.f90: Ditto.
  4111. * testsuite/libgomp.fortran/alloc-comp-3.f90: Ditto.
  4112. * testsuite/libgomp.fortran/allocatable1.f90: Ditto.
  4113. * testsuite/libgomp.fortran/allocatable10.f90: Ditto.
  4114. * testsuite/libgomp.fortran/allocatable11.f90: Ditto.
  4115. * testsuite/libgomp.fortran/allocatable12.f90: Ditto.
  4116. * testsuite/libgomp.fortran/allocatable2.f90: Ditto.
  4117. * testsuite/libgomp.fortran/allocatable3.f90: Ditto.
  4118. * testsuite/libgomp.fortran/allocatable4.f90: Ditto.
  4119. * testsuite/libgomp.fortran/allocatable5.f90: Ditto.
  4120. * testsuite/libgomp.fortran/allocatable6.f90: Ditto.
  4121. * testsuite/libgomp.fortran/allocatable7.f90: Ditto.
  4122. * testsuite/libgomp.fortran/allocatable8.f90: Ditto.
  4123. * testsuite/libgomp.fortran/allocatable9.f90: Ditto.
  4124. * testsuite/libgomp.fortran/associate1.f90: Ditto.
  4125. * testsuite/libgomp.fortran/associate2.f90: Ditto.
  4126. * testsuite/libgomp.fortran/associate3.f90: Ditto.
  4127. * testsuite/libgomp.fortran/async_io_4.f90: Ditto.
  4128. * testsuite/libgomp.fortran/async_io_5.f90: Ditto.
  4129. * testsuite/libgomp.fortran/async_io_6.f90: Ditto.
  4130. * testsuite/libgomp.fortran/async_io_7.f90: Ditto.
  4131. * testsuite/libgomp.fortran/cancel-do-1.f90: Ditto.
  4132. * testsuite/libgomp.fortran/cancel-do-2.f90: Ditto.
  4133. * testsuite/libgomp.fortran/cancel-parallel-1.f90: Ditto.
  4134. * testsuite/libgomp.fortran/cancel-sections-1.f90: Ditto.
  4135. * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Ditto.
  4136. * testsuite/libgomp.fortran/character1.f90: Ditto.
  4137. * testsuite/libgomp.fortran/character2.f90: Ditto.
  4138. * testsuite/libgomp.fortran/collapse1.f90: Ditto.
  4139. * testsuite/libgomp.fortran/collapse2.f90: Ditto.
  4140. * testsuite/libgomp.fortran/collapse3.f90: Ditto.
  4141. * testsuite/libgomp.fortran/collapse4.f90: Ditto.
  4142. * testsuite/libgomp.fortran/crayptr1.f90: Ditto.
  4143. * testsuite/libgomp.fortran/crayptr2.f90: Ditto.
  4144. * testsuite/libgomp.fortran/crayptr3.f90: Ditto.
  4145. * testsuite/libgomp.fortran/declare-simd-1.f90: Ditto.
  4146. * testsuite/libgomp.fortran/declare-simd-3.f90: Ditto.
  4147. * testsuite/libgomp.fortran/declare-target-2.f90: Ditto.
  4148. * testsuite/libgomp.fortran/depend-1.f90: Ditto.
  4149. * testsuite/libgomp.fortran/depend-2.f90: Ditto.
  4150. * testsuite/libgomp.fortran/depend-3.f90: Ditto.
  4151. * testsuite/libgomp.fortran/do1.f90: Ditto.
  4152. * testsuite/libgomp.fortran/do2.f90: Ditto.
  4153. * testsuite/libgomp.fortran/do_concurrent_5.f90: Ditto.
  4154. * testsuite/libgomp.fortran/doacross1.f90: Ditto.
  4155. * testsuite/libgomp.fortran/doacross2.f90: Ditto.
  4156. * testsuite/libgomp.fortran/doacross3.f90: Ditto.
  4157. * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Ditto.
  4158. * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Ditto.
  4159. * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Ditto.
  4160. * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Ditto.
  4161. * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Ditto.
  4162. * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Ditto.
  4163. * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Ditto.
  4164. * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Ditto.
  4165. * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Ditto.
  4166. * testsuite/libgomp.fortran/examples-4/device-1.f90: Ditto.
  4167. * testsuite/libgomp.fortran/examples-4/device-2.f90: Ditto.
  4168. * testsuite/libgomp.fortran/examples-4/device-3.f90: Ditto.
  4169. * testsuite/libgomp.fortran/examples-4/simd-1.f90: Ditto.
  4170. * testsuite/libgomp.fortran/examples-4/simd-2.f90: Ditto.
  4171. * testsuite/libgomp.fortran/examples-4/simd-3.f90: Ditto.
  4172. * testsuite/libgomp.fortran/examples-4/simd-4.f90: Ditto.
  4173. * testsuite/libgomp.fortran/examples-4/simd-5.f90: Ditto.
  4174. * testsuite/libgomp.fortran/examples-4/simd-6.f90: Ditto.
  4175. * testsuite/libgomp.fortran/examples-4/simd-7.f90: Ditto.
  4176. * testsuite/libgomp.fortran/examples-4/simd-8.f90: Ditto.
  4177. * testsuite/libgomp.fortran/examples-4/target-1.f90: Ditto.
  4178. * testsuite/libgomp.fortran/examples-4/target-2.f90: Ditto.
  4179. * testsuite/libgomp.fortran/examples-4/target-3.f90: Ditto.
  4180. * testsuite/libgomp.fortran/examples-4/target-4.f90: Ditto.
  4181. * testsuite/libgomp.fortran/examples-4/target-5.f90: Ditto.
  4182. * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Ditto.
  4183. * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Ditto.
  4184. * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Ditto.
  4185. * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Ditto.
  4186. * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Ditto.
  4187. * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Ditto.
  4188. * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Ditto.
  4189. * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Ditto.
  4190. * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Ditto.
  4191. * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Ditto.
  4192. * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Ditto.
  4193. * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Ditto.
  4194. * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Ditto.
  4195. * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Ditto.
  4196. * testsuite/libgomp.fortran/examples-4/teams-2.f90: Ditto.
  4197. * testsuite/libgomp.fortran/examples-4/teams-3.f90: Ditto.
  4198. * testsuite/libgomp.fortran/examples-4/teams-4.f90: Ditto.
  4199. * testsuite/libgomp.fortran/examples-4/teams-5.f90: Ditto.
  4200. * testsuite/libgomp.fortran/examples-4/teams-6.f90: Ditto.
  4201. * testsuite/libgomp.fortran/lastprivate1.f90: Ditto.
  4202. * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
  4203. * testsuite/libgomp.fortran/lib1.f90: Ditto.
  4204. * testsuite/libgomp.fortran/lib4.f90: Ditto.
  4205. * testsuite/libgomp.fortran/lock-1.f90: Ditto.
  4206. * testsuite/libgomp.fortran/lock-2.f90: Ditto.
  4207. * testsuite/libgomp.fortran/nested1.f90: Ditto.
  4208. * testsuite/libgomp.fortran/nestedfn1.f90: Ditto.
  4209. * testsuite/libgomp.fortran/nestedfn2.f90: Ditto.
  4210. * testsuite/libgomp.fortran/nestedfn3.f90: Ditto.
  4211. * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
  4212. * testsuite/libgomp.fortran/nestedfn5.f90: Ditto.
  4213. * testsuite/libgomp.fortran/omp_atomic1.f90: Ditto.
  4214. * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
  4215. * testsuite/libgomp.fortran/omp_atomic3.f90: Ditto.
  4216. * testsuite/libgomp.fortran/omp_atomic4.f90: Ditto.
  4217. * testsuite/libgomp.fortran/omp_atomic5.f90: Ditto.
  4218. * testsuite/libgomp.fortran/omp_cond1.f: Ditto.
  4219. * testsuite/libgomp.fortran/omp_cond2.f: Ditto.
  4220. * testsuite/libgomp.fortran/omp_cond3.F90: Ditto.
  4221. * testsuite/libgomp.fortran/omp_cond4.F90: Ditto.
  4222. * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
  4223. * testsuite/libgomp.fortran/omp_parse2.f90: Ditto.
  4224. * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
  4225. * testsuite/libgomp.fortran/omp_parse4.f90: Ditto.
  4226. * testsuite/libgomp.fortran/openmp_version-1.f: Ditto.
  4227. * testsuite/libgomp.fortran/openmp_version-2.f90: Ditto.
  4228. * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Ditto.
  4229. * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Ditto.
  4230. * testsuite/libgomp.fortran/pointer1.f90: Ditto.
  4231. * testsuite/libgomp.fortran/pointer2.f90: Ditto.
  4232. * testsuite/libgomp.fortran/pr25219.f90: Ditto.
  4233. * testsuite/libgomp.fortran/pr27395-1.f90: Ditto.
  4234. * testsuite/libgomp.fortran/pr27395-2.f90: Ditto.
  4235. * testsuite/libgomp.fortran/pr27416-1.f90: Ditto.
  4236. * testsuite/libgomp.fortran/pr27916-1.f90: Ditto.
  4237. * testsuite/libgomp.fortran/pr27916-2.f90: Ditto.
  4238. * testsuite/libgomp.fortran/pr28390.f: Ditto.
  4239. * testsuite/libgomp.fortran/pr29629.f90: Ditto.
  4240. * testsuite/libgomp.fortran/pr32550.f90: Ditto.
  4241. * testsuite/libgomp.fortran/pr33880.f90: Ditto.
  4242. * testsuite/libgomp.fortran/pr34020.f90: Ditto.
  4243. * testsuite/libgomp.fortran/pr35130.f90: Ditto.
  4244. * testsuite/libgomp.fortran/pr42162.f90: Ditto.
  4245. * testsuite/libgomp.fortran/pr46753.f90: Ditto.
  4246. * testsuite/libgomp.fortran/pr48894.f90: Ditto.
  4247. * testsuite/libgomp.fortran/pr49792-1.f90: Ditto.
  4248. * testsuite/libgomp.fortran/pr49792-2.f90: Ditto.
  4249. * testsuite/libgomp.fortran/pr63938-1.f90: Ditto.
  4250. * testsuite/libgomp.fortran/pr63938-2.f90: Ditto.
  4251. * testsuite/libgomp.fortran/pr65597.f90: Ditto.
  4252. * testsuite/libgomp.fortran/pr66199-1.f90: Ditto.
  4253. * testsuite/libgomp.fortran/pr71014.f90: Ditto.
  4254. * testsuite/libgomp.fortran/pr81304.f90: Ditto.
  4255. * testsuite/libgomp.fortran/pr81841.f90: Ditto.
  4256. * testsuite/libgomp.fortran/pr84418-1.f90: Ditto.
  4257. * testsuite/libgomp.fortran/pr84418-2.f90: Ditto.
  4258. * testsuite/libgomp.fortran/procptr1.f90: Ditto.
  4259. * testsuite/libgomp.fortran/recursion1.f90: Ditto.
  4260. * testsuite/libgomp.fortran/reduction1.f90: Ditto.
  4261. * testsuite/libgomp.fortran/reduction2.f90: Ditto.
  4262. * testsuite/libgomp.fortran/reduction3.f90: Ditto.
  4263. * testsuite/libgomp.fortran/reduction4.f90: Ditto.
  4264. * testsuite/libgomp.fortran/reduction5.f90: Ditto.
  4265. * testsuite/libgomp.fortran/reduction6.f90: Ditto.
  4266. * testsuite/libgomp.fortran/reference1.f90: Ditto.
  4267. * testsuite/libgomp.fortran/reference2.f90: Ditto.
  4268. * testsuite/libgomp.fortran/retval1.f90: Ditto.
  4269. * testsuite/libgomp.fortran/retval2.f90: Ditto.
  4270. * testsuite/libgomp.fortran/sharing1.f90: Ditto.
  4271. * testsuite/libgomp.fortran/sharing2.f90: Ditto.
  4272. * testsuite/libgomp.fortran/simd1.f90: Ditto.
  4273. * testsuite/libgomp.fortran/simd2.f90: Ditto.
  4274. * testsuite/libgomp.fortran/simd3.f90: Ditto.
  4275. * testsuite/libgomp.fortran/simd4.f90: Ditto.
  4276. * testsuite/libgomp.fortran/simd5.f90: Ditto.
  4277. * testsuite/libgomp.fortran/simd6.f90: Ditto.
  4278. * testsuite/libgomp.fortran/simd7.f90: Ditto.
  4279. * testsuite/libgomp.fortran/stack.f90: Ditto.
  4280. * testsuite/libgomp.fortran/strassen.f90: Ditto.
  4281. * testsuite/libgomp.fortran/tabs1.f90: Ditto.
  4282. * testsuite/libgomp.fortran/tabs2.f: Ditto.
  4283. * testsuite/libgomp.fortran/target1.f90: Ditto.
  4284. * testsuite/libgomp.fortran/target2.f90: Ditto.
  4285. * testsuite/libgomp.fortran/target3.f90: Ditto.
  4286. * testsuite/libgomp.fortran/target4.f90: Ditto.
  4287. * testsuite/libgomp.fortran/target5.f90: Ditto.
  4288. * testsuite/libgomp.fortran/target6.f90: Ditto.
  4289. * testsuite/libgomp.fortran/target7.f90: Ditto.
  4290. * testsuite/libgomp.fortran/target8.f90: Ditto.
  4291. * testsuite/libgomp.fortran/task1.f90: Ditto.
  4292. * testsuite/libgomp.fortran/task2.f90: Ditto.
  4293. * testsuite/libgomp.fortran/task3.f90: Ditto.
  4294. * testsuite/libgomp.fortran/task4.f90: Ditto.
  4295. * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
  4296. * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
  4297. * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
  4298. * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
  4299. * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
  4300. * testsuite/libgomp.fortran/threadprivate1.f90: Ditto.
  4301. * testsuite/libgomp.fortran/threadprivate2.f90: Ditto.
  4302. * testsuite/libgomp.fortran/threadprivate3.f90: Ditto.
  4303. * testsuite/libgomp.fortran/threadprivate4.f90: Ditto.
  4304. * testsuite/libgomp.fortran/udr1.f90: Ditto.
  4305. * testsuite/libgomp.fortran/udr10.f90: Ditto.
  4306. * testsuite/libgomp.fortran/udr11.f90: Ditto.
  4307. * testsuite/libgomp.fortran/udr12.f90: Ditto.
  4308. * testsuite/libgomp.fortran/udr13.f90: Ditto.
  4309. * testsuite/libgomp.fortran/udr14.f90: Ditto.
  4310. * testsuite/libgomp.fortran/udr15.f90: Ditto.
  4311. * testsuite/libgomp.fortran/udr2.f90: Ditto.
  4312. * testsuite/libgomp.fortran/udr3.f90: Ditto.
  4313. * testsuite/libgomp.fortran/udr4.f90: Ditto.
  4314. * testsuite/libgomp.fortran/udr5.f90: Ditto.
  4315. * testsuite/libgomp.fortran/udr6.f90: Ditto.
  4316. * testsuite/libgomp.fortran/udr7.f90: Ditto.
  4317. * testsuite/libgomp.fortran/udr8.f90: Ditto.
  4318. * testsuite/libgomp.fortran/udr9.f90: Ditto.
  4319. * testsuite/libgomp.fortran/vla1.f90: Ditto.
  4320. * testsuite/libgomp.fortran/vla2.f90: Ditto.
  4321. * testsuite/libgomp.fortran/vla3.f90: Ditto.
  4322. * testsuite/libgomp.fortran/vla4.f90: Ditto.
  4323. * testsuite/libgomp.fortran/vla5.f90: Ditto.
  4324. * testsuite/libgomp.fortran/vla6.f90: Ditto.
  4325. * testsuite/libgomp.fortran/vla7.f90: Ditto.
  4326. * testsuite/libgomp.fortran/vla8.f90: Ditto.
  4327. * testsuite/libgomp.fortran/workshare1.f90: Ditto.
  4328. * testsuite/libgomp.fortran/workshare2.f90: Ditto.
  4329. 2019-10-30 Tobias Burnus <tobias@codesourcery.com>
  4330. * testsuite/libgomp.fortran/target-simd.f90: Use stop not abort.
  4331. * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90:
  4332. Ditto; add 'dg-do run' for torture testing.
  4333. * testsuite/libgomp.fortran/lastprivate1.f90: Add 'dg-do run'.
  4334. * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
  4335. * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
  4336. * testsuite/libgomp.fortran/pr25219.f90: Ditto.
  4337. * testsuite/libgomp.fortran/pr28390.f: Ditto.
  4338. * testsuite/libgomp.fortran/pr35130.f90: Ditto.
  4339. * testsuite/libgomp.fortran/pr90779.f90: Ditto.
  4340. * testsuite/libgomp.fortran/task2.f90: Ditto.
  4341. * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
  4342. * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
  4343. * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
  4344. * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
  4345. * testsuite/libgomp.fortran/workshare1.f90: Ditto.
  4346. * testsuite/libgomp.fortran/workshare2.f90: Ditto.
  4347. 2019-10-28 Tobias Burnus <tobias@codesourcery.com>
  4348. * testsuite/libgomp.oacc-fortran/abort-1.f90: Add 'dg-do run'.
  4349. * testsuite/libgomp.oacc-fortran/abort-2.f90: Ditto.
  4350. * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Ditto.
  4351. * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f90: Ditto.
  4352. * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f90: Ditto.
  4353. * testsuite/libgomp.oacc-fortran/lib-1.f90: Ditto.
  4354. * testsuite/libgomp.oacc-fortran/common-block-1.f90:
  4355. Use 'stop' not abort().
  4356. * testsuite/libgomp.oacc-fortran/common-block-2.f90: Ditto.
  4357. * testsuite/libgomp.oacc-fortran/common-block-3.f90: Ditto.
  4358. * testsuite/libgomp.oacc-fortran/data-1.f90: Ditto.
  4359. * testsuite/libgomp.oacc-fortran/data-2.f90: Ditto.
  4360. * testsuite/libgomp.oacc-fortran/data-5.f90: Ditto.
  4361. * testsuite/libgomp.oacc-fortran/dummy-array.f90: Ditto.
  4362. * testsuite/libgomp.oacc-fortran/gemm-2.f90: Ditto.
  4363. * testsuite/libgomp.oacc-fortran/gemm.f90: Ditto.
  4364. * testsuite/libgomp.oacc-fortran/host_data-2.f90: Ditto.
  4365. * testsuite/libgomp.oacc-fortran/host_data-3.f90: Ditto.
  4366. * testsuite/libgomp.oacc-fortran/host_data-4.f90: Ditto.
  4367. * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Ditto.
  4368. * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Ditto.
  4369. * testsuite/libgomp.oacc-fortran/kernels-independent.f90: Ditto.
  4370. * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Ditto.
  4371. * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Ditto.
  4372. * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
  4373. Ditto.
  4374. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
  4375. Ditto.
  4376. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
  4377. Ditto.
  4378. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
  4379. Ditto.
  4380. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
  4381. Ditto.
  4382. * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-1.f90:
  4383. Ditto.
  4384. * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-2.f90:
  4385. Ditto.
  4386. * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-1.f90:
  4387. Ditto.
  4388. * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-2.f90:
  4389. Ditto.
  4390. * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-3.f90:
  4391. Ditto.
  4392. * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-4.f90:
  4393. Ditto.
  4394. * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-5.f90:
  4395. Ditto.
  4396. * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-6.f90:
  4397. Ditto.
  4398. * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-7.f90:
  4399. Ditto.
  4400. * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Ditto.
  4401. * testsuite/libgomp.oacc-fortran/lib-12.f90: Ditto.
  4402. * testsuite/libgomp.oacc-fortran/lib-13.f90: Ditto.
  4403. * testsuite/libgomp.oacc-fortran/lib-14.f90: Ditto.
  4404. * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
  4405. Likewise and also add 'dg-do run'.
  4406. * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
  4407. Ditto.
  4408. 2019-10-25 Cesar Philippidis <cesar@codesourcery.com>
  4409. Tobias Burnus <tobias@codesourcery.com>
  4410. * testsuite/libgomp.oacc-fortran/common-block-1.f90: New test.
  4411. * testsuite/libgomp.oacc-fortran/common-block-2.f90: New test.
  4412. * testsuite/libgomp.oacc-fortran/common-block-3.f90: New test.
  4413. 2019-10-14 Jakub Jelinek <jakub@redhat.com>
  4414. PR libgomp/92081
  4415. * testsuite/libgomp.fortran/target-simd.f90: Iterate from 1 rather
  4416. than 0.
  4417. 2019-10-11 Tobias Burnus <tobias@codesourcery.com>
  4418. * testsuite/libgomp.fortran/use_device_addr-1.f90: New.
  4419. * testsuite/libgomp.fortran/use_device_addr-2.f90: New.
  4420. 2019-10-09 Thomas Schwinge <thomas@codesourcery.com>
  4421. PR middle-end/92036
  4422. * testsuite/libgomp.oacc-c-c++-common/data-firstprivate-1.c: New
  4423. file.
  4424. 2019-10-09 Tobias Burnus <tobias@codesourcery.com>
  4425. PR testsuite/91884
  4426. * testsuite/libgomp.fortran/fortran.exp: Conditionally
  4427. add -lquadmath.
  4428. * testsuite/libgomp.oacc-fortran/fortran.exp: Ditto.
  4429. 2019-10-09 Jakub Jelinek <jakub@redhat.com>
  4430. PR libgomp/92028
  4431. * target.c (gomp_map_vars_internal): Readd the previous
  4432. GOMP_MAP_USE_DEVICE_PTR handling code in the first loop,
  4433. though do that just in the !not_found_cnt case.
  4434. 2019-10-08 Tobias Burnus <tobias@codesourcery.com>
  4435. * gfortran.dg/gomp/target-simd.f90: New.
  4436. 2019-10-02 Julian Brown <julian@codesourcery.com>
  4437. Cesar Philippidis <cesar@codesourcery.com>
  4438. * libgomp.h (OFFSET_INLINED, OFFSET_POINTER, OFFSET_STRUCT): Define.
  4439. * target.c (FIELD_TGT_EMPTY): Define.
  4440. (gomp_map_val): Use OFFSET_* macros instead of magic constants. Write
  4441. as switch instead of list of ifs.
  4442. (gomp_map_vars_internal): Use OFFSET_* and FIELD_TGT_EMPTY macros.
  4443. 2019-10-02 Andreas Tobler <andreast@gcc.gnu.org>
  4444. * testsuite/libgomp.oacc-c-c++-common/loop-default.h: Remove alloca.h
  4445. include. Replace alloca () with __builtin_alloca ().
  4446. * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Likewise.
  4447. 2019-10-01 Jakub Jelinek <jakub@redhat.com>
  4448. * configure.ac: Remove GCC_HEADER_STDINT(gstdint.h).
  4449. * libgomp.h: Include <stdint.h> instead of "gstdint.h".
  4450. * oacc-parallel.c: Don't include "libgomp_g.h".
  4451. * plugin/plugin-hsa.c: Include <stdint.h> instead of "gstdint.h".
  4452. * plugin/plugin-nvptx.c: Don't include "gstdint.h".
  4453. * aclocal.m4: Regenerated.
  4454. * config.h.in: Regenerated.
  4455. * configure: Regenerated.
  4456. * Makefile.in: Regenerated.
  4457. 2019-09-30 Kwok Cheung Yeung <kcy@codesourcery.com>
  4458. * libgomp_g.h: Include stdint.h instead of gstdint.h.
  4459. 2019-09-27 Maciej W. Rozycki <macro@wdc.com>
  4460. * configure: Regenerate.
  4461. 2019-09-13 Tobias Burnus <tobias@codesourcery.com>
  4462. * plugin/plugin-hsa.c (hsa_warn, hsa_fatal, hsa_error): Ensure
  4463. string is initialized.
  4464. 2019-09-06 Florian Weimer <fweimer@redhat.com>
  4465. * configure: Regenerate.
  4466. 2019-09-03 Chung-Lin Tang <cltang@codesourcery.com>
  4467. PR other/79543
  4468. * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Fix GNU ld --version
  4469. scanning to conform to the GNU Coding Standards.
  4470. * configure: Regenerate.
  4471. 2019-08-28 Jakub Jelinek <jakub@redhat.com>
  4472. PR libgomp/91530
  4473. * testsuite/libgomp.c/scan-21.c: New test.
  4474. * testsuite/libgomp.c/scan-22.c: New test.
  4475. 2019-08-27 Jakub Jelinek <jakub@redhat.com>
  4476. PR libgomp/91530
  4477. * testsuite/libgomp.c/scan-11.c: Add -msse2 option for sse2_runtime
  4478. targets.
  4479. * testsuite/libgomp.c/scan-12.c: Likewise.
  4480. * testsuite/libgomp.c/scan-13.c: Likewise.
  4481. * testsuite/libgomp.c/scan-14.c: Likewise.
  4482. * testsuite/libgomp.c/scan-15.c: Likewise.
  4483. * testsuite/libgomp.c/scan-16.c: Likewise.
  4484. * testsuite/libgomp.c/scan-17.c: Likewise.
  4485. * testsuite/libgomp.c/scan-18.c: Likewise.
  4486. * testsuite/libgomp.c/scan-19.c: Likewise.
  4487. * testsuite/libgomp.c/scan-20.c: Likewise.
  4488. * testsuite/libgomp.c++/scan-9.C: Likewise.
  4489. * testsuite/libgomp.c++/scan-10.C: Likewise.
  4490. * testsuite/libgomp.c++/scan-11.C: Likewise.
  4491. * testsuite/libgomp.c++/scan-12.C: Likewise.
  4492. * testsuite/libgomp.c++/scan-14.C: Likewise.
  4493. * testsuite/libgomp.c++/scan-15.C: Likewise.
  4494. * testsuite/libgomp.c++/scan-13.C: Likewise. Use sse2_runtime
  4495. instead of i?86-*-* x86_64-*-* as target for scan-tree-dump-times.
  4496. * testsuite/libgomp.c++/scan-16.C: Likewise.
  4497. 2019-08-17 Thomas Koenig <tkoenig@gcc.gnu.org>
  4498. PR fortran/91473
  4499. * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add
  4500. -std=legacy so invalid code in the test case is accepted.
  4501. 2019-08-12 Thomas Koenig <tkoenig@gcc.gnu.org>
  4502. PR fortran/91422
  4503. * testsuite/libgomp.oacc-fortran/routine-7.f90: Correct array
  4504. dimension.
  4505. 2019-08-08 Jakub Jelinek <jakub@redhat.com>
  4506. * target.c (gomp_map_vars_internal): For GOMP_MAP_USE_DEVICE_PTR
  4507. perform the lookup in the first loop only if !not_found_cnt, otherwise
  4508. perform lookups for it in the second loop guarded with
  4509. if (not_found_cnt || has_firstprivate).
  4510. * testsuite/libgomp.c/target-37.c: New test.
  4511. * testsuite/libgomp.c++/target-22.C: New test.
  4512. 2019-08-07 Jakub Jelinek <jakub@redhat.com>
  4513. * testsuite/libgomp.c/target-18.c (struct S): New type.
  4514. (foo): Use use_device_addr clause instead of use_device_ptr clause
  4515. where required by OpenMP 5.0, add further tests for both use_device_ptr
  4516. and use_device_addr clauses.
  4517. * testsuite/libgomp.c++/target-9.C (struct S): New type.
  4518. (foo): Use use_device_addr clause instead of use_device_ptr clause
  4519. where required by OpenMP 5.0, add further tests for both use_device_ptr
  4520. and use_device_addr clauses. Add t and u arguments.
  4521. (main): Adjust caller.
  4522. 2019-08-06 Jakub Jelinek <jakub@redhat.com>
  4523. * testsuite/libgomp.c++/loop-13.C: New test.
  4524. * testsuite/libgomp.c++/loop-14.C: New test.
  4525. * testsuite/libgomp.c++/loop-15.C: New test.
  4526. 2019-07-31 Jakub Jelinek <jakub@redhat.com>
  4527. PR middle-end/91301
  4528. * testsuite/libgomp.c++/for-27.C: New test.
  4529. 2019-07-23 Steven G. Kargl <kargl@gcc.gnu.org>
  4530. * testsuite/libgomp.fortran/reduction4.f90: Update BOZ usage.
  4531. * testsuite/libgomp.fortran/reduction5.f90: Ditto.
  4532. 2019-07-20 Jakub Jelinek <jakub@redhat.com>
  4533. * testsuite/libgomp.c-c++-common/loop-1.c: New test.
  4534. 2019-07-08 Jakub Jelinek <jakub@redhat.com>
  4535. * testsuite/libgomp.c++/scan-13.C: Replace xfail with target x86.
  4536. * testsuite/libgomp.c++/scan-16.C: Likewise.
  4537. 2019-07-06 Jakub Jelinek <jakub@redhat.com>
  4538. * testsuite/libgomp.c/scan-19.c: New test.
  4539. * testsuite/libgomp.c/scan-20.c: New test.
  4540. * testsuite/libgomp.c/scan-11.c: New test.
  4541. * testsuite/libgomp.c/scan-12.c: New test.
  4542. * testsuite/libgomp.c/scan-13.c: New test.
  4543. * testsuite/libgomp.c/scan-14.c: New test.
  4544. * testsuite/libgomp.c/scan-15.c: New test.
  4545. * testsuite/libgomp.c/scan-16.c: New test.
  4546. * testsuite/libgomp.c/scan-17.c: New test.
  4547. * testsuite/libgomp.c/scan-18.c: New test.
  4548. * testsuite/libgomp.c++/scan-9.C: New test.
  4549. * testsuite/libgomp.c++/scan-10.C: New test.
  4550. * testsuite/libgomp.c++/scan-11.C: New test.
  4551. * testsuite/libgomp.c++/scan-12.C: New test.
  4552. * testsuite/libgomp.c++/scan-13.C: New test.
  4553. * testsuite/libgomp.c++/scan-14.C: New test.
  4554. * testsuite/libgomp.c++/scan-15.C: New test.
  4555. * testsuite/libgomp.c++/scan-16.C: New test.
  4556. 2019-07-04 Jakub Jelinek <jakub@redhat.com>
  4557. * testsuite/libgomp.c/scan-9.c: New test.
  4558. * testsuite/libgomp.c/scan-10.c: New test.
  4559. 2019-07-03 Jakub Jelinek <jakub@redhat.com>
  4560. * testsuite/libgomp.c++/scan-1.C: New test.
  4561. * testsuite/libgomp.c++/scan-2.C: New test.
  4562. * testsuite/libgomp.c++/scan-3.C: New test.
  4563. * testsuite/libgomp.c++/scan-4.C: New test.
  4564. * testsuite/libgomp.c++/scan-5.C: New test.
  4565. * testsuite/libgomp.c++/scan-6.C: New test.
  4566. * testsuite/libgomp.c++/scan-7.C: New test.
  4567. * testsuite/libgomp.c++/scan-8.C: New test.
  4568. * testsuite/libgomp.c/scan-1.c: New test.
  4569. * testsuite/libgomp.c/scan-2.c: New test.
  4570. * testsuite/libgomp.c/scan-3.c: New test.
  4571. * testsuite/libgomp.c/scan-4.c: New test.
  4572. * testsuite/libgomp.c/scan-5.c: New test.
  4573. * testsuite/libgomp.c/scan-6.c: New test.
  4574. * testsuite/libgomp.c/scan-7.c: New test.
  4575. * testsuite/libgomp.c/scan-8.c: New test.
  4576. 2019-06-18 Thomas Schwinge <thomas@codesourcery.com>
  4577. * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: New file.
  4578. * testsuite/libgomp.oacc-c-c++-common/firstprivate-mappings-1.c:
  4579. Likewise.
  4580. * testsuite/libgomp.fortran/allocatable3.f90: Add missing results
  4581. check.
  4582. 2019-06-18 Cesar Philippidis <cesar@codesourcery.com>
  4583. * testsuite/libgomp.oacc-fortran/allocatable-array-1.f90: New
  4584. file.
  4585. 2019-06-18 Thomas Schwinge <thomas@codesourcery.com>
  4586. PR fortran/90743
  4587. * oacc-parallel.c (GOACC_parallel_keyed): Handle NULL mapping
  4588. case.
  4589. * testsuite/libgomp.fortran/target-allocatable-1-1.f90: New file.
  4590. * testsuite/libgomp.fortran/target-allocatable-1-2.f90: Likewise.
  4591. * testsuite/libgomp.oacc-fortran/allocatable-1-1.f90: Likewise.
  4592. * testsuite/libgomp.oacc-fortran/allocatable-1-2.f90: Likewise.
  4593. PR testsuite/90861
  4594. * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Update.
  4595. PR middle-end/90862
  4596. * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Update.
  4597. 2019-06-16 Tom de Vries <tdevries@suse.de>
  4598. PR tree-optimization/89376
  4599. * testsuite/libgomp.oacc-c-c++-common/pr89376.c: New test.
  4600. 2019-06-15 Tom de Vries <tdevries@suse.de>
  4601. PR tree-optimization/89713
  4602. * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Expect no bar.sync.
  4603. * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Same.
  4604. 2019-06-15 Jakub Jelinek <jakub@redhat.com>
  4605. PR middle-end/90779
  4606. * testsuite/libgomp.c/pr90779.c: New test.
  4607. * testsuite/libgomp.fortran/pr90779.f90: New test.
  4608. 2019-06-15 Tom de Vries <tdevries@suse.de>
  4609. PR tree-optimization/90009
  4610. * testsuite/libgomp.oacc-c-c++-common/pr90009.c: New test.
  4611. 2019-06-13 Feng Xue <fxue@os.amperecomputing.com>
  4612. PR tree-optimization/89713
  4613. * testsuite/libgomp.oacc-c-c++-common/pr84955-1.c: New test.
  4614. 2019-06-11 Jakub Jelinek <jakub@redhat.com>
  4615. PR target/90811
  4616. * testsuite/libgomp.c/pr90811.c: New test.
  4617. 2019-06-05 Jakub Jelinek <jakub@redhat.com>
  4618. * testsuite/libgomp.c++/lastprivate-conditional-1.C: New test.
  4619. * testsuite/libgomp.c++/lastprivate-conditional-2.C: New test.
  4620. 2019-06-04 Jakub Jelinek <jakub@redhat.com>
  4621. * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: New test.
  4622. * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: New test.
  4623. * testsuite/libgomp.c-c++-common/lastprivate-conditional-9.c: New test.
  4624. * testsuite/libgomp.c-c++-common/lastprivate-conditional-10.c: New test.
  4625. 2019-05-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  4626. * configure.ac: Call AX_COUNT_CPUS.
  4627. Substitute CPU_COUNT.
  4628. * testsuite/Makefile.am (check-am): Use CPU_COUNT as processor
  4629. count fallback.
  4630. * aclocal.m4: Regenerate.
  4631. * configure: Regenerate.
  4632. * Makefile.in, testsuite/Makefile.in: Regenerate.
  4633. 2019-05-29 Jakub Jelinek <jakub@redhat.com>
  4634. * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: Rename
  4635. to ...
  4636. * testsuite/libgomp.c-c++-common/lastprivate-conditional-4.c: ... this.
  4637. * testsuite/libgomp.c-c++-common/lastprivate-conditional-5.c: New test.
  4638. * testsuite/libgomp.c-c++-common/lastprivate-conditional-6.c: New test.
  4639. 2019-05-27 Jakub Jelinek <jakub@redhat.com>
  4640. * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: New test.
  4641. * testsuite/libgomp.c-c++-common/lastprivate-conditional-3.c: New test.
  4642. PR libgomp/90641
  4643. * work.c (gomp_init_work_share): Instead of aligning final ordered
  4644. value to multiples of long long alignment, align to that the
  4645. first part (ordered team ids) and if inline_ordered_team_ids
  4646. is not on a long long alignment boundary within the structure,
  4647. use __alignof__ (long long) - 1 pad size always.
  4648. * loop.c (GOMP_loop_start): Fix *mem computation if
  4649. inline_ordered_team_ids is not aligned on long long alignment boundary
  4650. within the structure.
  4651. * loop-ull.c (GOMP_loop_ull_start): Likewise.
  4652. * sections.c (GOMP_sections2_start): Likewise.
  4653. 2019-05-24 Jakub Jelinek <jakub@redhat.com>
  4654. * testsuite/libgomp.c-c++-common/lastprivate-conditional-1.c: New test.
  4655. * testsuite/libgomp.c-c++-common/lastprivate-conditional-2.c: New test.
  4656. PR libgomp/90585
  4657. * plugin/plugin-hsa.c: Include gstdint.h. Include inttypes.h only if
  4658. HAVE_INTTYPES_H is defined.
  4659. (print_uint64_t): New typedef.
  4660. (PRIu64): Define if HAVE_INTTYPES_H is not defined.
  4661. (print_kernel_dispatch, run_kernel): Use PRIu64 macro instead of
  4662. "lu", cast uint64_t HSA_DEBUG and fprintf arguments to print_uint64_t.
  4663. (release_kernel_dispatch): Likewise. Cast shadow->debug to uintptr_t
  4664. before casting to void *.
  4665. * plugin/plugin-nvptx.c: Include gstdint.h instead of stdint.h.
  4666. * oacc-mem.c: Don't include config.h nor stdint.h.
  4667. * target.c: Don't include config.h.
  4668. * oacc-cuda.c: Likewise.
  4669. * oacc-host.c: Don't include stdint.h.
  4670. 2019-05-20 Jakub Jelinek <jakub@redhat.com>
  4671. PR libgomp/90527
  4672. * alloc.c (_GNU_SOURCE): Define.
  4673. 2019-05-17 Thomas Schwinge <thomas@codesourcery.com>
  4674. * acc_prof.h: New file.
  4675. * oacc-profiling.c: Likewise.
  4676. * Makefile.am (nodist_libsubinclude_HEADERS, libgomp_la_SOURCES):
  4677. Add these, respectively.
  4678. * Makefile.in: Regenerate.
  4679. * env.c (initialize_env): Call goacc_profiling_initialize.
  4680. * oacc-plugin.c (GOMP_PLUGIN_goacc_thread)
  4681. (GOMP_PLUGIN_goacc_profiling_dispatch): New functions.
  4682. * oacc-plugin.h (GOMP_PLUGIN_goacc_thread)
  4683. (GOMP_PLUGIN_goacc_profiling_dispatch): Declare.
  4684. * libgomp.map (OACC_2.5.1): Add acc_prof_lookup,
  4685. acc_prof_register, acc_prof_unregister, and acc_register_library.
  4686. (GOMP_PLUGIN_1.3): Add GOMP_PLUGIN_goacc_profiling_dispatch, and
  4687. GOMP_PLUGIN_goacc_thread.
  4688. * oacc-int.h (struct goacc_thread): Add prof_info, api_info,
  4689. prof_callbacks_enabled members.
  4690. (goacc_prof_enabled, goacc_profiling_initialize)
  4691. (_goacc_profiling_dispatch_p, _goacc_profiling_setup_p)
  4692. (goacc_profiling_dispatch): Declare.
  4693. (GOACC_PROF_ENABLED, GOACC_PROFILING_DISPATCH_P)
  4694. (GOACC_PROFILING_SETUP_P): Define.
  4695. * oacc-async.c (acc_async_test, acc_async_test_all, acc_wait)
  4696. (acc_wait_async, acc_wait_all, acc_wait_all_async): Update for
  4697. OpenACC Profiling Interface.
  4698. * oacc-cuda.c (acc_get_current_cuda_device)
  4699. (acc_get_current_cuda_context, acc_get_cuda_stream)
  4700. (acc_set_cuda_stream): Likewise.
  4701. * oacc-init.c (acc_init_1, goacc_attach_host_thread_to_device)
  4702. (acc_init, acc_set_device_type, acc_get_device_type)
  4703. (acc_get_device_num, goacc_lazy_initialize): Likewise.
  4704. * oacc-mem.c (acc_malloc, acc_free, memcpy_tofrom_device)
  4705. (acc_deviceptr, acc_hostptr, acc_is_present, acc_map_data)
  4706. (acc_unmap_data, present_create_copy, delete_copyout)
  4707. (update_dev_host): Likewise.
  4708. * oacc-parallel.c (GOACC_parallel_keyed, GOACC_data_start)
  4709. (GOACC_data_end, GOACC_enter_exit_data, GOACC_update, GOACC_wait):
  4710. Likewise.
  4711. * plugin/plugin-nvptx.c (nvptx_exec, nvptx_alloc, nvptx_free)
  4712. (GOMP_OFFLOAD_openacc_exec, GOMP_OFFLOAD_openacc_async_exec):
  4713. Likewise.
  4714. * libgomp.texi: Update.
  4715. * testsuite/libgomp.oacc-c-c++-common/acc_prof-dispatch-1.c: New
  4716. file.
  4717. * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Likewise.
  4718. * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
  4719. Likewise.
  4720. * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
  4721. Likewise.
  4722. * testsuite/libgomp.oacc-c-c++-common/acc_prof-valid_bytes-1.c:
  4723. Likewise.
  4724. * testsuite/libgomp.oacc-c-c++-common/acc_prof-version-1.c:
  4725. Likewise.
  4726. 2019-05-13 Chung-Lin Tang <cltang@codesourcery.com>
  4727. * libgomp-plugin.h (struct goacc_asyncqueue): Declare.
  4728. (struct goacc_asyncqueue_list): Likewise.
  4729. (goacc_aq): Likewise.
  4730. (goacc_aq_list): Likewise.
  4731. (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
  4732. (GOMP_OFFLOAD_openacc_async_test): Remove.
  4733. (GOMP_OFFLOAD_openacc_async_test_all): Remove.
  4734. (GOMP_OFFLOAD_openacc_async_wait): Remove.
  4735. (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
  4736. (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
  4737. (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
  4738. (GOMP_OFFLOAD_openacc_async_set_async): Remove.
  4739. (GOMP_OFFLOAD_openacc_exec): Adjust declaration.
  4740. (GOMP_OFFLOAD_openacc_cuda_get_stream): Likewise.
  4741. (GOMP_OFFLOAD_openacc_cuda_set_stream): Likewise.
  4742. (GOMP_OFFLOAD_openacc_async_exec): Declare.
  4743. (GOMP_OFFLOAD_openacc_async_construct): Declare.
  4744. (GOMP_OFFLOAD_openacc_async_destruct): Declare.
  4745. (GOMP_OFFLOAD_openacc_async_test): Declare.
  4746. (GOMP_OFFLOAD_openacc_async_synchronize): Declare.
  4747. (GOMP_OFFLOAD_openacc_async_serialize): Declare.
  4748. (GOMP_OFFLOAD_openacc_async_queue_callback): Declare.
  4749. (GOMP_OFFLOAD_openacc_async_host2dev): Declare.
  4750. (GOMP_OFFLOAD_openacc_async_dev2host): Declare.
  4751. * libgomp.h (struct acc_dispatch_t): Define 'async' sub-struct.
  4752. (gomp_acc_insert_pointer): Adjust declaration.
  4753. (gomp_copy_host2dev): New declaration.
  4754. (gomp_copy_dev2host): Likewise.
  4755. (gomp_map_vars_async): Likewise.
  4756. (gomp_unmap_tgt): Likewise.
  4757. (gomp_unmap_vars_async): Likewise.
  4758. (gomp_fini_device): Likewise.
  4759. * oacc-async.c (get_goacc_thread): New function.
  4760. (get_goacc_thread_device): New function.
  4761. (lookup_goacc_asyncqueue): New function.
  4762. (get_goacc_asyncqueue): New function.
  4763. (acc_async_test): Adjust code to use new async design.
  4764. (acc_async_test_all): Likewise.
  4765. (acc_wait): Likewise.
  4766. (acc_wait_async): Likewise.
  4767. (acc_wait_all): Likewise.
  4768. (acc_wait_all_async): Likewise.
  4769. (goacc_async_free): New function.
  4770. (goacc_init_asyncqueues): Likewise.
  4771. (goacc_fini_asyncqueues): Likewise.
  4772. * oacc-cuda.c (acc_get_cuda_stream): Adjust code to use new async
  4773. design.
  4774. (acc_set_cuda_stream): Likewise.
  4775. * oacc-host.c (host_openacc_exec): Adjust parameters, remove 'async'.
  4776. (host_openacc_register_async_cleanup): Remove.
  4777. (host_openacc_async_exec): New function.
  4778. (host_openacc_async_test): Adjust parameters.
  4779. (host_openacc_async_test_all): Remove.
  4780. (host_openacc_async_wait): Remove.
  4781. (host_openacc_async_wait_async): Remove.
  4782. (host_openacc_async_wait_all): Remove.
  4783. (host_openacc_async_wait_all_async): Remove.
  4784. (host_openacc_async_set_async): Remove.
  4785. (host_openacc_async_synchronize): New function.
  4786. (host_openacc_async_serialize): New function.
  4787. (host_openacc_async_host2dev): New function.
  4788. (host_openacc_async_dev2host): New function.
  4789. (host_openacc_async_queue_callback): New function.
  4790. (host_openacc_async_construct): New function.
  4791. (host_openacc_async_destruct): New function.
  4792. (struct gomp_device_descr host_dispatch): Remove initialization of old
  4793. interface, add initialization of new async sub-struct.
  4794. * oacc-init.c (acc_shutdown_1): Adjust to use gomp_fini_device.
  4795. (goacc_attach_host_thread_to_device): Remove old async code usage.
  4796. * oacc-int.h (goacc_init_asyncqueues): New declaration.
  4797. (goacc_fini_asyncqueues): Likewise.
  4798. (goacc_async_copyout_unmap_vars): Likewise.
  4799. (goacc_async_free): Likewise.
  4800. (get_goacc_asyncqueue): Likewise.
  4801. (lookup_goacc_asyncqueue): Likewise.
  4802. * oacc-mem.c (memcpy_tofrom_device): Adjust code to use new async
  4803. design.
  4804. (present_create_copy): Adjust code to use new async design.
  4805. (delete_copyout): Likewise.
  4806. (update_dev_host): Likewise.
  4807. (gomp_acc_insert_pointer): Add async parameter, adjust code to use new
  4808. async design.
  4809. (gomp_acc_remove_pointer): Adjust code to use new async design.
  4810. * oacc-parallel.c (GOACC_parallel_keyed): Adjust code to use new async
  4811. design.
  4812. (GOACC_enter_exit_data): Likewise.
  4813. (goacc_wait): Likewise.
  4814. (GOACC_update): Likewise.
  4815. * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Change to assert fail
  4816. when called, warn as obsolete in comment.
  4817. * target.c (goacc_device_copy_async): New function.
  4818. (gomp_copy_host2dev): Remove 'static', add goacc_asyncqueue parameter,
  4819. add goacc_device_copy_async case.
  4820. (gomp_copy_dev2host): Likewise.
  4821. (gomp_map_vars_existing): Add goacc_asyncqueue parameter, adjust code.
  4822. (gomp_map_pointer): Likewise.
  4823. (gomp_map_fields_existing): Likewise.
  4824. (gomp_map_vars_internal): New always_inline function, renamed from
  4825. gomp_map_vars.
  4826. (gomp_map_vars): Implement by calling gomp_map_vars_internal.
  4827. (gomp_map_vars_async): Implement by calling gomp_map_vars_internal,
  4828. passing goacc_asyncqueue argument.
  4829. (gomp_unmap_tgt): Remove static, add attribute_hidden.
  4830. (gomp_unref_tgt): New function.
  4831. (gomp_unmap_vars_internal): New always_inline function, renamed from
  4832. gomp_unmap_vars.
  4833. (gomp_unmap_vars): Implement by calling gomp_unmap_vars_internal.
  4834. (gomp_unmap_vars_async): Implement by calling
  4835. gomp_unmap_vars_internal, passing goacc_asyncqueue argument.
  4836. (gomp_fini_device): New function.
  4837. (gomp_exit_data): Adjust gomp_copy_dev2host call.
  4838. (gomp_load_plugin_for_device): Remove old interface, adjust to load
  4839. new async interface.
  4840. (gomp_target_fini): Adjust code to call gomp_fini_device.
  4841. * plugin/plugin-nvptx.c (struct cuda_map): Remove.
  4842. (struct ptx_stream): Remove.
  4843. (struct nvptx_thread): Remove current_stream field.
  4844. (cuda_map_create): Remove.
  4845. (cuda_map_destroy): Remove.
  4846. (map_init): Remove.
  4847. (map_fini): Remove.
  4848. (map_pop): Remove.
  4849. (map_push): Remove.
  4850. (struct goacc_asyncqueue): Define.
  4851. (struct nvptx_callback): Define.
  4852. (struct ptx_free_block): Define.
  4853. (struct ptx_device): Remove null_stream, active_streams, async_streams,
  4854. stream_lock, and next fields.
  4855. (enum ptx_event_type): Remove.
  4856. (struct ptx_event): Remove.
  4857. (ptx_event_lock): Remove.
  4858. (ptx_events): Remove.
  4859. (init_streams_for_device): Remove.
  4860. (fini_streams_for_device): Remove.
  4861. (select_stream_for_async): Remove.
  4862. (nvptx_init): Remove ptx_events and ptx_event_lock references.
  4863. (nvptx_attach_host_thread_to_device): Remove CUDA_ERROR_NOT_PERMITTED
  4864. case.
  4865. (nvptx_open_device): Add free_blocks initialization, remove
  4866. init_streams_for_device call.
  4867. (nvptx_close_device): Remove fini_streams_for_device call, add
  4868. free_blocks destruct code.
  4869. (event_gc): Remove.
  4870. (event_add): Remove.
  4871. (nvptx_exec): Adjust parameters and code.
  4872. (nvptx_free): Likewise.
  4873. (nvptx_host2dev): Remove.
  4874. (nvptx_dev2host): Remove.
  4875. (nvptx_set_async): Remove.
  4876. (nvptx_async_test): Remove.
  4877. (nvptx_async_test_all): Remove.
  4878. (nvptx_wait): Remove.
  4879. (nvptx_wait_async): Remove.
  4880. (nvptx_wait_all): Remove.
  4881. (nvptx_wait_all_async): Remove.
  4882. (nvptx_get_cuda_stream): Remove.
  4883. (nvptx_set_cuda_stream): Remove.
  4884. (GOMP_OFFLOAD_alloc): Adjust code.
  4885. (GOMP_OFFLOAD_free): Likewise.
  4886. (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
  4887. (GOMP_OFFLOAD_openacc_exec): Adjust parameters and code.
  4888. (GOMP_OFFLOAD_openacc_async_test_all): Remove.
  4889. (GOMP_OFFLOAD_openacc_async_wait): Remove.
  4890. (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
  4891. (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
  4892. (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
  4893. (GOMP_OFFLOAD_openacc_async_set_async): Remove.
  4894. (cuda_free_argmem): New function.
  4895. (GOMP_OFFLOAD_openacc_async_exec): New plugin hook function.
  4896. (GOMP_OFFLOAD_openacc_create_thread_data): Adjust code.
  4897. (GOMP_OFFLOAD_openacc_cuda_get_stream): Adjust code.
  4898. (GOMP_OFFLOAD_openacc_cuda_set_stream): Adjust code.
  4899. (GOMP_OFFLOAD_openacc_async_construct): New plugin hook function.
  4900. (GOMP_OFFLOAD_openacc_async_destruct): New plugin hook function.
  4901. (GOMP_OFFLOAD_openacc_async_test): Remove and re-implement.
  4902. (GOMP_OFFLOAD_openacc_async_synchronize): New plugin hook function.
  4903. (GOMP_OFFLOAD_openacc_async_serialize): New plugin hook function.
  4904. (GOMP_OFFLOAD_openacc_async_queue_callback): New plugin hook function.
  4905. (cuda_callback_wrapper): New function.
  4906. (cuda_memcpy_sanity_check): New function.
  4907. (GOMP_OFFLOAD_host2dev): Remove and re-implement.
  4908. (GOMP_OFFLOAD_dev2host): Remove and re-implement.
  4909. (GOMP_OFFLOAD_openacc_async_host2dev): New plugin hook function.
  4910. (GOMP_OFFLOAD_openacc_async_dev2host): New plugin hook function.
  4911. 2019-05-07 Thomas Schwinge <thomas@codesourcery.com>
  4912. PR target/87835
  4913. * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Update.
  4914. 2019-05-06 Thomas Schwinge <thomas@codesourcery.com>
  4915. * oacc-parallel.c: Add comments to legacy entry points (GCC 5).
  4916. 2019-03-27 Kevin Buettner <kevinb@redhat.com>
  4917. * team.c (gomp_team_start): Initialize pool->threads[0].
  4918. 2019-02-22 Thomas Schwinge <thomas@codesourcery.com>
  4919. * testsuite/libgomp.oacc-c++/c++.exp: Specify
  4920. "-foffload=$offload_target".
  4921. * testsuite/libgomp.oacc-c/c.exp: Likewise.
  4922. * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
  4923. * testsuite/lib/libgomp.exp
  4924. (check_effective_target_openacc_nvidia_accel_configured): Remove,
  4925. as (conceptually) merged into
  4926. check_effective_target_openacc_nvidia_accel_selected. Adjust all
  4927. users.
  4928. * plugin/configfrag.ac: Populate and AC_SUBST offload_targets.
  4929. * testsuite/libgomp-test-support.exp.in: Adjust.
  4930. * testsuite/lib/libgomp.exp: Likewise. Don't populate
  4931. openacc_device_types_s.
  4932. (offload_target_to_openacc_device_type): New proc.
  4933. * testsuite/libgomp.oacc-c++/c++.exp: Adjust.
  4934. * testsuite/libgomp.oacc-c/c.exp: Likewise.
  4935. * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
  4936. * Makefile.in: Regenerate.
  4937. * configure: Likewise.
  4938. * testsuite/Makefile.in: Likewise.
  4939. * plugin/configfrag.ac: Populate and AC_SUBST offload_plugins
  4940. instead of offload_targets, and AC_DEFINE_UNQUOTED OFFLOAD_PLUGINS
  4941. instead of OFFLOAD_TARGETS.
  4942. * target.c (gomp_target_init): Adjust.
  4943. * testsuite/libgomp-test-support.exp.in: Likewise.
  4944. * testsuite/lib/libgomp.exp: Likewise. Populate
  4945. openacc_device_types_s instead of offload_targets_s_openacc.
  4946. (check_effective_target_openacc_nvidia_accel_selected)
  4947. (check_effective_target_openacc_host_selected): Adjust.
  4948. * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
  4949. * testsuite/libgomp.oacc-c/c.exp: Likewise.
  4950. * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
  4951. * Makefile.in: Regenerate.
  4952. * config.h.in: Likewise.
  4953. * configure: Likewise.
  4954. * testsuite/Makefile.in: Likewise.
  4955. * testsuite/lib/libgomp.exp: Error out for unknown offload target.
  4956. * testsuite/libgomp.oacc-c++/c++.exp: Likewise. Report if
  4957. "offloading: supported, but hardware not accessible".
  4958. * testsuite/libgomp.oacc-c/c.exp: Likewise.
  4959. * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
  4960. 2019-02-19 Chung-Lin Tang <cltang@codesourcery.com>
  4961. PR c/87924
  4962. * oacc-parallel.c (GOACC_parallel_keyed): Remove condition on call to
  4963. goacc_wait().
  4964. (goacc_wait): Handle ACC_ASYNC_NOVAL case, remove goacc_thread() call
  4965. and related adjustment.
  4966. 2019-01-30 Jakub Jelinek <jakub@redhat.com>
  4967. PR c++/88988
  4968. * testsuite/libgomp.c++/pr88988.C: New test.
  4969. 2019-01-28 Jakub Jelinek <jakub@redhat.com>
  4970. PR middle-end/89002
  4971. * testsuite/libgomp.c/pr89002.c: New test.
  4972. 2019-01-28 Richard Biener <rguenther@suse.de>
  4973. PR testsuite/89064
  4974. PR tree-optimization/86865
  4975. * testsuite/libgomp.graphite/force-parallel-5.c: XFAIL.
  4976. 2019-01-24 Tom de Vries <tdevries@suse.de>
  4977. * plugin/plugin-nvptx.c (GOMP_OFFLOAD_fini_device): Free ptx_devices
  4978. once instantiated_devices drops to 0.
  4979. 2019-01-23 Tom de Vries <tdevries@suse.de>
  4980. PR target/PR88946
  4981. * plugin/plugin-nvptx.c (cuda_map_destroy): Use CUDA_CALL_NOCHECK for
  4982. cuMemFree.
  4983. (nvptx_exec): Don't call map_push if mapnum == 0.
  4984. * testsuite/libgomp.oacc-c-c++-common/pr88946.c: New test.
  4985. 2019-01-23 Tom de Vries <tdevries@suse.de>
  4986. PR target/88941
  4987. PR target/88939
  4988. * plugin/plugin-nvptx.c (cuda_map_destroy): Handle map->active case.
  4989. (map_fini): Remove "assert (!s->map->active)".
  4990. * testsuite/libgomp.oacc-c-c++-common/pr88941.c: New test.
  4991. 2019-01-23 Tom de Vries <tdevries@suse.de>
  4992. PR target/87835
  4993. * plugin/plugin-nvptx.c (map_push): Fix adding of allocated element.
  4994. * testsuite/libgomp.oacc-c-c++-common/pr87835.c: New test.
  4995. 2019-01-15 Tom de Vries <tdevries@suse.de>
  4996. PR target/80547
  4997. * testsuite/libgomp.oacc-c-c++-common/gang-reduction-var-assignment.c:
  4998. New test.
  4999. 2019-01-12 Tom de Vries <tdevries@suse.de>
  5000. * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: New test.
  5001. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c: New test.
  5002. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c: New test.
  5003. * testsuite/libgomp.oacc-fortran/gemm-2.f90: New test.
  5004. 2019-01-12 Tom de Vries <tdevries@suse.de>
  5005. * plugin/plugin-nvptx.c (nvptx_exec): Update error message.
  5006. 2019-01-12 Tom de Vries <tdevries@suse.de>
  5007. * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: New test.
  5008. * testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c: New test.
  5009. * testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c: New test.
  5010. 2019-01-12 Tom de Vries <tdevries@suse.de>
  5011. PR target/85486
  5012. * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: New test.
  5013. * testsuite/libgomp.oacc-c-c++-common/pr85486.c: New test.
  5014. 2019-01-12 Tom de Vries <tdevries@suse.de>
  5015. PR target/85381
  5016. * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: New test.
  5017. * testsuite/libgomp.oacc-c-c++-common/pr85381.c: New test.
  5018. 2019-01-12 Tom de Vries <tdevries@suse.de>
  5019. * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: New test.
  5020. * testsuite/libgomp.oacc-fortran/gemm.f90: New test.
  5021. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-10.c: New test.
  5022. 2019-01-12 Tom de Vries <tdevries@suse.de>
  5023. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: New test.
  5024. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c: New test.
  5025. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c: New test.
  5026. 2019-01-12 Tom de Vries <tdevries@suse.de>
  5027. * plugin/plugin-nvptx.c (nvptx_exec): Update insufficient hardware
  5028. resources diagnostic.
  5029. 2019-01-12 Tom de Vries <tdevries@suse.de>
  5030. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: Expect
  5031. vector length to be 128.
  5032. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Expect vector
  5033. length 2097152 to be reduced to 1024 instead of 32.
  5034. 2019-01-11 Thomas Schwinge <thomas@codesourcery.com>
  5035. James Norris <jnorris@codesourcery.com>
  5036. * libgomp.texi: Better distinguish OpenACC and OpenMP "Runtime
  5037. Library Routines", and "Environment Variables".
  5038. 2019-01-11 Tom de Vries <tdevries@suse.de>
  5039. * plugin/plugin-nvptx.c (nvptx_exec): Prevent vector_length 64 and
  5040. num_workers 16.
  5041. 2019-01-11 Tom de Vries <tdevries@suse.de>
  5042. * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Remove
  5043. -foffload=-w.
  5044. * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Same.
  5045. * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Same.
  5046. * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Same.
  5047. * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Same.
  5048. 2019-01-11 Tom de Vries <tdevries@suse.de>
  5049. * testsuite/libgomp.oacc-c-c++-common/insufficient-resources.c: New
  5050. test.
  5051. 2019-01-10 Nathan Sidwell <nathan@acm.org>
  5052. Julian Brown <julian@codesourcery.com>
  5053. PR lto/71959
  5054. * testsuite/libgomp.oacc-c++/pr71959-aux.cc: New.
  5055. * testsuite/libgomp.oacc-c++/pr71959.C: New.
  5056. 2019-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
  5057. * config/rtems/bar.c: Include "../linux/bar.c" and delete copy
  5058. and paste code.
  5059. 2019-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
  5060. * config/rtems/affinity-fmt.c: New file. Include affinity-fmt.c,
  5061. undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
  5062. write.
  5063. 2019-01-09 Tom de Vries <tdevries@suse.de>
  5064. PR target/88756
  5065. * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (ng, nw, vl): Use
  5066. #define instead of "const int".
  5067. * testsuite/libgomp.oacc-c-c++-common/reduction-2.c (ng, nw, vl): Same.
  5068. * testsuite/libgomp.oacc-c-c++-common/reduction-3.c (ng, nw, vl): Same.
  5069. * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (ng, nw, vl): Same.
  5070. * testsuite/libgomp.oacc-c-c++-common/reduction-5.c (ng, nw, vl): Same.
  5071. 2019-01-09 Tom de Vries <tdevries@suse.de>
  5072. * plugin/plugin-nvptx.c (nvptx_exec): Make sure to launch with at least
  5073. one worker.
  5074. 2019-01-07 Tom de Vries <tdevries@suse.de>
  5075. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: Fix
  5076. GOMP_OPENACC_DIM argument.
  5077. 2019-01-03 Tom de Vries <tdevries@suse.de>
  5078. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: New test.
  5079. * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: New test.
  5080. 2019-01-01 Jakub Jelinek <jakub@redhat.com>
  5081. Update copyright years.
  5082. 2019-01-01 Jakub Jelinek <jakub@redhat.com>
  5083. * libgomp.texi: Bump @copying's copyright year.
  5084. 2018-12-28 Thomas Schwinge <thomas@codesourcery.com>
  5085. * oacc-parallel.c (GOACC_parallel_keyed, GOACC_parallel)
  5086. (GOACC_data_start, GOACC_enter_exit_data, GOACC_update)
  5087. (GOACC_declare): Redefine the "device" argument to "flags".
  5088. 2018-12-28 Thomas Schwinge <thomas@codesourcery.com>
  5089. Cesar Philippidis <cesar@codesourcery.com>
  5090. * target.c (struct gomp_coalesce_chunk): New structure.
  5091. (struct gomp_coalesce_buf): Update the chunks member to use that
  5092. type. Adjust all users.
  5093. 2018-12-19 Tom de Vries <tdevries@suse.de>
  5094. * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: New test.
  5095. * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: New test.
  5096. * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: New test.
  5097. 2018-12-19 Tom de Vries <tdevries@suse.de>
  5098. * testsuite/lib/libgomp.exp: Add load_lib of scanoffloadrtl.exp.
  5099. * testsuite/libgomp.oacc-c-c++-common/nvptx-merged-loop.c: Move from
  5100. gcc/testsuite/gcc.dg/goacc.
  5101. * testsuite/libgomp.oacc-c-c++-common/nvptx-sese-1.c: Same.
  5102. 2018-12-14 Thomas Schwinge <thomas@codesourcery.com>
  5103. Chung-Lin Tang <cltang@codesourcery.com>
  5104. * oacc-mem.c (acc_present_or_create): Remove definition and change
  5105. to alias of acc_create.
  5106. (acc_present_or_copyin): Remove definition and change to alias of
  5107. acc_copyin.
  5108. * oacc-parallel.c (GOACC_enter_exit_data): Call acc_create instead
  5109. of acc_present_or_create.
  5110. * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Remove.
  5111. * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
  5112. * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
  5113. * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
  5114. * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
  5115. * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
  5116. * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
  5117. * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
  5118. * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
  5119. * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
  5120. * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
  5121. * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
  5122. * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
  5123. * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
  5124. * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
  5125. * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
  5126. 2018-12-14 Thomas Schwinge <thomas@codesourcery.com>
  5127. PR libgomp/88495
  5128. * plugin/plugin-nvptx.c (nvptx_wait_async): Don't refuse
  5129. "identical parameters".
  5130. * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Update.
  5131. * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Remove.
  5132. PR libgomp/88484
  5133. * oacc-parallel.c (GOACC_wait): Correct handling for "async >= 0".
  5134. * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: New file.
  5135. PR libgomp/88407
  5136. * plugin/plugin-nvptx.c (nvptx_async_test, nvptx_wait)
  5137. (nvptx_wait_async): Unseen async-argument is a no-op.
  5138. * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Update.
  5139. * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Likewise.
  5140. * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
  5141. * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
  5142. * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
  5143. * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Merge into...
  5144. * testsuite/libgomp.oacc-c-c++-common/lib-69.c: ... this. Update.
  5145. * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Merge into...
  5146. * testsuite/libgomp.oacc-c-c++-common/lib-74.c: ... this. Update
  5147. * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Revise.
  5148. * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
  5149. 2018-12-14 Chung-Lin Tang <cltang@codesourcery.com>
  5150. * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Adjust.
  5151. * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
  5152. * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
  5153. 2018-12-14 Thomas Schwinge <thomas@codesourcery.com>
  5154. PR libgomp/88370
  5155. * libgomp.texi (acc_get_current_cuda_context, acc_get_cuda_stream)
  5156. (acc_set_cuda_stream): Clarify.
  5157. * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
  5158. "async_valid_p".
  5159. * plugin/plugin-nvptx.c (nvptx_set_cuda_stream): Refuse "async ==
  5160. acc_async_sync".
  5161. * testsuite/libgomp.oacc-c-c++-common/acc_set_cuda_stream-1.c: New file.
  5162. * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Likewise.
  5163. * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Update.
  5164. * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
  5165. 2018-12-14 Tom de Vries <tdevries@suse.de>
  5166. * testsuite/libgomp.c-c++-common/function-not-offloaded-aux.c: New test.
  5167. * testsuite/libgomp.c-c++-common/function-not-offloaded.c: New test.
  5168. * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: New test.
  5169. * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c: New test.
  5170. * testsuite/libgomp.oacc-c-c++-common/variable-not-offloaded.c: New test.
  5171. 2018-12-13 Tom de Vries <tdevries@suse.de>
  5172. * affinity-fmt.c (gomp_print_string): New function, factored out of ...
  5173. (omp_display_affinity, gomp_display_affinity_thread): ... here, and ...
  5174. * fortran.c (omp_display_affinity_): ... here.
  5175. * libgomp.h (gomp_print_string): Declare.
  5176. * config/nvptx/affinity-fmt.c: New file. Include affinity-fmt.c,
  5177. undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
  5178. write.
  5179. 2018-12-13 Jakub Jelinek <jakub@redhat.com>
  5180. PR libgomp/88460
  5181. * testsuite/libgomp.c++/for-24.C (results): Include it in
  5182. omp declare target region.
  5183. (main): Use map (always, tofrom: results) instead of
  5184. map (tofrom: results).
  5185. 2018-12-12 Jakub Jelinek <jakub@redhat.com>
  5186. PR fortran/88463
  5187. * testsuite/libgomp.fortran/pr88463-1.f90: New test.
  5188. * testsuite/libgomp.fortran/pr88463-2.f90: New test.
  5189. * testsuite/libgomp.c-c++-common/for-16.c: New test.
  5190. 2018-12-12 Andreas Schwab <schwab@suse.de>
  5191. * config/linux/ia64/futex.h (sys_futex0): Don't mark r12 as
  5192. clobbered.
  5193. 2018-12-09 Thomas Koenig <tkoenig@gcc.gnu.org>
  5194. PR fortran/88411
  5195. * testsuite/libgomp.fortran/async_io_8.f90: New test.
  5196. 2018-12-09 Thomas Schwinge <thomas@codesourcery.com>
  5197. Jakub Jelinek <jakub@redhat.com>
  5198. * target.c (gomp_map_vars): Call gomp_copy_host2dev instead of
  5199. devicep->host2dev_func.
  5200. 2018-12-08 Jakub Jelinek <jakub@redhat.com>
  5201. PR libgomp/87995
  5202. * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: Require
  5203. tls_runtime effective target.
  5204. (t): New threadprivate variable.
  5205. (main): Set t in threads which execute iterations of the worksharing
  5206. loop. Propagate that to the task after the loop and don't abort
  5207. if the current taskgroup hasn't been cancelled.
  5208. 2018-12-02 Jakub Jelinek <jakub@redhat.com>
  5209. * testsuite/libgomp.c/task-reduction-3.c: New test.
  5210. * testsuite/libgomp.c-c++-common/cancel-taskgroup-4.c: New test.
  5211. 2018-11-30 Cesar Philippidis <cesar@codesourcery.com>
  5212. PR libgomp/88288
  5213. * oacc-parallel.c (GOACC_parallel_keyed): Add offset to devaddrs.
  5214. * testsuite/libgomp.oacc-c-c++-common/pr88288.c: New test.
  5215. 2018-11-30 Thomas Schwinge <thomas@codesourcery.com>
  5216. * testsuite/libgomp.oacc-fortran/lib-16-2.f90: New file.
  5217. 2018-10-19 Richard Biener <rguenther@suse.de>
  5218. PR tree-optimization/88182
  5219. * testsuite/libgomp.c++/pr88182.C: Move to g++.dg/gomp.
  5220. 2018-11-26 Jakub Jelinek <jakub@redhat.com>
  5221. * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Drop dejagnu.
  5222. (RUNTEST): Don't define.
  5223. (RUNTESTDEFAULTFLAGS): Add.
  5224. (check-DEJAGNU, site.exp, distclean-DEJAGNU): New goals.
  5225. (distclean-am): Depend on distclean-DEJAGNU.
  5226. (check-am): If -j% option is present in MFLAGS and if
  5227. `getconf _NPROCESSORS_ONLN` is more than 8, export OMP_NUM_THREADS=8.
  5228. (.PHONY): Add check-DEJAGNU and distclean-DEJAGNU.
  5229. * testsuite/Makefile.in: Regenerated.
  5230. 2018-11-26 Richard Biener <rguenther@suse.de>
  5231. PR tree-optimization/88182
  5232. * testsuite/libgomp.c++/pr88182.C: New testcase.
  5233. 2018-11-20 Jakub Jelinek <jakub@redhat.com>
  5234. PR bootstrap/88106
  5235. * config/mingw32/affinity-fmt.c: New file.
  5236. 2018-11-09 Jakub Jelinek <jakub@redhat.com>
  5237. * affinity-fmt.c: Include inttypes.h if HAVE_INTTYPES_H.
  5238. (gomp_display_affinity): Use __builtin_choose_expr to handle
  5239. properly handle argument having integral, or pointer or some other
  5240. type. If inttypes.h is available and PRIx64 is defined, use PRIx64
  5241. with uint64_t type instead of %llx and unsigned long long.
  5242. * testsuite/libgomp.c-c++-common/task-reduction-13.c: New test.
  5243. * testsuite/libgomp.c-c++-common/task-reduction-14.c: New test.
  5244. 2018-11-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  5245. * affinity.c: Include <string.h>, <stdio.h>.
  5246. (gomp_display_affinity_place): Remove cpusetp.
  5247. * teams.c: Include <limits.h>.
  5248. 2018-11-08 Jakub Jelinek <jakub@redhat.com>
  5249. * testsuite/libgomp.c-c++-common/task-reduction-8.c (bar): Add
  5250. in_reduction clause for s[0].
  5251. * affinity.c (gomp_display_affinity_place): New function.
  5252. * affinity-fmt.c: New file.
  5253. * alloc.c (gomp_aligned_alloc, gomp_aligned_free): New functions.
  5254. * config/linux/affinity.c (gomp_display_affinity_place): New function.
  5255. * config/nvptx/icv-device.c (omp_get_num_teams, omp_get_team_num):
  5256. Move these functions to ...
  5257. * config/nvptx/teams.c: ... here. New file.
  5258. * config/nvptx/target.c (omp_pause_resource, omp_pause_resource_all):
  5259. New functions.
  5260. * config/nvptx/team.c (gomp_team_start, gomp_pause_host): New
  5261. functions.
  5262. * configure.ac: Check for aligned_alloc, posix_memalign, memalign
  5263. and _aligned_malloc.
  5264. (HAVE_UNAME, HAVE_GETHOSTNAME, HAVE_GETPID): Add new tests.
  5265. * configure.tgt: Add -DUSING_INITIAL_EXEC_TLS to XCFLAGS for Linux.
  5266. * env.c (gomp_display_affinity_var, gomp_affinity_format_var,
  5267. gomp_affinity_format_len): New variables.
  5268. (parse_schedule): Parse monotonic and nonmonotonic modifiers in
  5269. OMP_SCHEDULE variable. Set GFS_MONOTONIC for monotonic schedules.
  5270. (handle_omp_display_env): Display monotonic/nonmonotonic schedule
  5271. modifiers. Display (non-default) chunk sizes. Print
  5272. OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT.
  5273. (initialize_env): Don't call pthread_attr_setdetachstate. Handle
  5274. OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT env vars.
  5275. * fortran.c: Include stdio.h and string.h.
  5276. (omp_pause_resource, omp_pause_resource_all): Add ialias_redirect.
  5277. (omp_get_schedule_, omp_get_schedule_8_): Mask off GFS_MONOTONIC bit.
  5278. (omp_set_affinity_format_, omp_get_affinity_format_,
  5279. omp_display_affinity_, omp_capture_affinity_, omp_pause_resource_,
  5280. omp_pause_resource_all_): New functions.
  5281. * icv.c (omp_set_schedule): Mask off omp_sched_monotonic bit in
  5282. switch.
  5283. * icv-device.c (omp_get_num_teams, omp_get_team_num): Move these
  5284. functions to ...
  5285. * teams.c: ... here. New file.
  5286. * libgomp_g.h: Include gstdint.h.
  5287. (GOMP_loop_nonmonotonic_runtime_start,
  5288. GOMP_loop_maybe_nonmonotonic_runtime_start, GOMP_loop_start,
  5289. GOMP_loop_ordered_start, GOMP_loop_nonmonotonic_runtime_next,
  5290. GOMP_loop_maybe_nonmonotonic_runtime_next, GOMP_loop_doacross_start,
  5291. GOMP_parallel_loop_nonmonotonic_runtime,
  5292. GOMP_parallel_loop_maybe_nonmonotonic_runtime,
  5293. GOMP_loop_ull_nonmonotonic_runtime_start,
  5294. GOMP_loop_ull_maybe_nonmonotonic_runtime_start, GOMP_loop_ull_start,
  5295. GOMP_loop_ull_ordered_start, GOMP_loop_ull_nonmonotonic_runtime_next,
  5296. GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
  5297. GOMP_loop_ull_doacross_start, GOMP_parallel_reductions,
  5298. GOMP_taskwait_depend, GOMP_taskgroup_reduction_register,
  5299. GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
  5300. GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
  5301. GOMP_teams_reg): Declare.
  5302. * libgomp.h (GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC): Define unless
  5303. gomp_aligned_alloc uses fallback implementation.
  5304. (gomp_aligned_alloc, gomp_aligned_free): Declare.
  5305. (enum gomp_schedule_type): Add GFS_MONOTONIC.
  5306. (struct gomp_doacross_work_share): Add extra field.
  5307. (struct gomp_work_share): Add task_reductions field.
  5308. (struct gomp_taskgroup): Add workshare and reductions fields.
  5309. (GOMP_NEEDS_THREAD_HANDLE): Define if needed.
  5310. (gomp_thread_handle): New typedef.
  5311. (gomp_display_affinity_place, gomp_set_affinity_format,
  5312. gomp_display_string, gomp_display_affinity,
  5313. gomp_display_affinity_thread): Declare.
  5314. (gomp_doacross_init, gomp_doacross_ull_init): Add size_t argument.
  5315. (gomp_parallel_reduction_register, gomp_workshare_taskgroup_start,
  5316. gomp_workshare_task_reduction_register): Declare.
  5317. (gomp_team_start): Add taskgroup argument.
  5318. (gomp_pause_host): Declare.
  5319. (gomp_init_work_share, gomp_work_share_start): Change bool argument
  5320. to size_t.
  5321. (gomp_thread_self, gomp_thread_to_pthread_t): New inline functions.
  5322. * libgomp.map (GOMP_5.0): Export GOMP_loop_start,
  5323. GOMP_loop_ordered_start, GOMP_loop_doacross_start,
  5324. GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
  5325. GOMP_loop_ull_doacross_start,
  5326. GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
  5327. GOMP_loop_maybe_nonmonotonic_runtime_next,
  5328. GOMP_loop_maybe_nonmonotonic_runtime_start,
  5329. GOMP_loop_nonmonotonic_runtime_next,
  5330. GOMP_loop_nonmonotonic_runtime_start,
  5331. GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
  5332. GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
  5333. GOMP_loop_ull_nonmonotonic_runtime_next,
  5334. GOMP_loop_ull_nonmonotonic_runtime_start,
  5335. GOMP_parallel_loop_maybe_nonmonotonic_runtime,
  5336. GOMP_parallel_loop_nonmonotonic_runtime, GOMP_parallel_reductions,
  5337. GOMP_taskgroup_reduction_register,
  5338. GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
  5339. GOMP_teams_reg and GOMP_taskwait_depend.
  5340. (OMP_5.0): Export omp_pause_resource{,_all}{,_},
  5341. omp_{capture,display}_affinity{,_}, and
  5342. omp_[gs]et_affinity_format{,_}.
  5343. * loop.c: Include string.h.
  5344. (GOMP_loop_runtime_next): Add ialias.
  5345. (GOMP_taskgroup_reduction_register): Add ialias_redirect.
  5346. (gomp_loop_static_start, gomp_loop_dynamic_start,
  5347. gomp_loop_guided_start, gomp_loop_ordered_static_start,
  5348. gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
  5349. gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
  5350. gomp_loop_doacross_guided_start): Adjust gomp_work_share_start
  5351. or gomp_doacross_init callers.
  5352. (gomp_adjust_sched, GOMP_loop_start, GOMP_loop_ordered_start,
  5353. GOMP_loop_doacross_start): New functions.
  5354. (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
  5355. GOMP_loop_doacross_runtime_start, GOMP_parallel_loop_runtime_start):
  5356. Mask off GFS_MONOTONIC bit.
  5357. (GOMP_loop_maybe_nonmonotonic_runtime_next,
  5358. GOMP_loop_maybe_nonmonotonic_runtime_start,
  5359. GOMP_loop_nonmonotonic_runtime_next,
  5360. GOMP_loop_nonmonotonic_runtime_start,
  5361. GOMP_parallel_loop_maybe_nonmonotonic_runtime,
  5362. GOMP_parallel_loop_nonmonotonic_runtime): New aliases or wrapper
  5363. functions.
  5364. (gomp_parallel_loop_start): Pass NULL as taskgroup to
  5365. gomp_team_start.
  5366. * loop_ull.c: Include string.h.
  5367. (GOMP_loop_ull_runtime_next): Add ialias.
  5368. (GOMP_taskgroup_reduction_register): Add ialias_redirect.
  5369. (gomp_loop_ull_static_start, gomp_loop_ull_dynamic_start,
  5370. gomp_loop_ull_guided_start, gomp_loop_ull_ordered_static_start,
  5371. gomp_loop_ull_ordered_dynamic_start,
  5372. gomp_loop_ull_ordered_guided_start,
  5373. gomp_loop_ull_doacross_static_start,
  5374. gomp_loop_ull_doacross_dynamic_start,
  5375. gomp_loop_ull_doacross_guided_start): Adjust gomp_work_share_start
  5376. and gomp_doacross_ull_init callers.
  5377. (gomp_adjust_sched, GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
  5378. GOMP_loop_ull_doacross_start): New functions.
  5379. (GOMP_loop_ull_runtime_start,
  5380. GOMP_loop_ull_ordered_runtime_start,
  5381. GOMP_loop_ull_doacross_runtime_start): Mask off GFS_MONOTONIC bit.
  5382. (GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
  5383. GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
  5384. GOMP_loop_ull_nonmonotonic_runtime_next,
  5385. GOMP_loop_ull_nonmonotonic_runtime_start): Likewise.
  5386. * Makefile.am (libgomp_la_SOURCES): Add teams.c and affinity-fmt.c.
  5387. * omp.h.in (enum omp_sched_t): Add omp_sched_monotonic.
  5388. (omp_pause_resource_t, omp_depend_t): New typedefs.
  5389. (enum omp_lock_hint_t): Renamed to ...
  5390. (enum omp_sync_hint_t): ... this. Define omp_sync_hint_*
  5391. enumerators using numbers and omp_lock_hint_* as their aliases.
  5392. (omp_lock_hint_t): New typedef. Rename to ...
  5393. (omp_sync_hint_t): ... this.
  5394. (omp_init_lock_with_hint, omp_init_nest_lock_with_hint): Use
  5395. omp_sync_hint_t instead of omp_lock_hint_t.
  5396. (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
  5397. omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
  5398. Declare.
  5399. (omp_target_is_present, omp_target_disassociate_ptr):
  5400. Change first argument from void * to const void *.
  5401. (omp_target_memcpy, omp_target_memcpy_rect): Change second argument
  5402. from void * to const void *.
  5403. (omp_target_associate_ptr): Change first and second arguments from
  5404. void * to const void *.
  5405. * omp_lib.f90.in (omp_pause_resource_kind, omp_pause_soft,
  5406. omp_pause_hard): New parameters.
  5407. (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
  5408. omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
  5409. New interfaces.
  5410. * omp_lib.h.in (omp_pause_resource_kind, omp_pause_soft,
  5411. omp_pause_hard): New parameters.
  5412. (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
  5413. omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
  5414. New externals.
  5415. * ordered.c (gomp_doacross_init, gomp_doacross_ull_init): Add
  5416. EXTRA argument. If not needed to prepare array, if extra is 0,
  5417. clear ws->doacross, otherwise allocate just doacross structure and
  5418. extra payload. If array is needed, allocate also extra payload.
  5419. (GOMP_doacross_post, GOMP_doacross_wait, GOMP_doacross_ull_post,
  5420. GOMP_doacross_ull_wait): Handle doacross->array == NULL like
  5421. doacross == NULL.
  5422. * parallel.c (GOMP_parallel_start): Pass NULL as taskgroup to
  5423. gomp_team_start.
  5424. (GOMP_parallel): Likewise. Formatting fix.
  5425. (GOMP_parallel_reductions): New function.
  5426. (GOMP_cancellation_point): If taskgroup has workshare
  5427. flag set, check cancelled of prev taskgroup if any.
  5428. (GOMP_cancel): If taskgroup has workshare flag set, set cancelled
  5429. on prev taskgroup if any.
  5430. * sections.c: Include string.h.
  5431. (GOMP_taskgroup_reduction_register): Add ialias_redirect.
  5432. (GOMP_sections_start): Adjust gomp_work_share_start caller.
  5433. (GOMP_sections2_start): New function.
  5434. (GOMP_parallel_sections_start, GOMP_parallel_sections):
  5435. Pass NULL as taskgroup to gomp_team_start.
  5436. * single.c (GOMP_single_start, GOMP_single_copy_start): Adjust
  5437. gomp_work_share_start callers.
  5438. * target.c (GOMP_target_update_ext, GOMP_target_enter_exit_data):
  5439. If taskgroup has workshare flag set, check cancelled on prev
  5440. taskgroup if any. Guard all cancellation tests with
  5441. gomp_cancel_var test.
  5442. (omp_target_is_present, omp_target_disassociate_ptr):
  5443. Change ptr argument from void * to const void *.
  5444. (omp_target_memcpy): Change src argument from void * to const void *.
  5445. (omp_target_memcpy_rect): Likewise.
  5446. (omp_target_memcpy_rect_worker): Likewise. Use const char * casts
  5447. instead of char * where needed.
  5448. (omp_target_associate_ptr): Change host_ptr and device_ptr arguments
  5449. from void * to const void *.
  5450. (omp_pause_resource, omp_pause_resource_all): New functions.
  5451. * task.c (gomp_task_handle_depend): Handle new depend array format
  5452. in addition to the old. Handle mutexinoutset kinds the same as
  5453. inout for now, handle unspecified kinds.
  5454. (gomp_create_target_task): If taskgroup has workshare flag set, check
  5455. cancelled on prev taskgroup if any. Guard all cancellation tests with
  5456. gomp_cancel_var test. Handle new depend array format count in
  5457. addition to the old.
  5458. (GOMP_task): Likewise. Adjust function comment.
  5459. (gomp_task_run_pre): If taskgroup has workshare flag set, check
  5460. cancelled on prev taskgroup if any. Guard all cancellation tests with
  5461. gomp_cancel_var test.
  5462. (GOMP_taskwait_depend): New function.
  5463. (gomp_task_maybe_wait_for_dependencies): Handle new depend array
  5464. format in addition to the old. Handle mutexinoutset kinds the same as
  5465. inout for now, handle unspecified kinds. Fix a function comment typo.
  5466. (gomp_taskgroup_init): New function.
  5467. (GOMP_taskgroup_start): Use it.
  5468. (gomp_reduction_register, gomp_create_artificial_team,
  5469. GOMP_taskgroup_reduction_register,
  5470. GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
  5471. gomp_parallel_reduction_register,
  5472. gomp_workshare_task_reduction_register,
  5473. gomp_workshare_taskgroup_start,
  5474. GOMP_workshare_task_reduction_unregister): New functions.
  5475. * taskloop.c (GOMP_taskloop): If taskgroup has workshare flag set,
  5476. check cancelled on prev taskgroup if any. Guard all cancellation
  5477. tests with gomp_cancel_var test. Handle GOMP_TASK_FLAG_REDUCTION flag
  5478. by calling GOMP_taskgroup_reduction_register.
  5479. * team.c (gomp_thread_attr): Remove comment.
  5480. (struct gomp_thread_start_data): Add handle field.
  5481. (gomp_thread_start): Call pthread_detach.
  5482. (gomp_new_team): Adjust gomp_init_work_share caller.
  5483. (gomp_free_pool_helper): Call pthread_detach.
  5484. (gomp_team_start): Add taskgroup argument, initialize implicit
  5485. tasks' taskgroup field to that. Don't call
  5486. pthread_attr_setdetachstate. Handle OMP_DISPLAY_AFFINITY env var.
  5487. (gomp_team_end): Determine nesting by thr->ts.level != 0
  5488. rather than thr->ts.team != NULL.
  5489. (gomp_pause_pool_helper, gomp_pause_host): New functions.
  5490. * work.c (alloc_work_share): Use gomp_aligned_alloc instead of
  5491. gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined.
  5492. (gomp_init_work_share): Change ORDERED argument from bool to size_t,
  5493. if more than 1 allocate also extra payload at the end of array. Never
  5494. keep ordered_team_ids NULL, set it to inline_ordered_team_ids instead.
  5495. (gomp_work_share_start): Change ORDERED argument from bool to size_t,
  5496. return true instead of ws.
  5497. * Makefile.in: Regenerated.
  5498. * configure: Regenerated.
  5499. * config.h.in: Regenerated.
  5500. * testsuite/libgomp.c/cancel-for-2.c (foo): Use cancel modifier
  5501. in some cases.
  5502. * testsuite/libgomp.c-c++-common/cancel-parallel-1.c: New test.
  5503. * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: New test.
  5504. * testsuite/libgomp.c-c++-common/depend-iterator-1.c: New test.
  5505. * testsuite/libgomp.c-c++-common/depend-iterator-2.c: New test.
  5506. * testsuite/libgomp.c-c++-common/depend-mutexinout-1.c: New test.
  5507. * testsuite/libgomp.c-c++-common/depend-mutexinout-2.c: New test.
  5508. * testsuite/libgomp.c-c++-common/depobj-1.c: New test.
  5509. * testsuite/libgomp.c-c++-common/display-affinity-1.c: New test.
  5510. * testsuite/libgomp.c-c++-common/for-10.c: New test.
  5511. * testsuite/libgomp.c-c++-common/for-11.c: New test.
  5512. * testsuite/libgomp.c-c++-common/for-12.c: New test.
  5513. * testsuite/libgomp.c-c++-common/for-13.c: New test.
  5514. * testsuite/libgomp.c-c++-common/for-14.c: New test.
  5515. * testsuite/libgomp.c-c++-common/for-15.c: New test.
  5516. * testsuite/libgomp.c-c++-common/for-2.h: If CONDNE macro is defined,
  5517. define a different N(test), don't define N(f0) to N(f14), but instead
  5518. define N(f20) to N(f34) using != comparisons.
  5519. * testsuite/libgomp.c-c++-common/for-7.c: New test.
  5520. * testsuite/libgomp.c-c++-common/for-8.c: New test.
  5521. * testsuite/libgomp.c-c++-common/for-9.c: New test.
  5522. * testsuite/libgomp.c-c++-common/master-combined-1.c: New test.
  5523. * testsuite/libgomp.c-c++-common/pause-1.c: New test.
  5524. * testsuite/libgomp.c-c++-common/pause-2.c: New test.
  5525. * testsuite/libgomp.c-c++-common/pr66199-10.c: New test.
  5526. * testsuite/libgomp.c-c++-common/pr66199-11.c: New test.
  5527. * testsuite/libgomp.c-c++-common/pr66199-12.c: New test.
  5528. * testsuite/libgomp.c-c++-common/pr66199-13.c: New test.
  5529. * testsuite/libgomp.c-c++-common/pr66199-14.c: New test.
  5530. * testsuite/libgomp.c-c++-common/simd-1.c: New test.
  5531. * testsuite/libgomp.c-c++-common/taskloop-reduction-1.c: New test.
  5532. * testsuite/libgomp.c-c++-common/taskloop-reduction-2.c: New test.
  5533. * testsuite/libgomp.c-c++-common/taskloop-reduction-3.c: New test.
  5534. * testsuite/libgomp.c-c++-common/taskloop-reduction-4.c: New test.
  5535. * testsuite/libgomp.c-c++-common/task-reduction-11.c: New test.
  5536. * testsuite/libgomp.c-c++-common/task-reduction-12.c: New test.
  5537. * testsuite/libgomp.c-c++-common/task-reduction-1.c: New test.
  5538. * testsuite/libgomp.c-c++-common/task-reduction-2.c: New test.
  5539. * testsuite/libgomp.c-c++-common/task-reduction-3.c: New test.
  5540. * testsuite/libgomp.c-c++-common/task-reduction-4.c: New test.
  5541. * testsuite/libgomp.c-c++-common/task-reduction-5.c: New test.
  5542. * testsuite/libgomp.c-c++-common/task-reduction-6.c: New test.
  5543. * testsuite/libgomp.c-c++-common/task-reduction-7.c: New test.
  5544. * testsuite/libgomp.c-c++-common/task-reduction-8.c: New test.
  5545. * testsuite/libgomp.c-c++-common/task-reduction-9.c: New test.
  5546. * testsuite/libgomp.c-c++-common/taskwait-depend-1.c: New test.
  5547. * testsuite/libgomp.c++/depend-1.C: New test.
  5548. * testsuite/libgomp.c++/depend-iterator-1.C: New test.
  5549. * testsuite/libgomp.c++/depobj-1.C: New test.
  5550. * testsuite/libgomp.c++/for-16.C: New test.
  5551. * testsuite/libgomp.c++/for-21.C: New test.
  5552. * testsuite/libgomp.c++/for-22.C: New test.
  5553. * testsuite/libgomp.c++/for-23.C: New test.
  5554. * testsuite/libgomp.c++/for-24.C: New test.
  5555. * testsuite/libgomp.c++/for-25.C: New test.
  5556. * testsuite/libgomp.c++/for-26.C: New test.
  5557. * testsuite/libgomp.c++/taskloop-reduction-1.C: New test.
  5558. * testsuite/libgomp.c++/taskloop-reduction-2.C: New test.
  5559. * testsuite/libgomp.c++/taskloop-reduction-3.C: New test.
  5560. * testsuite/libgomp.c++/taskloop-reduction-4.C: New test.
  5561. * testsuite/libgomp.c++/task-reduction-10.C: New test.
  5562. * testsuite/libgomp.c++/task-reduction-11.C: New test.
  5563. * testsuite/libgomp.c++/task-reduction-12.C: New test.
  5564. * testsuite/libgomp.c++/task-reduction-13.C: New test.
  5565. * testsuite/libgomp.c++/task-reduction-14.C: New test.
  5566. * testsuite/libgomp.c++/task-reduction-15.C: New test.
  5567. * testsuite/libgomp.c++/task-reduction-16.C: New test.
  5568. * testsuite/libgomp.c++/task-reduction-17.C: New test.
  5569. * testsuite/libgomp.c++/task-reduction-18.C: New test.
  5570. * testsuite/libgomp.c++/task-reduction-19.C: New test.
  5571. * testsuite/libgomp.c/task-reduction-1.c: New test.
  5572. * testsuite/libgomp.c++/task-reduction-1.C: New test.
  5573. * testsuite/libgomp.c/task-reduction-2.c: New test.
  5574. * testsuite/libgomp.c++/task-reduction-2.C: New test.
  5575. * testsuite/libgomp.c++/task-reduction-3.C: New test.
  5576. * testsuite/libgomp.c++/task-reduction-4.C: New test.
  5577. * testsuite/libgomp.c++/task-reduction-5.C: New test.
  5578. * testsuite/libgomp.c++/task-reduction-6.C: New test.
  5579. * testsuite/libgomp.c++/task-reduction-7.C: New test.
  5580. * testsuite/libgomp.c++/task-reduction-8.C: New test.
  5581. * testsuite/libgomp.c++/task-reduction-9.C: New test.
  5582. * testsuite/libgomp.c/teams-1.c: New test.
  5583. * testsuite/libgomp.c/teams-2.c: New test.
  5584. * testsuite/libgomp.c/thread-limit-4.c: New test.
  5585. * testsuite/libgomp.c/thread-limit-5.c: New test.
  5586. * testsuite/libgomp.fortran/display-affinity-1.f90: New test.
  5587. 2018-11-06 Chung-Lin Tang <cltang@codesourcery.com>
  5588. * oacc-mem.c (memcpy_tofrom_device): New function, combined from
  5589. acc_memcpy_to/from_device functions, now with async parameter.
  5590. (acc_memcpy_to_device): Modify to use memcpy_tofrom_device.
  5591. (acc_memcpy_from_device): Likewise.
  5592. (acc_memcpy_to_device_async): New API function.
  5593. (acc_memcpy_from_device_async): Likewise.
  5594. (present_create_copy): Add async parameter and async setting/unsetting.
  5595. (acc_create): Adjust present_create_copy call.
  5596. (acc_copyin): Likewise.
  5597. (acc_present_or_create): Likewise.
  5598. (acc_present_or_copyin): Likewise.
  5599. (acc_create_async): New API function.
  5600. (acc_copyin_async): New API function.
  5601. (delete_copyout): Add async parameter and async setting/unsetting.
  5602. (acc_delete): Adjust delete_copyout call.
  5603. (acc_copyout): Likewise.
  5604. (acc_delete_async): New API function.
  5605. (acc_copyout_async): Likewise.
  5606. (update_dev_host): Add async parameter and async setting/unsetting.
  5607. (acc_update_device): Adjust update_dev_host call.
  5608. (acc_update_self): Likewise.
  5609. (acc_update_device_async): New API function.
  5610. (acc_update_self_async): Likewise.
  5611. * openacc.h (acc_copyin_async): Declare new API function.
  5612. (acc_create_async): Likewise.
  5613. (acc_copyout_async): Likewise.
  5614. (acc_delete_async): Likewise.
  5615. (acc_update_device_async): Likewise.
  5616. (acc_update_self_async): Likewise.
  5617. (acc_memcpy_to_device_async): Likewise.
  5618. (acc_memcpy_from_device_async): Likewise.
  5619. * openacc_lib.h (acc_copyin_async_32_h): New subroutine.
  5620. (acc_copyin_async_64_h): New subroutine.
  5621. (acc_copyin_async_array_h): New subroutine.
  5622. (acc_create_async_32_h): New subroutine.
  5623. (acc_create_async_64_h): New subroutine.
  5624. (acc_create_async_array_h): New subroutine.
  5625. (acc_copyout_async_32_h): New subroutine.
  5626. (acc_copyout_async_64_h): New subroutine.
  5627. (acc_copyout_async_array_h): New subroutine.
  5628. (acc_delete_async_32_h): New subroutine.
  5629. (acc_delete_async_64_h): New subroutine.
  5630. (acc_delete_async_array_h): New subroutine.
  5631. (acc_update_device_async_32_h): New subroutine.
  5632. (acc_update_device_async_64_h): New subroutine.
  5633. (acc_update_device_async_array_h): New subroutine.
  5634. (acc_update_self_async_32_h): New subroutine.
  5635. (acc_update_self_async_64_h): New subroutine.
  5636. (acc_update_self_async_array_h): New subroutine.
  5637. * openacc.f90 (acc_copyin_async_32_h): New subroutine.
  5638. (acc_copyin_async_64_h): New subroutine.
  5639. (acc_copyin_async_array_h): New subroutine.
  5640. (acc_create_async_32_h): New subroutine.
  5641. (acc_create_async_64_h): New subroutine.
  5642. (acc_create_async_array_h): New subroutine.
  5643. (acc_copyout_async_32_h): New subroutine.
  5644. (acc_copyout_async_64_h): New subroutine.
  5645. (acc_copyout_async_array_h): New subroutine.
  5646. (acc_delete_async_32_h): New subroutine.
  5647. (acc_delete_async_64_h): New subroutine.
  5648. (acc_delete_async_array_h): New subroutine.
  5649. (acc_update_device_async_32_h): New subroutine.
  5650. (acc_update_device_async_64_h): New subroutine.
  5651. (acc_update_device_async_array_h): New subroutine.
  5652. (acc_update_self_async_32_h): New subroutine.
  5653. (acc_update_self_async_64_h): New subroutine.
  5654. (acc_update_self_async_array_h): New subroutine.
  5655. * libgomp.map (OACC_2.5): Add acc_copyin_async*, acc_copyout_async*,
  5656. acc_copyout_finalize_async*, acc_create_async*, acc_delete_async*,
  5657. acc_delete_finalize_async*, acc_memcpy_from_device_async*,
  5658. acc_memcpy_to_device_async*, acc_update_device_async*, and
  5659. acc_update_self_async* entries.
  5660. * testsuite/libgomp.oacc-c-c++-common/lib-94.c: New test.
  5661. * testsuite/libgomp.oacc-c-c++-common/lib-95.c: New test.
  5662. * testsuite/libgomp.oacc-fortran/lib-16.f90: New test.
  5663. 2018-10-31 Joseph Myers <joseph@codesourcery.com>
  5664. PR bootstrap/82856
  5665. * Makefile.am: Include multilib.am
  5666. (AUTOMAKE_OPTIONS): Add info-in-builddir.
  5667. (CLEANFILES): Remove libgomp.info.
  5668. * configure.ac: Remove AC_PREREQ.
  5669. * testsuite/Makefile.am (RUNTEST): Remove quotes.
  5670. * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
  5671. Regenerate.
  5672. 2018-10-29 Joseph Myers <joseph@codesourcery.com>
  5673. Julian Brown <julian@codesourcery.com>
  5674. * testsuite/libgomp.oacc-c++/this.C: New.
  5675. 2018-09-18 Cesar Philippidis <cesar@codesourcery.com>
  5676. * plugin/plugin-nvptx.c (struct cuda_map): New.
  5677. (struct ptx_stream): Replace d, h, h_begin, h_end, h_next, h_prev,
  5678. h_tail with (cuda_map *) map.
  5679. (cuda_map_create): New function.
  5680. (cuda_map_destroy): New function.
  5681. (map_init): Update to use a linked list of cuda_map objects.
  5682. (map_fini): Likewise.
  5683. (map_pop): Likewise.
  5684. (map_push): Likewise. Return CUdeviceptr instead of void.
  5685. (init_streams_for_device): Remove stales references to ptx_stream
  5686. members.
  5687. (select_stream_for_async): Likewise.
  5688. (nvptx_exec): Update call to map_init.
  5689. 2018-09-09 Cesar Philippidis <cesar@codesourcery.com>
  5690. Julian Brown <julian@codesourcery.com>
  5691. PR middle-end/86336
  5692. * testsuite/libgomp.oacc-c++/non-scalar-data.C: Remove XFAIL.
  5693. 2018-08-21 Nicolas Koenig <koenigni@gcc.gnu.org>
  5694. Thomas Koenig <tkoenig@gcc.gnu.org>
  5695. PR fortran/25829
  5696. * testsuite/libgomp.fortran/async_io_1.f90: New test.
  5697. * testsuite/libgomp.fortran/async_io_2.f90: New test.
  5698. * testsuite/libgomp.fortran/async_io_3.f90: New test.
  5699. * testsuite/libgomp.fortran/async_io_4.f90: New test.
  5700. * testsuite/libgomp.fortran/async_io_5.f90: New test.
  5701. * testsuite/libgomp.fortran/async_io_6.f90: New test.
  5702. * testsuite/libgomp.fortran/async_io_7.f90: New test.
  5703. 2018-08-13 Cesar Philippidis <cesar@codesourcery.com>
  5704. Tom de Vries <tdevries@suse.de>
  5705. PR target/85590
  5706. * plugin/cuda/cuda.h (CUoccupancyB2DSize): New typedef.
  5707. (cuOccupancyMaxPotentialBlockSize): Declare.
  5708. * plugin/cuda-lib.def (cuOccupancyMaxPotentialBlockSize): New
  5709. CUDA_ONE_CALL_MAYBE_NULL.
  5710. * plugin/plugin-nvptx.c (CUDA_VERSION < 6050): Define
  5711. CUoccupancyB2DSize and declare
  5712. cuOccupancyMaxPotentialBlockSize.
  5713. (nvptx_exec): Use cuOccupancyMaxPotentialBlockSize to set the
  5714. default num_gangs and num_workers when the driver supports it.
  5715. 2018-08-08 Tom de Vries <tdevries@suse.de>
  5716. * plugin/cuda-lib.def (cuLinkAddData_v2, cuLinkCreate_v2): Declare using
  5717. CUDA_ONE_CALL_MAYBE_NULL.
  5718. * plugin/plugin-nvptx.c (cuLinkAddData, cuLinkCreate): Undef and declare.
  5719. (cuLinkAddData_v2, cuLinkCreate_v2): Declare.
  5720. (link_ptx): Fall back to cuLinkAddData/cuLinkCreate if the _v2 versions
  5721. are not found.
  5722. 2018-08-08 Tom de Vries <tdevries@suse.de>
  5723. * plugin/cuda-lib.def (cuGetErrorString): Use CUDA_ONE_CALL_MAYBE_NULL.
  5724. * plugin/plugin-nvptx.c (cuda_error): Handle if cuGetErrorString is not
  5725. present.
  5726. 2018-08-08 Tom de Vries <tdevries@suse.de>
  5727. * plugin/plugin-nvptx.c
  5728. (CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR): Define.
  5729. (nvptx_open_device): Use
  5730. CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR.
  5731. 2018-08-08 Tom de Vries <tdevries@suse.de>
  5732. * plugin/plugin-nvptx.c (cuda_error): Move declaration of cuGetErrorString ...
  5733. (cuGetErrorString): ... here. Guard with CUDA_VERSION < 6000.
  5734. 2018-08-07 Tom de Vries <tdevries@suse.de>
  5735. * plugin/plugin-nvptx.c (DO_PRAGMA): Define.
  5736. (struct cuda_lib_s): Add def/undef of CUDA_ONE_CALL_MAYBE_NULL.
  5737. (init_cuda_lib): Add new param to CUDA_ONE_CALL_1. Add arg to
  5738. corresponding call in CUDA_ONE_CALL. Add def/undef of
  5739. CUDA_ONE_CALL_MAYBE_NULL.
  5740. (CUDA_CALL_EXISTS): Define.
  5741. 2018-08-07 Tom de Vries <tdevries@suse.de>
  5742. * plugin/plugin-nvptx.c (struct cuda_lib_s, init_cuda_lib): Put
  5743. CUDA_ONE_CALL defines right before the cuda-lib.def include, and the
  5744. corresponding undefs right after.
  5745. 2018-08-04 Tom de Vries <tdevries@suse.de>
  5746. * plugin/configfrag.ac: For --without-cuda-driver, set
  5747. CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB to no. Handle
  5748. CUDA_DRIVER_INCLUDE == no and CUDA_DRIVER_LIB == no.
  5749. * configure: Regenerate.
  5750. 2018-08-02 Tom de Vries <tdevries@suse.de>
  5751. PR target/86660
  5752. * testsuite/libgomp.oacc-c++/routine-1-auto.C: Remove -fno-exceptions.
  5753. * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Same.
  5754. * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
  5755. Same.
  5756. * testsuite/libgomp.oacc-c++/routine-1-template.C: Same.
  5757. * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C: Same.
  5758. * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Same.
  5759. 2018-08-01 Cesar Philippidis <cesar@codesourcery.com>
  5760. Thomas Schwinge <thomas@codesourcery.com>
  5761. * config/nvptx/oacc-parallel.c: Truncate.
  5762. 2018-08-01 Cesar Philippidis <cesar@codesourcery.com>
  5763. James Norris <jnorris@codesourcery.com>
  5764. * plugin/plugin-nvptx.c (struct map): Removed.
  5765. (map_init, map_pop): Remove use of struct map.
  5766. (map_push): Likewise and change argument list.
  5767. * testsuite/libgomp.oacc-c-c++-common/mapping-1.c: New
  5768. 2018-08-01 Tom de Vries <tdevries@suse.de>
  5769. * plugin/cuda-lib.def: New file. Factor out of ...
  5770. * plugin/plugin-nvptx.c (CUDA_CALLS): ... here.
  5771. (struct cuda_lib_s, init_cuda_lib): Include cuda-lib.def instead of
  5772. using CUDA_CALLS.
  5773. 2018-07-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
  5774. Revert 'AsyncI/O patch committed'.
  5775. 2018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
  5776. Thomas Koenig <tkoenig@gcc.gnu.org>
  5777. PR fortran/25829
  5778. * testsuite/libgomp.fortran/async_io_1.f90: New test.
  5779. * testsuite/libgomp.fortran/async_io_2.f90: New test.
  5780. * testsuite/libgomp.fortran/async_io_3.f90: New test.
  5781. * testsuite/libgomp.fortran/async_io_4.f90: New test.
  5782. * testsuite/libgomp.fortran/async_io_5.f90: New test.
  5783. * testsuite/libgomp.fortran/async_io_6.f90: New test.
  5784. * testsuite/libgomp.fortran/async_io_7.f90: New test.
  5785. 2018-07-30 Tom de Vries <tdevries@suse.de>
  5786. * plugin/plugin-nvptx.c (MIN, MAX): Redefine.
  5787. (nvptx_exec): Ensure worker and vector default dims don't exceed
  5788. targ_fn->max_threads_per_block.
  5789. 2018-07-30 Tom de Vries <tdevries@suse.de>
  5790. * plugin/plugin-nvptx.c (struct ptx_device): Add default_dims field.
  5791. (nvptx_open_device): Init default_dims for device.
  5792. (nvptx_exec): Use default_dims from device.
  5793. 2018-07-26 Jakub Jelinek <jakub@redhat.com>
  5794. PR testsuite/86660
  5795. * testsuite/libgomp.c++/for-15.C (results): Include it in
  5796. omp declare target region.
  5797. (main): Use map (always, tofrom: results) instead of
  5798. map (tofrom: results).
  5799. PR middle-end/86660
  5800. * testsuite/libgomp.c/pr86660.c: New test.
  5801. 2018-07-26 Cesar Philippidis <cesar@codesourcery.com>
  5802. Tom de Vries <tdevries@suse.de>
  5803. * plugin/plugin-nvptx.c (nvptx_exec): Error if the hardware doesn't have
  5804. sufficient resources to launch a kernel, and give a hint on how to fix
  5805. it.
  5806. 2018-07-26 Cesar Philippidis <cesar@codesourcery.com>
  5807. Tom de Vries <tdevries@suse.de>
  5808. * plugin/plugin-nvptx.c (struct ptx_device): Add warp_size,
  5809. max_threads_per_block and max_threads_per_multiprocessor fields.
  5810. (nvptx_open_device): Initialize new fields.
  5811. (nvptx_exec): Use num_sms, and new fields.
  5812. 2018-07-26 Tom de Vries <tdevries@suse.de>
  5813. * testsuite/libgomp.oacc-fortran/lib-12.f90: Move acc_async_test calls
  5814. to correct locations. Remove xfail.
  5815. 2018-07-26 Tom de Vries <tdevries@suse.de>
  5816. * testsuite/libgomp.oacc-fortran/lib-13.f90: Replace acc_wait_all with
  5817. acc_wait. Move acc_async_test calls to correct locations. Remove
  5818. xfail.
  5819. 2018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
  5820. Thomas Koenig <tkoenig@gcc.gnu.org>
  5821. PR fortran/25829
  5822. * testsuite/libgomp.fortran/async_io_1.f90: New test.
  5823. * testsuite/libgomp.fortran/async_io_2.f90: New test.
  5824. * testsuite/libgomp.fortran/async_io_3.f90: New test.
  5825. * testsuite/libgomp.fortran/async_io_4.f90: New test.
  5826. * testsuite/libgomp.fortran/async_io_5.f90: New test.
  5827. * testsuite/libgomp.fortran/async_io_6.f90: New test.
  5828. * testsuite/libgomp.fortran/async_io_7.f90: New test.
  5829. 2018-07-17 Jakub Jelinek <jakub@redhat.com>
  5830. PR middle-end/86542
  5831. * testsuite/libgomp.c++/pr86542.C: New test.
  5832. PR middle-end/86539
  5833. * testsuite/libgomp.c++/pr86539.C: New test.
  5834. 2018-07-11 Jakub Jelinek <jakub@redhat.com>
  5835. PR c++/86443
  5836. * testsuite/libgomp.c++/for-15.C (a): Remove unused variable.
  5837. (results): Make sure the variable is not inside declare target region.
  5838. (qux): Remove unused function.
  5839. 2018-07-10 Jakub Jelinek <jakub@redhat.com>
  5840. PR c++/86443
  5841. * testsuite/libgomp.c++/for-15.C: New test.
  5842. 2018-06-26 Jakub Jelinek <jakub@redhat.com>
  5843. PR c++/86291
  5844. * testsuite/libgomp.c++/pr86291.C: New test.
  5845. 2018-06-24 Gerald Pfeifer <gerald@pfeifer.com>
  5846. * libgomp.texi (Top): Move www.openmp.org to https.
  5847. (Enabling OpenMP): Ditto.
  5848. (omp_get_active_level): Ditto.
  5849. (omp_get_ancestor_thread_num): Ditto.
  5850. (omp_get_cancellation): Ditto.
  5851. (omp_get_default_device): Ditto.
  5852. (omp_get_dynamic): Ditto.
  5853. (omp_get_level): Ditto.
  5854. (omp_get_max_active_levels): Ditto.
  5855. (omp_get_max_task_priority): Ditto.
  5856. (omp_get_max_threads): Ditto.
  5857. (omp_get_nested): Ditto.
  5858. (omp_get_num_devices): Ditto.
  5859. (omp_get_num_procs): Ditto.
  5860. (omp_get_num_teams): Ditto.
  5861. (omp_get_num_threads): Ditto.
  5862. (omp_get_proc_bind): Ditto.
  5863. (omp_get_schedule): Ditto.
  5864. (omp_get_team_num): Ditto.
  5865. (omp_get_team_size): Ditto.
  5866. (omp_get_thread_limit): Ditto.
  5867. (omp_get_thread_num): Ditto.
  5868. (omp_in_parallel): Ditto.
  5869. (omp_in_final): Ditto.
  5870. (omp_is_initial_device): Ditto.
  5871. (omp_set_default_device): Ditto.
  5872. (omp_set_dynamic): Ditto.
  5873. (omp_set_max_active_levels): Ditto.
  5874. (omp_set_nested): Ditto.
  5875. (omp_set_num_threads): Ditto.
  5876. (omp_set_schedule): Ditto.
  5877. (omp_init_lock): Ditto.
  5878. (omp_set_lock): Ditto.
  5879. (omp_test_lock): Ditto.
  5880. (omp_unset_lock): Ditto.
  5881. (omp_destroy_lock): Ditto.
  5882. (omp_init_nest_lock): Ditto.
  5883. (omp_set_nest_lock): Ditto.
  5884. (omp_test_nest_lock): Ditto.
  5885. (omp_unset_nest_lock): Ditto.
  5886. (omp_destroy_nest_lock): Ditto.
  5887. (omp_get_wtick): Ditto.
  5888. (omp_get_wtime): Ditto.
  5889. (OMP_CANCELLATION): Ditto.
  5890. (OMP_DISPLAY_ENV): Ditto.
  5891. (OMP_DEFAULT_DEVICE): Ditto.
  5892. (OMP_DYNAMIC): Ditto.
  5893. (OMP_MAX_ACTIVE_LEVELS): Ditto.
  5894. (OMP_MAX_TASK_PRIORITY): Ditto.
  5895. (OMP_NESTED): Ditto.
  5896. (OMP_NUM_THREADS): Ditto.
  5897. (OMP_PROC_BIND): Ditto.
  5898. (OMP_PLACES): Ditto.
  5899. (OMP_STACKSIZE): Ditto.
  5900. (OMP_SCHEDULE): Ditto.
  5901. (OMP_THREAD_LIMIT): Ditto.
  5902. (OMP_WAIT_POLICY): Ditto.
  5903. 2018-06-22 Cesar Philippidis <cesar@codesourcery.com>
  5904. James Norris <jnorris@codesourcery.com>
  5905. Julian Brown <julian@codesourcery.com>
  5906. Thomas Schwinge <thomas@codesourcery.com>
  5907. Tom de Vries <tom@codesourcery.com>
  5908. * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Don't force "-O2".
  5909. * testsuite/libgomp.oacc-c-c++-common/data-2.c: Update.
  5910. * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Likewise.
  5911. * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Likewise.
  5912. * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
  5913. * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
  5914. * testsuite/libgomp.oacc-c++/non-scalar-data.C: New file.
  5915. * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
  5916. * testsuite/libgomp.oacc-c-c++-common/enter-data.c: Likewise.
  5917. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c:
  5918. Likewise.
  5919. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
  5920. Likewise.
  5921. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
  5922. Likewise.
  5923. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c:
  5924. Likewise.
  5925. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c:
  5926. Likewise.
  5927. * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
  5928. Likewise.
  5929. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
  5930. Likewise.
  5931. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
  5932. Likewise.
  5933. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
  5934. Likewise.
  5935. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
  5936. Likewise.
  5937. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
  5938. Likewise.
  5939. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
  5940. Likewise.
  5941. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
  5942. Likewise.
  5943. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
  5944. Likewise.
  5945. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
  5946. Likewise.
  5947. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
  5948. Likewise.
  5949. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
  5950. Likewise.
  5951. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
  5952. Likewise.
  5953. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
  5954. Likewise.
  5955. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
  5956. Likewise.
  5957. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
  5958. Likewise.
  5959. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
  5960. Likewise.
  5961. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
  5962. Likewise.
  5963. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
  5964. Likewise.
  5965. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
  5966. Likewise.
  5967. * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
  5968. Likewise.
  5969. * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
  5970. Likewise.
  5971. * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.c: Likewise.
  5972. * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.h: Likewise.
  5973. * testsuite/libgomp.oacc-c-c++-common/parallel-loop-2.h: Likewise.
  5974. * testsuite/libgomp.oacc-fortran/cublas-fixed.h: Likewise.
  5975. * testsuite/libgomp.oacc-fortran/dummy-array.f90: Likewise.
  5976. * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
  5977. * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
  5978. * testsuite/libgomp.oacc-fortran/host_data-4.f90: Likewise.
  5979. * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
  5980. Likewise.
  5981. * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
  5982. Likewise.
  5983. * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Likewise.
  5984. * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Likewise.
  5985. * testsuite/libgomp.oacc-fortran/kernels-independent.f90:
  5986. Likewise.
  5987. * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Likewise.
  5988. * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Likewise.
  5989. * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
  5990. Likewise.
  5991. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
  5992. Likewise.
  5993. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
  5994. Likewise.
  5995. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
  5996. Likewise.
  5997. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
  5998. Likewise.
  5999. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
  6000. Likewise.
  6001. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
  6002. Likewise.
  6003. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
  6004. Likewise.
  6005. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
  6006. Likewise.
  6007. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
  6008. Likewise.
  6009. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
  6010. Likewise.
  6011. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
  6012. Likewise.
  6013. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
  6014. Likewise.
  6015. * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
  6016. Likewise.
  6017. * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
  6018. Likewise.
  6019. * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
  6020. * testsuite/libgomp.oacc-fortran/lib-13.f90: Likewise.
  6021. * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
  6022. * testsuite/libgomp.oacc-fortran/lib-15.f90: Likewise.
  6023. * testsuite/libgomp.oacc-fortran/parallel-loop-1.f90: Likewise.
  6024. * testsuite/libgomp.oacc-fortran/reference-reductions.f90: Likewise.
  6025. * testsuite/libgomp.oacc-fortran/vector-routine.f90: Likewise.
  6026. 2018-06-20 Chung-Lin Tang <cltang@codesourcery.com>
  6027. Thomas Schwinge <thomas@codesourcery.com>
  6028. Cesar Philippidis <cesar@codesourcery.com>
  6029. * libgomp.h (struct splay_tree_key_s): Add dynamic_refcount member.
  6030. (gomp_acc_remove_pointer): Update declaration.
  6031. (gomp_acc_declare_allocate): Declare.
  6032. (gomp_remove_var): Declare.
  6033. * libgomp.map (OACC_2.5): Define.
  6034. * oacc-mem.c (acc_map_data): Update refcount.
  6035. (acc_unmap_data): Likewise.
  6036. (present_create_copy): Likewise.
  6037. (acc_create): Add FLAG_PRESENT when calling present_create_copy.
  6038. (acc_copyin): Likewise.
  6039. (FLAG_FINALIZE): Define.
  6040. (delete_copyout): Update dynamic refcounts, add support for FINALIZE.
  6041. (acc_delete_finalize): New function.
  6042. (acc_delete_finalize_async): New function.
  6043. (acc_copyout_finalize): New function.
  6044. (acc_copyout_finalize_async): New function.
  6045. (gomp_acc_insert_pointer): Update refcounts.
  6046. (gomp_acc_remove_pointer): Return if data is not present on the
  6047. accelerator.
  6048. * oacc-parallel.c (find_pset): Rename to find_pointer.
  6049. (find_pointer): Add support for GOMP_MAP_POINTER.
  6050. (handle_ftn_pointers): New function.
  6051. (GOACC_parallel_keyed): Update refcounts of variables.
  6052. (GOACC_enter_exit_data): Add support for finalized data mappings.
  6053. Add support for GOMP_MAP_{TO,ALLOC,RELESE,FROM}. Update handling
  6054. of fortran arrays.
  6055. (GOACC_update): Add support for GOMP_MAP_{ALWAYS_POINTER,TO,FROM}.
  6056. (GOACC_declare): Add support for GOMP_MAP_RELEASE, remove support
  6057. for GOMP_MAP_FORCE_FROM.
  6058. * openacc.f90 (module openacc_internal): Add
  6059. acc_copyout_finalize_{32_h,64_h,array_h,_l}, and
  6060. acc_delete_finalize_{32_h,64_h,array_h,_l}. Add interfaces for
  6061. acc_copyout_finalize and acc_delete_finalize.
  6062. (acc_copyout_finalize_32_h): New subroutine.
  6063. (acc_copyout_finalize_64_h): New subroutine.
  6064. (acc_copyout_finalize_array_h): New subroutine.
  6065. (acc_delete_finalize_32_h): New subroutine.
  6066. (acc_delete_finalize_64_h): New subroutine.
  6067. (acc_delete_finalize_array_h): New subroutine.
  6068. * openacc.h (acc_copyout_finalize): Declare.
  6069. (acc_copyout_finalize_async): Declare.
  6070. (acc_delete_finalize): Declare.
  6071. (acc_delete_finalize_async): Declare.
  6072. * openacc_lib.h (acc_copyout_finalize): New interface.
  6073. (acc_delete_finalize): New interface.
  6074. * target.c (gomp_map_vars): Update dynamic_refcount.
  6075. (gomp_remove_var): New function.
  6076. (gomp_unmap_vars): Use it.
  6077. (gomp_unload_image_from_device): Likewise.
  6078. * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Update test
  6079. case to utilize OpenACC 2.5 data clause semantics.
  6080. * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
  6081. * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
  6082. * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
  6083. * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
  6084. * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
  6085. * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
  6086. * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
  6087. * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
  6088. * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
  6089. * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
  6090. * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
  6091. * testsuite/libgomp.oacc-fortran/data-5.f90: New test.
  6092. * testsuite/libgomp.oacc-fortran/data-already-1.f: Update test case to
  6093. utilize OpenACC 2.5 data clause semantics.
  6094. * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
  6095. * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
  6096. * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
  6097. * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
  6098. * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
  6099. * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
  6100. * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
  6101. * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
  6102. * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
  6103. 2018-05-21 Janus Weil <janus@gcc.gnu.org>
  6104. PR fortran/85841
  6105. PR testsuite/85865
  6106. * testsuite/libgomp.fortran/collapse2.f90: Add option "-std=legacy".
  6107. * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
  6108. * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
  6109. * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
  6110. * testsuite/libgomp.fortran/task2.f90: Ditto.
  6111. * testsuite/libgomp.fortran/vla1.f90: Ditto.
  6112. * testsuite/libgomp.fortran/vla2.f90: Ditto.
  6113. * testsuite/libgomp.fortran/vla3.f90: Ditto.
  6114. * testsuite/libgomp.fortran/vla4.f90: Ditto.
  6115. * testsuite/libgomp.fortran/vla5.f90: Ditto.
  6116. * testsuite/libgomp.fortran/vla6.f90: Ditto.
  6117. * testsuite/libgomp.fortran/vla8.f90: Ditto.
  6118. * testsuite/libgomp.oacc-fortran/collapse-2.f90: Ditto.
  6119. * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Ditto.
  6120. 2018-05-18 Cesar Philippidis <cesar@codesourcery.com>
  6121. PR c++/85782
  6122. * testsuite/libgomp.oacc-c-c++-common/pr85782.c: New test.
  6123. 2018-05-09 Tom de Vries <tom@codesourcery.com>
  6124. PR libgomp/82901
  6125. * oacc-parallel.c (GOACC_declare): Use GOMP_ASYNC_SYNC as async argument
  6126. to GOACC_enter_exit_data.
  6127. 2018-05-09 Tom de Vries <tom@codesourcery.com>
  6128. PR libgomp/83792
  6129. * oacc-int.h (async_valid_stream_id_p, async_valid_p)
  6130. (async_synchronous_p): New function.
  6131. * oacc-async.c (acc_async_test, acc_wait, acc_wait_all_async): Use
  6132. async_valid_p.
  6133. * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
  6134. async_valid_stream_id_p.
  6135. * oacc-mem.c (gomp_acc_remove_pointer): Use async_synchronous_p.
  6136. * oacc-parallel.c (GOACC_parallel_keyed): Same.
  6137. 2018-05-07 Tom de Vries <tom@codesourcery.com>
  6138. PR testsuite/85677
  6139. * testsuite/lib/libgomp.exp (libgomp_init): Move inclusion of top-level
  6140. include directory in ALWAYS_CFLAGS out of $blddir != "" condition.
  6141. 2018-05-03 Tom de Vries <tom@codesourcery.com>
  6142. PR testsuite/85106
  6143. * testsuite/lib/libgomp-dg.exp (libgomp-dg-test): Add save-temps to
  6144. extra_tool_flags if it contains an -foffload=-fdump-* flag.
  6145. * testsuite/lib/libgomp.exp: Include scanoffloadtree.exp.
  6146. * testsuite/libgomp.oacc-c/vec.c: Use scan-offload-tree-dump.
  6147. 2018-05-02 Tom de Vries <tom@codesourcery.com>
  6148. PR libgomp/85411
  6149. * plugin/plugin-nvptx.c (nvptx_exec): Move parsing of
  6150. GOMP_OPENACC_DIM ...
  6151. * env.c (parse_gomp_openacc_dim): ... here. New function.
  6152. (initialize_env): Call parse_gomp_openacc_dim.
  6153. (goacc_default_dims): Define.
  6154. * libgomp.h (goacc_default_dims): Declare.
  6155. * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): New function.
  6156. * oacc-plugin.h (GOMP_PLUGIN_acc_default_dim): Declare.
  6157. * libgomp.map: New version "GOMP_PLUGIN_1.2". Add
  6158. GOMP_PLUGIN_acc_default_dim.
  6159. * testsuite/libgomp.oacc-c-c++-common/loop-default-runtime.c: New test.
  6160. * testsuite/libgomp.oacc-c-c++-common/loop-default.h: New test.
  6161. 2018-05-02 Tom de Vries <tom@codesourcery.com>
  6162. PR testsuite/83791
  6163. * testsuite/libgomp.c++/udr-9.C: Update.
  6164. * testsuite/libgomp.c++/atomic-16.C: Remove.
  6165. * testsuite/libgomp.c++/cancel-taskgroup-2.C: Remove.
  6166. * testsuite/libgomp.c++/loop-13.C: Remove.
  6167. * testsuite/libgomp.c++/loop-14.C: Remove.
  6168. * testsuite/libgomp.c++/loop-15.C: Remove.
  6169. * testsuite/libgomp.c++/monotonic-1.C: Remove.
  6170. * testsuite/libgomp.c++/monotonic-2.C: Remove.
  6171. * testsuite/libgomp.c++/nonmonotonic-1.C: Remove.
  6172. * testsuite/libgomp.c++/nonmonotonic-2.C: Remove.
  6173. * testsuite/libgomp.c++/ordered-1.C: Remove.
  6174. * testsuite/libgomp.c++/pr45784.C: Remove.
  6175. * testsuite/libgomp.c++/pr64824.C: Remove.
  6176. * testsuite/libgomp.c++/pr64868.C: Remove.
  6177. * testsuite/libgomp.c++/pr66199-1.C: Remove.
  6178. * testsuite/libgomp.c++/pr66199-2.C: Remove.
  6179. * testsuite/libgomp.c++/pr66199-3.C: Remove.
  6180. * testsuite/libgomp.c++/pr66199-4.C: Remove.
  6181. * testsuite/libgomp.c++/pr66199-5.C: Remove.
  6182. * testsuite/libgomp.c++/pr66199-6.C: Remove.
  6183. * testsuite/libgomp.c++/pr66199-7.C: Remove.
  6184. * testsuite/libgomp.c++/pr66199-8.C: Remove.
  6185. * testsuite/libgomp.c++/pr66199-9.C: Remove.
  6186. * testsuite/libgomp.c++/pr69389.C: Remove.
  6187. * testsuite/libgomp.c++/simd10.C: Remove.
  6188. * testsuite/libgomp.c++/simd11.C: Remove.
  6189. * testsuite/libgomp.c++/simd12.C: Remove.
  6190. * testsuite/libgomp.c++/simd13.C: Remove.
  6191. * testsuite/libgomp.c++/target-1.C: Remove.
  6192. * testsuite/libgomp.c++/target-3.C: Remove.
  6193. * testsuite/libgomp.c++/target-4.C: Remove.
  6194. * testsuite/libgomp.c++/target-5.C: Remove.
  6195. * testsuite/libgomp.c++/taskgroup-1.C: Remove.
  6196. * testsuite/libgomp.c++/taskloop-1.C: Remove.
  6197. * testsuite/libgomp.c++/taskloop-2.C: Remove.
  6198. * testsuite/libgomp.c++/taskloop-3.C: Remove.
  6199. * testsuite/libgomp.c++/taskloop-4.C: Remove.
  6200. * testsuite/libgomp.c++/udr-9.C: Remove.
  6201. * testsuite/libgomp.c++/for-10.C: Remove.
  6202. * testsuite/libgomp.c++/for-11.C: Remove.
  6203. * testsuite/libgomp.c++/for-12.C: Remove.
  6204. * testsuite/libgomp.c++/for-13.C: Remove.
  6205. * testsuite/libgomp.c++/for-14.C: Remove.
  6206. * testsuite/libgomp.c++/for-9.C: Remove.
  6207. * testsuite/libgomp.c/atomic-18.c: Move ...
  6208. * testsuite/libgomp.c-c++-common/atomic-18.c: ... here.
  6209. * testsuite/libgomp.c/cancel-taskgroup-2.c: Move ...
  6210. * testsuite/libgomp.c-c++-common/cancel-taskgroup-2.c: here.
  6211. * testsuite/libgomp.c/loop-13.c: Move ...
  6212. * testsuite/libgomp.c-c++-common/loop-13.c: ... here.
  6213. * testsuite/libgomp.c/loop-14.c: Move ...
  6214. * testsuite/libgomp.c-c++-common/loop-14.c: ... here.
  6215. * testsuite/libgomp.c/loop-15.c: Remove.
  6216. * testsuite/libgomp.c-c++-common/loop-15.c: New test.
  6217. * testsuite/libgomp.c/monotonic-1.c: Move ...
  6218. * testsuite/libgomp.c-c++-common/monotonic-1.c: ... here.
  6219. * testsuite/libgomp.c/monotonic-2.c: Move ...
  6220. * testsuite/libgomp.c-c++-common/monotonic-2.c: ... here.
  6221. * testsuite/libgomp.c/nonmonotonic-1.c: Move ...
  6222. * testsuite/libgomp.c-c++-common/nonmonotonic-1.c: ... here.
  6223. * testsuite/libgomp.c/nonmonotonic-2.c: Move ...
  6224. * testsuite/libgomp.c-c++-common/nonmonotonic-2.c: ... here.
  6225. * testsuite/libgomp.c/ordered-4.c: Move ...
  6226. * testsuite/libgomp.c-c++-common/ordered-4.c: ... here.
  6227. * testsuite/libgomp.c/pr45784.c: Move ...
  6228. * testsuite/libgomp.c-c++-common/pr45784.c: ... here.
  6229. * testsuite/libgomp.c/pr64824.c: Move ...
  6230. * testsuite/libgomp.c-c++-common/pr64824.c: ... here.
  6231. * testsuite/libgomp.c/pr64868.c: Move ...
  6232. * testsuite/libgomp.c-c++-common/pr64868.c: ... here.
  6233. * testsuite/libgomp.c/pr66199-1.c: Move ...
  6234. * testsuite/libgomp.c-c++-common/pr66199-1.c: ... here.
  6235. * testsuite/libgomp.c/pr66199-2.c: Move ...
  6236. * testsuite/libgomp.c-c++-common/pr66199-2.c: ... here.
  6237. * testsuite/libgomp.c/pr66199-3.c: Move ...
  6238. * testsuite/libgomp.c-c++-common/pr66199-3.c: ... here.
  6239. * testsuite/libgomp.c/pr66199-4.c: Move ...
  6240. * testsuite/libgomp.c-c++-common/pr66199-4.c: ... here.
  6241. * testsuite/libgomp.c/pr66199-5.c: Move ...
  6242. * testsuite/libgomp.c-c++-common/pr66199-5.c: ... here.
  6243. * testsuite/libgomp.c/pr66199-6.c: Move ...
  6244. * testsuite/libgomp.c-c++-common/pr66199-6.c: ... here.
  6245. * testsuite/libgomp.c/pr66199-7.c: Move ...
  6246. * testsuite/libgomp.c-c++-common/pr66199-7.c: ... here.
  6247. * testsuite/libgomp.c/pr66199-8.c: Move ...
  6248. * testsuite/libgomp.c-c++-common/pr66199-8.c: ... here.
  6249. * testsuite/libgomp.c/pr66199-9.c: Move ...
  6250. * testsuite/libgomp.c-c++-common/pr66199-9.c: ... here.
  6251. * testsuite/libgomp.c/pr69389.c: Move ...
  6252. * testsuite/libgomp.c-c++-common/pr69389.c: ... here.
  6253. * testsuite/libgomp.c/simd-14.c: Move ...
  6254. * testsuite/libgomp.c-c++-common/simd-14.c: ... here.
  6255. * testsuite/libgomp.c/simd-15.c: Move ...
  6256. * testsuite/libgomp.c-c++-common/simd-15.c: ... here.
  6257. * testsuite/libgomp.c/simd-16.c: Move ...
  6258. * testsuite/libgomp.c-c++-common/simd-16.c: ... here.
  6259. * testsuite/libgomp.c/simd-17.c: Move ...
  6260. * testsuite/libgomp.c-c++-common/simd-17.c: ... here.
  6261. * testsuite/libgomp.c/target-1.c: Move ...
  6262. * testsuite/libgomp.c-c++-common/target-1.c: ... here.
  6263. * testsuite/libgomp.c/target-10.c: Move ...
  6264. * testsuite/libgomp.c-c++-common/target-10.c: ... here.
  6265. * testsuite/libgomp.c/target-13.c: Move ...
  6266. * testsuite/libgomp.c-c++-common/target-13.c: ... here.
  6267. * testsuite/libgomp.c/target-2.c: Move ...
  6268. * testsuite/libgomp.c-c++-common/target-2.c: ... here.
  6269. * testsuite/libgomp.c/taskgroup-1.c: Move ...
  6270. * testsuite/libgomp.c-c++-common/taskgroup-1.c: ... here.
  6271. * testsuite/libgomp.c/taskloop-1.c: Move ...
  6272. * testsuite/libgomp.c-c++-common/taskloop-1.c: ... here.
  6273. * testsuite/libgomp.c/taskloop-2.c: Move ...
  6274. * testsuite/libgomp.c-c++-common/taskloop-2.c: ... here.
  6275. * testsuite/libgomp.c/taskloop-3.c: Move ...
  6276. * testsuite/libgomp.c-c++-common/taskloop-3.c: ... here.
  6277. * testsuite/libgomp.c/taskloop-4.c: Move ...
  6278. * testsuite/libgomp.c-c++-common/taskloop-4.c: ... here.
  6279. * testsuite/libgomp.c/udr-1.c: Move ...
  6280. * testsuite/libgomp.c-c++-common/udr-1.c: ... here.
  6281. * testsuite/libgomp.c/for-1.c: Move ...
  6282. * testsuite/libgomp.c-c++-common/for-1.c: ... here.
  6283. * testsuite/libgomp.c/for-1.h: Move ...
  6284. * testsuite/libgomp.c-c++-common/for-1.h: ... here.
  6285. * testsuite/libgomp.c/for-2.c: Move ...
  6286. * testsuite/libgomp.c-c++-common/for-2.c: ... here.
  6287. * testsuite/libgomp.c/for-2.h: Move ...
  6288. * testsuite/libgomp.c-c++-common/for-2.h: ... here.
  6289. * testsuite/libgomp.c/for-3.c: Move ...
  6290. * testsuite/libgomp.c-c++-common/for-3.c: ... here.
  6291. * testsuite/libgomp.c/for-4.c: Move ...
  6292. * testsuite/libgomp.c-c++-common/for-4.c: ... here.
  6293. * testsuite/libgomp.c/for-5.c: Move ...
  6294. * testsuite/libgomp.c-c++-common/for-5.c: ... here.
  6295. * testsuite/libgomp.c/for-6.c: Move ...
  6296. * testsuite/libgomp.c-c++-common/for-6.c: ... here.
  6297. 2018-05-02 Tom de Vries <tom@codesourcery.com>
  6298. PR libgomp/82428
  6299. * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Use
  6300. __builtin_goacc_parlevel_{id,size}.
  6301. * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Same.
  6302. * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Same.
  6303. * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Same.
  6304. * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Same.
  6305. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Same.
  6306. * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Same.
  6307. * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Same.
  6308. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Same.
  6309. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Same.
  6310. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Same.
  6311. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Same.
  6312. * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Same.
  6313. * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Same.
  6314. * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Same.
  6315. * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Same.
  6316. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Same.
  6317. * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Same.
  6318. * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Same.
  6319. * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Same.
  6320. * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Same.
  6321. * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Same.
  6322. * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Same.
  6323. * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Same.
  6324. 2018-05-02 Tom de Vries <tom@codesourcery.com>
  6325. PR testsuite/85106
  6326. * testsuite/lib/libgomp.exp: Include scanltranstree.exp.
  6327. 2018-05-02 Tom de Vries <tom@codesourcery.com>
  6328. PR testsuite/85106
  6329. * testsuite/lib/libgomp.exp: Include scanwpaipa.exp.
  6330. 2018-04-29 Julian Brown <julian@codesourcery.com>
  6331. Tom de Vries <tom@codesourcery.com>
  6332. PR testsuite/85527
  6333. * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: Allow
  6334. arbitrary order for iterations of atomic subtract check.
  6335. 2018-04-28 Tom de Vries <tom@codesourcery.com>
  6336. PR testsuite/85527
  6337. * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Store
  6338. atomic capture results obtained in parallel loop to an array, instead of
  6339. to a scalar.
  6340. 2018-04-26 Tom de Vries <tom@codesourcery.com>
  6341. PR libgomp/84020
  6342. * plugin/cuda/cuda.h (CUjit_option): Add CU_JIT_OPTIMIZATION_LEVEL.
  6343. * plugin/plugin-nvptx.c (_GNU_SOURCE): Define.
  6344. (process_GOMP_NVPTX_JIT): New function.
  6345. (link_ptx): Use process_GOMP_NVPTX_JIT.
  6346. 2018-04-26 Richard Biener <rguenther@suse.de>
  6347. Tom de Vries <tom@codesourcery.com>
  6348. PR lto/85422
  6349. * testsuite/libgomp.oacc-c-c++-common/pr85422.c: New test.
  6350. 2018-04-26 Tom de Vries <tom@codesourcery.com>
  6351. PR target/85519
  6352. * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
  6353. recursion depth from 25 to 23.
  6354. * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
  6355. 2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
  6356. * configure: Regenerated.
  6357. 2018-04-20 Nathan Sidwell <nathan@codesourcery.com>
  6358. Tom de Vries <tom@codesourcery.com>
  6359. PR target/85445
  6360. * testsuite/libgomp.oacc-c++/ref-1.C: New.
  6361. 2018-04-19 Thomas Schwinge <thomas@codesourcery.com>
  6362. PR libgomp/85463
  6363. * testsuite/libgomp.oacc-fortran/error_stop-1.f: New file.
  6364. * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
  6365. * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
  6366. * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
  6367. * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
  6368. * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
  6369. PR libfortran/85166
  6370. * testsuite/libgomp.oacc-fortran/abort-1.f90: Switch back to "call
  6371. abort".
  6372. * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
  6373. 2018-04-19 Jakub Jelinek <jakub@redhat.com>
  6374. * configure: Regenerated.
  6375. 2018-04-18 David Malcolm <dmalcolm@redhat.com>
  6376. PR jit/85384
  6377. * configure: Regenerate.
  6378. 2018-04-16 Cesar Philippidis <cesar@codesourcery.com>
  6379. Tom de Vries <tom@codesourcery.com>
  6380. PR middle-end/84955
  6381. * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
  6382. * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
  6383. 2018-04-12 Thomas Koenig <tkoenig@gcc.gnu.org>
  6384. PR fortran/83064
  6385. PR testsuite/85346
  6386. * testsuite/libgomp.fortran/do_concurrent_5.f90: Move modified
  6387. test from gfortran.dg to here.
  6388. 2018-04-12 Cesar Philippidis <cesar@codesourcery.com>
  6389. * testsuite/libgomp.oacc-c-c++-common/pr84955.c: Revert 259346.
  6390. * testsuite/libgomp.oacc-fortran/pr84955.f90: Likewise.
  6391. 2018-04-12 Cesar Philippidis <cesar@codesourcery.com>
  6392. PR middle-end/84955
  6393. * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
  6394. * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
  6395. 2018-04-05 Tom de Vries <tom@codesourcery.com>
  6396. PR target/85204
  6397. * testsuite/libgomp.oacc-c-c++-common/broadcast-1.c: New test.
  6398. 2018-03-26 Tom de Vries <tom@codesourcery.com>
  6399. PR tree-optimization/85063
  6400. * testsuite/libgomp.c/switch-conversion-2.c: New test.
  6401. * testsuite/libgomp.c/switch-conversion.c: New test.
  6402. * testsuite/libgomp.oacc-c-c++-common/switch-conversion-2.c: New test.
  6403. * testsuite/libgomp.oacc-c-c++-common/switch-conversion.c: New test.
  6404. 2018-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
  6405. PR fortran/84381
  6406. * testsuite/libgomp.fortran/aligned1.f03: Replace non-standard
  6407. call abort by STOP n.
  6408. * testsuite/libgomp.fortran/alloc-comp-1.f90: Likewise.
  6409. * testsuite/libgomp.fortran/alloc-comp-2.f90: Likewise.
  6410. * testsuite/libgomp.fortran/alloc-comp-3.f90: Likewise.
  6411. * testsuite/libgomp.fortran/allocatable1.f90: Likewise.
  6412. * testsuite/libgomp.fortran/allocatable10.f90: Likewise.
  6413. * testsuite/libgomp.fortran/allocatable11.f90: Likewise.
  6414. * testsuite/libgomp.fortran/allocatable12.f90: Likewise.
  6415. * testsuite/libgomp.fortran/allocatable2.f90: Likewise.
  6416. * testsuite/libgomp.fortran/allocatable3.f90: Likewise.
  6417. * testsuite/libgomp.fortran/allocatable4.f90: Likewise.
  6418. * testsuite/libgomp.fortran/allocatable5.f90: Likewise.
  6419. * testsuite/libgomp.fortran/allocatable6.f90: Likewise.
  6420. * testsuite/libgomp.fortran/allocatable7.f90: Likewise.
  6421. * testsuite/libgomp.fortran/allocatable8.f90: Likewise.
  6422. * testsuite/libgomp.fortran/allocatable9.f90: Likewise.
  6423. * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise.
  6424. * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Likewise.
  6425. * testsuite/libgomp.fortran/associate1.f90: Likewise.
  6426. * testsuite/libgomp.fortran/associate2.f90: Likewise.
  6427. * testsuite/libgomp.fortran/associate3.f90: Likewise.
  6428. * testsuite/libgomp.fortran/cancel-do-1.f90: Likewise.
  6429. * testsuite/libgomp.fortran/cancel-do-2.f90: Likewise.
  6430. * testsuite/libgomp.fortran/cancel-parallel-1.f90: Likewise.
  6431. * testsuite/libgomp.fortran/cancel-sections-1.f90: Likewise.
  6432. * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Likewise.
  6433. * testsuite/libgomp.fortran/character1.f90: Likewise.
  6434. * testsuite/libgomp.fortran/character2.f90: Likewise.
  6435. * testsuite/libgomp.fortran/collapse1.f90: Likewise.
  6436. * testsuite/libgomp.fortran/collapse2.f90: Likewise.
  6437. * testsuite/libgomp.fortran/collapse3.f90: Likewise.
  6438. * testsuite/libgomp.fortran/collapse4.f90: Likewise.
  6439. * testsuite/libgomp.fortran/crayptr1.f90: Likewise.
  6440. * testsuite/libgomp.fortran/crayptr2.f90: Likewise.
  6441. * testsuite/libgomp.fortran/crayptr3.f90: Likewise.
  6442. * testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
  6443. * testsuite/libgomp.fortran/declare-simd-3.f90: Likewise.
  6444. * testsuite/libgomp.fortran/declare-target-2.f90: Likewise.
  6445. * testsuite/libgomp.fortran/depend-1.f90: Likewise.
  6446. * testsuite/libgomp.fortran/depend-2.f90: Likewise.
  6447. * testsuite/libgomp.fortran/depend-3.f90: Likewise.
  6448. * testsuite/libgomp.fortran/do1.f90: Likewise.
  6449. * testsuite/libgomp.fortran/do2.f90: Likewise.
  6450. * testsuite/libgomp.fortran/doacross1.f90: Likewise.
  6451. * testsuite/libgomp.fortran/doacross2.f90: Likewise.
  6452. * testsuite/libgomp.fortran/doacross3.f90: Likewise.
  6453. * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Likewise.
  6454. * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Likewise.
  6455. * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Likewise.
  6456. * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
  6457. * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Likewise.
  6458. * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Likewise.
  6459. * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Likewise.
  6460. * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Likewise.
  6461. * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Likewise.
  6462. * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
  6463. * testsuite/libgomp.fortran/examples-4/device-2.f90: Likewise.
  6464. * testsuite/libgomp.fortran/examples-4/device-3.f90: Likewise.
  6465. * testsuite/libgomp.fortran/examples-4/simd-1.f90: Likewise.
  6466. * testsuite/libgomp.fortran/examples-4/simd-2.f90: Likewise.
  6467. * testsuite/libgomp.fortran/examples-4/simd-3.f90: Likewise.
  6468. * testsuite/libgomp.fortran/examples-4/simd-4.f90: Likewise.
  6469. * testsuite/libgomp.fortran/examples-4/simd-5.f90: Likewise.
  6470. * testsuite/libgomp.fortran/examples-4/simd-6.f90: Likewise.
  6471. * testsuite/libgomp.fortran/examples-4/simd-7.f90: Likewise.
  6472. * testsuite/libgomp.fortran/examples-4/simd-8.f90: Likewise.
  6473. * testsuite/libgomp.fortran/examples-4/target-1.f90: Likewise.
  6474. * testsuite/libgomp.fortran/examples-4/target-2.f90: Likewise.
  6475. * testsuite/libgomp.fortran/examples-4/target-3.f90: Likewise.
  6476. * testsuite/libgomp.fortran/examples-4/target-4.f90: Likewise.
  6477. * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
  6478. * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Likewise.
  6479. * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Likewise.
  6480. * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Likewise.
  6481. * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Likewise.
  6482. * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Likewise.
  6483. * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
  6484. * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
  6485. * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Likewise.
  6486. * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Likewise.
  6487. * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Likewise.
  6488. * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Likewise.
  6489. * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Likewise.
  6490. * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Likewise.
  6491. * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Likewise.
  6492. * testsuite/libgomp.fortran/examples-4/teams-2.f90: Likewise.
  6493. * testsuite/libgomp.fortran/examples-4/teams-3.f90: Likewise.
  6494. * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
  6495. * testsuite/libgomp.fortran/examples-4/teams-5.f90: Likewise.
  6496. * testsuite/libgomp.fortran/examples-4/teams-6.f90: Likewise.
  6497. * testsuite/libgomp.fortran/lastprivate1.f90: Likewise.
  6498. * testsuite/libgomp.fortran/lastprivate2.f90: Likewise.
  6499. * testsuite/libgomp.fortran/lib1.f90: Likewise.
  6500. * testsuite/libgomp.fortran/lib2.f: Likewise.
  6501. * testsuite/libgomp.fortran/lib3.f: Likewise.
  6502. * testsuite/libgomp.fortran/lib4.f90: Likewise.
  6503. * testsuite/libgomp.fortran/lock-1.f90: Likewise.
  6504. * testsuite/libgomp.fortran/lock-2.f90: Likewise.
  6505. * testsuite/libgomp.fortran/nested1.f90: Likewise.
  6506. * testsuite/libgomp.fortran/nestedfn1.f90: Likewise.
  6507. * testsuite/libgomp.fortran/nestedfn2.f90: Likewise.
  6508. * testsuite/libgomp.fortran/nestedfn3.f90: Likewise.
  6509. * testsuite/libgomp.fortran/nestedfn4.f90: Likewise.
  6510. * testsuite/libgomp.fortran/nestedfn5.f90: Likewise.
  6511. * testsuite/libgomp.fortran/omp_atomic1.f90: Likewise.
  6512. * testsuite/libgomp.fortran/omp_atomic2.f90: Likewise.
  6513. * testsuite/libgomp.fortran/omp_atomic3.f90: Likewise.
  6514. * testsuite/libgomp.fortran/omp_atomic4.f90: Likewise.
  6515. * testsuite/libgomp.fortran/omp_atomic5.f90: Likewise.
  6516. * testsuite/libgomp.fortran/omp_cond1.f: Likewise.
  6517. * testsuite/libgomp.fortran/omp_cond2.f: Likewise.
  6518. * testsuite/libgomp.fortran/omp_cond3.F90: Likewise.
  6519. * testsuite/libgomp.fortran/omp_cond4.F90: Likewise.
  6520. * testsuite/libgomp.fortran/omp_parse1.f90: Likewise.
  6521. * testsuite/libgomp.fortran/omp_parse2.f90: Likewise.
  6522. * testsuite/libgomp.fortran/omp_parse3.f90: Likewise.
  6523. * testsuite/libgomp.fortran/omp_parse4.f90: Likewise.
  6524. * testsuite/libgomp.fortran/openmp_version-1.f: Likewise.
  6525. * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
  6526. * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Likewise.
  6527. * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Likewise.
  6528. * testsuite/libgomp.fortran/pointer1.f90: Likewise.
  6529. * testsuite/libgomp.fortran/pointer2.f90: Likewise.
  6530. * testsuite/libgomp.fortran/pr25162.f: Likewise.
  6531. * testsuite/libgomp.fortran/pr25219.f90: Likewise.
  6532. * testsuite/libgomp.fortran/pr27395-1.f90: Likewise.
  6533. * testsuite/libgomp.fortran/pr27395-2.f90: Likewise.
  6534. * testsuite/libgomp.fortran/pr27416-1.f90: Likewise.
  6535. * testsuite/libgomp.fortran/pr27916-1.f90: Likewise.
  6536. * testsuite/libgomp.fortran/pr27916-2.f90: Likewise.
  6537. * testsuite/libgomp.fortran/pr28390.f: Likewise.
  6538. * testsuite/libgomp.fortran/pr29629.f90: Likewise.
  6539. * testsuite/libgomp.fortran/pr32550.f90: Likewise.
  6540. * testsuite/libgomp.fortran/pr33880.f90: Likewise.
  6541. * testsuite/libgomp.fortran/pr34020.f90: Likewise.
  6542. * testsuite/libgomp.fortran/pr35130.f90: Likewise.
  6543. * testsuite/libgomp.fortran/pr42162.f90: Likewise.
  6544. * testsuite/libgomp.fortran/pr46753.f90: Likewise.
  6545. * testsuite/libgomp.fortran/pr48894.f90: Likewise.
  6546. * testsuite/libgomp.fortran/pr49792-1.f90: Likewise.
  6547. * testsuite/libgomp.fortran/pr49792-2.f90: Likewise.
  6548. * testsuite/libgomp.fortran/pr63938-1.f90: Likewise.
  6549. * testsuite/libgomp.fortran/pr63938-2.f90: Likewise.
  6550. * testsuite/libgomp.fortran/pr65597.f90: Likewise.
  6551. * testsuite/libgomp.fortran/pr66199-1.f90: Likewise.
  6552. * testsuite/libgomp.fortran/pr71014.f90: Likewise.
  6553. * testsuite/libgomp.fortran/pr81304.f90: Likewise.
  6554. * testsuite/libgomp.fortran/pr81841.f90: Likewise.
  6555. * testsuite/libgomp.fortran/pr84418-1.f90: Likewise.
  6556. * testsuite/libgomp.fortran/pr84418-2.f90: Likewise.
  6557. * testsuite/libgomp.fortran/procptr1.f90: Likewise.
  6558. * testsuite/libgomp.fortran/recursion1.f90: Likewise.
  6559. * testsuite/libgomp.fortran/reduction1.f90: Likewise.
  6560. * testsuite/libgomp.fortran/reduction2.f90: Likewise.
  6561. * testsuite/libgomp.fortran/reduction3.f90: Likewise.
  6562. * testsuite/libgomp.fortran/reduction4.f90: Likewise.
  6563. * testsuite/libgomp.fortran/reduction5.f90: Likewise.
  6564. * testsuite/libgomp.fortran/reduction6.f90: Likewise.
  6565. * testsuite/libgomp.fortran/reference1.f90: Likewise.
  6566. * testsuite/libgomp.fortran/reference2.f90: Likewise.
  6567. * testsuite/libgomp.fortran/retval1.f90: Likewise.
  6568. * testsuite/libgomp.fortran/retval2.f90: Likewise.
  6569. * testsuite/libgomp.fortran/sharing1.f90: Likewise.
  6570. * testsuite/libgomp.fortran/sharing2.f90: Likewise.
  6571. * testsuite/libgomp.fortran/simd1.f90: Likewise.
  6572. * testsuite/libgomp.fortran/simd2.f90: Likewise.
  6573. * testsuite/libgomp.fortran/simd3.f90: Likewise.
  6574. * testsuite/libgomp.fortran/simd4.f90: Likewise.
  6575. * testsuite/libgomp.fortran/simd5.f90: Likewise.
  6576. * testsuite/libgomp.fortran/simd6.f90: Likewise.
  6577. * testsuite/libgomp.fortran/simd7.f90: Likewise.
  6578. * testsuite/libgomp.fortran/stack.f90: Likewise.
  6579. * testsuite/libgomp.fortran/strassen.f90: Likewise.
  6580. * testsuite/libgomp.fortran/tabs1.f90: Likewise.
  6581. * testsuite/libgomp.fortran/tabs2.f: Likewise.
  6582. * testsuite/libgomp.fortran/target1.f90: Likewise.
  6583. * testsuite/libgomp.fortran/target2.f90: Likewise.
  6584. * testsuite/libgomp.fortran/target3.f90: Likewise.
  6585. * testsuite/libgomp.fortran/target4.f90: Likewise.
  6586. * testsuite/libgomp.fortran/target5.f90: Likewise.
  6587. * testsuite/libgomp.fortran/target6.f90: Likewise.
  6588. * testsuite/libgomp.fortran/target7.f90: Likewise.
  6589. * testsuite/libgomp.fortran/target8.f90: Likewise.
  6590. * testsuite/libgomp.fortran/task1.f90: Likewise.
  6591. * testsuite/libgomp.fortran/task2.f90: Likewise.
  6592. * testsuite/libgomp.fortran/task3.f90: Likewise.
  6593. * testsuite/libgomp.fortran/task4.f90: Likewise.
  6594. * testsuite/libgomp.fortran/taskgroup1.f90: Likewise.
  6595. * testsuite/libgomp.fortran/taskloop1.f90: Likewise.
  6596. * testsuite/libgomp.fortran/taskloop2.f90: Likewise.
  6597. * testsuite/libgomp.fortran/taskloop3.f90: Likewise.
  6598. * testsuite/libgomp.fortran/taskloop4.f90: Likewise.
  6599. * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
  6600. * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
  6601. * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
  6602. * testsuite/libgomp.fortran/threadprivate4.f90: Likewise.
  6603. * testsuite/libgomp.fortran/udr1.f90: Likewise.
  6604. * testsuite/libgomp.fortran/udr10.f90: Likewise.
  6605. * testsuite/libgomp.fortran/udr11.f90: Likewise.
  6606. * testsuite/libgomp.fortran/udr12.f90: Likewise.
  6607. * testsuite/libgomp.fortran/udr13.f90: Likewise.
  6608. * testsuite/libgomp.fortran/udr14.f90: Likewise.
  6609. * testsuite/libgomp.fortran/udr15.f90: Likewise.
  6610. * testsuite/libgomp.fortran/udr2.f90: Likewise.
  6611. * testsuite/libgomp.fortran/udr3.f90: Likewise.
  6612. * testsuite/libgomp.fortran/udr4.f90: Likewise.
  6613. * testsuite/libgomp.fortran/udr5.f90: Likewise.
  6614. * testsuite/libgomp.fortran/udr6.f90: Likewise.
  6615. * testsuite/libgomp.fortran/udr7.f90: Likewise.
  6616. * testsuite/libgomp.fortran/udr8.f90: Likewise.
  6617. * testsuite/libgomp.fortran/udr9.f90: Likewise.
  6618. * testsuite/libgomp.fortran/vla1.f90: Likewise.
  6619. * testsuite/libgomp.fortran/vla2.f90: Likewise.
  6620. * testsuite/libgomp.fortran/vla3.f90: Likewise.
  6621. * testsuite/libgomp.fortran/vla4.f90: Likewise.
  6622. * testsuite/libgomp.fortran/vla5.f90: Likewise.
  6623. * testsuite/libgomp.fortran/vla6.f90: Likewise.
  6624. * testsuite/libgomp.fortran/vla7.f90: Likewise.
  6625. * testsuite/libgomp.fortran/vla8.f90: Likewise.
  6626. * testsuite/libgomp.fortran/workshare1.f90: Likewise.
  6627. * testsuite/libgomp.fortran/workshare2.f90: Likewise.
  6628. * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
  6629. * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
  6630. * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
  6631. * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
  6632. * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
  6633. * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
  6634. * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
  6635. * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
  6636. * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
  6637. * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: Likewise.
  6638. * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
  6639. * testsuite/libgomp.oacc-fortran/c2.pl: Likewise.
  6640. * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
  6641. * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
  6642. * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
  6643. * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
  6644. * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
  6645. * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
  6646. * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
  6647. * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
  6648. * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
  6649. * testsuite/libgomp.oacc-fortran/combined-directives-1.f90: Likewise.
  6650. * testsuite/libgomp.oacc-fortran/combined-reduction.f90: Likewise.
  6651. * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
  6652. * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
  6653. * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
  6654. * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
  6655. * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
  6656. * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
  6657. * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
  6658. * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
  6659. * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
  6660. * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
  6661. * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
  6662. * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
  6663. * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
  6664. * testsuite/libgomp.oacc-fortran/host_data-1.f90: Likewise.
  6665. * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
  6666. * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90: Likewise.
  6667. * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
  6668. * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Likewise.
  6669. * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95: Likewise.
  6670. * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Likewise.
  6671. * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Likewise.
  6672. * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
  6673. * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
  6674. * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
  6675. * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
  6676. * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
  6677. * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
  6678. * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
  6679. * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
  6680. * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
  6681. * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
  6682. * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
  6683. * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
  6684. * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
  6685. * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
  6686. * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Likewise.
  6687. * testsuite/libgomp.oacc-fortran/nested-function-2.f90: Likewise.
  6688. * testsuite/libgomp.oacc-fortran/nested-function-3.f90: Likewise.
  6689. * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
  6690. * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
  6691. * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
  6692. * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
  6693. * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
  6694. * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
  6695. * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
  6696. * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
  6697. * testsuite/libgomp.oacc-fortran/pr81352.f90: Likewise.
  6698. * testsuite/libgomp.oacc-fortran/pr83920.f90: Likewise.
  6699. * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
  6700. * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
  6701. * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
  6702. * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
  6703. * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
  6704. * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
  6705. * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
  6706. * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
  6707. * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
  6708. * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
  6709. * testsuite/libgomp.oacc-fortran/reduction-8.f90: Likewise.
  6710. * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
  6711. * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
  6712. * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
  6713. * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
  6714. * testsuite/libgomp.oacc-fortran/routine-5.f90: Likewise.
  6715. * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
  6716. * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
  6717. * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
  6718. * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
  6719. * testsuite/libgomp.oacc-fortran/update-1.f90: Likewise.
  6720. 2018-03-20 Richard Biener <rguenther@suse.de>
  6721. * testsuite/libgomp.graphite/force-parallel-4.c: XFAIL one
  6722. parallelizable loop.
  6723. 2018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
  6724. PR target/84148
  6725. * configure: Regenerate.
  6726. 2018-02-16 Jakub Jelinek <jakub@redhat.com>
  6727. PR fortran/84418
  6728. * libgomp.fortran/pr84418-1.f90: New test.
  6729. * libgomp.fortran/pr84418-2.f90: New test.
  6730. 2018-02-14 Jakub Jelinek <jakub@redhat.com>
  6731. PR fortran/84313
  6732. * testsuite/libgomp.fortran/threadprivate4.f90: Add
  6733. -std=f2003 -fall-intrinsics into dg-additional-options.
  6734. 2018-02-08 Martin Jambor <mjambor@suse.cz>
  6735. * testsuite/libgomp.hsa.c/pr82416.c: Make the function with target
  6736. clonable.
  6737. 2018-02-08 Martin Jambor <mjambor@suse.cz>
  6738. * testsuite/libgomp.hsa.c/staticvar.c: New test.
  6739. 2018-02-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  6740. * testsuite/libgomp.oacc-c-c++-common/pr84217.c (abort)
  6741. [__cplusplus]: Declare extern "C".
  6742. 2018-02-07 Tom de Vries <tom@codesourcery.com>
  6743. PR libgomp/84217
  6744. * testsuite/libgomp.oacc-c-c++-common/pr84217.c: New test.
  6745. 2018-01-29 Christoph Spiel <cspiel@freenet.de>
  6746. Jakub Jelinek <jakub@redhat.com>
  6747. PR libgomp/84096
  6748. * omp.h.in (omp_init_nest_lock_with_hint): Use omp_nest_lock_t
  6749. instead of omp_lock_t.
  6750. 2018-01-25 Tom de Vries <tom@codesourcery.com>
  6751. PR target/84028
  6752. * testsuite/libgomp.oacc-fortran/pr84028.f90: New test.
  6753. 2018-01-24 Tom de Vries <tom@codesourcery.com>
  6754. PR target/83589
  6755. * testsuite/libgomp.oacc-c-c++-common/pr83589.c: New test.
  6756. 2018-01-24 Tom de Vries <tom@codesourcery.com>
  6757. PR target/81352
  6758. * testsuite/libgomp.oacc-fortran/pr81352.f90: New test.
  6759. 2018-01-19 Tom de Vries <tom@codesourcery.com>
  6760. Cesar Philippidis <cesar@codesourcery.com>
  6761. PR target/83920
  6762. * testsuite/libgomp.oacc-c-c++-common/pr83920.c: New test.
  6763. * testsuite/libgomp.oacc-fortran/pr83920.f90: New test.
  6764. 2018-01-03 Jakub Jelinek <jakub@redhat.com>
  6765. Update copyright years.
  6766. * libgomp.texi: Bump @copying's copyright year.
  6767. 2017-12-30 Tom de Vries <tom@codesourcery.com>
  6768. PR libgomp/83046
  6769. * testsuite/libgomp.oacc-c-c++-common/pr83046.c: New test.
  6770. * testsuite/libgomp.c-c++-common/pr83046.c: New test.
  6771. 2017-12-27 Tom de Vries <tom@codesourcery.com>
  6772. PR c++/83046
  6773. * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c (test_static)
  6774. (test_nonstatic): Fix return type to workaround PR83046.
  6775. 2017-12-05 Jakub Jelinek <jakub@redhat.com>
  6776. PR testsuite/83281
  6777. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c (main): Use
  6778. j suffix instead of i.
  6779. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c (main):
  6780. Likewise.
  6781. 2017-12-01 Cesar Philippidis <cesar@codesourcery.com>
  6782. * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Add missing
  6783. call to acc_wait (1).
  6784. 2017-11-24 Jakub Jelinek <jakub@redhat.com>
  6785. PR fortran/81304
  6786. * testsuite/libgomp.fortran/pr81304.f90: New test.
  6787. 2017-11-23 Jakub Jelinek <jakub@redhat.com>
  6788. PR fortran/81841
  6789. * libgomp.fortran/pr81841.f90: New test.
  6790. 2017-11-22 Jakub Jelinek <jakub@redhat.com>
  6791. PR libgomp/83106
  6792. * target.c (gomp_target_init): Compute lengths just once and
  6793. use them in both malloc size and subsequent copying.
  6794. 2017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
  6795. * configure.ac: Set CET_FLAGS, update XCFLAGS and FCFLAGS.
  6796. * acinclude.m4: Add cet.m4.
  6797. * configure: Regenerate.
  6798. * Makefile.in: Likewise.
  6799. * testsuite/Makefile.in: Likewise.
  6800. 2017-11-15 Tom de Vries <tom@codesourcery.com>
  6801. * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: New test, copied
  6802. from asyncwait-1.f90. Rewrite into C. Rewrite from float to int.
  6803. * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: New test, copied
  6804. from asyncwait-2.f90. Rewrite into C. Rewrite from float to int.
  6805. * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: New test, copied
  6806. from asyncwait-3.f90. Rewrite into C. Rewrite from float to int.
  6807. 2017-11-14 Tom de Vries <tom@codesourcery.com>
  6808. * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Allow to run for
  6809. non-nvidia devices.
  6810. 2017-11-07 Jakub Jelinek <jakub@redhat.com>
  6811. PR c++/82835
  6812. * testsuite/libgomp.c++/pr82835.C: New test.
  6813. 2017-11-06 Martin Liska <mliska@suse.cz>
  6814. * testsuite/libgomp.c++/loop-2.C: Return a value
  6815. for functions with non-void return type, or change type to void,
  6816. or add -Wno-return-type for test.
  6817. * testsuite/libgomp.c++/loop-4.C: Likewise.
  6818. * testsuite/libgomp.c++/parallel-1.C: Likewise.
  6819. * testsuite/libgomp.c++/shared-1.C: Likewise.
  6820. * testsuite/libgomp.c++/single-1.C: Likewise.
  6821. * testsuite/libgomp.c++/single-2.C: Likewise.
  6822. 2017-10-31 Tom de Vries <tom@codesourcery.com>
  6823. * plugin/plugin-hsa.c (HSA_LOG): Remove semicolon after
  6824. "do {} while (false)".
  6825. (init_single_kernel, GOMP_OFFLOAD_async_run): Add missing semicolon
  6826. after HSA_DEBUG call.
  6827. 2017-10-28 Jakub Jelinek <jakub@redhat.com>
  6828. * target.c (struct gomp_coalesce_buf): New type.
  6829. (MAX_COALESCE_BUF_SIZE, MAX_COALESCE_BUF_GAP): Define.
  6830. (gomp_coalesce_buf_add, gomp_to_device_kind_p): New functions.
  6831. (gomp_copy_host2dev): Add CBUF argument, if copying into
  6832. the cached ranges, memcpy into buffer instead of copying
  6833. into device.
  6834. (gomp_map_vars_existing, gomp_map_pointer, gomp_map_fields_existing):
  6835. Add CBUF argument, pass it through to other calls.
  6836. (gomp_map_vars): Aggregate copies from host to device if small enough
  6837. and with small enough gaps in between into memcpy into a buffer and
  6838. fewer host to device copies from the buffer.
  6839. (gomp_update): Adjust gomp_copy_host2dev caller.
  6840. 2017-10-17 Thomas Schwinge <thomas@codesourcery.com>
  6841. * testsuite/libgomp.oacc-fortran/declare-1.f90: Restore "dg-do
  6842. run" directive.
  6843. * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
  6844. * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
  6845. * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
  6846. * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
  6847. 2017-10-16 Tom de Vries <tom@codesourcery.com>
  6848. * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Don't require
  6849. openacc_nvidia_accel_selected.
  6850. * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Same.
  6851. * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Same.
  6852. * testsuite/libgomp.oacc-fortran/declare-2.f90: Same.
  6853. * testsuite/libgomp.oacc-fortran/declare-4.f90: Same
  6854. * testsuite/libgomp.oacc-fortran/declare-5.f90: Same.
  6855. * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Don't require
  6856. openacc_nvidia_accel_selected. Skip for shared memory device.
  6857. * testsuite/libgomp.oacc-fortran/declare-1.f90: Same.
  6858. * testsuite/libgomp.oacc-fortran/declare-3.f90: Same.
  6859. 2017-10-09 Martin Jambor <mjambor@suse.cz>
  6860. PR hsa/82416
  6861. * testsuite/libgomp.hsa.c/pr82416.c: New test.
  6862. 2017-10-07 Tom de Vries <tom@codesourcery.com>
  6863. * testsuite/libgomp.oacc-fortran/firstprivate-1.f90 (firstprivate):
  6864. Remove acc_device_nvidia references.
  6865. * testsuite/libgomp.oacc-fortran/parallel-reduction.f90 (reduction):
  6866. Same.
  6867. 2017-10-05 Tom de Vries <tom@codesourcery.com>
  6868. * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c (main): Remove
  6869. vector_length(32) clause from acc parallel directive.
  6870. * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c (main): Same.
  6871. 2017-10-04 Tom de Vries <tom@codesourcery.com>
  6872. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c
  6873. (main): Reduce sum of arr elements. Assert that hres is exactly
  6874. representable in 32-bit floating point.
  6875. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c
  6876. (main): Reduce sum of arr elements. Assert that hres and hmres are
  6877. exactly representable in 32-bit floating point.
  6878. * testsuite/libgomp.oacc-c-c++-common/reduction-7.c (gwv_np_4): Same.
  6879. 2017-09-28 Tom de Vries <tom@codesourcery.com>
  6880. * testsuite/libgomp.c++/for-12.C: Remove superfluous -fopenmp option
  6881. setting.
  6882. * testsuite/libgomp.c++/pr69393.C: Same.
  6883. * testsuite/libgomp.c++/taskloop-1.C: Same.
  6884. * testsuite/libgomp.c++/taskloop-3.C: Same.
  6885. * testsuite/libgomp.c++/taskloop-4.C: Same.
  6886. * testsuite/libgomp.c/for-4.c: Same.
  6887. * testsuite/libgomp.c/pr66199-3.c: Same.
  6888. * testsuite/libgomp.c/pr66199-4.c: Same.
  6889. * testsuite/libgomp.c/pr66199-6.c: Same.
  6890. * testsuite/libgomp.c/taskloop-1.c: Same.
  6891. * testsuite/libgomp.c/taskloop-3.c: Same.
  6892. * testsuite/libgomp.c/taskloop-4.c: Same.
  6893. * testsuite/libgomp.fortran/aligned1.f03: Same.
  6894. * testsuite/libgomp.fortran/condinc1.f: Same.
  6895. * testsuite/libgomp.fortran/condinc3.f90: Same.
  6896. * testsuite/libgomp.fortran/crayptr1.f90: Same.
  6897. * testsuite/libgomp.fortran/crayptr2.f90: Same.
  6898. * testsuite/libgomp.fortran/crayptr3.f90: Same.
  6899. * testsuite/libgomp.fortran/omp_cond1.f: Same.
  6900. * testsuite/libgomp.fortran/omp_cond3.F90: Same.
  6901. * testsuite/libgomp.fortran/pr66199-1.f90: Same.
  6902. * testsuite/libgomp.fortran/pr66199-2.f90: Same.
  6903. * testsuite/libgomp.fortran/recursion1.f90: Same.
  6904. * testsuite/libgomp.fortran/target2.f90: Same.
  6905. * testsuite/libgomp.fortran/target5.f90: Same.
  6906. * testsuite/libgomp.fortran/task3.f90: Same.
  6907. 2017-09-28 Tom de Vries <tom@codesourcery.com>
  6908. * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c (main): Remove
  6909. vector_length(32) clause from acc parallel directive.
  6910. * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c (main): Same.
  6911. 2017-09-27 Tom de Vries <tom@codesourcery.com>
  6912. * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c (main):
  6913. Remove acc_device_nvidia references.
  6914. 2017-09-16 Tom de Vries <tom@codesourcery.com>
  6915. PR c/81875
  6916. * testsuite/libgomp.c-c++-common/pr81875.c: New test.
  6917. 2017-09-14 Tom de Vries <tom@codesourcery.com>
  6918. * testsuite/libgomp.c++/cancel-taskgroup-1.C: Remove.
  6919. * testsuite/libgomp.c/cancel-taskgroup-1.c: Move to ...
  6920. * testsuite/libgomp.c-c++-common/cancel-taskgroup-1.c: ... here.
  6921. * testsuite/libgomp.c/c.exp: Include test-cases from
  6922. libgomp.c-c++-common.
  6923. * testsuite/libgomp.c++/c++.exp: Same. Force c++-mode compilation of .c
  6924. files.
  6925. 2017-09-14 Jakub Jelinek <jakub@redhat.com>
  6926. PR c++/81314
  6927. * testsuite/libgomp.c++/pr81314.C: New test.
  6928. 2017-09-03 Gerald Pfeifer <gerald@pfeifer.com>
  6929. * libgomp.texi (Top): www.openacc.org now uses https.
  6930. (Enabling OpenACC): Ditto.
  6931. (acc_get_num_devices): Ditto.
  6932. (acc_set_device_type): Ditto.
  6933. (acc_get_device_type): Ditto.
  6934. (acc_set_device_num): Ditto.
  6935. (acc_get_device_num): Ditto.
  6936. (acc_async_test): Ditto.
  6937. (acc_async_test_all): Ditto.
  6938. (acc_wait): Ditto.
  6939. (acc_wait_all): Ditto.
  6940. (acc_wait_all_async): Ditto.
  6941. (acc_wait_async): Ditto.
  6942. (acc_init): Ditto.
  6943. (acc_shutdown): Ditto.
  6944. (acc_on_device): Ditto.
  6945. (acc_malloc): Ditto.
  6946. (acc_free): Ditto.
  6947. (acc_copyin): Ditto.
  6948. (acc_present_or_copyin): Ditto.
  6949. (acc_create): Ditto.
  6950. (acc_present_or_create): Ditto.
  6951. (acc_copyout): Ditto.
  6952. (acc_delete): Ditto.
  6953. (acc_update_device): Ditto.
  6954. (acc_update_self): Ditto.
  6955. (acc_map_data): Ditto.
  6956. (acc_unmap_data): Ditto.
  6957. (acc_deviceptr): Ditto.
  6958. (acc_hostptr): Ditto.
  6959. (acc_is_present): Ditto.
  6960. (acc_memcpy_to_device): Ditto.
  6961. (acc_memcpy_from_device): Ditto.
  6962. (acc_get_current_cuda_device): Ditto.
  6963. (acc_get_current_cuda_context): Ditto.
  6964. (acc_get_cuda_stream): Ditto.
  6965. (acc_set_cuda_stream): Ditto.
  6966. (ACC_DEVICE_TYPE): Ditto.
  6967. (ACC_DEVICE_NUM): Ditto.
  6968. (OpenACC Library Interoperability): Ditto.
  6969. 2017-08-09 Jakub Jelinek <jakub@redhat.com>
  6970. PR c/81687
  6971. * testsuite/libgomp.c/pr81687-1.c: New test.
  6972. * testsuite/libgomp.c/pr81687-2.c: New test.
  6973. 2017-08-07 Jakub Jelinek <jakub@redhat.com>
  6974. PR c/69389
  6975. * testsuite/libgomp.c/pr69389.c: New test.
  6976. * testsuite/libgomp.c++/pr69389.C: New test.
  6977. 2017-08-07 Tom de Vries <tom@codesourcery.com>
  6978. PR middle-end/78266
  6979. * testsuite/libgomp.oacc-c-c++-common/vprop-2.c: New test.
  6980. * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove xfail.
  6981. 2017-07-27 Jakub Jelinek <jakub@redhat.com>
  6982. PR c/45784
  6983. * testsuite/libgomp.c/pr45784.c: New test.
  6984. * testsuite/libgomp.c++/pr45784.C: New test.
  6985. 2017-07-19 Tom de Vries <tom@codesourcery.com>
  6986. * testsuite/libgomp.oacc-c/vec.c: New test.
  6987. 2017-07-03 Tom de Vries <tom@codesourcery.com>
  6988. * plugin/plugin-hsa.c: Fix secure_getenv.h include.
  6989. 2017-06-27 Tom de Vries <tom@codesourcery.com>
  6990. * plugin/plugin-nvptx.c (notify_var): New function.
  6991. (nvptx_exec): Use notify_var for GOMP_OPENACC_DIM.
  6992. 2017-06-27 Tom de Vries <tom@codesourcery.com>
  6993. * env.c (parse_unsigned_long_1): Factor out of ...
  6994. (parse_unsigned_long): ... here.
  6995. (parse_int_1): Factor out of ...
  6996. (parse_int): ... here.
  6997. (parse_int_secure): New function.
  6998. (initialize_env): Use parse_int_secure for GOMP_DEBUG.
  6999. * secure_getenv.h: Factor out of ...
  7000. * plugin/plugin-hsa.c: ... here.
  7001. * testsuite/libgomp.oacc-c-c++-common/gomp-debug-env.c: New test.
  7002. 2017-06-21 Jakub Jelinek <jakub@redhat.com>
  7003. PR c++/81130
  7004. * testsuite/libgomp.c++/pr81130.C: New test.
  7005. 2017-06-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  7006. * testsuite/libgomp.fortran/strassen.f90: Remove dg-skip-if
  7007. default args.
  7008. * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove
  7009. dg-xfail-run-if default args.
  7010. 2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
  7011. * testsuite/libgomp.c/pr39591-2.c: Fix test case.
  7012. * testsuite/libgomp.c/pr39591-3.c: Likewise.
  7013. 2017-05-30 Jakub Jelinek <jakub@redhat.com>
  7014. PR libgomp/80822
  7015. * config/linux/affinity.c (gomp_affinity_init_level_1): New function.
  7016. (gomp_affinity_init_level): Use it. Always analyze the core and thread
  7017. sibling lists, depending on level just pick up what CPUs to put
  7018. together into a place vs. whether add multiple ordered places.
  7019. 2017-05-24 Thomas Schwinge <thomas@codesourcery.com>
  7020. * openacc.h (acc_async_wait, acc_async_wait_all): New prototypes.
  7021. * libgomp.map (OACC_2.0.1): Add these.
  7022. * oacc-async.c (acc_async_wait, acc_async_wait_all): New aliases
  7023. for "acc_wait", and "acc_wait_all", respectively.
  7024. * openacc.f90 (acc_async_wait, acc_async_wait_all): New interfaces
  7025. for "acc_wait", and "acc_wait_all", respectively.
  7026. * openacc_lib.h (acc_async_wait, acc_async_wait_all): Likewise.
  7027. * libgomp.texi (acc_wait, acc_wait_all): Update.
  7028. * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Update.
  7029. * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: New file.
  7030. * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
  7031. * openacc_lib.h (acc_pcopyin, acc_pcreate): Route to
  7032. acc_present_or_copyin and acc_present_or_create procedures,
  7033. respectively.
  7034. * testsuite/libgomp.oacc-fortran/lib-32-1.f: Exercise these, and
  7035. generally different variants of OpenACC Runtime Library functions.
  7036. * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
  7037. * testsuite/libgomp.oacc-fortran/lib-32-1.f: New file.
  7038. * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
  7039. * openacc.h (acc_pcopyin, acc_pcreate): Provide prototypes instead
  7040. of preprocessor definitions.
  7041. * libgomp.h (strong_alias): Guard by "#ifdef
  7042. HAVE_ATTRIBUTE_ALIAS".
  7043. * oacc-mem.c: Provide "acc_pcreate" as alias for
  7044. "acc_present_or_create", and "acc_pcopyin" as alias for
  7045. "acc_present_or_copyin".
  7046. * libgomp.map: New version "OACC_2.0.1".
  7047. (OACC_2.0.1): Add "acc_pcopyin", and "acc_pcreate".
  7048. * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Remove, merging
  7049. its content into...
  7050. * testsuite/libgomp.oacc-c-c++-common/lib-32.c: ... this file.
  7051. Extend testing.
  7052. * plugin/plugin-nvptx.c (nvptx_get_num_devices): Debugging output
  7053. when disabling nvptx offloading.
  7054. 2017-05-23 Thomas Schwinge <thomas@codesourcery.com>
  7055. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Update.
  7056. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
  7057. * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
  7058. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Rewrite.
  7059. * testsuite/lib/libgomp.exp
  7060. (check_effective_target_openacc_nvidia_accel_configured): New
  7061. proc.
  7062. * testsuite/libgomp.oacc-c++/c++.exp (check_effective_target_c)
  7063. (check_effective_target_c++): New procs.
  7064. * testsuite/libgomp.oacc-c/c.exp (check_effective_target_c)
  7065. (check_effective_target_c++): Likewise.
  7066. 2017-05-22 Jakub Jelinek <jakub@redhat.com>
  7067. PR middle-end/80809
  7068. * testsuite/libgomp.c/pr80809-2.c: New test.
  7069. * testsuite/libgomp.c/pr80809-3.c: New test.
  7070. PR middle-end/80809
  7071. * testsuite/libgomp.c/pr80809-1.c: New test.
  7072. PR middle-end/80853
  7073. * testsuite/libgomp.c/pr80853.c: New test.
  7074. 2017-05-19 Thomas Schwinge <thomas@codesourcery.com>
  7075. * testsuite/libgomp.oacc-c++/template-reduction.C: Update.
  7076. * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Update.
  7077. * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
  7078. * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
  7079. * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
  7080. * plugin/plugin-hsa.c (DLSYM_FN, init_hsa_runtime_functions):
  7081. Debug output for failure.
  7082. 2017-05-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  7083. * testsuite/lib/libgomp.exp: Load scanlang.exp.
  7084. 2017-04-27 Jakub Jelinek <jakub@redhat.com>
  7085. PR bootstrap/80531
  7086. * configure.tgt (*-*-aix*): Add -frandom-seed=$@ to XCFLAGS to avoid
  7087. bootstrap compare failures.
  7088. 2017-04-20 Alexander Monakov <amonakov@ispras.ru>
  7089. * testsuite/libgomp.c/target-36.c: New testcase.
  7090. 2017-04-13 Jakub Jelinek <jakub@redhat.com>
  7091. * plugin/plugin-nvptx.c (cuda_lib_inited): Use signed char type
  7092. instead of char.
  7093. 2017-04-11 Jakub Jelinek <jakub@redhat.com>
  7094. PR libgomp/80394
  7095. * testsuite/libgomp.c/pr80394.c: New test.
  7096. 2017-04-04 Jakub Jelinek <jakub@redhat.com>
  7097. PR libgomp/79876
  7098. * config/posix/thread-stacksize.h: New file.
  7099. * config/darwin/thread-stacksize.h: New file.
  7100. * config/nvptx/thread-stacksize.h: New file.
  7101. * env.c: Include thread-stacksize.h.
  7102. (initialize_env): Initialize stacksize to GOMP_DEFAULT_STACKSIZE
  7103. instead of 0. Call pthread_attr_setstacksize even if
  7104. GOMP_DEFAULT_STACKSIZE is non-zero.
  7105. 2017-03-30 Jakub Jelinek <jakub@redhat.com>
  7106. * env.c (initialize_env): Initialize stacksize to 0.
  7107. 2017-03-22 Cesar Philippidis <cesar@codesourcery.com>
  7108. PR c++/80029
  7109. * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: New test.
  7110. 2017-03-08 Jakub Jelinek <jakub@redhat.com>
  7111. PR c/79940
  7112. * testsuite/libgomp.c/pr79940.c: New test.
  7113. 2017-02-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  7114. * testsuite/libgomp.c/pr48591.c: Enable on all __float128
  7115. targets.
  7116. Add __float128 options.
  7117. 2017-02-11 John David Anglin <danglin@gcc.gnu.org>
  7118. * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Remove
  7119. hppa*-*-* dg-skip-if directive.
  7120. 2017-02-09 Jakub Jelinek <jakub@redhat.com>
  7121. * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Move
  7122. dg-skip-if directive into a comment.
  7123. 2017-02-09 Nathan Sidwell <nathan@codesourcery.com>
  7124. Chung-Lin Tang <cltang@codesourcery.com>
  7125. * testsuite/libgomp.oacc-c-c++-common/tile-1.c: New.
  7126. * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust and
  7127. add additional case.
  7128. * testsuite/libgomp.oacc-c-c++-common/vprop.c: XFAIL under
  7129. "openacc_nvidia_accel_selected".
  7130. * libgomp.oacc-fortran/nested-function-1.f90 (test2):
  7131. Add num_workers(8) clause.
  7132. 2017-02-08 John David Anglin <danglin@gcc.gnu.org>
  7133. * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Skip on
  7134. hppa*-*-*.
  7135. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Don't
  7136. include complex.h on hppa*-*-hpux*.
  7137. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
  7138. 2017-02-02 Thomas Schwinge <thomas@codesourcery.com>
  7139. * plugin/plugin-nvptx.c (nvptx_exec): Make it static.
  7140. * libgomp-plugin.h (GOMP_OFFLOAD_openacc_parallel): Rename to
  7141. GOMP_OFFLOAD_openacc_exec. Adjust all users.
  7142. (GOMP_OFFLOAD_openacc_get_current_cuda_device): Rename to
  7143. GOMP_OFFLOAD_openacc_cuda_get_current_device. Adjust all users.
  7144. (GOMP_OFFLOAD_openacc_get_current_cuda_context): Rename to
  7145. GOMP_OFFLOAD_openacc_cuda_get_current_context. Adjust all users.
  7146. (GOMP_OFFLOAD_openacc_get_cuda_stream): Rename to
  7147. GOMP_OFFLOAD_openacc_cuda_get_stream. Adjust all users.
  7148. (GOMP_OFFLOAD_openacc_set_cuda_stream): Rename to
  7149. GOMP_OFFLOAD_openacc_cuda_set_stream. Adjust all users.
  7150. 2017-01-31 Thomas Schwinge <thomas@codesourcery.com>
  7151. * libgomp-plugin.h: #include <stdbool.h>.
  7152. (GOMP_OFFLOAD_get_name, GOMP_OFFLOAD_get_caps)
  7153. (GOMP_OFFLOAD_get_type, GOMP_OFFLOAD_get_num_devices)
  7154. (GOMP_OFFLOAD_init_device, GOMP_OFFLOAD_fini_device)
  7155. (GOMP_OFFLOAD_version, GOMP_OFFLOAD_load_image)
  7156. (GOMP_OFFLOAD_unload_image, GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free)
  7157. (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_host2dev)
  7158. (GOMP_OFFLOAD_dev2dev, GOMP_OFFLOAD_can_run, GOMP_OFFLOAD_run)
  7159. (GOMP_OFFLOAD_async_run, GOMP_OFFLOAD_openacc_parallel)
  7160. (GOMP_OFFLOAD_openacc_register_async_cleanup)
  7161. (GOMP_OFFLOAD_openacc_async_test)
  7162. (GOMP_OFFLOAD_openacc_async_test_all)
  7163. (GOMP_OFFLOAD_openacc_async_wait)
  7164. (GOMP_OFFLOAD_openacc_async_wait_async)
  7165. (GOMP_OFFLOAD_openacc_async_wait_all)
  7166. (GOMP_OFFLOAD_openacc_async_wait_all_async)
  7167. (GOMP_OFFLOAD_openacc_async_set_async)
  7168. (GOMP_OFFLOAD_openacc_create_thread_data)
  7169. (GOMP_OFFLOAD_openacc_destroy_thread_data)
  7170. (GOMP_OFFLOAD_openacc_get_current_cuda_device)
  7171. (GOMP_OFFLOAD_openacc_get_current_cuda_context)
  7172. (GOMP_OFFLOAD_openacc_get_cuda_stream)
  7173. (GOMP_OFFLOAD_openacc_set_cuda_stream): New prototypes.
  7174. * libgomp.h (struct acc_dispatch_t, struct gomp_device_descr): Use
  7175. these.
  7176. * plugin/plugin-hsa.c (GOMP_OFFLOAD_load_image)
  7177. (GOMP_OFFLOAD_unload_image): Fix argument types.
  7178. 2017-01-26 Jakub Jelinek <jakub@redhat.com>
  7179. * testsuite/lib/libgomp.exp
  7180. (check_effective_target_hsa_offloading_selected_nocache): Fix up
  7181. check_compile invocation. Fix up removal of executable. Drop
  7182. bogus "2>&1" argument.
  7183. * testsuite/libgomp.fortran/declare-simd-4.f90: Add cleanup-modules
  7184. directive.
  7185. 2017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
  7186. Martin Jambor <mjambor@suse.cz>
  7187. * plugin/hsa.h: Moved to top level include.
  7188. * plugin/plugin-hsa.c: Chanfgd include of hsa.h accordingly.
  7189. 2017-01-21 Jakub Jelinek <jakub@redhat.com>
  7190. PR other/79046
  7191. * testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
  7192. of cat to get version from BASE-VER file.
  7193. * testsuite/Makefile.in: Regenerated.
  7194. 2017-01-19 Jakub Jelinek <jakub@redhat.com>
  7195. * plugin/cuda/cuda.h (CUdeviceptr): Typedef to unsigned long long even
  7196. for _WIN64.
  7197. 2017-01-17 Jakub Jelinek <jakub@redhat.com>
  7198. * plugin/hsa.h: Add GCC runtime library exception.
  7199. * plugin/hsa_ext_finalize.h: Likewise.
  7200. * plugin/configfrag.ac: For --without-cuda-driver don't initialize
  7201. CUDA_DRIVER_INCLUDE nor CUDA_DRIVER_LIB. If both
  7202. CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB are empty and linking small
  7203. cuda program fails, define PLUGIN_NVPTX_DYNAMIC to 1 and use
  7204. plugin/include/cuda as include dir and -ldl instead of -lcuda as
  7205. library to link ptx plugin against.
  7206. * plugin/plugin-nvptx.c: Include dlfcn.h if PLUGIN_NVPTX_DYNAMIC.
  7207. (CUDA_CALLS): Define.
  7208. (cuda_lib, cuda_lib_inited): New variables.
  7209. (init_cuda_lib): New function.
  7210. (CUDA_CALL_PREFIX): Define.
  7211. (CUDA_CALL_ERET, CUDA_CALL_ASSERT): Use CUDA_CALL_PREFIX.
  7212. (CUDA_CALL): Use FN instead of (FN).
  7213. (CUDA_CALL_NOCHECK): Define.
  7214. (cuda_error, fini_streams_for_device, select_stream_for_async,
  7215. nvptx_attach_host_thread_to_device, nvptx_open_device, link_ptx,
  7216. event_gc, nvptx_exec, nvptx_async_test, nvptx_async_test_all,
  7217. nvptx_wait_all, nvptx_set_clocktick, GOMP_OFFLOAD_unload_image,
  7218. nvptx_stacks_alloc, nvptx_stacks_free, GOMP_OFFLOAD_run): Use
  7219. CUDA_CALL_NOCHECK.
  7220. (nvptx_init): Call init_cuda_lib, if it fails, return false. Use
  7221. CUDA_CALL_NOCHECK.
  7222. (nvptx_get_num_devices): Call init_cuda_lib, if it fails, return 0.
  7223. Use CUDA_CALL_NOCHECK.
  7224. * plugin/cuda/cuda.h: New file.
  7225. * config.h.in: Regenerated.
  7226. * configure: Regenerated.
  7227. PR other/79046
  7228. * configure.ac: Add GCC_BASE_VER.
  7229. * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
  7230. get version from BASE-VER file.
  7231. * testsuite/Makefile.in: Regenerated.
  7232. * configure: Regenerated.
  7233. * Makefile.in: Regenerated.
  7234. 2017-01-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
  7235. PR libgomp/60670
  7236. * Makefile.am: Make fincludedir multilib-aware.
  7237. * Makefile.in: Regenerate.
  7238. 2017-01-01 Jakub Jelinek <jakub@redhat.com>
  7239. Update copyright years.
  7240. * libgomp.texi: Bump @copying's copyright year.
  7241. 2016-12-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
  7242. * libgomp/config/rtems/pool.h (gomp_thread_pool_reservoir): Use
  7243. pthread_spinlock_t instead of gomp_mutex_t lock.
  7244. (gomp_get_thread_pool): Likewise.
  7245. (gomp_release_thread_pool): Likewise.
  7246. * libgomp/config/rtems/proc.c (allocate_thread_pool_reservoir):
  7247. Likewise.
  7248. 2016-12-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
  7249. * config/rtems/pool.h (gomp_get_thread_pool): Return proper
  7250. thread pool in case nthreads == 1.
  7251. 2016-11-30 Alexander Monakov <amonakov@ispras.ru>
  7252. * config/nvptx/env.c: Delete.
  7253. * icv.c: Move definitions of ICV variables back ...
  7254. * env.c: ...here. Do not compile environment-related functionality if
  7255. LIBGOMP_OFFLOADED_ONLY is set.
  7256. 2016-11-30 Alexander Monakov <amonakov@ispras.ru>
  7257. * configure.ac [nvptx*-*-*] (libgomp_offloaded_only): Set and use it...
  7258. (LIBGOMP_OFFLOADED_ONLY): ...here; new define.
  7259. * configure: Regenerate.
  7260. * config.h.in: Likewise.
  7261. 2016-11-30 Alexander Monakov <amonakov@ispras.ru>
  7262. * Makefile.in: Regenerate with automake-1.11.6.
  7263. * aclocal.m4: Likewise.
  7264. * configure: Likewise.
  7265. * testsuite/Makefile.in: Likewise.
  7266. 2016-11-28 Alexander Monakov <amonakov@ispras.ru>
  7267. * config/nvptx/critical.c: Delete to use generic implementation.
  7268. 2016-11-28 Jonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de>
  7269. * config/linux/affinity.c [!HAVE_PTHREAD_AFFINITY_NP]: Include
  7270. ../../affinity.c as fallback.
  7271. * config/nvptx/affinity.c: Delete to use fallback implementation.
  7272. 2016-11-23 Alexander Monakov <amonakov@ispras.ru>
  7273. Jakub Jelinek <jakub@redhat.com>
  7274. Dmitry Melnik <dm@ispras.ru>
  7275. * Makefile.am (libgomp_la_SOURCES): Add atomic.c, icv.c, icv-device.c.
  7276. * Makefile.in. Regenerate.
  7277. * configure.ac [nvptx*-*-*] (libgomp_use_pthreads): Set and use it...
  7278. (LIBGOMP_USE_PTHREADS): ...here; new define.
  7279. * configure: Regenerate.
  7280. * config.h.in: Likewise.
  7281. * config/posix/affinity.c: Move to...
  7282. * affinity.c: ...here (new file). Guard use of Pthreads-specific
  7283. interface by LIBGOMP_USE_PTHREADS.
  7284. * critical.c: Split out GOMP_atomic_{start,end} into...
  7285. * atomic.c: ...here (new file).
  7286. * env.c: Split out ICV definitions into...
  7287. * icv.c: ...here (new file) and...
  7288. * icv-device.c: ...here. New file.
  7289. * config/linux/lock.c (gomp_init_lock_30): Move to generic lock.c.
  7290. (gomp_destroy_lock_30): Ditto.
  7291. (gomp_set_lock_30): Ditto.
  7292. (gomp_unset_lock_30): Ditto.
  7293. (gomp_test_lock_30): Ditto.
  7294. (gomp_init_nest_lock_30): Ditto.
  7295. (gomp_destroy_nest_lock_30): Ditto.
  7296. (gomp_set_nest_lock_30): Ditto.
  7297. (gomp_unset_nest_lock_30): Ditto.
  7298. (gomp_test_nest_lock_30): Ditto.
  7299. * lock.c: New.
  7300. * config/nvptx/lock.c: New.
  7301. * config/nvptx/bar.c: New.
  7302. * config/nvptx/bar.h: New.
  7303. * config/nvptx/doacross.h: New.
  7304. * config/nvptx/error.c: New.
  7305. * config/nvptx/icv-device.c: New.
  7306. * config/nvptx/mutex.h: New.
  7307. * config/nvptx/pool.h: New.
  7308. * config/nvptx/proc.c: New.
  7309. * config/nvptx/ptrlock.h: New.
  7310. * config/nvptx/sem.h: New.
  7311. * config/nvptx/simple-bar.h: New.
  7312. * config/nvptx/target.c: New.
  7313. * config/nvptx/task.c: New.
  7314. * config/nvptx/team.c: New.
  7315. * config/nvptx/time.c: New.
  7316. * config/posix/simple-bar.h: New.
  7317. * libgomp.h: Guard pthread.h inclusion. Include simple-bar.h.
  7318. (gomp_num_teams_var): Declare.
  7319. (struct gomp_thread_pool): Change threads_dock member to
  7320. gomp_simple_barrier_t.
  7321. [__nvptx__] (gomp_thread): New implementation.
  7322. (gomp_thread_attr): Guard by LIBGOMP_USE_PTHREADS.
  7323. (gomp_thread_destructor): Ditto.
  7324. (gomp_init_thread_affinity): Ditto.
  7325. * team.c: Guard uses of Pthreads-specific interfaces by
  7326. LIBGOMP_USE_PTHREADS. Adjust all uses of threads_dock.
  7327. (gomp_free_thread) [__nvptx__]: Do not call 'free'.
  7328. * config/nvptx/alloc.c: Delete.
  7329. * config/nvptx/barrier.c: Ditto.
  7330. * config/nvptx/fortran.c: Ditto.
  7331. * config/nvptx/iter.c: Ditto.
  7332. * config/nvptx/iter_ull.c: Ditto.
  7333. * config/nvptx/loop.c: Ditto.
  7334. * config/nvptx/loop_ull.c: Ditto.
  7335. * config/nvptx/ordered.c: Ditto.
  7336. * config/nvptx/parallel.c: Ditto.
  7337. * config/nvptx/priority_queue.c: Ditto.
  7338. * config/nvptx/sections.c: Ditto.
  7339. * config/nvptx/single.c: Ditto.
  7340. * config/nvptx/splay-tree.c: Ditto.
  7341. * config/nvptx/work.c: Ditto.
  7342. * testsuite/libgomp.fortran/fortran.exp (lang_link_flags): Pass
  7343. -foffload=-lgfortran in addition to -lgfortran.
  7344. * testsuite/libgomp.oacc-fortran/fortran.exp (lang_link_flags): Ditto.
  7345. * plugin/plugin-nvptx.c: Include <limits.h>.
  7346. (struct targ_fn_descriptor): Add new fields.
  7347. (struct ptx_device): Ditto. Set them...
  7348. (nvptx_open_device): ...here.
  7349. (nvptx_adjust_launch_bounds): New.
  7350. (nvptx_host2dev): Allow NULL 'nvthd'.
  7351. (nvptx_dev2host): Ditto.
  7352. (GOMP_OFFLOAD_get_caps): Add GOMP_OFFLOAD_CAP_OPENMP_400.
  7353. (link_ptx): Adjust log sizes.
  7354. (nvptx_host2dev): Allow NULL 'nvthd'.
  7355. (nvptx_dev2host): Ditto.
  7356. (nvptx_set_clocktick): New. Use it...
  7357. (GOMP_OFFLOAD_load_image): ...here. Set new targ_fn_descriptor
  7358. fields.
  7359. (GOMP_OFFLOAD_dev2dev): New.
  7360. (nvptx_adjust_launch_bounds): New.
  7361. (nvptx_stacks_size): New.
  7362. (nvptx_stacks_alloc): New.
  7363. (nvptx_stacks_free): New.
  7364. (GOMP_OFFLOAD_run): New.
  7365. (GOMP_OFFLOAD_async_run): New (stub).
  7366. 2016-11-23 Martin Jambor <mjambor@suse.cz>
  7367. * testsuite/libgomp.hsa.c/bits-insns.c: New test.
  7368. * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
  7369. * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
  7370. 2016-11-23 Martin Liska <mliska@suse.cz>
  7371. Martin Jambor <mjambor@suse.cz>
  7372. * plugin/hsa.h: New file.
  7373. * plugin/hsa_ext_finalize.h: New file.
  7374. * plugin/configfrag.ac: Remove hsa-kmt-lib test. Added checks for
  7375. header file unistd.h, and functions secure_getenv, __secure_getenv,
  7376. getuid, geteuid, getgid and getegid.
  7377. * plugin/Makefrag.am (libgomp_plugin_hsa_la_CPPFLAGS): Added
  7378. -D_GNU_SOURCE.
  7379. * plugin/plugin-hsa.c: Include config.h, inttypes.h and stdbool.h.
  7380. Handle various cases of secure_getenv presence, add an implementation
  7381. when we can test effective UID and GID.
  7382. (struct hsa_runtime_fn_info): New structure.
  7383. (hsa_runtime_fn_info hsa_fns): New variable.
  7384. (hsa_runtime_lib): Likewise.
  7385. (support_cpu_devices): Likewise.
  7386. (init_enviroment_variables): Load newly introduced ENV
  7387. variables.
  7388. (hsa_warn): Call hsa run-time functions via hsa_fns structure.
  7389. (hsa_fatal): Likewise.
  7390. (DLSYM_FN): New macro.
  7391. (init_hsa_runtime_functions): New function.
  7392. (suitable_hsa_agent_p): Call hsa run-time functions via hsa_fns
  7393. structure. Depending on environment, also allow CPU devices.
  7394. (init_hsa_context): Call hsa run-time functions via hsa_fns structure.
  7395. (get_kernarg_memory_region): Likewise.
  7396. (GOMP_OFFLOAD_init_device): Likewise.
  7397. (destroy_hsa_program): Likewise.
  7398. (init_basic_kernel_info): New function.
  7399. (GOMP_OFFLOAD_load_image): Use it.
  7400. (create_and_finalize_hsa_program): Call hsa run-time functions via
  7401. hsa_fns structure.
  7402. (create_single_kernel_dispatch): Likewise.
  7403. (release_kernel_dispatch): Likewise.
  7404. (init_single_kernel): Likewise.
  7405. (parse_target_attributes): Allow up multiple HSA grid dimensions.
  7406. (get_group_size): New function.
  7407. (run_kernel): Likewise.
  7408. (GOMP_OFFLOAD_run): Outline most functionality to run_kernel.
  7409. (GOMP_OFFLOAD_fini_device): Call hsa run-time functions via hsa_fns
  7410. structure.
  7411. * testsuite/lib/libgomp.exp: Remove hsa_kmt_lib support.
  7412. * testsuite/libgomp-test-support.exp.in: Likewise.
  7413. * Makefile.in: Regenerated.
  7414. * aclocal.m4: Likewise.
  7415. * config.h.in: Likewise.
  7416. * configure: Likewise.
  7417. * testsuite/Makefile.in: Likewise.
  7418. 2016-11-15 Martin Jambor <mjambor@suse.cz>
  7419. Alexander Monakov <amonakov@ispras.ru>
  7420. * testsuite/libgomp.fortran/examples-4/device-1.f90 (e_57_1): Add
  7421. mapping clauses to target constructs.
  7422. * testsuite/libgomp.fortran/examples-4/device-3.f90 (e_57_3): Ditto.
  7423. 2016-11-15 Matthias Klose <doko@ubuntu.com>
  7424. * configure: Regenerate.
  7425. 2016-11-10 Jakub Jelinek <jakub@redhat.com>
  7426. * omp_lib.f90.in (openmp_version): Change to 201511 from 201307.
  7427. * omp_lib.h.in (openmp_version): Likewise.
  7428. * testsuite/libgomp.fortran/openmp_version-1.f: Expect 201511 instead
  7429. of 201307.
  7430. * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
  7431. * testsuite/libgomp.fortran/examples-4/declare_target-1.f90
  7432. (fib_wrapper): Add map(from: x) clause.
  7433. * testsuite/libgomp.fortran/examples-4/declare_target-2.f90
  7434. (e_53_2): Likewise.
  7435. * testsuite/libgomp.fortran/examples-4/declare_target-4.f90
  7436. (accum): Add map(tmp) clause.
  7437. * testsuite/libgomp.fortran/examples-4/declare_target-5.f90
  7438. (accum): Add map(tofrom: tmp) clause.
  7439. * testsuite/libgomp.fortran/examples-4/target_data-3.f90
  7440. (gramSchmidt): Likewise.
  7441. * testsuite/libgomp.fortran/examples-4/teams-2.f90 (dotprod): Add
  7442. map(tofrom: sum) clause.
  7443. * testsuite/libgomp.fortran/nestedfn5.f90 (foo): Add twice
  7444. map (alloc: a, l) clause. Add defaultmap(tofrom: scalar) clause.
  7445. * testsuite/libgomp.fortran/pr66199-2.f90: Adjust for linear clause
  7446. only allowed on the loop iterator.
  7447. * testsuite/libgomp.fortran/target4.f90 (foo): Add map(t) clause.
  7448. * testsuite/libgomp.fortran/taskloop2.f90: New test.
  7449. * testsuite/libgomp.fortran/taskloop4.f90: New test.
  7450. * testsuite/libgomp.fortran/doacross1.f90: New test.
  7451. * testsuite/libgomp.fortran/doacross3.f90: New test.
  7452. * testsuite/libgomp.fortran/taskloop1.f90: New test.
  7453. * testsuite/libgomp.fortran/taskloop3.f90: New test.
  7454. * testsuite/libgomp.fortran/doacross2.f90: New test.
  7455. * testsuite/libgomp.c/doacross-1.c (main): Add missing
  7456. #pragma omp atomic read.
  7457. * testsuite/libgomp.c/doacross-2.c (main): Likewise.
  7458. * testsuite/libgomp.c/doacross-3.c (main): Likewise.
  7459. 2016-11-02 Cesar Philippidis <cesar@codesourcery.com>
  7460. Nathan Sidwell <nathan@acm.org>
  7461. * plugin/plugin-nvptx.c (nvptx_exec): Interrogate board attributes
  7462. to determine default geometry.
  7463. * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Set gang
  7464. dimension.
  7465. 2016-11-01 Jakub Jelinek <jakub@redhat.com>
  7466. * hashtab.h: Use standard GPLv3 with runtime exception
  7467. boilerplate.
  7468. 2016-10-27 Aldy Hernandez <aldyh@redhat.com>
  7469. * oacc-init.c (goacc_new_thread): Use sizeof of the appropriate
  7470. size when allocating new thread.
  7471. 2016-09-14 Marek Polacek <polacek@redhat.com>
  7472. * testsuite/libgomp.c++/atomic-3.C: Use -Wno-deprecated.
  7473. 2016-08-19 Jakub Jelinek <jakub@redhat.com>
  7474. PR fortran/71014
  7475. * testsuite/libgomp.fortran/pr71014.f90: New test.
  7476. 2016-08-18 Chung-Lin Tang <cltang@codesourcery.com>
  7477. PR middle-end/70895
  7478. * testsuite/libgomp.oacc-fortran/reduction-7.f90: Add explicit
  7479. firstprivate clauses.
  7480. * testsuite/libgomp.oacc-fortran/reduction-6.f90: Remove explicit
  7481. copy clauses.
  7482. * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
  7483. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
  7484. * testsuite/libgomp.oacc-c-c++-common/reduction-flt.c: Likewise.
  7485. * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
  7486. * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
  7487. * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
  7488. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
  7489. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
  7490. * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
  7491. * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
  7492. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
  7493. * testsuite/libgomp.oacc-c-c++-common/reduction-dbl.c: Likewise.
  7494. 2016-08-14 Chung-Lin Tang <cltang@codesourcery.com>
  7495. PR fortran/70598
  7496. * testsuite/libgomp.oacc-fortran/host_data-1.f90: New test.
  7497. 2016-08-08 Jakub Jelinek <jakub@redhat.com>
  7498. PR c++/58706
  7499. * testsuite/libgomp.c++/pr58706.C: New test.
  7500. 2016-08-04 Thomas Schwinge <thomas@codesourcery.com>
  7501. * testsuite/libgomp.oacc-c++/routine-1-auto.C: New file.
  7502. * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Likewise.
  7503. * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
  7504. Likewise.
  7505. * testsuite/libgomp.oacc-c++/routine-1-template.C: Likewise.
  7506. * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C:
  7507. Likewise.
  7508. * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Adjust.
  7509. * testsuite/libgomp.oacc-c-c++-common/crash-1.c: Make it a "link"
  7510. test, and don't hardcode -O0.
  7511. 2016-08-03 Nathan Sidwell <nathan@codesourcery.com>
  7512. * testsuite/libgomp.oacc-c-c++-common/crash-1.c: New.
  7513. 2016-07-15 Cesar Philippidis <cesar@codesourcery.com>
  7514. * testsuite/libgomp.oacc-c-c++-common/zero_length_subarrays.c: New
  7515. test.
  7516. 2016-07-03 H.J. Lu <hongjiu.lu@intel.com>
  7517. PR middle-end/71734
  7518. * testsuite/libgomp.fortran/pr71734-1.f90: New test.
  7519. * testsuite/libgomp.fortran/pr71734-2.f90: Likewise.
  7520. 2016-07-01 Jakub Jelinek <jakub@redhat.com>
  7521. PR fortran/71717
  7522. * testsuite/libgomp.fortran/associate3.f90: New test.
  7523. 2016-06-17 Jakub Jelinek <jakub@redhat.com>
  7524. * testsuite/libgomp.c++/target-21.C: New test.
  7525. 2016-06-16 Jakub Jelinek <jakub@redhat.com>
  7526. * testsuite/libgomp.c++/target-20.C: New test.
  7527. 2016-06-10 Thomas Schwinge <thomas@codesourcery.com>
  7528. Cesar Philippidis <cesar@codesourcery.com>
  7529. PR middle-end/71373
  7530. * libgomp.oacc-c/nested-function-1.c: New file.
  7531. * libgomp.oacc-c/nested-function-2.c: Likewise.
  7532. * libgomp.oacc-fortran/nested-function-1.f90: Likewise.
  7533. * libgomp.oacc-fortran/nested-function-2.f90: Likewise.
  7534. * libgomp.oacc-fortran/nested-function-3.f90: Likewise.
  7535. 2016-06-10 Thomas Schwinge <thomas@codesourcery.com>
  7536. PR c/71381
  7537. * testsuite/libgomp.oacc-c-c++-common/cache-1.c: #include
  7538. "../../../gcc/testsuite/c-c++-common/goacc/cache-1.c".
  7539. * testsuite/libgomp.oacc-fortran/cache-1.f95: New file.
  7540. 2016-06-03 Chung-Lin Tang <cltang@codesourcery.com>
  7541. * testsuite/libgomp.oacc-fortran/reduction-8.f90: New testcase.
  7542. * testsuite/libgomp.oacc-c-c++-common/reduction-8.c: New testcase.
  7543. 2016-06-01 Cesar Philippidis <cesar@codesourcery.com>
  7544. PR c/70688
  7545. * testsuite/libgomp.oacc-c-c++-common/pr70688.c: New file.
  7546. 2016-05-26 Jakub Jelinek <jakub@redhat.com>
  7547. * testsuite/libgomp.c/doacross-1.c (main): Use schedule(static)
  7548. instead of invalid schedule(static, 0).
  7549. * testsuite/libgomp.c/doacross-2.c (main): Likewise.
  7550. 2016-05-26 Chung-Lin Tang <cltang@codesourcery.com>
  7551. * oacc-plugin.h (GOMP_PLUGIN_async_unmap_vars): Add int parameter.
  7552. * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Add 'int async'
  7553. parameter, use to set async stream around call to gomp_unmap_vars,
  7554. call gomp_unmap_vars() with 'do_copyfrom' set to true.
  7555. * plugin/plugin-nvptx.c (struct ptx_event): Add 'int val' field.
  7556. (event_gc): Adjust event handling loop, collect PTX_EVT_ASYNC_CLEANUP
  7557. events and call GOMP_PLUGIN_async_unmap_vars() for each of them.
  7558. (event_add): Add int parameter, initialize 'val' field when
  7559. adding new ptx_event struct.
  7560. (nvptx_evec): Adjust event_add() call arguments.
  7561. (nvptx_host2dev): Likewise.
  7562. (nvptx_dev2host): Likewise.
  7563. (nvptx_wait_async): Likewise.
  7564. (nvptx_wait_all_async): Likewise.
  7565. (GOMP_OFFLOAD_openacc_register_async_cleanup): Add async parameter,
  7566. pass to event_add() call.
  7567. * oacc-host.c (host_openacc_register_async_cleanup): Add 'int async'
  7568. parameter.
  7569. * oacc-mem.c (gomp_acc_remove_pointer): Adjust async case to
  7570. call openacc.register_async_cleanup_func() hook.
  7571. * oacc-parallel.c (GOACC_parallel_keyed): Likewise.
  7572. * target.c (gomp_copy_from_async): Delete function.
  7573. (gomp_map_vars): Remove async_refcount.
  7574. (gomp_unmap_vars): Likewise.
  7575. (gomp_load_image_to_device): Likewise.
  7576. (omp_target_associate_ptr): Likewise.
  7577. * libgomp.h (struct splay_tree_key_s): Remove async_refcount.
  7578. (acc_dispatch_t.register_async_cleanup_func): Add int parameter.
  7579. (gomp_copy_from_async): Remove.
  7580. 2016-05-26 Chung-Lin Tang <cltang@codesourcery.com>
  7581. * target.c (gomp_device_copy): New function.
  7582. (gomp_copy_host2dev): Likewise.
  7583. (gomp_copy_dev2host): Likewise.
  7584. (gomp_free_device_memory): Likewise.
  7585. (gomp_map_vars_existing): Adjust to call gomp_copy_host2dev.
  7586. (gomp_map_pointer): Likewise.
  7587. (gomp_map_vars): Adjust to call gomp_copy_host2dev, handle
  7588. NULL value from alloc_func plugin hook.
  7589. (gomp_unmap_tgt): Adjust to call gomp_free_device_memory.
  7590. (gomp_copy_from_async): Adjust to call gomp_copy_dev2host.
  7591. (gomp_unmap_vars): Likewise.
  7592. (gomp_update): Adjust to call gomp_copy_dev2host and
  7593. gomp_copy_host2dev functions.
  7594. (gomp_unload_image_from_device): Handle false value from
  7595. unload_image_func plugin hook.
  7596. (gomp_init_device): Handle false value from init_device_func
  7597. plugin hook.
  7598. (gomp_exit_data): Adjust to call gomp_copy_dev2host.
  7599. (omp_target_free): Adjust to call gomp_free_device_memory.
  7600. (omp_target_memcpy): Handle return values from host2dev_func,
  7601. dev2host_func, and dev2dev_func plugin hooks.
  7602. (omp_target_memcpy_rect_worker): Likewise.
  7603. (gomp_target_fini): Handle false value from fini_device_func
  7604. plugin hook.
  7605. * libgomp.h (struct gomp_device_descr): Adjust return type of
  7606. init_device_func, fini_device_func, unload_image_func, free_func,
  7607. dev2host_func,host2dev_func, and dev2dev_func plugin hooks to 'bool'.
  7608. * oacc-init.c (acc_shutdown_1): Handle false value from
  7609. fini_device_func plugin hook.
  7610. * oacc-host.c (host_init_device): Change return type to bool.
  7611. (host_fini_device): Likewise.
  7612. (host_unload_image): Likewise.
  7613. (host_free): Likewise.
  7614. (host_dev2host): Likewise.
  7615. (host_host2dev): Likewise.
  7616. * oacc-mem.c (acc_free): Handle plugin hook fatal error case.
  7617. (acc_memcpy_to_device): Likewise.
  7618. (acc_memcpy_from_device): Likewise.
  7619. (delete_copyout): Add libfnname parameter, handle free_func
  7620. hook fatal error case.
  7621. (acc_delete): Adjust delete_copyout call.
  7622. (acc_copyout): Likewise.
  7623. (update_dev_host): Move gomp_mutex_unlock to after
  7624. host2dev/dev2host hook calls.
  7625. * plugin/plugin-hsa.c (hsa_warn): Adjust 'hsa_error' local variable
  7626. to 'hsa_error_msg', for clarity.
  7627. (hsa_fatal): Likewise.
  7628. (hsa_error): New function.
  7629. (init_hsa_context): Change return type to bool, adjust to return
  7630. false on error.
  7631. (GOMP_OFFLOAD_get_num_devices): Adjust to handle init_hsa_context
  7632. return value.
  7633. (GOMP_OFFLOAD_init_device): Change return type to bool, adjust to
  7634. return false on error.
  7635. (get_agent_info): Adjust to return NULL on error.
  7636. (destroy_hsa_program): Change return type to bool, adjust to
  7637. return false on error.
  7638. (GOMP_OFFLOAD_load_image): Adjust to return -1 on error.
  7639. (destroy_module): Change return type to bool, adjust to
  7640. return false on error.
  7641. (GOMP_OFFLOAD_unload_image): Likewise.
  7642. (GOMP_OFFLOAD_fini_device): Likewise.
  7643. (GOMP_OFFLOAD_alloc): Change to return NULL when called.
  7644. (GOMP_OFFLOAD_free): Change to return false when called.
  7645. (GOMP_OFFLOAD_dev2host): Likewise.
  7646. (GOMP_OFFLOAD_host2dev): Likewise.
  7647. (GOMP_OFFLOAD_dev2dev): Likewise.
  7648. * plugin/plugin-nvptx.c (CUDA_CALL_ERET): New convenience macro.
  7649. (CUDA_CALL): Likewise.
  7650. (CUDA_CALL_ASSERT): Likewise.
  7651. (map_init): Change return type to bool, use CUDA_CALL* macros.
  7652. (map_fini): Likewise.
  7653. (init_streams_for_device): Change return type to bool, adjust
  7654. call to map_init.
  7655. (fini_streams_for_device): Change return type to bool, adjust
  7656. call to map_fini.
  7657. (select_stream_for_async): Release stream_lock before calls to
  7658. GOMP_PLUGIN_fatal, adjust call to map_init.
  7659. (nvptx_init): Use CUDA_CALL* macros.
  7660. (nvptx_attach_host_thread_to_device): Change return type to bool,
  7661. use CUDA_CALL* macros.
  7662. (nvptx_open_device): Use CUDA_CALL* macros.
  7663. (nvptx_close_device): Change return type to bool, use CUDA_CALL*
  7664. macros.
  7665. (nvptx_get_num_devices): Use CUDA_CALL* macros.
  7666. (link_ptx): Change return type to bool, use CUDA_CALL* macros.
  7667. (nvptx_exec): Use CUDA_CALL* macros.
  7668. (nvptx_alloc): Use CUDA_CALL* macros.
  7669. (nvptx_free): Change return type to bool, use CUDA_CALL* macros.
  7670. (nvptx_host2dev): Likewise.
  7671. (nvptx_dev2host): Likewise.
  7672. (nvptx_wait): Use CUDA_CALL* macros.
  7673. (nvptx_wait_async): Likewise.
  7674. (nvptx_wait_all): Likewise.
  7675. (nvptx_wait_all_async): Likewise.
  7676. (nvptx_set_cuda_stream): Adjust order of stream_lock acquire,
  7677. use CUDA_CALL* macros, adjust call to map_fini.
  7678. (GOMP_OFFLOAD_init_device): Change return type to bool,
  7679. adjust code accordingly.
  7680. (GOMP_OFFLOAD_fini_device): Likewise.
  7681. (GOMP_OFFLOAD_load_image): Adjust calls to
  7682. nvptx_attach_host_thread_to_device/link_ptx to handle errors,
  7683. use CUDA_CALL* macros.
  7684. (GOMP_OFFLOAD_unload_image): Change return type to bool, adjust
  7685. return code.
  7686. (GOMP_OFFLOAD_alloc): Adjust calls to code to handle error return.
  7687. (GOMP_OFFLOAD_free): Change return type to bool, adjust calls to
  7688. handle error return.
  7689. (GOMP_OFFLOAD_dev2host): Likewise.
  7690. (GOMP_OFFLOAD_host2dev): Likewise.
  7691. (GOMP_OFFLOAD_openacc_register_async_cleanup): Use CUDA_CALL* macros.
  7692. (GOMP_OFFLOAD_openacc_create_thread_data): Likewise.
  7693. 2016-05-24 Cesar Philippidis <cesar@codesourcery.com>
  7694. * oacc-mem.c (acc_malloc): Update handling of shared-memory targets.
  7695. (acc_free): Likewise.
  7696. (acc_memcpy_to_device): Likewise.
  7697. (acc_memcpy_from_device): Likewise.
  7698. (acc_deviceptr): Likewise.
  7699. (acc_hostptr): Likewise.
  7700. (acc_is_present): Likewise.
  7701. (acc_map_data): Likewise.
  7702. (acc_unmap_data): Likewise.
  7703. (present_create_copy): Likewise.
  7704. (delete_copyout): Likewise.
  7705. (update_dev_host): Likewise.
  7706. * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Remove xfail.
  7707. * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: New test.
  7708. * testsuite/libgomp.oacc-c-c++-common/data-2.c: Adjust test.
  7709. * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
  7710. * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: New test.
  7711. * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Adjust test so that
  7712. it only runs on nvptx targets.
  7713. * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
  7714. * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
  7715. * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
  7716. * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
  7717. * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
  7718. * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
  7719. * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
  7720. * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
  7721. * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
  7722. * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
  7723. * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
  7724. * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
  7725. * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
  7726. * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
  7727. * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
  7728. * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
  7729. * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
  7730. * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
  7731. * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
  7732. * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
  7733. * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
  7734. * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
  7735. * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
  7736. 2016-05-23 Martin Jambor <mjambor@suse.cz>
  7737. * testsuite/libgomp.hsa.c/switch-sbr-2.c: New test.
  7738. 2016-05-17 Chung-Lin Tang <cltang@codesourcery.com>
  7739. * oacc-init.c (acc_init): Remove !cached_base_dev condition on call
  7740. to gomp_init_targets_once.
  7741. (acc_set_device_type): Remove !cached_base_dev condition on call to
  7742. gomp_init_targets_once, move call to before acc_device_lock acquire,
  7743. to avoid deadlock.
  7744. (acc_get_device_num): Remove !cached_base_dev condition on call to
  7745. gomp_init_targets_once.
  7746. (acc_set_device_num): Likewise.
  7747. 2016-05-16 Martin Jambor <mjambor@suse.cz>
  7748. * testsuite/libgomp.hsa.c/complex-align-2.c: New test.
  7749. 2016-05-02 Nathan Sidwell <nathan@codesourcery.com>
  7750. * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust
  7751. expected partitioning.
  7752. 2016-04-29 Cesar Philippidis <cesar@codesourcery.com>
  7753. PR middle-end/70626
  7754. * testsuite/libgomp.oacc-c++/template-reduction.C: Adjust test.
  7755. * testsuite/libgomp.oacc-c-c++-common/combined-reduction.c: New test.
  7756. * testsuite/libgomp.oacc-fortran/combined-reduction.f90: New test.
  7757. 2016-04-21 Alexander Monakov <amonakov@ispras.ru>
  7758. * plugin/plugin-nvptx.c (map_fini): Make cuMemFreeHost error
  7759. non-fatal.
  7760. 2016-04-19 Jakub Jelinek <jakub@redhat.com>
  7761. PR middle-end/70680
  7762. * testsuite/libgomp.c/pr70680-1.c: New test.
  7763. * testsuite/libgomp.c/pr70680-2.c: New test.
  7764. 2016-04-14 Cesar Philippidis <cesar@codesourcery.com>
  7765. * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Don't
  7766. pass parameter variables to subroutines.
  7767. 2016-04-14 Cesar Philippidis <cesar@codesourcery.com>
  7768. PR middle-end/70643
  7769. * testsuite/libgomp.oacc-fortran/pr70643.f90: New test.
  7770. 2016-04-13 Cesar Philippidis <cesar@codesourcery.com>
  7771. PR testsuite/68242
  7772. * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Adjust test.
  7773. * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
  7774. 2016-04-12 Thomas Schwinge <thomas@codesourcery.com>
  7775. * libgomp_g.h: Rename GOACC_parallel_keyd prototype to
  7776. GOACC_parallel_keyed, restore GOACC_parallel prototype, new
  7777. GOACC_declare prototype.
  7778. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c:
  7779. Merge this file, and...
  7780. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gv-np-1.c:
  7781. ... this file, and...
  7782. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c:
  7783. ... this file, and...
  7784. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c:
  7785. ... this file, and...
  7786. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c:
  7787. ... this file, and...
  7788. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c:
  7789. ... this file, and...
  7790. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c:
  7791. ... this file, and...
  7792. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c:
  7793. ... this file, and...
  7794. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c:
  7795. ... this file, and...
  7796. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c:
  7797. ... this file, and...
  7798. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c:
  7799. ... this file, and...
  7800. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c:
  7801. ... this file, and...
  7802. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c:
  7803. ... this file into...
  7804. * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: ... this
  7805. file.
  7806. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
  7807. Make failure observable.
  7808. 2016-04-12 Jakub Jelinek <jakub@redhat.com>
  7809. * libgomp.h (struct gomp_target_task): Remove firstprivate_copies
  7810. field.
  7811. * target.c (gomp_target_fallback_firstprivate,
  7812. gomp_target_unshare_firstprivate): Removed.
  7813. (GOMP_target_ext): Copy firstprivate vars into gomp_allocaed memory
  7814. before waiting for dependencies.
  7815. (gomp_target_task_fn): Don't copy firstprivate vars here.
  7816. * task.c (GOMP_PLUGIN_target_task_completion): Don't free
  7817. firstprivate_copies here.
  7818. (gomp_create_target_task): Don't initialize firstprivate_copies field.
  7819. * testsuite/libgomp.c/target-25.c (main): Use map (to:) instead of
  7820. explicit/implicit firstprivate.
  7821. 2016-04-08 Cesar Philippidis <cesar@codesourcery.com>
  7822. PR lto/70289
  7823. PR ipa/70348
  7824. PR tree-optimization/70373
  7825. PR middle-end/70533
  7826. PR middle-end/70534
  7827. PR middle-end/70535
  7828. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c: New
  7829. test.
  7830. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c: New
  7831. test.
  7832. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c: New
  7833. test.
  7834. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c: New
  7835. test.
  7836. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c: New
  7837. test.
  7838. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c: New
  7839. test.
  7840. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c: New
  7841. test.
  7842. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c: New
  7843. test.
  7844. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c: New
  7845. test.
  7846. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c: New test.
  7847. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c: New test.
  7848. * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c: New test.
  7849. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c: New
  7850. test.
  7851. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c: New
  7852. test.
  7853. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c: New
  7854. test.
  7855. * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c: New
  7856. test.
  7857. * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Add test
  7858. coverage.
  7859. * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
  7860. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
  7861. * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c: New test.
  7862. * testsuite/libgomp.oacc-c-c++-common/pr70289.c: New test.
  7863. * testsuite/libgomp.oacc-c-c++-common/pr70373.c: New test.
  7864. * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Add test
  7865. coverage.
  7866. * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
  7867. * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
  7868. * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
  7869. * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
  7870. * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: New test.
  7871. * testsuite/libgomp.oacc-c-c++-common/reduction.h: New test.
  7872. * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: New test.
  7873. * testsuite/libgomp.oacc-fortran/pr70289.f90: New test.
  7874. * testsuite/libgomp.oacc-fortran/reduction-1.f90: Add test coverage.
  7875. * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
  7876. * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
  7877. * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
  7878. * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
  7879. * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
  7880. * testsuite/libgomp.oacc-fortran/reduction-7.f90: New test.
  7881. 2016-03-30 Thomas Schwinge <thomas@codesourcery.com>
  7882. James Norris <jnorris@codesourcery.com>
  7883. Nathan Sidwell <nathan@codesourcery.com>
  7884. Julian Brown <julian@codesourcery.com>
  7885. Cesar Philippidis <cesar@codesourcery.com>
  7886. Chung-Lin Tang <cltang@codesourcery.com>
  7887. Tom de Vries <tom@codesourcery.com>
  7888. * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Update.
  7889. * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
  7890. * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
  7891. * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Likewise.
  7892. * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
  7893. * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
  7894. * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
  7895. * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
  7896. * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
  7897. XFAIL.
  7898. * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
  7899. Incorporate...
  7900. * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: ... this
  7901. file.
  7902. * testsuite/libgomp.oacc-c++/template-reduction.C: New file.
  7903. * testsuite/libgomp.oacc-c-c++-common/gang-static-1.c: Likewise.
  7904. * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Likewise.
  7905. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-clauses.c:
  7906. Likewise.
  7907. * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
  7908. Likewise.
  7909. * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
  7910. * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Likewise.
  7911. * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
  7912. * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
  7913. * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
  7914. * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
  7915. * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
  7916. * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
  7917. * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
  7918. * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90:
  7919. Likewise.
  7920. * testsuite/libgomp.oacc-fortran/pr68813.f90: Likewise.
  7921. * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
  7922. * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Merge this
  7923. file...
  7924. * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: ..., and this
  7925. file into...
  7926. * testsuite/libgomp.oacc-c-c++-common/data-clauses.h: ... this new
  7927. file. Update.
  7928. * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels.c: New
  7929. file.
  7930. * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel.c:
  7931. Likewise.
  7932. * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: Rename to...
  7933. * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c:
  7934. ... this new file. Update.
  7935. * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: Rename to...
  7936. * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c:
  7937. ... this new file. Update.
  7938. * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: New
  7939. file. Incorporate...
  7940. * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c: ... this
  7941. file, and...
  7942. * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: ... this
  7943. file, and...
  7944. * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: ... this
  7945. file.
  7946. * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Remove file.
  7947. 2016-03-29 Thomas Schwinge <thomas@codesourcery.com>
  7948. * testsuite/libgomp.oacc-c++/c++.exp [!lang_test_file_found]: Call
  7949. set-torture-options.
  7950. 2016-03-24 Thomas Schwinge <thomas@codesourcery.com>
  7951. * testsuite/libgomp.oacc-c++/c++.exp: Set up torture testing, use
  7952. gcc-dg-runtest.
  7953. * testsuite/libgomp.oacc-c/c.exp: Likewise.
  7954. * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: Specify
  7955. -fno-builtin-acc_on_device instead of -O0.
  7956. * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: Skip for
  7957. -O0.
  7958. * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
  7959. * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c:
  7960. Likewise.
  7961. * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
  7962. * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
  7963. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
  7964. * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
  7965. * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
  7966. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
  7967. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
  7968. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
  7969. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
  7970. * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
  7971. * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
  7972. * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
  7973. * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
  7974. * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
  7975. * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
  7976. * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
  7977. * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
  7978. * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-2.c:
  7979. Don't specify -O2.
  7980. * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-3.c:
  7981. Likewise.
  7982. * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta.c:
  7983. Likewise.
  7984. 2016-03-24 Martin Liska <mliska@suse.cz>
  7985. * plugin/plugin-hsa.c (packet_store_release): New function
  7986. that is taken from the HSA runtime manual.
  7987. (GOMP_OFFLOAD_run): Use the function.
  7988. 2016-03-23 Jakub Jelinek <jakub@redhat.com>
  7989. PR c++/70376
  7990. * testsuite/libgomp.c++/pr70376.C: New test.
  7991. 2016-03-23 Tom de Vries <tom@codesourcery.com>
  7992. * testsuite/libgomp.oacc-fortran/reduction-2.f90: Add missing
  7993. initialization of lresult and lvresult.
  7994. * testsuite/libgomp.oacc-fortran/reduction-3.f90: Same.
  7995. 2016-03-23 James Norris <jnorris@codesourcery.com>
  7996. Daichi Fukuoka <dc-fukuoka@sgi.com>
  7997. PR libgomp/69414
  7998. * oacc-mem.c (delete_copyout, update_dev_host): Fix device address.
  7999. * testsuite/libgomp.oacc-c-c++-common/update-1.c: Additional tests.
  8000. * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
  8001. * testsuite/libgomp.oacc-fortran/update-1.f90: New file.
  8002. 2016-03-23 Martin Liska <mliska@suse.cz>
  8003. PR hsa/70337
  8004. * plugin/plugin-hsa.c (GOMP_OFFLOAD_run): Copy shadow
  8005. argument just in case a dispatched kernel uses that argument.
  8006. 2016-03-16 Thomas Schwinge <thomas@codesourcery.com>
  8007. * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Adjust to
  8008. -ftree-parallelize-loops/-fopenacc changes.
  8009. * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95:
  8010. Likewise.
  8011. * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
  8012. Likewise.
  8013. * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95:
  8014. Likewise.
  8015. * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95:
  8016. Likewise.
  8017. * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
  8018. * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
  8019. 2016-03-13 Thomas Schwinge <thomas@codesourcery.com>
  8020. * testsuite/lib/libgomp.exp (libgomp_init): Potentially append to
  8021. always_ld_library_path the path to libgcc_s.
  8022. 2016-03-10 Cesar Philippidis <cesar@codesourcery.com>
  8023. PR testsuite/70009
  8024. * testsuite/libgomp.oacc-c-c++-common/vprop.c: Make test data signed.
  8025. 2016-03-09 Tom de Vries <tom@codesourcery.com>
  8026. * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: New test.
  8027. * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Same.
  8028. * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
  8029. Same.
  8030. * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Same.
  8031. * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Same.
  8032. * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Same.
  8033. * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Same.
  8034. 2016-03-07 Martin Jambor <mjambor@suse.cz>
  8035. * testsuite/lib/libgomp.exp
  8036. (check_effective_target_hsa_offloading_selected_nocache): New.
  8037. (check_effective_target_hsa_offloading_selected): Likewise.
  8038. * testsuite/libgomp.hsa.c/c.exp: Likewise.
  8039. * testsuite/libgomp.hsa.c/alloca-1.c: Likewise.
  8040. * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
  8041. * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
  8042. * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
  8043. * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
  8044. * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
  8045. * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
  8046. * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
  8047. * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
  8048. * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
  8049. * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
  8050. * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
  8051. * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
  8052. * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
  8053. * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
  8054. * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
  8055. 2016-03-07 Martin Jambor <mjambor@suse.cz>
  8056. * testsuite/libgomp.c/examples-4/async_target-2.c: Only run on
  8057. non-shared memory accelerators.
  8058. * testsuite/libgomp.c/examples-4/device-1.c: Likewise.
  8059. * testsuite/libgomp.c/examples-4/target-5.c: Likewise.
  8060. * testsuite/libgomp.c/examples-4/target_data-6.c: Likewise.
  8061. * testsuite/libgomp.c/examples-4/target_data-7.c: Likewise.
  8062. * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
  8063. * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
  8064. * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
  8065. * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
  8066. * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
  8067. 2016-03-07 Martin Jambor <mjambor@suse.cz>
  8068. * testsuite/lib/libgomp.exp (libgomp_init): Append -Wno-hsa to
  8069. ALWAYS_CFLAGS.
  8070. 2016-03-02 Jakub Jelinek <jakub@redhat.com>
  8071. PR libgomp/69555
  8072. * testsuite/libgomp.c++/pr69555-1.C: New test.
  8073. * testsuite/libgomp.c++/pr69555-2.C: New test.
  8074. 2016-02-26 Keith McDaniel <k.allen.mcdaniel@gmail.com>
  8075. Martin Jambor <mjambor@suse.cz>
  8076. * testsuite/lib/libgomp.exp
  8077. (check_effective_target_offload_device_shared_as): New proc.
  8078. * testsuite/libgomp.c++/declare_target-1.C: New test.
  8079. 2016-02-25 Ilya Verbin <ilya.verbin@intel.com>
  8080. PR driver/68463
  8081. * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: Remove.
  8082. 2016-02-23 Thomas Schwinge <thomas@codesourcery.com>
  8083. * oacc-parallel.c (GOACC_parallel_keyed): Initialize dims.
  8084. * plugin/plugin-nvptx.c (nvptx_exec): Provide default values for
  8085. dims.
  8086. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Adjust to
  8087. -ftree-parallelize-loops/-fopenacc changes.
  8088. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Likewise.
  8089. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c:
  8090. Likewise.
  8091. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c:
  8092. Likewise.
  8093. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c:
  8094. Likewise.
  8095. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c:
  8096. Likewise.
  8097. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c:
  8098. Likewise.
  8099. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c:
  8100. Likewise.
  8101. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c:
  8102. Likewise.
  8103. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
  8104. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c:
  8105. Likewise.
  8106. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Likewise.
  8107. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c:
  8108. Likewise.
  8109. * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Likewise.
  8110. * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c:
  8111. Likewise.
  8112. 2016-02-22 Cesar Philippidis <cesar@codesourcery.com>
  8113. * testsuite/libgomp.oacc-c-c++-common/vprop.c: New test.
  8114. 2016-02-19 Jakub Jelinek <jakub@redhat.com>
  8115. PR driver/69805
  8116. * testsuite/libgomp.c/pr69805.c: New test.
  8117. 2016-02-16 Tom de Vries <tom@codesourcery.com>
  8118. PR lto/67709
  8119. * testsuite/libgomp.fortran/declare-simd-4.f90: New test.
  8120. 2016-02-09 Tom de Vries <tom@codesourcery.com>
  8121. PR tree-optimization/69599
  8122. * testsuite/libgomp.c/omp-nested-3.c: New test.
  8123. * testsuite/libgomp.c/pr46032-2.c: New test.
  8124. * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: New test.
  8125. * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: New test.
  8126. 2016-02-09 Tom de Vries <tom@codesourcery.com>
  8127. PR lto/69707
  8128. * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: New test.
  8129. 2016-02-02 Alexander Monakov <amonakov@ispras.ru>
  8130. * testsuite/libgomp.c/target-31.c: Fix testcase.
  8131. 2016-02-02 Alexander Monakov <amonakov@ispras.ru>
  8132. * testsuite/libgomp.c/examples-4/teams-3.c: Add missing reduction
  8133. clause.
  8134. * testsuite/libgomp.c/examples-4/teams-4.c: Likewise.
  8135. * testsuite/libgomp.fortran/examples-4/teams-3.f90: Add missing
  8136. reduction and map clauses.
  8137. * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
  8138. 2016-02-02 James Norris <jnorris@codesourcery.com>
  8139. * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Fix clause.
  8140. 2016-02-02 Thomas Schwinge <thomas@codesourcery.com>
  8141. * libgomp.map (GOACC_2.0): Remove GOACC_host_data.
  8142. * oacc-parallel.c (GOACC_host_data): Remove function definition.
  8143. * testsuite/lib/libgomp.exp: Skip hsa offloading for OpenACC test
  8144. cases.
  8145. * plugin/configfrag.ac (HSA_KMT_LIB, HSA_KMT_LDFLAGS): New
  8146. variables.
  8147. * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib)
  8148. (hsa_kmt_lib): Set variables.
  8149. * testsuite/lib/libgomp.exp (libgomp_init): Use them to amend
  8150. always_ld_library_path.
  8151. * Makefile.in: Regenerate.
  8152. * configure: Likewise.
  8153. * testsuite/Makefile.in: Likewise.
  8154. * plugin/configfrag.ac (offload_additional_options)
  8155. (offload_additional_lib_paths): Don't amend for hsa offloading.
  8156. * configure: Regenerate.
  8157. * plugin/configfrag.ac: Don't configure for offloading target if
  8158. we don't build the corresponding plugin.
  8159. * configure: Regenerate.
  8160. 2016-02-01 Nathan Sidwell <nathan@codesourcery.com>
  8161. * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: New.
  8162. * testsuite/libgomp.oacc-fortran/routine-7.f90: Serialize loop.
  8163. 2016-01-26 Tom de Vries <tom@codesourcery.com>
  8164. PR tree-optimization/69110
  8165. * testsuite/libgomp.c/pr69110.c: New test.
  8166. 2016-01-25 Richard Biener <rguenther@suse.de>
  8167. PR lto/69393
  8168. * testsuite/libgomp.c++/pr69393.C: New testcase.
  8169. 2016-01-22 Ilya Verbin <ilya.verbin@intel.com>
  8170. * target.c (gomp_get_target_fn_addr): Allow host fallback if target
  8171. function wasn't mapped to the device with non-shared memory.
  8172. 2016-01-20 Ilya Verbin <ilya.verbin@intel.com>
  8173. * task.c (gomp_create_target_task): Set firstprivate_copies to NULL.
  8174. 2016-01-19 Martin Jambor <mjambor@suse.cz>
  8175. Martin Liska <mliska@suse.cz>
  8176. * plugin/Makefrag.am: Add HSA plugin requirements.
  8177. * plugin/configfrag.ac (HSA_RUNTIME_INCLUDE): New variable.
  8178. (HSA_RUNTIME_LIB): Likewise.
  8179. (HSA_RUNTIME_CPPFLAGS): Likewise.
  8180. (HSA_RUNTIME_INCLUDE): New substitution.
  8181. (HSA_RUNTIME_LIB): Likewise.
  8182. (HSA_RUNTIME_LDFLAGS): Likewise.
  8183. (hsa-runtime): New configure option.
  8184. (hsa-runtime-include): Likewise.
  8185. (hsa-runtime-lib): Likewise.
  8186. (PLUGIN_HSA): New substitution variable.
  8187. Fill HSA_RUNTIME_INCLUDE and HSA_RUNTIME_LIB according to the new
  8188. configure options.
  8189. (PLUGIN_HSA_CPPFLAGS): Likewise.
  8190. (PLUGIN_HSA_LDFLAGS): Likewise.
  8191. (PLUGIN_HSA_LIBS): Likewise.
  8192. Check that we have access to HSA run-time.
  8193. * libgomp-plugin.h (offload_target_type): New element
  8194. OFFLOAD_TARGET_TYPE_HSA.
  8195. * libgomp.h (gomp_target_task): New fields firstprivate_copies and
  8196. args.
  8197. (bool gomp_create_target_task): Updated.
  8198. (gomp_device_descr): Extra parameter of run_func and async_run_func,
  8199. new field can_run_func.
  8200. * libgomp_g.h (GOMP_target_ext): Update prototype.
  8201. * oacc-host.c (host_run): Added a new parameter args.
  8202. * target.c (calculate_firstprivate_requirements): New function.
  8203. (copy_firstprivate_data): Likewise.
  8204. (gomp_target_fallback_firstprivate): Use them.
  8205. (gomp_target_unshare_firstprivate): New function.
  8206. (gomp_get_target_fn_addr): Allow returning NULL for shared memory
  8207. devices.
  8208. (GOMP_target): Do host fallback for all shared memory devices. Do not
  8209. pass any args to plugins.
  8210. (GOMP_target_ext): Introduce device-specific argument parameter args.
  8211. Allow host fallback if device shares memory. Do not remap data if
  8212. device has shared memory.
  8213. (gomp_target_task_fn): Likewise. Also treat shared memory devices
  8214. like host fallback for mappings.
  8215. (GOMP_target_data): Treat shared memory devices like host fallback.
  8216. (GOMP_target_data_ext): Likewise.
  8217. (GOMP_target_update): Likewise.
  8218. (GOMP_target_update_ext): Likewise. Also pass NULL as args to
  8219. gomp_create_target_task.
  8220. (GOMP_target_enter_exit_data): Likewise.
  8221. (omp_target_alloc): Treat shared memory devices like host fallback.
  8222. (omp_target_free): Likewise.
  8223. (omp_target_is_present): Likewise.
  8224. (omp_target_memcpy): Likewise.
  8225. (omp_target_memcpy_rect): Likewise.
  8226. (omp_target_associate_ptr): Likewise.
  8227. (gomp_load_plugin_for_device): Also load can_run.
  8228. * task.c (GOMP_PLUGIN_target_task_completion): Free
  8229. firstprivate_copies.
  8230. (gomp_create_target_task): Accept new argument args and store it to
  8231. ttask.
  8232. * plugin/plugin-hsa.c: New file.
  8233. 2016-01-18 Tom de Vries <tom@codesourcery.com>
  8234. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: New test.
  8235. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Same.
  8236. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c: Same.
  8237. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c: Same.
  8238. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c: Same.
  8239. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c: Same.
  8240. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c: Same.
  8241. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c: Same.
  8242. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c: Same.
  8243. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c: Same.
  8244. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
  8245. Same.
  8246. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
  8247. Same.
  8248. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c: Same.
  8249. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c: Same.
  8250. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Same.
  8251. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c: Same.
  8252. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Same.
  8253. * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c: Same.
  8254. * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Same.
  8255. * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
  8256. Same.
  8257. * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c: Same.
  8258. 2016-01-15 Jakub Jelinek <jakub@redhat.com>
  8259. * task.c (GOMP_PLUGIN_target_task_completion): Add missing return.
  8260. 2016-01-15 Cesar Philippidis <cesar@codesourcery.com>
  8261. * testsuite/libgomp.oacc-fortran/kernels-data.f90: New test.
  8262. 2016-01-12 James Norris <jnorris@codesourcery.com>
  8263. * libgomp.texi: Updates for OpenACC.
  8264. 2016-01-11 Alexander Monakov <amonakov@ispras.ru>
  8265. * plugin/plugin-nvptx.c (link_ptx): Do not set CU_JIT_TARGET.
  8266. 2016-01-07 H.J. Lu <hongjiu.lu@intel.com>
  8267. PR fortran/66680
  8268. * testsuite/libgomp.fortran/pr66680.f90: New test.
  8269. 2016-01-07 Jakub Jelinek <jakub@redhat.com>
  8270. PR middle-end/68960
  8271. * testsuite/libgomp.c/pr68960.c: New test.
  8272. 2016-01-06 Nathan Sidwell <nathan@acm.org>
  8273. * openacc.h (acc_on_device): Add routine pragma for C++ wrapper.
  8274. * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: New.
  8275. 2016-01-04 Jakub Jelinek <jakub@redhat.com>
  8276. Update copyright years.
  8277. * libgomp.texi: Bump @copying's copyright year.
  8278. 2015-12-31 Nathan Sidwell <nathan@acm.org>
  8279. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Correct
  8280. dg-additional-options syntax.
  8281. * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
  8282. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
  8283. * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
  8284. * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
  8285. * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
  8286. * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
  8287. * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
  8288. * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
  8289. * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
  8290. * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
  8291. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
  8292. * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
  8293. * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
  8294. * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
  8295. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
  8296. * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
  8297. * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
  8298. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
  8299. 2015-12-15 Ilya Verbin <ilya.verbin@intel.com>
  8300. * libgomp.h (REFCOUNT_LINK): Define.
  8301. (struct splay_tree_key_s): Add link_key.
  8302. * target.c (gomp_map_vars): Treat REFCOUNT_LINK objects as not mapped.
  8303. Replace target address of the pointer with target address of newly
  8304. mapped object in the splay tree. Set link pointer on target to the
  8305. device address of the mapped object.
  8306. (gomp_unmap_vars): Restore target address of the pointer in the splay
  8307. tree for REFCOUNT_LINK objects after unmapping.
  8308. (gomp_load_image_to_device): Set refcount to REFCOUNT_LINK for "omp
  8309. declare target link" objects.
  8310. (gomp_unload_image_from_device): Replace j with i. Force unmap of all
  8311. "omp declare target link" objects, which were mapped for the image.
  8312. (gomp_exit_data): Restore target address of the pointer in the splay
  8313. tree for REFCOUNT_LINK objects after unmapping.
  8314. * testsuite/libgomp.c/target-link-1.c: New file.
  8315. 2015-12-14 Ilya Verbin <ilya.verbin@intel.com>
  8316. * libgomp.h (gomp_device_state): New enum.
  8317. (struct gomp_device_descr): Replace is_initialized with state.
  8318. (gomp_fini_device): Remove declaration.
  8319. * oacc-host.c (host_dispatch): Use state instead of is_initialized.
  8320. * oacc-init.c (acc_init_1): Use state instead of is_initialized.
  8321. (acc_shutdown_1): Likewise. Inline gomp_fini_device.
  8322. (acc_set_device_type): Use state instead of is_initialized.
  8323. (acc_set_device_num): Likewise.
  8324. * target.c (resolve_device): Use state instead of is_initialized.
  8325. Do not initialize finalized device.
  8326. (gomp_map_vars): Do nothing if device is finalized.
  8327. (gomp_unmap_vars): Likewise.
  8328. (gomp_update): Likewise.
  8329. (GOMP_offload_register_ver): Use state instead of is_initialized.
  8330. (GOMP_offload_unregister_ver): Likewise.
  8331. (gomp_init_device): Likewise.
  8332. (gomp_unload_device): Likewise.
  8333. (gomp_fini_device): Remove.
  8334. (gomp_get_target_fn_addr): Do nothing if device is finalized.
  8335. (GOMP_target): Go to host fallback if device is finalized.
  8336. (GOMP_target_ext): Likewise.
  8337. (gomp_exit_data): Do nothing if device is finalized.
  8338. (gomp_target_task_fn): Go to host fallback if device is finalized.
  8339. (gomp_target_fini): New static function.
  8340. (gomp_target_init): Use state instead of is_initialized.
  8341. Call gomp_target_fini at exit.
  8342. 2015-12-09 Tom de Vries <tom@codesourcery.com>
  8343. PR tree-optimization/68716
  8344. * testsuite/libgomp.c/omp-nested-2.c: New test.
  8345. 2015-12-02 Thomas Schwinge <thomas@codesourcery.com>
  8346. * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: Restrict to
  8347. target openacc_nvidia_accel_selected.
  8348. * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: Likewise.
  8349. * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: Likewise.
  8350. * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: Remove file.
  8351. * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: Remove file.
  8352. 2015-12-01 Julian Brown <julian@codesourcery.com>
  8353. James Norris <James_Norris@mentor.com>
  8354. * oacc-parallel.c (GOACC_host_data): New function.
  8355. * libgomp.map (GOACC_host_data): Add to GOACC_2.0.1.
  8356. * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: New test.
  8357. * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: New test.
  8358. * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: New test.
  8359. * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: New test.
  8360. * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: New test.
  8361. * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New test.
  8362. 2015-11-30 James Norris <jnorris@codesourcery.com>
  8363. Cesar Philippidis <cesar@codesourcery.com>
  8364. libgomp/
  8365. * libgomp.oacc-fortran/routine-5.f90: New test.
  8366. * libgomp.oacc-fortran/routine-7.f90: New test.
  8367. * libgomp.oacc-fortran/routine-9.f90: New test.
  8368. 2015-11-30 Tom de Vries <tom@codesourcery.com>
  8369. PR tree-optimization/46032
  8370. * testsuite/libgomp.c/pr46032.c: New test.
  8371. 2015-11-27 Jakub Jelinek <jakub@redhat.com>
  8372. PR libgomp/68579
  8373. * task.c (gomp_task_run_post_handle_depend_hash): New forward decl.
  8374. (gomp_create_target_task): Call it before freeing
  8375. GOMP_TARGET_TASK_DATA tasks.
  8376. PR c/63326
  8377. * testsuite/libgomp.c/cancel-parallel-2.c (foo): Add semicolon
  8378. in between case label and OpenMP standalone directives.
  8379. * testsuite/libgomp.c++/cancel-parallel-2.C (foo): Likewise.
  8380. 2015-11-26 David Edelsohn <dje.gcc@gmail.com>
  8381. * configure: Regenerate.
  8382. 2015-11-26 Jakub Jelinek <jakub@redhat.com>
  8383. * testsuite/libgomp.c/target-35.c: New test.
  8384. 2015-11-22 James Norris <jnorris@codesourcery.com>
  8385. Cesar Philippidis <cesar@codesourcery.com>
  8386. * testsuite/libgomp.oacc-fortran/declare-1.f90: New test.
  8387. * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
  8388. * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
  8389. * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
  8390. * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
  8391. 2015-11-20 Jakub Jelinek <jakub@redhat.com>
  8392. PR middle-end/68221
  8393. * testsuite/libgomp.c/reduction-11.c: Remove xfail.
  8394. * testsuite/libgomp.c/reduction-12.c: Likewise.
  8395. * testsuite/libgomp.c++/reduction-11.C: Likewise.
  8396. * testsuite/libgomp.c++/reduction-12.C: Likewise.
  8397. 2015-11-19 Nathan Sidwell <nathan@codesourcery.com>
  8398. * libgomp.oacc-c-c++-common/reduction-dbl.c: New.
  8399. * libgomp.oacc-c-c++-common/reduction-flt.c: New.
  8400. * libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Use typedef.
  8401. * libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Use typedef.
  8402. * libgomp.oacc-c-c++-common/reduction-2.c: Uncomment broken tests
  8403. and fix.
  8404. * libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
  8405. * libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
  8406. 2015-11-18 Nathan Sidwell <nathan@codesourcery.com>
  8407. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Add
  8408. worker & gang cases.
  8409. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
  8410. 2015-11-17 Cesar Philippidis <cesar@codesourcery.com>
  8411. * config/nvptx/priority_queue.c: New file.
  8412. 2015-11-14 Jakub Jelinek <jakub@redhat.com>
  8413. * libgomp.texi: Update references from OpenMP 4.0 to OpenMP 4.5
  8414. sections.
  8415. 2015-11-14 Jakub Jelinek <jakub@redhat.com>
  8416. Aldy Hernandez <aldyh@redhat.com>
  8417. Ilya Verbin <ilya.verbin@intel.com>
  8418. * ordered.c (gomp_doacross_init, GOMP_doacross_post,
  8419. GOMP_doacross_wait, gomp_doacross_ull_init, GOMP_doacross_ull_post,
  8420. GOMP_doacross_ull_wait): For GFS_GUIDED don't divide number of
  8421. iterators or IV by chunk size.
  8422. * parallel.c (gomp_resolve_num_threads): Don't assume that
  8423. if thr->ts.team is non-NULL, then pool must be non-NULL.
  8424. * libgomp-plugin.h (GOMP_PLUGIN_target_task_completion): Declare.
  8425. * libgomp.map (GOMP_PLUGIN_1.1): New symbol version, export
  8426. GOMP_PLUGIN_target_task_completion.
  8427. * Makefile.am (libgomp_la_SOURCES): Add priority_queue.c.
  8428. * Makefile.in: Regenerate.
  8429. * libgomp.h: Shuffle prototypes and forward definitions around so
  8430. priority queues can be defined.
  8431. (enum gomp_task_kind): Add GOMP_TASK_ASYNC_RUNNING.
  8432. (enum gomp_target_task_state): New enum.
  8433. (struct gomp_target_task): Add state, tgt, task and team fields.
  8434. (gomp_create_target_task): Change return type to bool, add
  8435. state argument.
  8436. (gomp_target_task_fn): Change return type to bool.
  8437. (struct gomp_device_descr): Add async_run_func.
  8438. (struct gomp_task): Remove children, next_child, prev_child,
  8439. next_queue, prev_queue, next_taskgroup, prev_taskgroup.
  8440. Add pnode field.
  8441. (struct gomp_taskgroup): Remove children.
  8442. Add taskgroup_queue.
  8443. (struct gomp_team): Change task_queue type to a priority queue.
  8444. (splay_compare): Define inline.
  8445. (priority_queue_offset): New.
  8446. (priority_node_to_task): New.
  8447. (task_to_priority_node): New.
  8448. * oacc-mem.c: Do not include splay-tree.h.
  8449. * priority_queue.c: New file.
  8450. * priority_queue.h: New file.
  8451. * splay-tree.c: Do not include splay-tree.h.
  8452. (splay_tree_foreach_internal): New.
  8453. (splay_tree_foreach): New.
  8454. * splay-tree.h: Become re-entrant if splay_tree_prefix is defined.
  8455. (splay_tree_callback): Define typedef.
  8456. * target.c (splay_compare): Move to libgomp.h.
  8457. (GOMP_target): Don't adjust *thr in any way around running offloaded
  8458. task.
  8459. (GOMP_target_ext): Likewise. Handle target nowait.
  8460. (GOMP_target_update_ext, GOMP_target_enter_exit_data): Check
  8461. return value from gomp_create_target_task, if false, fallthrough
  8462. as if no dependencies exist.
  8463. (gomp_target_task_fn): Change return type to bool, return true
  8464. if the task should have another part scheduled later. Handle
  8465. target nowait.
  8466. (gomp_load_plugin_for_device): Initialize async_run.
  8467. * task.c (gomp_init_task): Initialize children_queue.
  8468. (gomp_clear_parent_in_list): New.
  8469. (gomp_clear_parent_in_tree): New.
  8470. (gomp_clear_parent): Handle priorities.
  8471. (GOMP_task): Likewise.
  8472. (priority_queue_move_task_first,
  8473. gomp_target_task_completion, GOMP_PLUGIN_target_task_completion):
  8474. New functions.
  8475. (gomp_create_target_task): Use priority queues. Change return type
  8476. to bool, add state argument, return false if for async
  8477. {{enter,exit} data,update} constructs no dependencies need to be
  8478. waited for, handle target nowait. Set task->fn to NULL instead of
  8479. gomp_target_task_fn.
  8480. (verify_children_queue): Remove.
  8481. (priority_list_upgrade_task): New.
  8482. (priority_queue_upgrade_task): New.
  8483. (verify_task_queue): Remove.
  8484. (priority_list_downgrade_task): New.
  8485. (priority_queue_downgrade_task): New.
  8486. (gomp_task_run_pre): Use priority queues.
  8487. Abstract code out to priority_queue_downgrade_task.
  8488. (gomp_task_run_post_handle_dependers): Use priority queues.
  8489. (gomp_task_run_post_remove_parent): Likewise.
  8490. (gomp_task_run_post_remove_taskgroup): Likewise.
  8491. (gomp_barrier_handle_tasks): Likewise. Handle target nowait target
  8492. tasks specially.
  8493. (GOMP_taskwait): Likewise.
  8494. (gomp_task_maybe_wait_for_dependencies): Likewise. Abstract code to
  8495. priority-queue_upgrade_task.
  8496. (GOMP_taskgroup_start): Use priority queues.
  8497. (GOMP_taskgroup_end): Likewise. Handle target nowait target tasks
  8498. specially. If taskgroup is NULL, and thr->ts.level is 0, act as a
  8499. barrier.
  8500. * taskloop.c (GOMP_taskloop): Handle priorities.
  8501. * team.c (gomp_new_team): Call priority_queue_init.
  8502. (free_team): Call priority_queue_free.
  8503. (gomp_free_thread): Call gomp_team_end if thr->ts.team is artificial
  8504. team created for target nowait in implicit parallel region.
  8505. (gomp_team_start): For nested check, test thr->ts.level instead of
  8506. thr->ts.team != NULL.
  8507. * testsuite/libgomp.c/doacross-3.c: New test.
  8508. * testsuite/libgomp.c/ordered-5.c: New test.
  8509. * testsuite/libgomp.c/priority.c: New test.
  8510. * testsuite/libgomp.c/target-31.c: New test.
  8511. * testsuite/libgomp.c/target-32.c: New test.
  8512. * testsuite/libgomp.c/target-33.c: New test.
  8513. * testsuite/libgomp.c/target-34.c: New test.
  8514. 2015-11-13 Nathan Sidwell <nathan@codesourcery.com>
  8515. * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: New.
  8516. * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Sequential
  8517. loop is sequential.
  8518. 2015-11-13 Nathan Sidwell <nathan@codesourcery.com>
  8519. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: New.
  8520. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: New.
  8521. 2015-11-12 James Norris <jnorris@codesourcery.com>
  8522. Joseph Myers <joseph@codesourcery.com>
  8523. * libgomp.map (GOACC_2.0.1): Export GOACC_declare.
  8524. * oacc-parallel.c (GOACC_declare): New function.
  8525. * testsuite/libgomp.oacc-c-c++-common/declare-1.c: New test.
  8526. * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Likewise.
  8527. * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Likewise.
  8528. * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Likewise.
  8529. * testsuite/libgomp.oacc-c++/declare-1.C: Likewise.
  8530. 2015-11-12 Nathan Sidwell <nathan@codesourcery.com>
  8531. * testsuite/libgomp.oacc-c-c++-common/default-1.c: New.
  8532. 2015-11-1 Nathan Sidwell <nathan@codesourcery.com>
  8533. * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: New.
  8534. * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: New.
  8535. 2015-11-09 Nathan Sidwell <nathan@codesourcery.com>
  8536. * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Remove
  8537. inadvertent commit.
  8538. 2015-11-09 Nathan Sidwell <nathan@codesourcery.com>
  8539. * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: New.
  8540. * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: New.
  8541. * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: New.
  8542. * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: New.
  8543. * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: New.
  8544. 2015-11-06 Thomas Schwinge <thomas@codesourcery.com>
  8545. * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: XFAIL.
  8546. * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
  8547. 2015-11-05 Jakub Jelinek <jakub@redhat.com>
  8548. Ilya Verbin <ilya.verbin@intel.com>
  8549. * libgomp_g.h (GOMP_loop_nonmonotonic_dynamic_next,
  8550. GOMP_loop_nonmonotonic_dynamic_start,
  8551. GOMP_loop_nonmonotonic_guided_next,
  8552. GOMP_loop_nonmonotonic_guided_start,
  8553. GOMP_loop_ull_nonmonotonic_dynamic_next,
  8554. GOMP_loop_ull_nonmonotonic_dynamic_start,
  8555. GOMP_loop_ull_nonmonotonic_guided_next,
  8556. GOMP_loop_ull_nonmonotonic_guided_start,
  8557. GOMP_parallel_loop_nonmonotonic_dynamic,
  8558. GOMP_parallel_loop_nonmonotonic_guided): New prototypes.
  8559. (GOMP_target_41): Renamed to ...
  8560. (GOMP_target_ext): ... this. Add num_teams and thread_limit
  8561. arguments.
  8562. (GOMP_target_data_41): Renamed to ...
  8563. (GOMP_target_data_ext): ... this.
  8564. (GOMP_target_update_41): Renamed to ...
  8565. (GOMP_target_update_ext): ... this.
  8566. * libgomp.map (GOMP_4.5): Export GOMP_target_ext,
  8567. GOMP_target_data_ext and GOMP_target_update_ext instead of
  8568. GOMP_target_41, GOMP_target_data_41 and GOMP_target_update_41.
  8569. Export GOMP_loop_nonmonotonic_dynamic_next,
  8570. GOMP_loop_nonmonotonic_dynamic_start,
  8571. GOMP_loop_nonmonotonic_guided_next,
  8572. GOMP_loop_nonmonotonic_guided_start,
  8573. GOMP_loop_ull_nonmonotonic_dynamic_next,
  8574. GOMP_loop_ull_nonmonotonic_dynamic_start,
  8575. GOMP_loop_ull_nonmonotonic_guided_next,
  8576. GOMP_loop_ull_nonmonotonic_guided_start,
  8577. GOMP_parallel_loop_nonmonotonic_dynamic and
  8578. GOMP_parallel_loop_nonmonotonic_guided.
  8579. * loop.c (GOMP_parallel_loop_nonmonotonic_dynamic,
  8580. GOMP_parallel_loop_nonmonotonic_guided,
  8581. GOMP_loop_nonmonotonic_dynamic_start,
  8582. GOMP_loop_nonmonotonic_guided_start,
  8583. GOMP_loop_nonmonotonic_dynamic_next,
  8584. GOMP_loop_nonmonotonic_guided_next): New aliases or functions.
  8585. * loop_ull.c (GOMP_loop_ull_nonmonotonic_dynamic_start,
  8586. GOMP_loop_ull_nonmonotonic_guided_start,
  8587. GOMP_loop_ull_nonmonotonic_dynamic_next,
  8588. GOMP_loop_ull_nonmonotonic_guided_next): Likewise.
  8589. * target.c (gomp_map_0len_lookup, gomp_map_val): New inline
  8590. functions.
  8591. (gomp_map_vars): Handle GOMP_MAP_ALWAYS_POINTER. For
  8592. GOMP_MAP_ZERO_LEN_ARRAY_SECTION use gomp_map_0len_lookup.
  8593. Use gomp_map_val function.
  8594. (gomp_target_fallback_firstprivate): New static function.
  8595. (GOMP_target_41): Renamed to ...
  8596. (GOMP_target_ext): ... this. Add num_teams and thread_limit
  8597. arguments. Move firstprivate fallback handling into a new
  8598. function.
  8599. (GOMP_target_data_41): Renamed to ...
  8600. (GOMP_target_data_ext): ... this.
  8601. (GOMP_target_update_41): Renamed to ...
  8602. (GOMP_target_update_ext): ... this.
  8603. (gomp_exit_data): For GOMP_MAP_*ZERO_LEN* use
  8604. gomp_map_0len_lookup instead of gomp_map_lookup.
  8605. (omp_target_is_present): Use gomp_map_0len_lookup instead of
  8606. gomp_map_lookup.
  8607. * testsuite/libgomp.c/target-28.c: Likewise.
  8608. * testsuite/libgomp.c/monotonic-1.c: New test.
  8609. * testsuite/libgomp.c/monotonic-2.c: New test.
  8610. * testsuite/libgomp.c/nonmonotonic-1.c: New test.
  8611. * testsuite/libgomp.c/nonmonotonic-2.c: New test.
  8612. * testsuite/libgomp.c/pr66199-5.c: New test.
  8613. * testsuite/libgomp.c/pr66199-6.c: New test.
  8614. * testsuite/libgomp.c/pr66199-7.c: New test.
  8615. * testsuite/libgomp.c/pr66199-8.c: New test.
  8616. * testsuite/libgomp.c/pr66199-9.c: New test.
  8617. * testsuite/libgomp.c/reduction-11.c: New test.
  8618. * testsuite/libgomp.c/reduction-12.c: New test.
  8619. * testsuite/libgomp.c/reduction-13.c: New test.
  8620. * testsuite/libgomp.c/reduction-14.c: New test.
  8621. * testsuite/libgomp.c/reduction-15.c: New test.
  8622. * testsuite/libgomp.c/target-12.c (main): Adjust for
  8623. omp_target_is_present change for one-past-last element.
  8624. * testsuite/libgomp.c/target-17.c (foo): Drop tests where
  8625. the same var is both mapped and privatized.
  8626. * testsuite/libgomp.c/target-19.c (foo): Adjust for different
  8627. handling of zero-length array sections.
  8628. * testsuite/libgomp.c/target-28.c: New test.
  8629. * testsuite/libgomp.c/target-29.c: New test.
  8630. * testsuite/libgomp.c/target-30.c: New test.
  8631. * testsuite/libgomp.c/target-teams-1.c: New test.
  8632. * testsuite/libgomp.c++/member-6.C: New test.
  8633. * testsuite/libgomp.c++/member-7.C: New test.
  8634. * testsuite/libgomp.c++/monotonic-1.C: New test.
  8635. * testsuite/libgomp.c++/monotonic-2.C: New test.
  8636. * testsuite/libgomp.c++/nonmonotonic-1.C: New test.
  8637. * testsuite/libgomp.c++/nonmonotonic-2.C: New test.
  8638. * testsuite/libgomp.c++/pr66199-3.C: New test.
  8639. * testsuite/libgomp.c++/pr66199-4.C: New test.
  8640. * testsuite/libgomp.c++/pr66199-5.C: New test.
  8641. * testsuite/libgomp.c++/pr66199-6.C: New test.
  8642. * testsuite/libgomp.c++/pr66199-7.C: New test.
  8643. * testsuite/libgomp.c++/pr66199-8.C: New test.
  8644. * testsuite/libgomp.c++/pr66199-9.C: New test.
  8645. * testsuite/libgomp.c++/reduction-11.C: New test.
  8646. * testsuite/libgomp.c++/reduction-12.C: New test.
  8647. * testsuite/libgomp.c++/target-13.C: New test.
  8648. * testsuite/libgomp.c++/target-14.C: New test.
  8649. * testsuite/libgomp.c++/target-15.C: New test.
  8650. * testsuite/libgomp.c++/target-16.C: New test.
  8651. * testsuite/libgomp.c++/target-17.C: New test.
  8652. * testsuite/libgomp.c++/target-18.C: New test.
  8653. * testsuite/libgomp.c++/target-19.C: New test.
  8654. 2015-11-04 Nathan Sidwell <nathan@codesourcery.com>
  8655. * testsuite/libgomp.oacc-fortran/reduction-1.f90: Fix dimensions
  8656. and reduction copy.
  8657. * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
  8658. * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
  8659. * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
  8660. * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
  8661. * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
  8662. * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
  8663. * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
  8664. * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
  8665. * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
  8666. * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c: Likewise.
  8667. * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
  8668. * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
  8669. * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
  8670. * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New.
  8671. 2015-11-04 Nathan Sidwell <nathan@codesourcery.com>
  8672. * libgomp.oacc-c-c++-common/loop-red-g-1.c: New.
  8673. * libgomp.oacc-c-c++-common/loop-red-gwv-1.c: New.
  8674. * libgomp.oacc-c-c++-common/loop-red-v-1.c: New.
  8675. * libgomp.oacc-c-c++-common/loop-red-v-2.c: New.
  8676. * libgomp.oacc-c-c++-common/loop-red-w-1.c: New.
  8677. * libgomp.oacc-c-c++-common/loop-red-w-2.c: New.
  8678. * libgomp.oacc-c-c++-common/loop-red-wv-1.c: New.
  8679. * libgomp.oacc-fortran/reduction-5.f90: Avoid reference var.
  8680. 2015-11-03 Nathan Sidwell <nathan@codesourcery.com>
  8681. * libgomp.h (struct acc_dispatch_t): Remove args from exec_func.
  8682. * plugin/plugin-nvptx.c (nvptx_exec): Remove sizes & kinds arg.
  8683. (GOMP_OFFLOAD_openacc_parallel): Likewise.
  8684. * oacc-host.c (host_openacc_exec): Likewise.
  8685. * oacc-parallel.c (GOACC_parallel_keyed): Adjust exec_func call.
  8686. 2015-11-03 Julian Brown <julian@codesourcery.com>
  8687. Thomas Schwinge <thomas@codesourcery.com>
  8688. * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: New file.
  8689. * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
  8690. * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c:
  8691. Likewise.
  8692. * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: Likewise.
  8693. * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: Likewise.
  8694. 2015-11-03 James Norris <jnorris@codesourcery.com>
  8695. * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: New
  8696. file.
  8697. * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c:
  8698. Likewise.
  8699. * testsuite/libgomp.oacc-c-c++-common/atomic_rw-1.c: Likewise.
  8700. * testsuite/libgomp.oacc-c-c++-common/atomic_update-1.c: Likewise.
  8701. * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
  8702. * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: New file.
  8703. * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
  8704. 2015-10-29 Nathan Sidwell <nathan@codesourcery.com>
  8705. * openacc.h (enum acc_device_t): Reformat. Ensure layout
  8706. compatibility.
  8707. (enum acc_async_t): Reformat.
  8708. (acc_on_device): Declare compatible with builtin and provide C++
  8709. wrapper.
  8710. * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: New.
  8711. 2015-10-29 Thomas Schwinge <thomas@codesourcery.com>
  8712. Cesar Philippidis <cesar@codesourcery.com>
  8713. * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: Rename to...
  8714. * testsuite/libgomp.oacc-c-c++-common/combined-directives-1.c:
  8715. ... this. Add a description of the test at the top of the file.
  8716. * testsuite/libgomp.oacc-fortran/combdir-1.f90: Rename file to...
  8717. * testsuite/libgomp.oacc-fortran/combined-directives-1.f90:
  8718. ... this. Add a description of the test at the top of the file.
  8719. 2015-10-28 Nathan Sidwell <nathan@codesourcery.com>
  8720. * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: New.
  8721. * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: New.
  8722. * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: New.
  8723. * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: New.
  8724. * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: New.
  8725. * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: New.
  8726. 2015-10-27 Nathan Sidwell <nathan@codesourcery.com>
  8727. * plugin/plugin-nvptx.c (nvptx_exec): Remove check on compute
  8728. dimensions.
  8729. 2015-10-27 Thomas Schwinge <thomas@codesourcery.com>
  8730. PR testsuite/68063
  8731. * testsuite/libgomp.c++/member-1.C (A::m1): Add missing private clause.
  8732. 2015-10-27 James Norris <jnorris@codesourcery.com>
  8733. * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: New file.
  8734. * testsuite/libgomp.oacc-fortran/combdir-1.f90: Likewise.
  8735. 2015-10-26 Thomas Schwinge <thomas@codesourcery.com>
  8736. * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Print to stderr.
  8737. * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
  8738. * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Remove explicit
  8739. acc_device_nvidia usage.
  8740. * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
  8741. * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
  8742. * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
  8743. * oacc-init.c (acc_shutdown): Call gomp_init_targets_once.
  8744. * testsuite/libgomp.oacc-c-c++-common/lib-8.c: New file.
  8745. PR libgomp/66518
  8746. * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Resolve XFAIL.
  8747. PR libgomp/65437
  8748. PR libgomp/66518
  8749. * oacc-mem.c (update_dev_host): Call goacc_lazy_initialize.
  8750. * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Remove XFAIL.
  8751. 2015-10-23 Tom de Vries <tom@codesourcery.com>
  8752. PR testsuite/68063
  8753. * testsuite/libgomp.c++/member-2.C (A::m1): Add missing private clause.
  8754. 2015-10-20 Nathan Sidwell <nathan@codesourcery.com>
  8755. * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Set sane
  8756. vector_length.
  8757. * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
  8758. 2015-10-14 Ilya Verbin <ilya.verbin@intel.com>
  8759. Aleksander Ivanushenko <aleksander.ivanushenko@intel.com>
  8760. * target.c (gomp_map_vars): Initialize tgt->tgt_start and tgt->tgt_end
  8761. to 0 when mapnum is 0.
  8762. 2015-10-14 Sebastian Huber <sebastian.huber@embedded-brains.de>
  8763. * fortran.c (omp_get_place_proc_ids_, omp_get_partition_place_nums_):
  8764. Cast to int from int32_t.
  8765. 2015-10-13 Jakub Jelinek <jakub@redhat.com>
  8766. Aldy Hernandez <aldyh@redhat.com>
  8767. Ilya Verbin <ilya.verbin@intel.com>
  8768. * config/linux/affinity.c (omp_get_place_num_procs,
  8769. omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
  8770. * config/linux/doacross.h: New file.
  8771. * config/posix/affinity.c (omp_get_place_num_procs,
  8772. omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
  8773. * config/posix/doacross.h: New file.
  8774. * env.c: Include gomp-constants.h.
  8775. (struct gomp_task_icv): Rename run_sched_modifier to
  8776. run_sched_chunk_size.
  8777. (gomp_max_task_priority_var): New variable.
  8778. (parse_schedule): Rename run_sched_modifier to run_sched_chunk_size.
  8779. (handle_omp_display_env): Change _OPENMP value from 201307 to
  8780. 201511. Print OMP_MAX_TASK_PRIORITY.
  8781. (initialize_env): Parse OMP_MAX_TASK_PRIORITY.
  8782. (omp_set_schedule, omp_get_schedule): Rename modifier argument to
  8783. chunk_size and run_sched_modifier to run_sched_chunk_size.
  8784. (omp_get_max_task_priority, omp_get_initial_device,
  8785. omp_get_num_places, omp_get_place_num, omp_get_partition_num_places,
  8786. omp_get_partition_place_nums): New functions.
  8787. * fortran.c (omp_set_schedule_, omp_set_schedule_8_,
  8788. omp_get_schedule_, omp_get_schedule_8_): Rename modifier argument
  8789. to chunk_size.
  8790. (omp_get_num_places_, omp_get_place_num_procs_,
  8791. omp_get_place_num_procs_8_, omp_get_place_proc_ids_,
  8792. omp_get_place_proc_ids_8_, omp_get_place_num_,
  8793. omp_get_partition_num_places_, omp_get_partition_place_nums_,
  8794. omp_get_partition_place_nums_8_, omp_get_initial_device_,
  8795. omp_get_max_task_priority_): New functions.
  8796. * libgomp_g.h (GOMP_loop_doacross_static_start,
  8797. GOMP_loop_doacross_dynamic_start, GOMP_loop_doacross_guided_start,
  8798. GOMP_loop_doacross_runtime_start, GOMP_loop_ull_doacross_static_start,
  8799. GOMP_loop_ull_doacross_dynamic_start,
  8800. GOMP_loop_ull_doacross_guided_start,
  8801. GOMP_loop_ull_doacross_runtime_start, GOMP_doacross_post,
  8802. GOMP_doacross_wait, GOMP_doacross_ull_post, GOMP_doacross_wait,
  8803. GOMP_taskloop, GOMP_taskloop_ull, GOMP_target_41,
  8804. GOMP_target_data_41, GOMP_target_update_41,
  8805. GOMP_target_enter_exit_data): New prototypes.
  8806. (GOMP_task): Add prototype argument.
  8807. * libgomp.h (_LIBGOMP_CHECKING_): Define to 0 if not yet defined.
  8808. (struct gomp_doacross_work_share): New type.
  8809. (struct gomp_work_share): Add doacross field.
  8810. (struct gomp_task_icv): Rename run_sched_modifier to
  8811. run_sched_chunk_size.
  8812. (enum gomp_task_kind): Rename GOMP_TASK_IFFALSE to
  8813. GOMP_TASK_UNDEFERRED. Add comments.
  8814. (struct gomp_task_depend_entry): Add comments.
  8815. (struct gomp_task): Likewise.
  8816. (struct gomp_taskgroup): Likewise.
  8817. (struct gomp_target_task): New type.
  8818. (struct gomp_team): Add comment.
  8819. (gomp_get_place_proc_ids_8, gomp_doacross_init,
  8820. gomp_doacross_ull_init, gomp_task_maybe_wait_for_dependencies,
  8821. gomp_create_target_task, gomp_target_task_fn): New prototypes.
  8822. (struct target_var_desc): New type.
  8823. (struct target_mem_desc): Adjust comment. Use struct
  8824. target_var_desc instead of splay_tree_key for list.
  8825. (REFCOUNT_INFINITY): Define.
  8826. (struct splay_tree_key_s): Remove copy_from field.
  8827. (struct gomp_device_descr): Add dev2dev_func field.
  8828. (enum gomp_map_vars_kind): New enum.
  8829. (gomp_map_vars): Add one argument.
  8830. * libgomp.map (OMP_4.5): Export omp_get_max_task_priority,
  8831. omp_get_max_task_priority_, omp_get_num_places, omp_get_num_places_,
  8832. omp_get_place_num_procs, omp_get_place_num_procs_,
  8833. omp_get_place_num_procs_8_, omp_get_place_proc_ids,
  8834. omp_get_place_proc_ids_, omp_get_place_proc_ids_8_, omp_get_place_num,
  8835. omp_get_place_num_, omp_get_partition_num_places,
  8836. omp_get_partition_num_places_, omp_get_partition_place_nums,
  8837. omp_get_partition_place_nums_, omp_get_partition_place_nums_8_,
  8838. omp_get_initial_device, omp_get_initial_device_, omp_target_alloc,
  8839. omp_target_free, omp_target_is_present, omp_target_memcpy,
  8840. omp_target_memcpy_rect, omp_target_associate_ptr and
  8841. omp_target_disassociate_ptr.
  8842. (GOMP_4.0.2): Renamed to ...
  8843. (GOMP_4.5): ... this. Export GOMP_target_41, GOMP_target_data_41,
  8844. GOMP_target_update_41, GOMP_target_enter_exit_data, GOMP_taskloop,
  8845. GOMP_taskloop_ull, GOMP_loop_doacross_dynamic_start,
  8846. GOMP_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
  8847. GOMP_loop_doacross_static_start, GOMP_doacross_post,
  8848. GOMP_doacross_wait, GOMP_loop_ull_doacross_dynamic_start,
  8849. GOMP_loop_ull_doacross_guided_start,
  8850. GOMP_loop_ull_doacross_runtime_start,
  8851. GOMP_loop_ull_doacross_static_start, GOMP_doacross_ull_post and
  8852. GOMP_doacross_ull_wait.
  8853. * libgomp.texi: Document omp_get_max_task_priority.
  8854. Rename modifier argument to chunk_size for omp_set_schedule and
  8855. omp_get_schedule. Document OMP_MAX_TASK_PRIORITY env var.
  8856. * loop.c (GOMP_loop_runtime_start): Adjust for run_sched_modifier
  8857. to run_sched_chunk_size renaming.
  8858. (GOMP_loop_ordered_runtime_start): Likewise.
  8859. (gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
  8860. gomp_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
  8861. GOMP_parallel_loop_runtime_start): New functions.
  8862. (GOMP_parallel_loop_runtime): Adjust for run_sched_modifier
  8863. to run_sched_chunk_size renaming.
  8864. (GOMP_loop_doacross_static_start, GOMP_loop_doacross_dynamic_start,
  8865. GOMP_loop_doacross_guided_start): New functions or aliases.
  8866. * loop_ull.c (GOMP_loop_ull_runtime_start): Adjust for
  8867. run_sched_modifier to run_sched_chunk_size renaming.
  8868. (GOMP_loop_ull_ordered_runtime_start): Likewise.
  8869. (gomp_loop_ull_doacross_static_start,
  8870. gomp_loop_ull_doacross_dynamic_start,
  8871. gomp_loop_ull_doacross_guided_start,
  8872. GOMP_loop_ull_doacross_runtime_start): New functions.
  8873. (GOMP_loop_ull_doacross_static_start,
  8874. GOMP_loop_ull_doacross_dynamic_start,
  8875. GOMP_loop_ull_doacross_guided_start): New functions or aliases.
  8876. * oacc-mem.c (acc_map_data, present_create_copy,
  8877. gomp_acc_insert_pointer): Pass GOMP_MAP_VARS_OPENACC instead of false
  8878. to gomp_map_vars.
  8879. (gomp_acc_remove_pointer): Use copy_from from target_var_desc.
  8880. * oacc-parallel.c (GOACC_data_start): Pass GOMP_MAP_VARS_OPENACC
  8881. instead of false to gomp_map_vars.
  8882. (GOACC_parallel_keyed): Likewise. Use copy_from from target_var_desc.
  8883. * omp.h.in (omp_lock_hint_t): New type.
  8884. (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
  8885. omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
  8886. omp_get_place_num, omp_get_partition_num_places,
  8887. omp_get_partition_place_nums, omp_get_initial_device,
  8888. omp_get_max_task_priority, omp_target_alloc, omp_target_free,
  8889. omp_target_is_present, omp_target_memcpy, omp_target_memcpy_rect,
  8890. omp_target_associate_ptr, omp_target_disassociate_ptr): New
  8891. prototypes.
  8892. * omp_lib.f90.in (omp_lock_hint_kind): New parameter.
  8893. (omp_lock_hint_none, omp_lock_hint_uncontended,
  8894. omp_lock_hint_contended, omp_lock_hint_nonspeculative,
  8895. omp_lock_hint_speculative): New parameters.
  8896. (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
  8897. omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
  8898. omp_get_place_num, omp_get_partition_num_places,
  8899. omp_get_partition_place_nums, omp_get_initial_device,
  8900. omp_get_max_task_priority): New interfaces.
  8901. (omp_set_schedule, omp_get_schedule): Rename modifier argument
  8902. to chunk_size.
  8903. * omp_lib.h.in (omp_lock_hint_kind): New parameter.
  8904. (omp_lock_hint_none, omp_lock_hint_uncontended,
  8905. omp_lock_hint_contended, omp_lock_hint_nonspeculative,
  8906. omp_lock_hint_speculative): New parameters.
  8907. (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
  8908. omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
  8909. omp_get_place_num, omp_get_partition_num_places,
  8910. omp_get_partition_place_nums, omp_get_initial_device,
  8911. omp_get_max_task_priority): New functions and subroutines.
  8912. * ordered.c: Include stdarg.h and string.h.
  8913. (MAX_COLLAPSED_BITS): Define.
  8914. (gomp_doacross_init, GOMP_doacross_post, GOMP_doacross_wait,
  8915. gomp_doacross_ull_init, GOMP_doacross_ull_post,
  8916. GOMP_doacross_ull_wait): New functions.
  8917. * target.c: Include errno.h.
  8918. (resolve_device): If device is not initialized, call
  8919. gomp_init_device on it.
  8920. (gomp_map_lookup): New function.
  8921. (gomp_map_vars_existing): Add tgt_var argument, fill it in.
  8922. Don't bump refcount if REFCOUNT_INFINITY. Handle
  8923. GOMP_MAP_ALWAYS_TO_P.
  8924. (get_kind): Rename is_openacc argument to short_mapkind.
  8925. (gomp_map_pointer): Use gomp_map_lookup.
  8926. (gomp_map_fields_existing): New function.
  8927. (gomp_map_vars): Rename is_openacc argument to short_mapkind
  8928. and is_target to pragma_kind. Handle GOMP_MAP_VARS_ENTER_DATA,
  8929. handle GOMP_MAP_FIRSTPRIVATE_INT, GOMP_MAP_STRUCT,
  8930. GOMP_MAP_USE_DEVICE_PTR, GOMP_MAP_ZERO_LEN_ARRAY_SECTION.
  8931. Adjust for tgt->list changed type and copy_from living in there.
  8932. (gomp_copy_from_async): Adjust for tgt->list changed type and
  8933. copy_from living in there.
  8934. (gomp_unmap_vars): Likewise.
  8935. (gomp_update): Likewise. Rename is_openacc argument to
  8936. short_mapkind. Don't fail if object is not mapped.
  8937. (gomp_load_image_to_device): Initialize refcount to
  8938. REFCOUNT_INFINITY.
  8939. (gomp_target_fallback): New function.
  8940. (gomp_get_target_fn_addr): Likewise.
  8941. (GOMP_target): Adjust gomp_map_vars caller, use
  8942. gomp_get_target_fn_addr and gomp_target_fallback.
  8943. (GOMP_target_41): New function.
  8944. (gomp_target_data_fallback): New function.
  8945. (GOMP_target_data): Use it, adjust gomp_map_vars caller.
  8946. (GOMP_target_data_41): New function.
  8947. (GOMP_target_update): Adjust gomp_update caller.
  8948. (GOMP_target_update_41): New function.
  8949. (gomp_exit_data, GOMP_target_enter_exit_data,
  8950. gomp_target_task_fn, omp_target_alloc, omp_target_free,
  8951. omp_target_is_present, omp_target_memcpy,
  8952. omp_target_memcpy_rect_worker, omp_target_memcpy_rect,
  8953. omp_target_associate_ptr, omp_target_disassociate_ptr,
  8954. gomp_load_plugin_for_device): New functions.
  8955. * task.c: Include gomp-constants.h. Include taskloop.c
  8956. twice to get GOMP_taskloop and GOMP_taskloop_ull definitions.
  8957. (gomp_task_handle_depend): New function.
  8958. (GOMP_task): Use it. Add priority argument. Use
  8959. gomp-constant.h constants instead of hardcoded numbers.
  8960. Rename GOMP_TASK_IFFALSE to GOMP_TASK_UNDEFERRED.
  8961. (gomp_create_target_task): New function.
  8962. (verify_children_queue, verify_taskgroup_queue,
  8963. verify_task_queue): New functions.
  8964. (gomp_task_run_pre): Call verify_*_queue functions.
  8965. If an upcoming tied task is about to leave the sibling or
  8966. taskgroup queues in an invalid state, adjust appropriately.
  8967. Remove taskgroup argument. Add comments.
  8968. (gomp_task_run_post_handle_dependers): Add comments.
  8969. (gomp_task_run_post_remove_parent): Likewise.
  8970. (gomp_barrier_handle_tasks): Adjust gomp_task_run_pre caller.
  8971. (GOMP_taskwait): Likewise. Add comments.
  8972. (gomp_task_maybe_wait_for_dependencies): Fix scheduling
  8973. problem such that the first non parent_depends_on task does not
  8974. end up at the end of the children queue.
  8975. (GOMP_taskgroup_start): Rename GOMP_TASK_IFFALSE to
  8976. GOMP_TASK_UNDEFERRED.
  8977. (GOMP_taskgroup_end): Adjust gomp_task_run_pre caller.
  8978. * taskloop.c: New file.
  8979. * testsuite/lib/libgomp.exp
  8980. (check_effective_target_offload_device_nonshared_as): New proc.
  8981. * testsuite/libgomp.c/affinity-2.c: New test.
  8982. * testsuite/libgomp.c/doacross-1.c: New test.
  8983. * testsuite/libgomp.c/doacross-2.c: New test.
  8984. * testsuite/libgomp.c/examples-4/declare_target-1.c (fib_wrapper):
  8985. Add map clause to target.
  8986. * testsuite/libgomp.c/examples-4/declare_target-4.c (accum): Likewise.
  8987. * testsuite/libgomp.c/examples-4/declare_target-5.c (accum): Likewise.
  8988. * testsuite/libgomp.c/examples-4/device-1.c (main): Likewise.
  8989. * testsuite/libgomp.c/examples-4/device-3.c (main): Likewise.
  8990. * testsuite/libgomp.c/examples-4/target_data-3.c (gramSchmidt):
  8991. Likewise.
  8992. * testsuite/libgomp.c/examples-4/teams-2.c (dotprod): Likewise.
  8993. * testsuite/libgomp.c/examples-4/teams-3.c (dotprod): Likewise.
  8994. * testsuite/libgomp.c/examples-4/teams-4.c (dotprod): Likewise.
  8995. * testsuite/libgomp.c/for-2.h (OMPTGT, OMPTO, OMPFROM): Define if
  8996. not defined. Use those where needed.
  8997. * testsuite/libgomp.c/for-4.c: New test.
  8998. * testsuite/libgomp.c/for-5.c: New test.
  8999. * testsuite/libgomp.c/for-6.c: New test.
  9000. * testsuite/libgomp.c/linear-1.c: New test.
  9001. * testsuite/libgomp.c/ordered-4.c: New test.
  9002. * testsuite/libgomp.c/pr66199-2.c (f2): Adjust for linear clause
  9003. only allowed on the loop iterator.
  9004. * testsuite/libgomp.c/pr66199-3.c: New test.
  9005. * testsuite/libgomp.c/pr66199-4.c: New test.
  9006. * testsuite/libgomp.c/reduction-7.c: New test.
  9007. * testsuite/libgomp.c/reduction-8.c: New test.
  9008. * testsuite/libgomp.c/reduction-9.c: New test.
  9009. * testsuite/libgomp.c/reduction-10.c: New test.
  9010. * testsuite/libgomp.c/target-1.c (fn2, fn3, fn4): Add
  9011. map(tofrom:s).
  9012. * testsuite/libgomp.c/target-2.c (fn2, fn3, fn4): Likewise.
  9013. * testsuite/libgomp.c/target-7.c (foo): Add map(h) where needed.
  9014. * testsuite/libgomp.c/target-11.c: New test.
  9015. * testsuite/libgomp.c/target-12.c: New test.
  9016. * testsuite/libgomp.c/target-13.c: New test.
  9017. * testsuite/libgomp.c/target-14.c: New test.
  9018. * testsuite/libgomp.c/target-15.c: New test.
  9019. * testsuite/libgomp.c/target-16.c: New test.
  9020. * testsuite/libgomp.c/target-17.c: New test.
  9021. * testsuite/libgomp.c/target-18.c: New test.
  9022. * testsuite/libgomp.c/target-19.c: New test.
  9023. * testsuite/libgomp.c/target-20.c: New test.
  9024. * testsuite/libgomp.c/target-21.c: New test.
  9025. * testsuite/libgomp.c/target-22.c: New test.
  9026. * testsuite/libgomp.c/target-23.c: New test.
  9027. * testsuite/libgomp.c/target-24.c: New test.
  9028. * testsuite/libgomp.c/target-25.c: New test.
  9029. * testsuite/libgomp.c/target-26.c: New test.
  9030. * testsuite/libgomp.c/target-27.c: New test.
  9031. * testsuite/libgomp.c/taskloop-1.c: New test.
  9032. * testsuite/libgomp.c/taskloop-2.c: New test.
  9033. * testsuite/libgomp.c/taskloop-3.c: New test.
  9034. * testsuite/libgomp.c/taskloop-4.c: New test.
  9035. * testsuite/libgomp.c++/ctor-13.C: New test.
  9036. * testsuite/libgomp.c++/doacross-1.C: New test.
  9037. * testsuite/libgomp.c++/examples-4/declare_target-2.C:
  9038. Replace offload_device with offload_device_nonshared_as.
  9039. * testsuite/libgomp.c++/for-12.C: New test.
  9040. * testsuite/libgomp.c++/for-13.C: New test.
  9041. * testsuite/libgomp.c++/for-14.C: New test.
  9042. * testsuite/libgomp.c++/linear-1.C: New test.
  9043. * testsuite/libgomp.c++/member-1.C: New test.
  9044. * testsuite/libgomp.c++/member-2.C: New test.
  9045. * testsuite/libgomp.c++/member-3.C: New test.
  9046. * testsuite/libgomp.c++/member-4.C: New test.
  9047. * testsuite/libgomp.c++/member-5.C: New test.
  9048. * testsuite/libgomp.c++/ordered-1.C: New test.
  9049. * testsuite/libgomp.c++/reduction-5.C: New test.
  9050. * testsuite/libgomp.c++/reduction-6.C: New test.
  9051. * testsuite/libgomp.c++/reduction-7.C: New test.
  9052. * testsuite/libgomp.c++/reduction-8.C: New test.
  9053. * testsuite/libgomp.c++/reduction-9.C: New test.
  9054. * testsuite/libgomp.c++/reduction-10.C: New test.
  9055. * testsuite/libgomp.c++/reference-1.C: New test.
  9056. * testsuite/libgomp.c++/simd14.C: New test.
  9057. * testsuite/libgomp.c++/target-2.C (fn2): Add map(tofrom: s) clause.
  9058. * testsuite/libgomp.c++/target-5.C: New test.
  9059. * testsuite/libgomp.c++/target-6.C: New test.
  9060. * testsuite/libgomp.c++/target-7.C: New test.
  9061. * testsuite/libgomp.c++/target-8.C: New test.
  9062. * testsuite/libgomp.c++/target-9.C: New test.
  9063. * testsuite/libgomp.c++/target-10.C: New test.
  9064. * testsuite/libgomp.c++/target-11.C: New test.
  9065. * testsuite/libgomp.c++/target-12.C: New test.
  9066. * testsuite/libgomp.c++/taskloop-1.C: New test.
  9067. * testsuite/libgomp.c++/taskloop-2.C: New test.
  9068. * testsuite/libgomp.c++/taskloop-3.C: New test.
  9069. * testsuite/libgomp.c++/taskloop-4.C: New test.
  9070. * testsuite/libgomp.c++/taskloop-5.C: New test.
  9071. * testsuite/libgomp.c++/taskloop-6.C: New test.
  9072. * testsuite/libgomp.c++/taskloop-7.C: New test.
  9073. * testsuite/libgomp.c++/taskloop-8.C: New test.
  9074. * testsuite/libgomp.c++/taskloop-9.C: New test.
  9075. * testsuite/libgomp.fortran/affinity1.f90: New test.
  9076. * testsuite/libgomp.fortran/affinity2.f90: New test.
  9077. 2015-10-13 Tom de Vries <tom@codesourcery.com>
  9078. PR tree-optimization/67476
  9079. * testsuite/libgomp.c/autopar-3.c: New test.
  9080. * testsuite/libgomp.c/autopar-4.c: New test.
  9081. * testsuite/libgomp.c/autopar-5.c: New test.
  9082. * testsuite/libgomp.c/autopar-6.c: New test.
  9083. * testsuite/libgomp.c/autopar-7.c: New test.
  9084. * testsuite/libgomp.c/autopar-8.c: New test.
  9085. 2015-10-12 James Norris <jnorris@codesourcery.com>
  9086. * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Fix loop
  9087. initializer.
  9088. 2015-10-09 David Malcolm <dmalcolm@redhat.com>
  9089. * testsuite/lib/libgomp.exp: Load multiline.exp before prune.exp,
  9090. using load_gcc_lib.
  9091. 2015-10-02 Thomas Schwinge <thomas@codesourcery.com>
  9092. * oacc-ptx.h: Remove file, moving its content into...
  9093. * config/nvptx/fortran.c: ... here...
  9094. * config/nvptx/oacc-init.c: ..., here...
  9095. * config/nvptx/oacc-parallel.c: ..., and here.
  9096. * config/nvptx/openacc.f90: New file.
  9097. * plugin/plugin-nvptx.c: Don't include "oacc-ptx.h".
  9098. (link_ptx): Don't link in predefined bits of PTX code.
  9099. 2015-09-30 Nathan Sidwell <nathan@codesourcery.com>
  9100. Bernd Schmidt <bernds@codesourcery.com>
  9101. * plugin/plugin-nvptx.c (targ_fn_launch): Use GOMP_DIM_MAX.
  9102. (struct targ_ptx_obj): New.
  9103. (nvptx_tdata): Move earlier, change data format.
  9104. (link_ptx): Take targ_ptx_obj ptr and count. Allow multiple
  9105. objects.
  9106. (GOMP_OFFLOAD_load_image): Adjust.
  9107. 2015-09-30 Thomas Schwinge <thomas@codesourcery.com>
  9108. * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Add checkpoint.
  9109. * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
  9110. * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
  9111. * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
  9112. * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
  9113. * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
  9114. * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
  9115. * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
  9116. * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
  9117. * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
  9118. * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
  9119. * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
  9120. * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
  9121. * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
  9122. * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
  9123. * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
  9124. * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
  9125. * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
  9126. * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
  9127. * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
  9128. * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
  9129. * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
  9130. * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
  9131. * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
  9132. * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
  9133. * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
  9134. * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
  9135. * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
  9136. * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
  9137. * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
  9138. * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
  9139. * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
  9140. * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
  9141. * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
  9142. * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
  9143. * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
  9144. * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
  9145. * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
  9146. * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
  9147. * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
  9148. * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
  9149. * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
  9150. * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
  9151. * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
  9152. * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
  9153. * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
  9154. * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
  9155. * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
  9156. * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
  9157. * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
  9158. * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
  9159. * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
  9160. * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
  9161. * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
  9162. * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
  9163. * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
  9164. * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
  9165. * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
  9166. * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
  9167. * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
  9168. * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
  9169. * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
  9170. * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
  9171. 2015-09-29 Nathan Sidwell <nathan@codesourcery.com>
  9172. * oacc-init.c (acc_on_device): Force optimization level.
  9173. 2015-09-29 Nathan Sidwell <nathan@codesourcery.com>
  9174. * plugin/plugin-nvptx.c (ARRAYSIZE): Delete.
  9175. (cuda_errlist): Delete.
  9176. (cuda_error): Reimplement.
  9177. 2015-09-28 Nathan Sidwell <nathan@codesourcery.com>
  9178. * libgomp.h (acc_dispatch_t): Replace separate geometry args with
  9179. array.
  9180. * libgomp.map (GOACC_parallel_keyed): New.
  9181. * oacc-parallel.c (goacc_wait): Take pointer to va_list. Adjust
  9182. all callers.
  9183. (GOACC_parallel_keyed): New interface. Lose geometry arguments
  9184. and take keyed varargs list. Adjust call to exec_func.
  9185. (GOACC_parallel): Force host fallback.
  9186. * libgomp_g.h (GOACC_parallel): Remove.
  9187. (GOACC_parallel_keyed): Declare.
  9188. * plugin/plugin-nvptx.c (struct targ_fn_launch): New struct.
  9189. (struct targ_gn_descriptor): Replace name field with launch field.
  9190. (nvptx_exec): Lose separate geometry args, take array. Process
  9191. dynamic dimensions and adjust.
  9192. (struct nvptx_tdata): Replace fn_names field with fn_descs.
  9193. (GOMP_OFFLOAD_load_image): Adjust for change in function table
  9194. data.
  9195. (GOMP_OFFLOAD_openacc_parallel): Adjust for change in dimension
  9196. passing.
  9197. * oacc-host.c (host_openacc_exec): Adjust for change in dimension
  9198. passing.
  9199. 2015-09-22 Chung-Lin Tang <cltang@codesourcery.com>
  9200. PR libgomp/67141
  9201. * oacc-int.h (goacc_host_init): Add declaration.
  9202. * oacc-host.c (goacc_host_init): Remove static and constructor attribute.
  9203. * oacc-init.c (goacc_runtime_initialize): Call goacc_host_init() at end.
  9204. 2015-09-08 Aditya Kumar <hiraditya@msn.com>
  9205. Sebastian Pop <s.pop@samsung.com>
  9206. * testsuite/libgomp.graphite/bounds.c (int foo): Modified test case to
  9207. match o/p.
  9208. * testsuite/libgomp.graphite/force-parallel-1.c (void parloop): Same.
  9209. * testsuite/libgomp.graphite/force-parallel-4.c: Same.
  9210. * testsuite/libgomp.graphite/force-parallel-5.c: Same.
  9211. * testsuite/libgomp.graphite/force-parallel-7.c: Same.
  9212. * testsuite/libgomp.graphite/force-parallel-8.c: Same.
  9213. 2015-09-03 Jakub Jelinek <jakub@redhat.com>
  9214. * configure.tgt: Add missing ;; in between nvptx and rtems
  9215. snippets.
  9216. 2015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
  9217. * config/posix/pool.h (gomp_adjust_thread_attr): New.
  9218. * config/rtems/pool.h (gomp_adjust_thread_attr): Likewise.
  9219. (gomp_thread_pool_reservoir): Add priority member.
  9220. * confi/rtems/proc.c (allocate_thread_pool_reservoir): Add
  9221. priority.
  9222. (parse_thread_pools): Likewise.
  9223. * team.c (gomp_team_start): Call configuration provided
  9224. gomp_adjust_thread_attr(). Destroy thread attributes if
  9225. necessary.
  9226. * libgomp.texi: Document GOMP_RTEMS_THREAD_POOLS.
  9227. 2015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
  9228. * config/posix/pool.h: New.
  9229. * config/rtems/pool.h: Likewise.
  9230. * config/rtems/proc.c: Likewise.
  9231. * libgomp.h (gomp_thread_destructor): Declare.
  9232. * team.c: Include configuration provided "pool.h".
  9233. (gomp_get_thread_pool): Define in configuration.
  9234. (gomp_team_end): Call configuration defined
  9235. gomp_release_thread_pool().
  9236. 2015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
  9237. * config/rtems/bar.c: New.
  9238. * config/rtems/bar.h: Likewise.
  9239. * config/rtems/mutex.c: Likewise.
  9240. * config/rtems/mutex.h: Likewise.
  9241. * config/rtems/sem.c: Likewise.
  9242. * config/rtems/sem.h: Likewise.
  9243. * configure.ac (*-*-rtems*): Check that Newlib provides a proper
  9244. <sys/lock.h> header file.
  9245. * configure.tgt (*-*-rtems*): Enable RTEMS configuration if
  9246. supported by Newlib.
  9247. * configure: Regenerate.
  9248. 2015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
  9249. * team.c (gomp_new_thread_pool): Delete and move content to ...
  9250. (gomp_get_thread_pool): ... new function. Allocate and
  9251. initialize thread pool on demand.
  9252. (get_last_team): Use gomp_get_thread_pool().
  9253. (gomp_team_start): Delete thread pool initialization.
  9254. 2015-09-03 Tom de Vries <tom@codesourcery.com>
  9255. PR tree-optimization/65637
  9256. * testsuite/libgomp.c/autopar-2.c: New test.
  9257. 2015-08-29 Tom de Vries <tom@codesourcery.com>
  9258. PR tree-optimization/46193
  9259. * testsuite/libgomp.c/pr46193.c: New test.
  9260. 2015-08-24 Nathan Sidwell <nathan@codesourcery.com>
  9261. libgomp/
  9262. * libgomp.map: Add 4.0.2 version.
  9263. * target.c (offload_image_descr): Add version field.
  9264. (gomp_load_image_to_device): Add version argument. Adjust plugin
  9265. call. Improve load mismatch diagnostic.
  9266. (gomp_unload_image_from_device): Add version argument. Adjust plugin
  9267. call.
  9268. (GOMP_offload_regster): Make stub function, move bulk to ...
  9269. (GOMP_offload_register_ver): ... here. Process version argument.
  9270. (GOMP_offload_unregister): Make stub function, move bulk to ...
  9271. (GOMP_offload_unregister_ver): ... here. Process version argument.
  9272. (gomp_init_device): Process version field.
  9273. (gomp_unload_device): Process version field.
  9274. (gomp_load_plugin_for_device): Reimplement DLSYM & DLSYM_OPT
  9275. macros. Check plugin version.
  9276. * libgomp.h (gomp_device_descr): Add version function field. Adjust
  9277. loader and unloader types.
  9278. * oacc-host.c: Include gomp-constants.h.
  9279. (host_version): New.
  9280. (host_load_image, host_unload_image): Adjust.
  9281. (host_dispatch): Add host_version.
  9282. * plugin/plugin-nvptx.c: Include gomp-constants.h.
  9283. (GOMP_OFFLOAD_version): New.
  9284. (GOMP_OFFLOAD_load_image): Add version arg and check it.
  9285. (GOMP_OFFLOAD_unload_image): Likewise.
  9286. * plugin/plugin-host.c: Include gomp-constants.h.
  9287. (GOMP_OFFLOAD_version): New.
  9288. (GOMP_OFFLOAD_load_image): Add version arg.
  9289. (GOMP_OFFLOAD_unload_image): Likewise.
  9290. 2015-08-24 Tom de Vries <tom@codesourcery.com>
  9291. PR tree-optimization/65468
  9292. * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: New test.
  9293. 2015-08-24 Tom de Vries <tom@codesourcery.com>
  9294. PR tree-optimization/65468
  9295. * testsuite/libgomp.c/static-chunk-size-one.c: New test.
  9296. 2015-08-24 Joost VandeVondele <vondele@gnu.gcc.org>
  9297. PR libgomp/66761
  9298. PR libgomp/67303
  9299. * iter.c (gomp_iter_dynamic_next): Employ an atomic load.
  9300. (gomp_iter_guided_next): Idem.
  9301. * iter_ull.c (gomp_iter_ull_dynamic_next): Idem.
  9302. (gomp_iter_ull_guided_next): Idem.
  9303. * config/linux/wait.h (do_spin): Idem.
  9304. 2015-08-10 Thomas Schwinge <thomas@codesourcery.com>
  9305. * libgomp-plugin.h (enum offload_target_type): Remove
  9306. OFFLOAD_TARGET_TYPE_HOST_NONSHM.
  9307. * openacc.f90 (openacc_kinds): Remove acc_device_host_nonshm.
  9308. * openacc.h (enum acc_device_t): Likewise.
  9309. * openacc_lib.h: Likewise.
  9310. * oacc-init.c (name_of_acc_device_t): Don't handle it.
  9311. (acc_on_device): Just use __builtin_acc_on_device.
  9312. * testsuite/libgomp.oacc-c-c++-common/if-1.c: Don't forbid usage
  9313. of acc_on_device builtin.
  9314. * plugin/plugin-host.h: Remove file.
  9315. * plugin/plugin-host.c: Likewise, but salvage some content into...
  9316. * oacc-host.c: ... this file.
  9317. * plugin/Makefrag.am: Don't build libgomp-plugin-host_nonshm.la.
  9318. * plugin/configfrag.ac (offload_targets): Don't add host_nonshm.
  9319. * Makefile.in: Regenerate.
  9320. * configure: Likewise.
  9321. * testsuite/lib/libgomp.exp
  9322. (check_effective_target_openacc_host_nonshm_selected): Remove.
  9323. * testsuite/libgomp.oacc-c++/c++.exp: Don't handle
  9324. ACC_DEVICE_TYPE=host_nonshm.
  9325. * testsuite/libgomp.oacc-c/c.exp: Likewise.
  9326. * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
  9327. * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
  9328. * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
  9329. * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
  9330. * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
  9331. 2015-08-10 Thomas Schwinge <thomas@codesourcery.com>
  9332. Jakub Jelinek <jakub@redhat.com>
  9333. * config/nvptx/affinity.c: New file.
  9334. * config/nvptx/alloc.c: Likewise.
  9335. * config/nvptx/bar.c: Likewise.
  9336. * config/nvptx/barrier.c: Likewise.
  9337. * config/nvptx/critical.c: Likewise.
  9338. * config/nvptx/env.c: Likewise.
  9339. * config/nvptx/error.c: Likewise.
  9340. * config/nvptx/fortran.c: Likewise.
  9341. * config/nvptx/iter.c: Likewise.
  9342. * config/nvptx/iter_ull.c: Likewise.
  9343. * config/nvptx/libgomp-plugin.c: Likewise.
  9344. * config/nvptx/lock.c: Likewise.
  9345. * config/nvptx/loop.c: Likewise.
  9346. * config/nvptx/loop_ull.c: Likewise.
  9347. * config/nvptx/mutex.c: Likewise.
  9348. * config/nvptx/oacc-async.c: Likewise.
  9349. * config/nvptx/oacc-cuda.c: Likewise.
  9350. * config/nvptx/oacc-host.c: Likewise.
  9351. * config/nvptx/oacc-init.c: Likewise.
  9352. * config/nvptx/oacc-mem.c: Likewise.
  9353. * config/nvptx/oacc-parallel.c: Likewise.
  9354. * config/nvptx/oacc-plugin.c: Likewise.
  9355. * config/nvptx/omp-lock.h: Likewise.
  9356. * config/nvptx/ordered.c: Likewise.
  9357. * config/nvptx/parallel.c: Likewise.
  9358. * config/nvptx/proc.c: Likewise.
  9359. * config/nvptx/ptrlock.c: Likewise.
  9360. * config/nvptx/sections.c: Likewise.
  9361. * config/nvptx/sem.c: Likewise.
  9362. * config/nvptx/single.c: Likewise.
  9363. * config/nvptx/splay-tree.c: Likewise.
  9364. * config/nvptx/target.c: Likewise.
  9365. * config/nvptx/task.c: Likewise.
  9366. * config/nvptx/team.c: Likewise.
  9367. * config/nvptx/time.c: Likewise.
  9368. * config/nvptx/work.c: Likewise.
  9369. * configure.ac: Don't probe pthreads support for host nvptx*-*-*.
  9370. * configure: Regenerate.
  9371. * configure.tgt (config_path): Set to "nvptx" for target
  9372. nvptx*-*-*.
  9373. 2015-08-10 Thomas Schwinge <thomas@codesourcery.com>
  9374. * testsuite/libgomp.oacc-c-c++-common/vector-type-1.c: New file.
  9375. 2015-08-03 Nathan Sidwell <nathan@codesourcery.com>
  9376. * plugin/plugin-nvptx.c: Don't include dlfcn.h.
  9377. (cuda_errlist): Constify.
  9378. (errmsg): Move into ...
  9379. (cuda_error): ... here. Make smaller.
  9380. (_XSTR, _STR): Delete.
  9381. (cuda_synames): Delete.
  9382. (verify_device_library): Delete.
  9383. (nvptx_init): Don't call it.
  9384. 2015-07-28 Tom de Vries <tom@codesourcery.com>
  9385. * testsuite/libgomp.c/uns-outer-4.c: New test.
  9386. 2015-07-24 Cesar Philippidis <cesar@codesourcery.com>
  9387. * testsuite/libgomp.c/pr66714.c: New test.
  9388. 2015-07-22 Maxim Blumenthal <maxim.blumenthal@intel.com>
  9389. PR libgomp/66950
  9390. * testsuite/libgomp.c/examples-4/simd-7.c (N): Change to 30 from 45.
  9391. (fib_ref): New function.
  9392. (fib): Correct corner cases in the recursion.
  9393. (main): Replace the non-simd loop with fib_ref call.
  9394. * testsuite/libgomp.fortran/examples-4/simd-7.f90: (fib_ref): New
  9395. subroutine.
  9396. (fibonacci): Lower the parameter N to 30. Correct accordingly check
  9397. for the last array element value. Replace the non-simd loop with
  9398. fib_ref call. Remove redundant b_ref array. Remove the comparison
  9399. of the last array element with according Fibonacci sequence element.
  9400. (fib): Correct corner cases in the recursion.
  9401. 2015-07-21 Nathan Sidwell <nathan@codesourcery.com>
  9402. * target.c (gomp_offload_image_to_device): Rename to ...
  9403. (gomp_load_image_to_device): ... here.
  9404. (GOMP_offload_register): Adjust call.
  9405. (gomp_init_device): Likewise.
  9406. (gomp_unload_image_from_device): New. Broken out of ...
  9407. (GOMP_offload_unregister): ... here. Call it.
  9408. (gomp_unload_device): New.
  9409. * libgomp.h (gomp_unload_device): Declare.
  9410. * oacc-init.c (acc_shutdown_1): Unload from device before deleting
  9411. mem maps.
  9412. 2015-07-20 Nathan Sidwell <nathan@codesourcery.com>
  9413. * oacc-parallel.c (GOACC_parallel): Move variadic handling into
  9414. wait=-specific if.
  9415. (GOACC_enter_exit_data, GOACC_update): Use consistent num_waits
  9416. !=0 condition.
  9417. (goacc_waits): Move !num_waits handling to ...
  9418. (GOACC_wait): ... here, the only caller that might have zero waits.
  9419. * plugin/plugin-nvptx.c (struct targ_fn_descriptor): Move later.
  9420. (struct ptx_image_data): Move earlier, add fns field.
  9421. (struct ptx_device): Add images and image_lock fields.
  9422. (ptx_images, ptx_image_lock): Delete.
  9423. (nvptx_open_device): Initialize images and image_lock fields.
  9424. (nvptx_close_device): Destroy image_lock.
  9425. (GOMP_OFFLOAD_load_image): Register image to device-specific fields.
  9426. (GOMP_OFFLOAD_unload_image): Unregister image from device-specific
  9427. fields.
  9428. 2015-07-17 Nathan Sidwell <nathan@codesourcery.com>
  9429. * target.c (GOMP_offload_register): Use int for device type arg.
  9430. (GOMP_offload_unregister): Likewise.
  9431. * target.c (struct_offload_image_descr): Constify host_table.
  9432. (gomp_offload_image_to_device): Likewise.
  9433. (GOMP_offload_register, GOMP_offload_unregister): Likewise.
  9434. * libgomp.h (gomp_device_descr): Constify target data arguments.
  9435. * target.c (struct offload_image_descr): Constify target_data.
  9436. (gomp_offload_image_to_device): Likewise.
  9437. (GOMP_offload_register): Likewise.
  9438. (GOMP_offload_unregister): Likewise.
  9439. * plugin/plugin-host.c (GOMP_OFFLOAD_load_image,
  9440. GOMP_OFFLOAD_unload_image): Constify target data.
  9441. * plugin/plugin-nvptx.c (struct ptx_image_data): Constify target data.
  9442. (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): Likewise.
  9443. 2015-07-16 Nathan Sidwell <nathan@codesourcery.com>
  9444. * plugin/plugin-nvptx.c (link_ptx): Constify string argument.
  9445. Workaround driver library const error.
  9446. (struct nvptx_tdata, nvptx_tdata_t): New.
  9447. (GOMP_OFFLOAD_load_image): Use struct for target_data's real
  9448. type.
  9449. 2015-07-15 Maxim Blumenthal <maxim.blumenthal@intel.com>
  9450. * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Change type
  9451. of EPS parameter from integer to real.
  9452. * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: (check): Change
  9453. type of EPS parameter from integer to real.
  9454. 2015-07-15 Sebastian Huber <sebastian.huber@embedded-brains.de>
  9455. * team.c (get_last_team): New.
  9456. (gomp_new_team): Recycle last non-nested team if possible.
  9457. (gomp_team_end): Move team work share list free lock destruction
  9458. to ...
  9459. (free_team): ... here.
  9460. 2015-07-14 Maxim Blumenthal <maxim.blumenthal@intel.com>
  9461. * testsuite/libgomp.c/examples-4/simd-3.c: (main): Change type of res
  9462. and ref from int to double. Replaced their comparison with
  9463. an inequality of their difference and EPS.
  9464. * testsuite/libgomp.c/examples-4/simd-8.c: (main): Replace the
  9465. comparison of pri and a reference number with an inequality of their
  9466. difference and EPS.
  9467. * testsuite/libgomp.fortran/examples-4/simd-3.f90: (main): Replaced
  9468. the comparison of sum and sum_ref with an inequality of their
  9469. difference and EPS.
  9470. * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Replace
  9471. the comparison of pri and a reference number with an inequality of
  9472. their difference and EPS.
  9473. 2015-07-13 Maxim Blumenthal <maxim.blumenthal@intel.com>
  9474. * testsuite/libgomp.c++/examples-4/e.53.2.C: Renamed to...
  9475. * testsuite/libgomp.c++/examples-4/declare_target-2.C: ...this.
  9476. * testsuite/libgomp.c++/examples-4/e.51.5.C: Renamed to...
  9477. * testsuite/libgomp.c++/examples-4/target_data-5.C: ...this.
  9478. * testsuite/libgomp.c/examples-4/e.56.3.c: Renamed to...
  9479. * testsuite/libgomp.c/examples-4/array_sections-3.c: ...this.
  9480. * testsuite/libgomp.c/examples-4/e.56.4.c: Renamed to...
  9481. * testsuite/libgomp.c/examples-4/array_sections-4.c: ...this.
  9482. * testsuite/libgomp.c/examples-4/e.55.1.c: Renamed to...
  9483. * testsuite/libgomp.c/examples-4/async_target-1.c: ...this.
  9484. * testsuite/libgomp.c/examples-4/e.55.2.c: Renamed to...
  9485. * testsuite/libgomp.c/examples-4/async_target-2.c: ...this.
  9486. (vec_mult_ref): Remove v1 and v2 arguments, turn them into local
  9487. variables.
  9488. (vec_mult): Likewise. Add #pragma omp taskwait.
  9489. (main): Adjust caller.
  9490. * testsuite/libgomp.c/examples-4/e.53.1.c: Renamed to...
  9491. * testsuite/libgomp.c/examples-4/declare_target-1.c: ...this.
  9492. * testsuite/libgomp.c/examples-4/e.53.3.c: Renamed to...
  9493. * testsuite/libgomp.c/examples-4/declare_target-3.c: ...this.
  9494. * testsuite/libgomp.c/examples-4/e.53.4.c: Renamed to...
  9495. * testsuite/libgomp.c/examples-4/declare_target-4.c: ...this.
  9496. * testsuite/libgomp.c/examples-4/e.53.5.c: Renamed to...
  9497. * testsuite/libgomp.c/examples-4/declare_target-5.c: ...this.
  9498. * testsuite/libgomp.c/examples-4/e.57.1.c: Renamed to...
  9499. * testsuite/libgomp.c/examples-4/device-1.c: ...this.
  9500. * testsuite/libgomp.c/examples-4/e.57.2.c: Renamed to...
  9501. * testsuite/libgomp.c/examples-4/device-2.c: ...this.
  9502. * testsuite/libgomp.c/examples-4/e.57.3.c: Renamed to...
  9503. * testsuite/libgomp.c/examples-4/device-3.c: ...this.
  9504. * testsuite/libgomp.c/examples-4/simd-1.c: New file.
  9505. * testsuite/libgomp.c/examples-4/simd-2.c: New file.
  9506. * testsuite/libgomp.c/examples-4/simd-3.c: New file.
  9507. * testsuite/libgomp.c/examples-4/simd-4.c: New file.
  9508. * testsuite/libgomp.c/examples-4/simd-5.c: New file.
  9509. * testsuite/libgomp.c/examples-4/simd-6.c: New file.
  9510. * testsuite/libgomp.c/examples-4/simd-7.c: New file.
  9511. * testsuite/libgomp.c/examples-4/simd-8.c: New file.
  9512. * testsuite/libgomp.c/examples-4/e.50.1.c: Renamed to...
  9513. * testsuite/libgomp.c/examples-4/target-1.c: ...this.
  9514. * testsuite/libgomp.c/examples-4/e.50.2.c: Renamed to...
  9515. * testsuite/libgomp.c/examples-4/target-2.c: ...this.
  9516. * testsuite/libgomp.c/examples-4/e.50.3.c: Renamed to...
  9517. * testsuite/libgomp.c/examples-4/target-3.c: ...this.
  9518. * testsuite/libgomp.c/examples-4/e.50.4.c: Renamed to...
  9519. * testsuite/libgomp.c/examples-4/target-4.c: ...this.
  9520. * testsuite/libgomp.c/examples-4/e.50.5.c: Renamed to...
  9521. * testsuite/libgomp.c/examples-4/target-5.c: ...this.
  9522. * testsuite/libgomp.c/examples-4/e.51.1.c: Renamed to...
  9523. * testsuite/libgomp.c/examples-4/target_data-1.c: ...this.
  9524. * testsuite/libgomp.c/examples-4/e.51.2.c: Renamed to...
  9525. * testsuite/libgomp.c/examples-4/target_data-2.c: ...this.
  9526. * testsuite/libgomp.c/examples-4/e.51.3.c: Renamed to...
  9527. * testsuite/libgomp.c/examples-4/target_data-3.c: ...this.
  9528. * testsuite/libgomp.c/examples-4/e.51.4.c: Renamed to...
  9529. * testsuite/libgomp.c/examples-4/target_data-4.c: ...this.
  9530. * testsuite/libgomp.c/examples-4/e.51.6.c: Renamed to...
  9531. * testsuite/libgomp.c/examples-4/target_data-6.c: ...this.
  9532. * testsuite/libgomp.c/examples-4/e.51.7.c: Renamed to...
  9533. * testsuite/libgomp.c/examples-4/target_data-7.c: ...this.
  9534. * testsuite/libgomp.c/examples-4/e.52.1.c: Renamed to...
  9535. * testsuite/libgomp.c/examples-4/target_update-1.c: ...this.
  9536. * testsuite/libgomp.c/examples-4/e.52.2.c: Renamed to...
  9537. * testsuite/libgomp.c/examples-4/target_update-2.c: ...this.
  9538. * testsuite/libgomp.c/examples-4/task_dep-1.c: New file.
  9539. * testsuite/libgomp.c/examples-4/task_dep-2.c: New file.
  9540. * testsuite/libgomp.c/examples-4/task_dep-3.c: New file.
  9541. * testsuite/libgomp.c/examples-4/task_dep-4.c: New file.
  9542. * testsuite/libgomp.c/examples-4/task_dep-5.c: New file.
  9543. * testsuite/libgomp.c/examples-4/e.54.2.c: Renamed to...
  9544. * testsuite/libgomp.c/examples-4/teams-2.c: ...this.
  9545. * testsuite/libgomp.c/examples-4/e.54.3.c: Renamed to...
  9546. * testsuite/libgomp.c/examples-4/teams-3.c: ...this.
  9547. * testsuite/libgomp.c/examples-4/e.54.4.c: Renamed to...
  9548. * testsuite/libgomp.c/examples-4/teams-4.c: ...this.
  9549. * testsuite/libgomp.c/examples-4/e.54.5.c: Renamed to...
  9550. * testsuite/libgomp.c/examples-4/teams-5.c: ...this.
  9551. * testsuite/libgomp.c/examples-4/e.54.6.c: Renamed to...
  9552. * testsuite/libgomp.c/examples-4/teams-6.c: ...this.
  9553. * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Renamed to...
  9554. * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: ...this.
  9555. * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Renamed to...
  9556. * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: ...this.
  9557. * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Renamed to...
  9558. * testsuite/libgomp.fortran/examples-4/async_target-1.f90: ...this.
  9559. * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Renamed to...
  9560. * testsuite/libgomp.fortran/examples-4/async_target-2.f90: ...this.
  9561. (vec_mult): Add !$omp taskwait.
  9562. * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Renamed to...
  9563. * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: ...this.
  9564. * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Renamed to...
  9565. * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: ...this.
  9566. * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Renamed to...
  9567. * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: ...this.
  9568. * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Renamed to...
  9569. * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: ...this.
  9570. * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Renamed to...
  9571. * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: ...this.
  9572. * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Renamed to...
  9573. * testsuite/libgomp.fortran/examples-4/device-1.f90: ...this.
  9574. * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Renamed to...
  9575. * testsuite/libgomp.fortran/examples-4/device-2.f90: ...this.
  9576. * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Renamed to...
  9577. * testsuite/libgomp.fortran/examples-4/device-3.f90: ...this.
  9578. * testsuite/libgomp.fortran/examples-4/simd-1.f90: New file.
  9579. * testsuite/libgomp.fortran/examples-4/simd-2.f90: New file.
  9580. * testsuite/libgomp.fortran/examples-4/simd-3.f90: New file.
  9581. * testsuite/libgomp.fortran/examples-4/simd-4.f90: New file.
  9582. * testsuite/libgomp.fortran/examples-4/simd-5.f90: New file.
  9583. * testsuite/libgomp.fortran/examples-4/simd-6.f90: New file.
  9584. * testsuite/libgomp.fortran/examples-4/simd-7.f90: New file.
  9585. * testsuite/libgomp.fortran/examples-4/simd-8.f90: New file.
  9586. * testsuite/libgomp.fortran/examples-4/e.50.1.f90: Renamed to...
  9587. * testsuite/libgomp.fortran/examples-4/target-1.f90: ...this.
  9588. * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Renamed to...
  9589. * testsuite/libgomp.fortran/examples-4/target-2.f90: ...this.
  9590. * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Renamed to...
  9591. * testsuite/libgomp.fortran/examples-4/target-3.f90: ...this.
  9592. * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Renamed to...
  9593. * testsuite/libgomp.fortran/examples-4/target-4.f90: ...this.
  9594. * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Renamed to...
  9595. * testsuite/libgomp.fortran/examples-4/target-5.f90: ...this.
  9596. * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Renamed to...
  9597. * testsuite/libgomp.fortran/examples-4/target_data-1.f90: ...this.
  9598. * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Renamed to...
  9599. * testsuite/libgomp.fortran/examples-4/target_data-2.f90: ...this.
  9600. * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Renamed to...
  9601. * testsuite/libgomp.fortran/examples-4/target_data-3.f90: ...this.
  9602. * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Renamed to...
  9603. * testsuite/libgomp.fortran/examples-4/target_data-4.f90: ...this.
  9604. * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Renamed to...
  9605. * testsuite/libgomp.fortran/examples-4/target_data-5.f90: ...this.
  9606. * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Renamed to...
  9607. * testsuite/libgomp.fortran/examples-4/target_data-6.f90: ...this.
  9608. * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Renamed to...
  9609. * testsuite/libgomp.fortran/examples-4/target_data-7.f90: ...this.
  9610. * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Renamed to...
  9611. * testsuite/libgomp.fortran/examples-4/target_update-1.f90: ...this.
  9612. * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Renamed to...
  9613. * testsuite/libgomp.fortran/examples-4/target_update-2.f90: ...this.
  9614. * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: New file.
  9615. * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: New file.
  9616. * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: New file.
  9617. * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: New file.
  9618. * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: New file.
  9619. * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Renamed to...
  9620. * testsuite/libgomp.fortran/examples-4/teams-2.f90: ...this.
  9621. * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Renamed to...
  9622. * testsuite/libgomp.fortran/examples-4/teams-3.f90: ...this.
  9623. * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Renamed to...
  9624. * testsuite/libgomp.fortran/examples-4/teams-4.f90: ...this.
  9625. * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Renamed to...
  9626. * testsuite/libgomp.fortran/examples-4/teams-5.f90: ...this.
  9627. * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Renamed to...
  9628. * testsuite/libgomp.fortran/examples-4/teams-6.f90: ...this.
  9629. 2015-07-10 Tom de Vries <tom@codesourcery.com>
  9630. * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: New test.
  9631. * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: New test.
  9632. 2015-07-08 Thomas Schwinge <thomas@codesourcery.com>
  9633. PR libgomp/65099
  9634. * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return 0 if not
  9635. in a 64-bit configuration.
  9636. * testsuite/libgomp.oacc-c++/c++.exp: Don't attempt nvidia
  9637. offloading testing if no such device is available.
  9638. * testsuite/libgomp.oacc-c/c.exp: Likewise.
  9639. * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
  9640. 2015-07-08 Tom de Vries <tom@codesourcery.com>
  9641. * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Fix
  9642. second call to f.
  9643. * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
  9644. 2015-07-07 Tom de Vries <tom@codesourcery.com>
  9645. PR tree-optimization/66642
  9646. * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Test low
  9647. iteration count case.
  9648. * testsuite/libgomp.c/parloops-exit-first-loop-alt.c (init): New
  9649. function, factor out of ...
  9650. (main): ... here. Test low iteration count case.
  9651. 2015-07-06 Sebastian Huber <sebastian.huber@embedded-brains.de>
  9652. * libgomp.h (gomp_thread_pool): Comment last_team field.
  9653. 2015-07-02 Uros Bizjak <ubizjak@gmail.com>
  9654. * testsuite/libgomp.c++/pr66702-1.C: Require
  9655. vect_simd_clones effective target.
  9656. * testsuite/libgomp.c++/pr66702-2.C: Ditto.
  9657. 2015-06-30 Tom de Vries <tom@codesourcery.com>
  9658. * testsuite/libgomp.oacc-c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
  9659. already set. Use DEFAULT_CFLAGS in dg-runtest.
  9660. * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Remove dg-options
  9661. "-O2".
  9662. 2015-06-30 Tom de Vries <tom@codesourcery.com>
  9663. * testsuite/libgomp.c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
  9664. already set. Use DEFAULT_CFLAGS in dg-runtest.
  9665. * testsuite/libgomp.c++/atomic-16.C: Remove dg-options "-O2 -fopenmp".
  9666. * testsuite/libgomp.c++/pr64824.C: Same.
  9667. * testsuite/libgomp.c++/pr64868.C: Same.
  9668. * testsuite/libgomp.c++/pr66199-1.C: Same.
  9669. * testsuite/libgomp.c++/pr66199-2.C: Same.
  9670. * testsuite/libgomp.c++/target-2.C: Same.
  9671. * testsuite/libgomp.c++/for-7.C: Use dg-additional-options for
  9672. -std=<standard> option.
  9673. * testsuite/libgomp.c++/udr-11.C: Same.
  9674. * testsuite/libgomp.c++/udr-12.C: Same.
  9675. * testsuite/libgomp.c++/udr-13.C: Same.
  9676. * testsuite/libgomp.c++/udr-14.C: Same.
  9677. * testsuite/libgomp.c++/udr-15.C: Same.
  9678. * testsuite/libgomp.c++/udr-16.C: Same.
  9679. * testsuite/libgomp.c++/udr-17.C: Same.
  9680. * testsuite/libgomp.c++/udr-18.C: Same.
  9681. * testsuite/libgomp.c++/udr-19.C: Same.
  9682. * testsuite/libgomp.c++/atomic-1.C: Remove dg-options "-O2".
  9683. * testsuite/libgomp.c++/simd-1.C: Same.
  9684. * testsuite/libgomp.c++/simd-2.C: Same.
  9685. * testsuite/libgomp.c++/simd-3.C: Same.
  9686. * testsuite/libgomp.c++/simd-4.C: Same.
  9687. * testsuite/libgomp.c++/simd-5.C: Same.
  9688. * testsuite/libgomp.c++/simd-6.C: Same.
  9689. * testsuite/libgomp.c++/simd-7.C: Same.
  9690. * testsuite/libgomp.c++/simd-8.C: Same.
  9691. * testsuite/libgomp.c++/simd-9.C: Same.
  9692. * testsuite/libgomp.c++/simd10.C: Same.
  9693. * testsuite/libgomp.c++/simd11.C: Same.
  9694. * testsuite/libgomp.c++/simd12.C: Same.
  9695. * testsuite/libgomp.c++/simd13.C: Same.
  9696. 2015-06-30 Jakub Jelinek <jakub@redhat.com>
  9697. PR middle-end/66702
  9698. * testsuite/libgomp.c++/pr66702-1.C: New test.
  9699. * testsuite/libgomp.c++/pr66702-2.C: New test.
  9700. 2015-06-30 Tom de Vries <tom@codesourcery.com>
  9701. * testsuite/libgomp.c/parloops-exit-first-loop-alt-5.c: New test.
  9702. * testsuite/libgomp.c/parloops-exit-first-loop-alt-6.c: New test.
  9703. * testsuite/libgomp.c/parloops-exit-first-loop-alt-7.c: New test.
  9704. * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Update comment.
  9705. 2015-06-30 Tom de Vries <tom@codesourcery.com>
  9706. PR tree-optimization/66652
  9707. * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (f): Rewrite
  9708. using restrict pointers.
  9709. (main): Add arguments to calls to f.
  9710. * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
  9711. 2015-06-23 Andreas Tobler <andreast@gcc.gnu.org>
  9712. * configure.ac: Fix check for header <sys/sysctl.h>.
  9713. * configure: Regenerate.
  9714. * config.h.in: Likewise.
  9715. 2015-06-23 Tom de Vries <tom@codesourcery.com>
  9716. * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Use
  9717. abort.
  9718. * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c (main): Same.
  9719. 2015-06-19 Thomas Schwinge <thomas@codesourcery.com>
  9720. * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Only consider for
  9721. acc_device_nvidia.
  9722. PR libgomp/66518
  9723. * testsuite/libgomp.oacc-c-c++-common/lib-3.c: XFAIL.
  9724. * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
  9725. 2015-06-15 Tom de Vries <tom@codesourcery.com>
  9726. * testsuite/libgomp.c/atomic-1.c: Remove dg-options "-O2". Use
  9727. dg-additional-options for any remaining options.
  9728. * testsuite/libgomp.c/atomic-2.c: Same.
  9729. * testsuite/libgomp.c/atomic-4.c: Same.
  9730. * testsuite/libgomp.c/atomic-5.c: Same.
  9731. * testsuite/libgomp.c/atomic-6.c: Same.
  9732. * testsuite/libgomp.c/autopar-1.c: Same.
  9733. * testsuite/libgomp.c/copyin-1.c: Same.
  9734. * testsuite/libgomp.c/copyin-2.c: Same.
  9735. * testsuite/libgomp.c/copyin-3.c: Same.
  9736. * testsuite/libgomp.c/examples-4/e.53.5.c: Same.
  9737. * testsuite/libgomp.c/nestedfn-5.c: Same.
  9738. * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Same.
  9739. * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Same.
  9740. * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: Same.
  9741. * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
  9742. * testsuite/libgomp.c/pr32362-1.c: Same.
  9743. * testsuite/libgomp.c/pr32362-2.c: Same.
  9744. * testsuite/libgomp.c/pr32362-3.c: Same.
  9745. * testsuite/libgomp.c/pr39591-1.c: Same.
  9746. * testsuite/libgomp.c/pr39591-2.c: Same.
  9747. * testsuite/libgomp.c/pr39591-3.c: Same.
  9748. * testsuite/libgomp.c/pr58392.c: Same.
  9749. * testsuite/libgomp.c/pr58756.c: Same.
  9750. * testsuite/libgomp.c/simd-1.c: Same.
  9751. * testsuite/libgomp.c/simd-10.c: Same.
  9752. * testsuite/libgomp.c/simd-11.c: Same.
  9753. * testsuite/libgomp.c/simd-12.c: Same.
  9754. * testsuite/libgomp.c/simd-13.c: Same.
  9755. * testsuite/libgomp.c/simd-14.c: Same.
  9756. * testsuite/libgomp.c/simd-15.c: Same.
  9757. * testsuite/libgomp.c/simd-2.c: Same.
  9758. * testsuite/libgomp.c/simd-3.c: Same.
  9759. * testsuite/libgomp.c/simd-4.c: Same.
  9760. * testsuite/libgomp.c/simd-5.c: Same.
  9761. * testsuite/libgomp.c/simd-6.c: Same.
  9762. * testsuite/libgomp.c/simd-7.c: Same.
  9763. * testsuite/libgomp.c/simd-8.c: Same.
  9764. * testsuite/libgomp.c/simd-9.c: Same.
  9765. 2015-06-15 Tom de Vries <tom@codesourcery.com>
  9766. * testsuite/libgomp.c/pr35625.c: Fix typo.
  9767. 2015-06-15 Tom de Vries <tom@codesourcery.com>
  9768. * testsuite/libgomp.c/atomic-18.c: Remove superfluous -fopenmp setting
  9769. in dg-options.
  9770. * testsuite/libgomp.c/atomic-3.c: Same.
  9771. * testsuite/libgomp.c/debug-1.c: Same.
  9772. * testsuite/libgomp.c/nqueens-1.c: Same.
  9773. * testsuite/libgomp.c/pr26171.c: Same.
  9774. * testsuite/libgomp.c/pr48591.c: Same.
  9775. * testsuite/libgomp.c/pr64824.c: Same.
  9776. * testsuite/libgomp.c/pr64868.c: Same.
  9777. * testsuite/libgomp.c/pr66133.c: Same.
  9778. * testsuite/libgomp.c/pr66199-1.c: Same.
  9779. * testsuite/libgomp.c/pr66199-2.c: Same.
  9780. * testsuite/libgomp.c/target-8.c: Same.
  9781. 2015-06-15 Tom de Vries <tom@codesourcery.com>
  9782. * testsuite/libgomp.c/collapse-3.c: Use dg-additional-options for
  9783. -std={gnu99,c99}.
  9784. * testsuite/libgomp.c/for-1.c: Same.
  9785. * testsuite/libgomp.c/for-2.c: Same.
  9786. * testsuite/libgomp.c/for-3.c: Same.
  9787. * testsuite/libgomp.c/pr35625.c: Same.
  9788. * testsuite/libgomp.c/pr39154.c: Same.
  9789. * testsuite/libgomp.c/simd-16.c: Same.
  9790. * testsuite/libgomp.c/simd-17.c: Same.
  9791. 2015-06-13 Tom de Vries <tom@codesourcery.com>
  9792. * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: New test.
  9793. 2015-06-13 Tom de Vries <tom@codesourcery.com>
  9794. * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Add comment.
  9795. * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
  9796. * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Add comment.
  9797. (N): Define.
  9798. (main): Use N instead of hardcoded constants.
  9799. 2015-06-05 Tom de Vries <tom@codesourcery.com>
  9800. merge from gomp4 branch:
  9801. 2015-05-28 Tom de Vries <tom@codesourcery.com>
  9802. PR tree-optimization/65443
  9803. * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: New test.
  9804. * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: New test.
  9805. * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: New test.
  9806. 2015-05-29 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
  9807. * testsuite/libgomp.graphite/bounds.c: Adjust for
  9808. cleanup-tree-dump removal.
  9809. * testsuite/libgomp.graphite/force-parallel-1.c: Likewise.
  9810. * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
  9811. * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
  9812. * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
  9813. * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
  9814. * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
  9815. * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
  9816. * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
  9817. * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
  9818. * testsuite/libgomp.graphite/pr41118.c: Likewise.
  9819. 2015-05-28 Uros Bizjak <ubizjak@gmail.com>
  9820. * config/linux/x86/futex.h (sys_futex0) [!__x86_64__]: Remove function.
  9821. (futex_wait) [!__x86_64__]: Use __asm operand instead of sys_futex0.
  9822. (futex_wake) [!__x86_64__]: Ditto.
  9823. 2015-05-28 Julian Brown <julian@codesourcery.com>
  9824. * oacc-init.c (resolve_device): Add FAIL_IS_ERROR argument. Update
  9825. function comment. Only call gomp_fatal if new argument is true.
  9826. (acc_dev_num_out_of_range): New function.
  9827. (acc_init_1, acc_shutdown_1): Update call to resolve_device. Call
  9828. acc_dev_num_out_of_range as appropriate.
  9829. (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
  9830. (acc_get_device_num, acc_set_device_num): Update calls to
  9831. resolve_device.
  9832. * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Update expected test
  9833. output.
  9834. 2015-05-28 Julian Brown <julian@codesourcery.com>
  9835. PR libgomp/65742
  9836. * oacc-init.c (plugin/plugin-host.h): Include.
  9837. (acc_on_device): Check whether we're in an offloaded region for
  9838. host_nonshm
  9839. plugin. Don't use __builtin_acc_on_device.
  9840. * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_parallel): Set
  9841. nonshm_exec flag in thread-local data.
  9842. (GOMP_OFFLOAD_openacc_create_thread_data): Allocate thread-local
  9843. data for host_nonshm plugin.
  9844. (GOMP_OFFLOAD_openacc_destroy_thread_data): Free thread-local data
  9845. for host_nonshm plugin.
  9846. * plugin/plugin-host.h: New.
  9847. 2015-05-27 Uros Bizjak <ubizjak@gmail.com>
  9848. * config/linux/ia64/futex.h (sys_futex0) Change operand "op" to int.
  9849. 2015-05-27 Uros Bizjak <ubizjak@gmail.com>
  9850. * config/linux/wait.h (gomp_futex_wait, gomp_futex_wake):
  9851. Declare as int.
  9852. (FUTEX_PRIVATE_FLAG): Remove L suffix.
  9853. * config/linux/mutex.c (gomp_futex_wait, gomp_futex_wake):
  9854. Declare as int.
  9855. 2015-05-27 Uros Bizjak <ubizjak@gmail.com>
  9856. * config/linux/x86/futex.h (sys_futex0) [__PIC__]: Remove function.
  9857. 2015-05-27 Chung-Lin Tang <cltang@codesourcery.com>
  9858. * target.c (gomp_map_pointer): New function abstracting out
  9859. GOMP_MAP_POINTER handling.
  9860. (gomp_map_vars): Remove GOMP_MAP_POINTER handling code and use
  9861. gomp_map_pointer().
  9862. 2015-05-19 Jakub Jelinek <jakub@redhat.com>
  9863. PR middle-end/66199
  9864. * testsuite/libgomp.c/pr66199-1.c: New test.
  9865. * testsuite/libgomp.c/pr66199-2.c: New test.
  9866. * testsuite/libgomp.c++/pr66199-1.C: New test.
  9867. * testsuite/libgomp.c++/pr66199-2.C: New test.
  9868. * testsuite/libgomp.fortran/pr66199-1.f90: New test.
  9869. * testsuite/libgomp.fortran/pr66199-2.f90: New test.
  9870. 2015-05-19 Julian Brown <julian@codesourcery.com>
  9871. * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return zero
  9872. on cuInit failure.
  9873. 2015-05-13 Jakub Jelinek <jakub@redhat.com>
  9874. PR middle-end/66133
  9875. * testsuite/libgomp.c/pr66133.c: New test.
  9876. 2015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
  9877. * Makefile.in: Regenerated with automake-1.11.6.
  9878. * aclocal.m4: Likewise.
  9879. * config.h.in: Likewise.
  9880. * configure: Likewise.
  9881. * testsuite/Makefile.in: Likewise.
  9882. 2015-05-08 Jason Merrill <jason@redhat.com>
  9883. * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (main): Use
  9884. _Complex.
  9885. * openacc.h (__GOACC_NOTHROW): Fix noexcept syntax.
  9886. 2015-05-06 Julian Brown <julian@codesourcery.com>
  9887. * oacc-init.c (acc_device_lock): Add explanatory comment.
  9888. (resolve_device): Add comment about locking requirement.
  9889. (acc_init_1, acc_shutdown_1): Likewise. Add locking around
  9890. gomp_init_device and gomp_fini_device calls.
  9891. (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
  9892. (acc_get_device_num, acc_set_device_num): Add locking around
  9893. resolve_device and gomp_init_device calls.
  9894. 2015-05-06 Julian Brown <julian@codesourcery.com>
  9895. * oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for
  9896. goacc_thread_lock on error paths.
  9897. * oacc-mem.c (lookup_host): Remove locking from function. Note
  9898. locking requirement for caller in function comment.
  9899. (lookup_dev): Likewise.
  9900. (acc_free, acc_deviceptr, acc_hostptr, acc_is_present)
  9901. (acc_map_data, acc_unmap_data, present_create_copy, delete_copyout)
  9902. (update_dev_host, gomp_acc_insert_pointer, gomp_acc_remove_pointer):
  9903. Add locking.
  9904. 2015-05-05 Thomas Schwinge <thomas@codesourcery.com>
  9905. PR testsuite/65205
  9906. PR libgomp/65993
  9907. * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: In dg-output,
  9908. don't expect "0x" prefix for "%p" format specifier, don't expect
  9909. "(nil)" for NULL pointer.
  9910. * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
  9911. * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
  9912. * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
  9913. * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
  9914. * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
  9915. * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
  9916. * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
  9917. * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
  9918. * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
  9919. * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
  9920. * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
  9921. * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
  9922. * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
  9923. * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
  9924. * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
  9925. * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
  9926. * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
  9927. * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
  9928. * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
  9929. * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
  9930. * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
  9931. * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
  9932. * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
  9933. * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
  9934. * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
  9935. * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
  9936. * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
  9937. * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
  9938. * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: More
  9939. accurately specify what we're looking for.
  9940. * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
  9941. * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
  9942. * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
  9943. * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
  9944. * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
  9945. 2015-04-30 James Norris <jnorris@codesourcery.com>
  9946. PR testsuite/65205
  9947. * testsuite/lib/libgomp.exp
  9948. (check_effective_target_openacc_host_selected)
  9949. (check_effective_target_openacc_host_nonshm_selected): New
  9950. procedures.
  9951. * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Fix misuse of
  9952. dg-shouldfail.
  9953. * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
  9954. * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
  9955. * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
  9956. * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
  9957. * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
  9958. * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
  9959. * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
  9960. * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
  9961. * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
  9962. * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
  9963. * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
  9964. * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
  9965. * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
  9966. * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
  9967. * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
  9968. * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
  9969. * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
  9970. * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
  9971. * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
  9972. * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
  9973. * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
  9974. * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
  9975. * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
  9976. * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
  9977. * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
  9978. * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
  9979. * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
  9980. * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
  9981. * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
  9982. * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
  9983. * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
  9984. * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
  9985. * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
  9986. * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
  9987. * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
  9988. * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
  9989. * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
  9990. * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
  9991. * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
  9992. * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
  9993. * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
  9994. * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
  9995. * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
  9996. 2015-04-08 Julian Brown <julian@codesourcery.com>
  9997. * libgomp.h (target_mem_desc: Remove mem_map field.
  9998. (acc_dispatch_t): Remove open_device_func, close_device_func,
  9999. get_device_num_func, set_device_num_func, target_data members.
  10000. Change create_thread_data_func argument to device number instead of
  10001. generic pointer.
  10002. * oacc-async.c (assert.h): Include.
  10003. (acc_async_test, acc_async_test_all, acc_wait, acc_wait_async)
  10004. (acc_wait_all, acc_wait_all_async): Use current host thread's
  10005. active device, not base_dev.
  10006. * oacc-cuda.c (acc_get_current_cuda_device)
  10007. (acc_get_current_cuda_context, acc_get_cuda_stream)
  10008. (acc_set_cuda_stream): Likewise.
  10009. * oacc-host.c (host_dispatch): Don't set open_device_func,
  10010. close_device_func, get_device_num_func or set_device_num_func.
  10011. * oacc-init.c (base_dev, init_key): Remove.
  10012. (cached_base_dev): New.
  10013. (name_of_acc_device_t): New.
  10014. (acc_init_1): Initialise default-numbered device, not zeroth.
  10015. (acc_shutdown_1): Close all devices of a given type.
  10016. (goacc_destroy_thread): Don't use base_dev.
  10017. (lazy_open, lazy_init, lazy_init_and_open): Remove.
  10018. (goacc_attach_host_thread_to_device): New.
  10019. (acc_init): Reimplement with goacc_attach_host_thread_to_device.
  10020. (acc_get_num_devices): Don't use base_dev.
  10021. (acc_set_device_type): Reimplement.
  10022. (acc_get_device_type): Don't use base_dev.
  10023. (acc_get_device_num): Tweak logic.
  10024. (acc_set_device_num): Likewise.
  10025. (acc_on_device): Use acc_get_device_type.
  10026. (goacc_runtime_initialize): Initialize cached_base_dev not base_dev.
  10027. (goacc_lazy_initialize): Reimplement with acc_init and
  10028. goacc_attach_host_thread_to_device.
  10029. * oacc-int.h (goacc_thread): Add base_dev field.
  10030. (base_dev): Remove extern declaration.
  10031. (goacc_attach_host_thread_to_device): Add prototype.
  10032. * oacc-mem.c (acc_malloc): Use current thread's device instead of
  10033. base_dev.
  10034. (acc_free): Likewise.
  10035. (acc_memcpy_to_device): Likewise.
  10036. (acc_memcpy_from_device): Likewise.
  10037. * oacc-parallel.c (select_acc_device): Remove. Replace calls with
  10038. goacc_lazy_initialize (throughout).
  10039. (GOACC_parallel): Use tgt_offset to locate target functions.
  10040. * target.c (gomp_map_vars): Don't set tgt->mem_map.
  10041. (gomp_unmap_vars): Use devicep->mem_map pointer not tgt->mem_map.
  10042. (gomp_load_plugin_for_device): Remove open_device, close_device,
  10043. get_device_num, set_device_num openacc hook initialisation. Don't set
  10044. openacc.target_data.
  10045. * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_open_device)
  10046. (GOMP_OFFLOAD_openacc_close_device)
  10047. (GOMP_OFFLOAD_openacc_get_device_num)
  10048. (GOMP_OFFLOAD_openacc_set_device_num): Remove.
  10049. (GOMP_OFFLOAD_openacc_create_thread_data): Change (unused) argument
  10050. to int.
  10051. * plugin/plugin-nvptx.c (ptx_inited): Remove.
  10052. (instantiated_devices, ptx_dev_lock): New.
  10053. (struct ptx_image_data): New.
  10054. (ptx_devices, ptx_images, ptx_image_lock): New.
  10055. (fini_streams_for_device): Reorder cuStreamDestroy call.
  10056. (nvptx_get_num_devices): Remove forward declaration.
  10057. (nvptx_init): Change return type to bool.
  10058. (nvptx_fini): Remove.
  10059. (nvptx_attach_host_thread_to_device): New.
  10060. (nvptx_open_device): Return struct ptx_device* instead of void*.
  10061. (nvptx_close_device): Change argument type to struct ptx_device*,
  10062. return type to void.
  10063. (nvptx_get_num_devices): Use instantiated_devices not ptx_inited.
  10064. (kernel_target_data, kernel_host_table): Remove static globals.
  10065. (GOMP_OFFLOAD_register_image, GOMP_OFFLOAD_get_table): Remove.
  10066. (GOMP_OFFLOAD_init_device): Reimplement.
  10067. (GOMP_OFFLOAD_fini_device): Likewise.
  10068. (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): New.
  10069. (GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free, GOMP_OFFLOAD_dev2host)
  10070. (GOMP_OFFLOAD_host2dev): Use ORD argument.
  10071. (GOMP_OFFLOAD_openacc_open_device)
  10072. (GOMP_OFFLOAD_openacc_close_device)
  10073. (GOMP_OFFLOAD_openacc_set_device_num)
  10074. (GOMP_OFFLOAD_openacc_get_device_num): Remove.
  10075. (GOMP_OFFLOAD_openacc_create_thread_data): Change argument to int
  10076. (device number).
  10077. testsuite/
  10078. * libgomp.oacc-c-c++-common/lib-9.c: Fix devnum check in test.
  10079. 2015-04-06 Ilya Verbin <ilya.verbin@intel.com>
  10080. * libgomp-plugin.h (struct mapping_table): Replace with addr_pair.
  10081. * libgomp.h (struct gomp_memory_mapping): Remove.
  10082. (struct target_mem_desc): Change type of mem_map from
  10083. gomp_memory_mapping * to splay_tree_s *.
  10084. (struct gomp_device_descr): Remove register_image_func, get_table_func.
  10085. Add load_image_func, unload_image_func.
  10086. Change type of mem_map from gomp_memory_mapping to splay_tree_s.
  10087. Remove offload_regions_registered.
  10088. (gomp_init_tables): Remove.
  10089. (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
  10090. to splay_tree_s *.
  10091. * libgomp.map (GOMP_4.0.1): Add GOMP_offload_unregister.
  10092. * oacc-host.c (host_dispatch): Do not initialize register_image_func,
  10093. get_table_func, mem_map.is_initialized, mem_map.splay_tree.root,
  10094. offload_regions_registered.
  10095. Initialize load_image_func, unload_image_func, mem_map.root.
  10096. (goacc_host_init): Do not initialize host_dispatch.mem_map.lock.
  10097. * oacc-init.c (lazy_open): Don't call gomp_init_tables.
  10098. (acc_shutdown_1): Use dev's lock and splay_tree instead of mem_map's.
  10099. * oacc-mem.c (lookup_host): Get gomp_device_descr *dev instead of
  10100. gomp_memory_mapping *. Use dev's lock and splay_tree.
  10101. (lookup_dev): Use dev's lock.
  10102. (acc_deviceptr): Pass dev to lookup_host instead of mem_map.
  10103. (acc_is_present): Likewise.
  10104. (acc_map_data): Likewise.
  10105. (acc_unmap_data): Likewise. Use dev's lock.
  10106. (present_create_copy): Likewise.
  10107. (delete_copyout): Pass dev to lookup_host instead of mem_map.
  10108. (update_dev_host): Likewise.
  10109. (gomp_acc_remove_pointer): Likewise. Use dev's lock.
  10110. * oacc-parallel.c (GOACC_parallel): Use dev's lock and splay_tree.
  10111. * plugin/plugin-host.c (GOMP_OFFLOAD_register_image): Remove.
  10112. (GOMP_OFFLOAD_get_table): Remove
  10113. (GOMP_OFFLOAD_load_image): New function.
  10114. (GOMP_OFFLOAD_unload_image): New function.
  10115. * target.c (register_lock): New mutex for offload image registration.
  10116. (num_devices): Do not guard with PLUGIN_SUPPORT.
  10117. (gomp_realloc_unlock): New static function.
  10118. (gomp_map_vars_existing): Add device descriptor argument. Unlock mutex
  10119. before gomp_fatal.
  10120. (gomp_map_vars): Use dev's lock and splay_tree instead of mem_map's.
  10121. Pass devicep to gomp_map_vars_existing. Unlock mutex before gomp_fatal.
  10122. (gomp_copy_from_async): Use dev's lock and splay_tree instead of
  10123. mem_map's.
  10124. (gomp_unmap_vars): Likewise.
  10125. (gomp_update): Remove gomp_memory_mapping argument. Use dev's lock and
  10126. splay_tree instead of mm's. Unlock mutex before gomp_fatal.
  10127. (gomp_offload_image_to_device): New static function.
  10128. (GOMP_offload_register): Add mutex lock.
  10129. Call gomp_offload_image_to_device for all initialized devices.
  10130. Replace gomp_realloc with gomp_realloc_unlock.
  10131. (GOMP_offload_unregister): New function.
  10132. (gomp_init_tables): Replace with gomp_init_device. Replace a call to
  10133. get_table_func from the plugin with calls to init_device_func and
  10134. gomp_offload_image_to_device.
  10135. (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
  10136. to splay_tree_s *.
  10137. (GOMP_target): Do not call gomp_init_tables. Use dev's lock and
  10138. splay_tree instead of mem_map's. Unlock mutex before gomp_fatal.
  10139. (GOMP_target_data): Do not call gomp_init_tables.
  10140. (GOMP_target_update): Likewise. Remove argument from gomp_update.
  10141. (gomp_load_plugin_for_device): Replace register_image and get_table
  10142. with load_image and unload_image in DLSYM ().
  10143. (gomp_register_images_for_device): Remove function.
  10144. (gomp_target_init): Do not initialize current_device.mem_map.*,
  10145. current_device.offload_regions_registered.
  10146. Remove call to gomp_register_images_for_device.
  10147. Do not free offload_images and num_offload_images.
  10148. 2015-03-30 Jakub Jelinek <jakub@redhat.com>
  10149. PR fortran/65597
  10150. * testsuite/libgomp.fortran/pr65597.f90: New test.
  10151. 2015-03-27 Tom de Vries <tom@codesourcery.com>
  10152. PR testsuite/65594
  10153. * testsuite/libgomp.graphite/force-parallel-6.c (abort): Declare.
  10154. (init, check): New function.
  10155. (foo): Change return type to void.
  10156. (main): Call init and check.
  10157. 2015-03-27 Tom de Vries <tom@codesourcery.com>
  10158. PR testsuite/65594
  10159. * testsuite/libgomp.graphite/force-parallel-6.c (M): Define.
  10160. (foo): Use M for non-inner loops to scale down test-case.
  10161. 2015-03-25 Kai Tietz <ktietz@redhat.com>
  10162. PR libgomp/64972
  10163. * oacc-parallel.c (GOACC_parallel): Use PRIu64 if available.
  10164. (GOACC_data_start): Likewise.
  10165. * target.c (gomp_map_vars): Likewise.
  10166. 2015-03-21 John David Anglin <danglin@gcc.gnu.org>
  10167. * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Don't run on
  10168. hppa*-*-hpux*.
  10169. 2015-03-19 Jakub Jelinek <jakub@redhat.com>
  10170. * testsuite/libgomp.c/target-10.c: New test.
  10171. * testsuite/libgomp.c++/target-4.C: New test.
  10172. 2015-03-13 Ilya Verbin <ilya.verbin@intel.com>
  10173. * testsuite/libgomp.fortran/declare-target-1.f90: New test.
  10174. * testsuite/libgomp.fortran/declare-target-2.f90: New file.
  10175. 2015-03-13 Sebastian Huber <sebastian.huber@embedded-brains.de>
  10176. * configure.tgt (*-*-rtems*): Use local-exec TLS model.
  10177. * configure.ac (*-*-rtems*): Assume Pthread is supported.
  10178. (pthread.h): Check for this header file.
  10179. * configure: Regenerate.
  10180. 2015-02-25 Tom de Vries <tom@codesourcery.com>
  10181. * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (DO_PRAGMA)
  10182. (check_reduction_op, check_reduction_macro, max, min):
  10183. Declare.
  10184. (test_reductions_int, test_reductions_minmax, test_reductions_bool): New
  10185. function.
  10186. (main): Use new functions.
  10187. 2015-02-18 Ilya Tocar <ilya.tocar@intel.com>
  10188. * target.c (gomp_load_plugin_for_device): Use const char * instead of
  10189. char * for variables holding dlerror return values.
  10190. (DLSYM_OPT): Ditto.
  10191. 2015-02-17 Thomas Schwinge <thomas@codesourcery.com>
  10192. * libgomp-plugin.c (GOMP_PLUGIN_debug): Fix typo.
  10193. 2015-02-17 Thomas Schwinge <thomas@codesourcery.com>
  10194. Cesar Philippidis <cesar@codesourcery.com>
  10195. * oacc-ptx.h (GOACC_INTERNAL_PTX): Add GOACC_tid, GOACC_ntid,
  10196. GOACC_ctaid, and GOACC_nctaid routines.
  10197. 2015-02-11 Jakub Jelinek <jakub@redhat.com>
  10198. PR c/64824
  10199. * testsuite/libgomp.c/atomic-18.c: New test.
  10200. * testsuite/libgomp.c++/atomic-16.C: New test.
  10201. 2015-02-04 Jakub Jelinek <jakub@redhat.com>
  10202. PR c/64824
  10203. PR c/64868
  10204. * testsuite/libgomp.c/pr64824.c: New test.
  10205. * testsuite/libgomp.c/pr64868.c: New test.
  10206. * testsuite/libgomp.c++/pr64824.C: New test.
  10207. * testsuite/libgomp.c++/pr64868.C: New test.
  10208. 2015-02-01 David Edelsohn <dje.gcc@gmail.com>
  10209. PR libgomp/64635
  10210. * configure.tgt (*-*-aix*): Use standard posix plugin-suffix.h.
  10211. Link with -lpthread.
  10212. * config/aix/plugin-suffix.h: Delete.
  10213. 2015-01-28 Jack Howarth <howarth.at.gcc@gmail.com>
  10214. PR libgomp/64635
  10215. * configure.tgt (*-*-aix*): Use config_path "aix posix".
  10216. (*-*-darwin*): Use config_path "bsd darwin posix".
  10217. (*-*-hpux*): Use config_path "hpux posix".
  10218. * target.c: Add include of plugin-suffix.h and use
  10219. SONAME_SUFFIX macro.
  10220. * config/aix/plugin-suffix.h: New file.
  10221. * config/darwin/plugin-suffix.h: New file.
  10222. * config/hpux/plugin-suffix.h: New file.
  10223. * config/posix/plugin-suffix.h: New file.
  10224. 2015-01-23 Jakub Jelinek <jakub@redhat.com>
  10225. PR middle-end/64734
  10226. * libgomp.c/pr64734.c: New test.
  10227. 2015-01-23 Tom de Vries <tom@codesourcery.com>
  10228. PR libgomp/64672
  10229. * testsuite/libgomp.oacc-c-c++-common/abort-5.c: New test.
  10230. 2015-01-23 Tom de Vries <tom@codesourcery.com>
  10231. PR libgomp/64707
  10232. * testsuite/libgomp.c/target-9.c: Add -ftree-parallelize-loops=0 to
  10233. dg-options.
  10234. 2015-01-19 Thomas Schwinge <thomas@codesourcery.com>
  10235. PR libgomp/64625
  10236. * libgomp_g.h (GOACC_data_start, GOACC_enter_exit_data)
  10237. (GOACC_parallel, GOACC_update): Remove const_void *offload_table
  10238. formal parameter. Update all users.
  10239. * target.c (GOMP_target, GOMP_target_data, GOMP_target_update):
  10240. Document unused formal parameter.
  10241. 2015-01-16 Thomas Schwinge <thomas@codesourcery.com>
  10242. * oacc-parallel.c: Don't include <alloca.h>.
  10243. (GOACC_parallel): Use gomp_alloca instead of alloca.
  10244. 2015-01-16 Gerald Pfeifer <gerald@pfeifer.com>
  10245. * target.c (num_devices): Guard with PLUGIN_SUPPORT.
  10246. 2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
  10247. James Norris <jnorris@codesourcery.com>
  10248. Tom de Vries <tom@codesourcery.com>
  10249. Julian Brown <julian@codesourcery.com>
  10250. Cesar Philippidis <cesar@codesourcery.com>
  10251. Nathan Sidwell <nathan@codesourcery.com>
  10252. Tobias Burnus <burnus@net-b.de>
  10253. * Makefile.am (search_path): Add $(top_srcdir)/../include.
  10254. (libgomp_la_SOURCES): Add splay-tree.c, libgomp-plugin.c,
  10255. oacc-parallel.c, oacc-host.c, oacc-init.c, oacc-mem.c,
  10256. oacc-async.c, oacc-plugin.c, oacc-cuda.c.
  10257. [USE_FORTRAN] (libgomp_la_SOURCES): Add openacc.f90.
  10258. Include $(top_srcdir)/plugin/Makefrag.am.
  10259. (nodist_libsubinclude_HEADERS): Add openacc.h.
  10260. [USE_FORTRAN] (nodist_finclude_HEADERS): Add openacc_lib.h,
  10261. openacc.f90, openacc.mod, openacc_kinds.mod.
  10262. (omp_lib.mod): Generalize into...
  10263. (%.mod): ... this new rule.
  10264. (openacc_kinds.mod, openacc.mod): New rules.
  10265. * plugin/configfrag.ac: New file.
  10266. * configure.ac: Move plugin/offloading support into it. Include
  10267. it. Instantiate testsuite/libgomp-test-support.pt.exp.
  10268. * plugin/Makefrag.am: New file.
  10269. * testsuite/Makefile.am (OFFLOAD_TARGETS)
  10270. (OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS): Don't
  10271. export.
  10272. (libgomp-test-support.exp): New rule.
  10273. (all-local): Depend on it.
  10274. * Makefile.in: Regenerate.
  10275. * testsuite/Makefile.in: Regenerate.
  10276. * config.h.in: Likewise.
  10277. * configure: Likewise.
  10278. * configure.tgt: Harden shell syntax.
  10279. * env.c: Include "oacc-int.h".
  10280. (parse_acc_device_type): New function.
  10281. (gomp_debug_var, goacc_device_type, goacc_device_num): New
  10282. variables.
  10283. (initialize_env): Initialize those. Call
  10284. goacc_runtime_initialize.
  10285. * error.c (gomp_vdebug, gomp_debug, gomp_vfatal): New functions.
  10286. (gomp_fatal): Call gomp_vfatal.
  10287. * libgomp.h: Include "libgomp-plugin.h" and <stdarg.h>.
  10288. (gomp_debug_var, goacc_device_type, goacc_device_num, gomp_vdebug)
  10289. (gomp_debug, gomp_verror, gomp_vfatal, gomp_init_targets_once)
  10290. (splay_tree_node, splay_tree, splay_tree_key)
  10291. (struct target_mem_desc, struct splay_tree_key_s)
  10292. (struct gomp_memory_mapping, struct acc_dispatch_t)
  10293. (struct gomp_device_descr, gomp_acc_insert_pointer)
  10294. (gomp_acc_remove_pointer, target_mem_desc, gomp_copy_from_async)
  10295. (gomp_unmap_vars, gomp_init_device, gomp_init_tables)
  10296. (gomp_free_memmap, gomp_fini_device): New declarations.
  10297. (gomp_vdebug, gomp_debug): New macros.
  10298. Include "splay-tree.h".
  10299. * libgomp.map (OACC_2.0): New symbol version. Use for
  10300. acc_get_num_devices, acc_get_num_devices_h_, acc_set_device_type,
  10301. acc_set_device_type_h_, acc_get_device_type,
  10302. acc_get_device_type_h_, acc_set_device_num, acc_set_device_num_h_,
  10303. acc_get_device_num, acc_get_device_num_h_, acc_async_test,
  10304. acc_async_test_h_, acc_async_test_all, acc_async_test_all_h_,
  10305. acc_wait, acc_wait_h_, acc_wait_async, acc_wait_async_h_,
  10306. acc_wait_all, acc_wait_all_h_, acc_wait_all_async,
  10307. acc_wait_all_async_h_, acc_init, acc_init_h_, acc_shutdown,
  10308. acc_shutdown_h_, acc_on_device, acc_on_device_h_, acc_malloc,
  10309. acc_free, acc_copyin, acc_copyin_32_h_, acc_copyin_64_h_,
  10310. acc_copyin_array_h_, acc_present_or_copyin,
  10311. acc_present_or_copyin_32_h_, acc_present_or_copyin_64_h_,
  10312. acc_present_or_copyin_array_h_, acc_create, acc_create_32_h_,
  10313. acc_create_64_h_, acc_create_array_h_, acc_present_or_create,
  10314. acc_present_or_create_32_h_, acc_present_or_create_64_h_,
  10315. acc_present_or_create_array_h_, acc_copyout, acc_copyout_32_h_,
  10316. acc_copyout_64_h_, acc_copyout_array_h_, acc_delete,
  10317. acc_delete_32_h_, acc_delete_64_h_, acc_delete_array_h_,
  10318. acc_update_device, acc_update_device_32_h_,
  10319. acc_update_device_64_h_, acc_update_device_array_h_,
  10320. acc_update_self, acc_update_self_32_h_, acc_update_self_64_h_,
  10321. acc_update_self_array_h_, acc_map_data, acc_unmap_data,
  10322. acc_deviceptr, acc_hostptr, acc_is_present, acc_is_present_32_h_,
  10323. acc_is_present_64_h_, acc_is_present_array_h_,
  10324. acc_memcpy_to_device, acc_memcpy_from_device,
  10325. acc_get_current_cuda_device, acc_get_current_cuda_context,
  10326. acc_get_cuda_stream, acc_set_cuda_stream.
  10327. (GOACC_2.0): New symbol version. Use for GOACC_data_end,
  10328. GOACC_data_start, GOACC_enter_exit_data, GOACC_parallel,
  10329. GOACC_update, GOACC_wait, GOACC_get_thread_num,
  10330. GOACC_get_num_threads.
  10331. (GOMP_PLUGIN_1.0): New symbol version. Use for
  10332. GOMP_PLUGIN_malloc, GOMP_PLUGIN_malloc_cleared,
  10333. GOMP_PLUGIN_realloc, GOMP_PLUGIN_debug, GOMP_PLUGIN_error,
  10334. GOMP_PLUGIN_fatal, GOMP_PLUGIN_async_unmap_vars,
  10335. GOMP_PLUGIN_acc_thread.
  10336. * libgomp.texi: Update for OpenACC changes, and GOMP_DEBUG
  10337. environment variable.
  10338. * libgomp_g.h (GOACC_data_start, GOACC_data_end)
  10339. (GOACC_enter_exit_data, GOACC_parallel, GOACC_update, GOACC_wait)
  10340. (GOACC_get_num_threads, GOACC_get_thread_num): New declarations.
  10341. * splay-tree.h (splay_tree_lookup, splay_tree_insert)
  10342. (splay_tree_remove): New declarations.
  10343. (rotate_left, rotate_right, splay_tree_splay, splay_tree_insert)
  10344. (splay_tree_remove, splay_tree_lookup): Move into...
  10345. * splay-tree.c: ... this new file.
  10346. * target.c: Include "oacc-plugin.h", "oacc-int.h", <assert.h>.
  10347. (splay_tree_node, splay_tree, splay_tree_key)
  10348. (struct target_mem_desc, struct splay_tree_key_s)
  10349. (struct gomp_device_descr): Don't declare.
  10350. (num_devices_openmp): New variable.
  10351. (gomp_get_num_devices ): Use it.
  10352. (gomp_init_targets_once): New function.
  10353. (gomp_get_num_devices ): Use it.
  10354. (get_kind, gomp_copy_from_async, gomp_free_memmap)
  10355. (gomp_fini_device, gomp_register_image_for_device): New functions.
  10356. (gomp_map_vars): Add devaddrs parameter.
  10357. (gomp_update): Add mm parameter.
  10358. (gomp_init_device): Move most of it into...
  10359. (gomp_init_tables): ... this new function.
  10360. (gomp_register_images_for_device): Remove function.
  10361. (splay_compare, gomp_map_vars, gomp_unmap_vars, gomp_init_device):
  10362. Make them hidden instead of static.
  10363. (gomp_map_vars_existing, gomp_map_vars, gomp_unmap_vars)
  10364. (gomp_update, gomp_init_device, GOMP_target, GOMP_target_data)
  10365. (GOMP_target_end_data, GOMP_target_update)
  10366. (gomp_load_plugin_for_device, gomp_target_init): Update for
  10367. OpenACC changes.
  10368. * oacc-async.c: New file.
  10369. * oacc-cuda.c: Likewise.
  10370. * oacc-host.c: Likewise.
  10371. * oacc-init.c: Likewise.
  10372. * oacc-int.h: Likewise.
  10373. * oacc-mem.c: Likewise.
  10374. * oacc-parallel.c: Likewise.
  10375. * oacc-plugin.c: Likewise.
  10376. * oacc-plugin.h: Likewise.
  10377. * oacc-ptx.h: Likewise.
  10378. * openacc.f90: Likewise.
  10379. * openacc.h: Likewise.
  10380. * openacc_lib.h: Likewise.
  10381. * plugin/plugin-host.c: Likewise.
  10382. * plugin/plugin-nvptx.c: Likewise.
  10383. * libgomp-plugin.c: Likewise.
  10384. * libgomp-plugin.h: Likewise.
  10385. * libgomp_target.h: Remove file after merging content into the
  10386. former file. Update all users.
  10387. * testsuite/lib/libgomp.exp: Load libgomp-test-support.exp.
  10388. (offload_targets_s, offload_targets_s_openacc): New variables.
  10389. (check_effective_target_openacc_nvidia_accel_present)
  10390. (check_effective_target_openacc_nvidia_accel_selected): New
  10391. procedures.
  10392. (libgomp_init): Update for OpenACC changes.
  10393. * testsuite/libgomp-test-support.exp.in: New file.
  10394. * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
  10395. * testsuite/libgomp.oacc-c/c.exp: Likewise.
  10396. * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
  10397. * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Likewise.
  10398. * testsuite/libgomp.oacc-c-c++-common/abort-2.c: Likewise.
  10399. * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
  10400. * testsuite/libgomp.oacc-c-c++-common/abort-4.c: Likewise.
  10401. * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
  10402. * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
  10403. * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Likewise.
  10404. * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Likewise.
  10405. * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
  10406. * testsuite/libgomp.oacc-c-c++-common/collapse-1.c: Likewise.
  10407. * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
  10408. * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
  10409. * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
  10410. * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
  10411. * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
  10412. * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
  10413. * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
  10414. * testsuite/libgomp.oacc-c-c++-common/data-1.c: Likewise.
  10415. * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
  10416. * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
  10417. * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
  10418. * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
  10419. * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
  10420. * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
  10421. * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
  10422. * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
  10423. * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
  10424. * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
  10425. * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
  10426. * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
  10427. * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Likewise.
  10428. * testsuite/libgomp.oacc-c-c++-common/kernels-empty.c: Likewise.
  10429. * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
  10430. * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
  10431. * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
  10432. * testsuite/libgomp.oacc-c-c++-common/lib-12.c: Likewise.
  10433. * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
  10434. * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
  10435. * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
  10436. * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
  10437. * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
  10438. * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
  10439. * testsuite/libgomp.oacc-c-c++-common/lib-19.c: Likewise.
  10440. * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
  10441. * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
  10442. * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
  10443. * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
  10444. * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
  10445. * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
  10446. * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
  10447. * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
  10448. * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
  10449. * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
  10450. * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
  10451. * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
  10452. * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
  10453. * testsuite/libgomp.oacc-c-c++-common/lib-31.c: Likewise.
  10454. * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
  10455. * testsuite/libgomp.oacc-c-c++-common/lib-33.c: Likewise.
  10456. * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
  10457. * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
  10458. * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
  10459. * testsuite/libgomp.oacc-c-c++-common/lib-37.c: Likewise.
  10460. * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Likewise.
  10461. * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
  10462. * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
  10463. * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
  10464. * testsuite/libgomp.oacc-c-c++-common/lib-41.c: Likewise.
  10465. * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
  10466. * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
  10467. * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
  10468. * testsuite/libgomp.oacc-c-c++-common/lib-45.c: Likewise.
  10469. * testsuite/libgomp.oacc-c-c++-common/lib-46.c: Likewise.
  10470. * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
  10471. * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
  10472. * testsuite/libgomp.oacc-c-c++-common/lib-49.c: Likewise.
  10473. * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Likewise.
  10474. * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Likewise.
  10475. * testsuite/libgomp.oacc-c-c++-common/lib-51.c: Likewise.
  10476. * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
  10477. * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
  10478. * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
  10479. * testsuite/libgomp.oacc-c-c++-common/lib-55.c: Likewise.
  10480. * testsuite/libgomp.oacc-c-c++-common/lib-56.c: Likewise.
  10481. * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
  10482. * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
  10483. * testsuite/libgomp.oacc-c-c++-common/lib-59.c: Likewise.
  10484. * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
  10485. * testsuite/libgomp.oacc-c-c++-common/lib-60.c: Likewise.
  10486. * testsuite/libgomp.oacc-c-c++-common/lib-61.c: Likewise.
  10487. * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
  10488. * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
  10489. * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
  10490. * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
  10491. * testsuite/libgomp.oacc-c-c++-common/lib-66.c: Likewise.
  10492. * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
  10493. * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
  10494. * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
  10495. * testsuite/libgomp.oacc-c-c++-common/lib-7.c: Likewise.
  10496. * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
  10497. * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
  10498. * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
  10499. * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
  10500. * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
  10501. * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
  10502. * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
  10503. * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
  10504. * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
  10505. * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
  10506. * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
  10507. * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
  10508. * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
  10509. * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
  10510. * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
  10511. * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
  10512. * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
  10513. * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
  10514. * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
  10515. * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
  10516. * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
  10517. * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
  10518. * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
  10519. * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
  10520. * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
  10521. * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Likewise.
  10522. * testsuite/libgomp.oacc-c-c++-common/offset-1.c: Likewise.
  10523. * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: Likewise.
  10524. * testsuite/libgomp.oacc-c-c++-common/parallel-empty.c: Likewise.
  10525. * testsuite/libgomp.oacc-c-c++-common/pointer-align-1.c: Likewise.
  10526. * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
  10527. * testsuite/libgomp.oacc-c-c++-common/present-2.c: Likewise.
  10528. * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
  10529. * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
  10530. * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
  10531. * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
  10532. * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
  10533. * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c:
  10534. Likewise.
  10535. * testsuite/libgomp.oacc-c-c++-common/subr.h: Likewise.
  10536. * testsuite/libgomp.oacc-c-c++-common/subr.ptx: Likewise.
  10537. * testsuite/libgomp.oacc-c-c++-common/timer.h: Likewise.
  10538. * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
  10539. * testsuite/libgomp.oacc-c-c++-common/update-1.c: Likewise.
  10540. * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
  10541. * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
  10542. * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
  10543. * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
  10544. * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
  10545. * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
  10546. * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
  10547. * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
  10548. * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
  10549. * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
  10550. * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
  10551. * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
  10552. * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
  10553. * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
  10554. * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
  10555. * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
  10556. * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
  10557. * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
  10558. * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
  10559. * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
  10560. * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
  10561. * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
  10562. * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
  10563. * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
  10564. * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
  10565. * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
  10566. * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
  10567. * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
  10568. * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
  10569. * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
  10570. * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
  10571. * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
  10572. * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
  10573. * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
  10574. * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
  10575. * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
  10576. * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
  10577. * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
  10578. * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
  10579. * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
  10580. * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
  10581. * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
  10582. * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
  10583. * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
  10584. * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
  10585. * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
  10586. * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
  10587. * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
  10588. * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
  10589. * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
  10590. * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
  10591. * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
  10592. * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
  10593. * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
  10594. * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
  10595. 2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
  10596. Julian Brown <julian@codesourcery.com>
  10597. David Malcolm <dmalcolm@redhat.com>
  10598. * configure.ac: Rename libgomp from "GNU OpenMP Runtime Library"
  10599. to "GNU Offloading and Multi Processing Runtime Library". Change
  10600. all users.
  10601. * configure: Regenerate.
  10602. * libgomp.texi: Update.
  10603. 2015-01-08 Thomas Schwinge <thomas@codesourcery.com>
  10604. * configure.ac [tgt_dir] (offload_additional_lib_paths): Also add
  10605. "$tgt_dir/lib32".
  10606. * configure: Regenerate.
  10607. * testsuite/lib/libgomp.exp (libgomp_init): Correctly match
  10608. "intelmic" in $offload_targets.
  10609. 2015-01-05 Jakub Jelinek <jakub@redhat.com>
  10610. Update copyright years.
  10611. * libgomp.texi: Bump @copying's copyright year.
  10612. 2014-12-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
  10613. * testsuite/lib/libgomp.exp: Load target-utils.exp.
  10614. Move load of target-supports.exp earlier.
  10615. 2014-12-10 Ilya Verbin <ilya.verbin@intel.com>
  10616. * testsuite/libgomp.c/target-9.c: New test.
  10617. 2014-12-09 Varvara Rainchik <varvara.rainchik@intel.com>
  10618. * config.h.in: Regenerate.
  10619. * configure: Regenerate.
  10620. * configure.ac: Add GCC_CHECK_EMUTLS.
  10621. * libgomp.h: Add check for USE_EMUTLS: this case
  10622. is equal to HAVE_TLS.
  10623. * team.c: Likewise.
  10624. 2014-12-03 Uros Bizjak <ubizjak@gmail.com>
  10625. * configure.tgt (x86_64-*-linux*): Tune -m32 multilib to generic.
  10626. 2014-11-28 Andrey Turetskiy <andrey.turetskiy@intel.com>
  10627. Ilya Verbin <ilya.verbin@intel.com>
  10628. * testsuite/libgomp.c/target-critical-1.c: New test.
  10629. 2014-11-26 Jakub Jelinek <jakub@redhat.com>
  10630. * testsuite/libgomp.c/examples-4/e.53.4.c: Add -DITESTITERS=20
  10631. to dg-options unless expensive testing is on.
  10632. (TESTITERS): Define to N if not defined.
  10633. (main): Use TESTITERS instead of N.
  10634. * testsuite/libgomp.c/examples-4/e.55.1.c: Define CHUNKSZ from
  10635. dg-additional-options depending on whether expensive testing is on.
  10636. * testsuite/libgomp.fortran/examples-4/e.55.1.f90 (e_55_1_mod):
  10637. Decrease N to 100000 and CHUNKSZ to 10000.
  10638. 2014-11-24 Jakub Jelinek <jakub@redhat.com>
  10639. PR fortran/63938
  10640. * testsuite/libgomp.fortran/pr63938-1.f90: New test.
  10641. * testsuite/libgomp.fortran/pr63938-2.f90: New test.
  10642. 2014-11-21 Steve Ellcey <sellcey@imgtec.com>
  10643. * config/linux/mips/futex.h (SYS_futex): Define if not already done.
  10644. 2014-11-21 H.J. Lu <hongjiu.lu@intel.com>
  10645. PR bootstrap/63784
  10646. * configure: Regenerated.
  10647. 2014-11-19 Uros Bizjak <ubizjak@gmail.com>
  10648. * testsuite/libgomp.c/examples-4/e.53.5.c: Require
  10649. vect_simd_clones effective target.
  10650. * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
  10651. 2014-11-14 Jakub Jelinek <jakub@redhat.com>
  10652. * libgomp.c/examples-4/e.54.2.c (main): Use N / 8 instead
  10653. of 32 as block_size.
  10654. * libgomp.fortran/examples-4/e.54.2.f90 (e_54_1): Use n / 8
  10655. instead of 32 as block_size.
  10656. 2014-11-13 Andrey Turetskiy <andrey.turetskiy@intel.com>
  10657. Ilya Verbin <ilya.verbin@intel.com>
  10658. * Makefile.in: Regenerate.
  10659. * configure: Regenerate.
  10660. * configure.ac: Set up offload_additional_options,
  10661. offload_additional_lib_paths and offload_targets.
  10662. * testsuite/Makefile.am: Export environment variables: OFFLOAD_TARGETS,
  10663. OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS.
  10664. * testsuite/Makefile.in: Regenerate.
  10665. * testsuite/lib/libgomp.exp (libgomp_init): Append
  10666. offload_additional_lib_paths to LD_LIBRARY_PATH. Append
  10667. offload_additional_options to ALWAYS_CFLAGS. Append liboffloadmic
  10668. build directory to LD_LIBRARY_PATH for intelmic offload targets.
  10669. 2014-11-13 Andrey Turetskiy <andrey.turetskiy@intel.com>
  10670. Ilya Verbin <ilya.verbin@intel.com>
  10671. Kirill Yukhin <kirill.yukhin@intel.com>
  10672. Ilya Tocar <ilya.tocar@intel.com>
  10673. * testsuite/lib/libgomp.exp
  10674. (check_effective_target_offload_device): New.
  10675. * testsuite/libgomp.c++/c++.exp: Include tests from subdirectories.
  10676. * testsuite/libgomp.c++/examples-4/e.51.5.C: New test.
  10677. * testsuite/libgomp.c++/examples-4/e.53.2.C: Ditto.
  10678. * testsuite/libgomp.c/examples-4/e.50.1.c: Ditto.
  10679. * testsuite/libgomp.c/examples-4/e.50.2.c: Ditto.
  10680. * testsuite/libgomp.c/examples-4/e.50.3.c: Ditto.
  10681. * testsuite/libgomp.c/examples-4/e.50.4.c: Ditto.
  10682. * testsuite/libgomp.c/examples-4/e.50.5.c: Ditto.
  10683. * testsuite/libgomp.c/examples-4/e.51.1.c: Ditto.
  10684. * testsuite/libgomp.c/examples-4/e.51.2.c: Ditto.
  10685. * testsuite/libgomp.c/examples-4/e.51.3.c: Ditto.
  10686. * testsuite/libgomp.c/examples-4/e.51.4.c: Ditto.
  10687. * testsuite/libgomp.c/examples-4/e.51.6.c: Ditto.
  10688. * testsuite/libgomp.c/examples-4/e.51.7.c: Ditto.
  10689. * testsuite/libgomp.c/examples-4/e.52.1.c: Ditto.
  10690. * testsuite/libgomp.c/examples-4/e.52.2.c: Ditto.
  10691. * testsuite/libgomp.c/examples-4/e.53.1.c: Ditto.
  10692. * testsuite/libgomp.c/examples-4/e.53.3.c: Ditto.
  10693. * testsuite/libgomp.c/examples-4/e.53.4.c: Ditto.
  10694. * testsuite/libgomp.c/examples-4/e.53.5.c: Ditto.
  10695. * testsuite/libgomp.c/examples-4/e.54.2.c: Ditto.
  10696. * testsuite/libgomp.c/examples-4/e.54.3.c: Ditto.
  10697. * testsuite/libgomp.c/examples-4/e.54.4.c: Ditto.
  10698. * testsuite/libgomp.c/examples-4/e.54.5.c: Ditto.
  10699. * testsuite/libgomp.c/examples-4/e.54.6.c: Ditto.
  10700. * testsuite/libgomp.c/examples-4/e.55.1.c: Ditto.
  10701. * testsuite/libgomp.c/examples-4/e.55.2.c: Ditto.
  10702. * testsuite/libgomp.c/examples-4/e.56.3.c: Ditto.
  10703. * testsuite/libgomp.c/examples-4/e.56.4.c: Ditto.
  10704. * testsuite/libgomp.c/examples-4/e.57.1.c: Ditto.
  10705. * testsuite/libgomp.c/examples-4/e.57.2.c: Ditto.
  10706. * testsuite/libgomp.c/examples-4/e.57.3.c: Ditto.
  10707. * testsuite/libgomp.c/target-7.c: Fix test.
  10708. * testsuite/libgomp.fortran/examples-4/e.50.1.f90: New test.
  10709. * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Ditto.
  10710. * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Ditto.
  10711. * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Ditto.
  10712. * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Ditto.
  10713. * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Ditto.
  10714. * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Ditto.
  10715. * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Ditto.
  10716. * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Ditto.
  10717. * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Ditto.
  10718. * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Ditto.
  10719. * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Ditto.
  10720. * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Ditto.
  10721. * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Ditto.
  10722. * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Ditto.
  10723. * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Ditto.
  10724. * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Ditto.
  10725. * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Ditto.
  10726. * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
  10727. * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Ditto.
  10728. * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Ditto.
  10729. * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Ditto.
  10730. * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Ditto.
  10731. * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Ditto.
  10732. * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Ditto.
  10733. * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Ditto.
  10734. * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Ditto.
  10735. * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Ditto.
  10736. * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Ditto.
  10737. * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Ditto.
  10738. * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Ditto.
  10739. 2014-11-13 Jakub Jelinek <jakub@redhat.com>
  10740. Ilya Verbin <ilya.verbin@intel.com>
  10741. Thomas Schwinge <thomas@codesourcery.com>
  10742. Andrey Turetskiy <andrey.turetskiy@intel.com>
  10743. * libgomp.map (GOMP_4.0.1): New symbol version.
  10744. Add GOMP_offload_register.
  10745. * libgomp_target.h: New file.
  10746. * splay-tree.h: New file.
  10747. * target.c: Include config.h, libgomp_target.h, dlfcn.h, splay-tree.h.
  10748. (gomp_target_init): New forward declaration.
  10749. (gomp_is_initialized): New static variable.
  10750. (splay_tree_node, splay_tree, splay_tree_key): New typedefs.
  10751. (struct target_mem_desc, struct splay_tree_key_s, offload_image_descr):
  10752. New structures.
  10753. (offload_images, num_offload_images, devices, num_devices): New static
  10754. variables.
  10755. (splay_compare): New static function.
  10756. (struct gomp_device_descr): New structure.
  10757. (gomp_get_num_devices): Call gomp_target_init.
  10758. (resolve_device, gomp_map_vars_existing, gomp_map_vars, gomp_unmap_tgt)
  10759. (gomp_unmap_vars, gomp_update, gomp_init_device): New static functions.
  10760. (GOMP_offload_register): New function.
  10761. (GOMP_target): Arrange for host callback to be performed in a separate
  10762. initial thread and contention group, inheriting ICVs from
  10763. gomp_global_icv etc. Call gomp_map_vars and gomp_unmap_vars.
  10764. Add device initialization and lookup for target function in splay tree.
  10765. (GOMP_target_data): Add device initialization and call gomp_map_vars.
  10766. (GOMP_target_end_data): Call gomp_unmap_vars.
  10767. (GOMP_target_update): Add device initialization and call gomp_update.
  10768. (gomp_load_plugin_for_device, gomp_register_images_for_device)
  10769. (gomp_target_init): New static functions.
  10770. 2014-11-13 Bernd Schmidt <bernds@codesourcery.com>
  10771. Thomas Schwinge <thomas@codesourcery.com>
  10772. Ilya Verbin <ilya.verbin@intel.com>
  10773. Andrey Turetskiy <andrey.turetskiy@intel.com>
  10774. * config.h.in: Regenerate.
  10775. * configure: Regenerate.
  10776. * configure.ac: Check for libdl, required for plugin support.
  10777. (PLUGIN_SUPPORT): Define if plugins are supported.
  10778. (enable_offload_targets): Support Intel MIC targets.
  10779. (OFFLOAD_TARGETS): List of target names suitable for offloading.
  10780. 2014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
  10781. PR target/63610
  10782. * configure: Regenerate.
  10783. 2014-11-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  10784. * config/posix/lock.c (_XOPEN_SOURCE) Define as 600.
  10785. 2014-10-06 Marek Polacek <polacek@redhat.com>
  10786. * testsuite/libgomp.c/affinity-1.c: Include <sys/wait.h>.
  10787. * testsuite/libgomp.c/nqueens-1.c: Include <stdlib.h>.
  10788. * testsuite/libgomp.c/thread-limit-1.c: Include <omp.h>
  10789. * testsuite/libgomp.c/thread-limit-2.c: Likewise.
  10790. 2014-10-06 Marek Polacek <polacek@redhat.com>
  10791. * testsuite/libgomp.c/affinity-1.c: Fix implicit declarations.
  10792. * testsuite/libgomp.c/nqueens-1.c: Likewise.
  10793. * testsuite/libgomp.c/pr26943-3.c: Likewise.
  10794. * testsuite/libgomp.c/pr26943-4.c: Likewise.
  10795. * testsuite/libgomp.c/pr36802-2.c: Likewise.
  10796. * testsuite/libgomp.c/pr36802-3.c: Likewise.
  10797. * testsuite/libgomp.c/thread-limit-1.c: Likewise.
  10798. * testsuite/libgomp.c/thread-limit-2.c: Likewise.
  10799. * testsuite/libgomp.c/appendix-a/a.15.1.c: Include <omp.h>.
  10800. * testsuite/libgomp.c/omp-loop02.c: Fix defaulting to int.
  10801. * testsuite/libgomp.c/omp-parallel-for.c: Likewise.
  10802. * testsuite/libgomp.c/omp-parallel-if.c: Likewise.
  10803. * testsuite/libgomp.c/omp-single-1.c: Likewise.
  10804. * testsuite/libgomp.c/omp-single-2.c: Likewise.
  10805. * testsuite/libgomp.c/omp_matvec.c: Likewise.
  10806. * testsuite/libgomp.c/omp_workshare3.c: Likewise.
  10807. * testsuite/libgomp.c/omp_workshare4.c: Likewise.
  10808. * testsuite/libgomp.c/shared-1.c: Fix defaulting to int. Fix implicit
  10809. declarations.
  10810. 2014-10-03 Jakub Jelinek <jakub@redhat.com>
  10811. PR libgomp/61200
  10812. * testsuite/libgomp.c/pr61200.c: New test.
  10813. 2014-09-18 Jakub Jelinek <jakub@redhat.com>
  10814. PR c++/63248
  10815. * testsuite/libgomp.c++/pr63248.C: New test.
  10816. 2014-08-04 Jakub Jelinek <jakub@redhat.com>
  10817. * task.c (GOMP_taskgroup_end): If taskgroup->num_children
  10818. is not zero, but taskgroup->children is NULL and there are
  10819. any task->children, schedule those instead of waiting.
  10820. * testsuite/libgomp.c/depend-6.c: New test.
  10821. * testsuite/libgomp.c/depend-7.c: New test.
  10822. * testsuite/libgomp.c/depend-8.c: New test.
  10823. * testsuite/libgomp.c/depend-9.c: New test.
  10824. * testsuite/libgomp.c/depend-10.c: New test.
  10825. 2014-08-01 Jakub Jelinek <jakub@redhat.com>
  10826. * libgomp.h (struct gomp_task_depend_entry): Add redundant_out field.
  10827. (struct gomp_taskwait): New type.
  10828. (struct gomp_task): Add taskwait and parent_depends_on, remove
  10829. in_taskwait and taskwait_sem fields.
  10830. (gomp_finish_task): Don't destroy taskwait_sem.
  10831. * task.c (gomp_init_task): Don't init in_taskwait, instead init
  10832. taskwait and parent_depends_on.
  10833. (GOMP_task): For if (0) tasks with depend clause that depend on
  10834. earlier tasks don't defer them, instead call
  10835. gomp_task_maybe_wait_for_dependencies to wait for the dependencies.
  10836. Initialize redundant_out field, for redundant out entries just
  10837. move them at the end of linked list instead of removing them
  10838. completely, and set redundant_out flag instead of redundant.
  10839. (gomp_task_run_pre): Update last_parent_depends_on if scheduling
  10840. that task.
  10841. (gomp_task_run_post_handle_dependers): If parent is in
  10842. gomp_task_maybe_wait_for_dependencies and newly runnable task
  10843. is not parent_depends_on, queue it in parent->children linked
  10844. list after all runnable tasks with parent_depends_on set.
  10845. Adjust for addition of taskwait indirection.
  10846. (gomp_task_run_post_remove_parent): If parent is in
  10847. gomp_task_maybe_wait_for_dependencies and task to be removed
  10848. is parent_depends_on, decrement n_depend and if needed awake
  10849. parent. Adjust for addition of taskwait indirection.
  10850. (GOMP_taskwait): Adjust for addition of taskwait indirection.
  10851. (gomp_task_maybe_wait_for_dependencies): New function.
  10852. * testsuite/libgomp.c/depend-5.c: New test.
  10853. 2014-07-13 Tobias Burnus <burnus@net-b.de>
  10854. * testsuite/libgomp.fortran/pr34020.f90: Make compile
  10855. with TS 18508/Fortran 2015.
  10856. 2014-07-06 Marek Polacek <polacek@redhat.com>
  10857. PR c/6940
  10858. * testsuite/libgomp.c/appendix-a/a.29.1.c (f): Add dg-warnings.
  10859. 2014-07-03 Jakub Jelinek <jakub@redhat.com>
  10860. * testsuite/lib/libgomp.exp (libgomp_target_compile): If $source
  10861. matches regex $lang_source_re, add $lang_include_flags to options.
  10862. * testsuite/libgomp.c/c.exp: Unset lang_include_flags.
  10863. * testsuite/libgomp.c++/c++.exp: Likewise.
  10864. * testsuite/libgomp.fortran/fortran.exp: Likewise. Set lang_source_re
  10865. and lang_include_flags instead of adding -fintrinsic-modules-path= to
  10866. ALWAYS_CFLAGS.
  10867. * testsuite/libgomp.graphite/graphite.exp: Unset lang_include_flags.
  10868. 2014-07-03 Thomas Schwinge <thomas@codesourcery.com>
  10869. * testsuite/libgomp.fortran/fortran.exp: Explain
  10870. gfortran-dg-runtest usage.
  10871. 2014-06-25 Jakub Jelinek <jakub@redhat.com>
  10872. * testsuite/libgomp.fortran/simd5.f90: New test.
  10873. * testsuite/libgomp.fortran/simd6.f90: New test.
  10874. * testsuite/libgomp.fortran/simd7.f90: New test.
  10875. 2014-06-24 Jakub Jelinek <jakub@redhat.com>
  10876. * testsuite/libgomp.c/for-2.c: Define SC to static for
  10877. #pragma omp for simd testing.
  10878. * testsuite/libgomp.c/for-2.h (SC): Define if not defined.
  10879. (N(f5), N(f6), N(f7), N(f8), N(f10), N(f12), N(f14)): Use
  10880. SC macro.
  10881. * testsuite/libgomp.c/simd-14.c: New test.
  10882. * testsuite/libgomp.c/simd-15.c: New test.
  10883. * testsuite/libgomp.c/simd-16.c: New test.
  10884. * testsuite/libgomp.c/simd-17.c: New test.
  10885. * testsuite/libgomp.c++/for-10.C: Define SC to static for
  10886. #pragma omp for simd testing.
  10887. * testsuite/libgomp.c++/simd10.C: New test.
  10888. * testsuite/libgomp.c++/simd11.C: New test.
  10889. * testsuite/libgomp.c++/simd12.C: New test.
  10890. * testsuite/libgomp.c++/simd13.C: New test.
  10891. * testsuite/libgomp.fortran/aligned1.f03: New test.
  10892. * testsuite/libgomp.fortran/nestedfn5.f90: New test.
  10893. * testsuite/libgomp.fortran/target7.f90: Surround loop spawning
  10894. tasks with !$omp parallel !$omp single.
  10895. * testsuite/libgomp.fortran/target8.f90: New test.
  10896. * testsuite/libgomp.fortran/udr4.f90 (foo UDR, bar UDR): Adjust
  10897. not to use trim in the combiner, instead call elemental function.
  10898. (fn): New elemental function.
  10899. * testsuite/libgomp.fortran/udr6.f90 (do_add, dp_add, dp_init):
  10900. Make elemental.
  10901. * testsuite/libgomp.fortran/udr7.f90 (omp_priv, omp_orig, omp_out,
  10902. omp_in): Likewise.
  10903. * testsuite/libgomp.fortran/udr12.f90: New test.
  10904. * testsuite/libgomp.fortran/udr13.f90: New test.
  10905. * testsuite/libgomp.fortran/udr14.f90: New test.
  10906. * testsuite/libgomp.fortran/udr15.f90: New test.
  10907. 2014-06-18 Jakub Jelinek <jakub@redhat.com>
  10908. * omp_lib.f90.in (openmp_version): Set to 201307.
  10909. * omp_lib.h.in (openmp_version): Likewise.
  10910. * testsuite/libgomp.c/target-8.c: New test.
  10911. * testsuite/libgomp.fortran/declare-simd-1.f90: Add notinbranch
  10912. and inbranch clauses.
  10913. * testsuite/libgomp.fortran/depend-3.f90: New test.
  10914. * testsuite/libgomp.fortran/openmp_version-1.f: Adjust for new
  10915. openmp_version.
  10916. * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
  10917. * testsuite/libgomp.fortran/target1.f90: New test.
  10918. * testsuite/libgomp.fortran/target2.f90: New test.
  10919. * testsuite/libgomp.fortran/target3.f90: New test.
  10920. * testsuite/libgomp.fortran/target4.f90: New test.
  10921. * testsuite/libgomp.fortran/target5.f90: New test.
  10922. * testsuite/libgomp.fortran/target6.f90: New test.
  10923. * testsuite/libgomp.fortran/target7.f90: New test.
  10924. 2014-06-10 Jakub Jelinek <jakub@redhat.com>
  10925. PR fortran/60928
  10926. * testsuite/libgomp.fortran/allocatable9.f90: New test.
  10927. * testsuite/libgomp.fortran/allocatable10.f90: New test.
  10928. * testsuite/libgomp.fortran/allocatable11.f90: New test.
  10929. * testsuite/libgomp.fortran/allocatable12.f90: New test.
  10930. * testsuite/libgomp.fortran/alloc-comp-1.f90: New test.
  10931. * testsuite/libgomp.fortran/alloc-comp-2.f90: New test.
  10932. * testsuite/libgomp.fortran/alloc-comp-3.f90: New test.
  10933. * testsuite/libgomp.fortran/associate1.f90: New test.
  10934. * testsuite/libgomp.fortran/associate2.f90: New test.
  10935. * testsuite/libgomp.fortran/procptr1.f90: New test.
  10936. 2014-06-06 Jakub Jelinek <jakub@redhat.com>
  10937. * testsuite/libgomp.fortran/simd1.f90: New test.
  10938. * testsuite/libgomp.fortran/udr1.f90: New test.
  10939. * testsuite/libgomp.fortran/udr2.f90: New test.
  10940. * testsuite/libgomp.fortran/udr3.f90: New test.
  10941. * testsuite/libgomp.fortran/udr4.f90: New test.
  10942. * testsuite/libgomp.fortran/udr5.f90: New test.
  10943. * testsuite/libgomp.fortran/udr6.f90: New test.
  10944. * testsuite/libgomp.fortran/udr7.f90: New test.
  10945. * testsuite/libgomp.fortran/udr8.f90: New test.
  10946. * testsuite/libgomp.fortran/udr9.f90: New test.
  10947. * testsuite/libgomp.fortran/udr10.f90: New test.
  10948. * testsuite/libgomp.fortran/udr11.f90: New test.
  10949. 2014-05-27 Uros Bizjak <ubizjak@gmail.com>
  10950. * testsuite/libgomp.fortran/declare-simd-1.f90: Require
  10951. vect_simd_clones effective target.
  10952. * testsuite/libgomp.fortran/declare-simd-2.f90: Ditto.
  10953. 2014-05-21 Jakub Jelinek <jakub@redhat.com>
  10954. PR middle-end/61252
  10955. * testsuite/libgomp.c++/simd-9.C: New test.
  10956. 2014-05-18 Uros Bizjak <ubizjak@gmail.com>
  10957. * libgomp.texi (Runitme Library Routines): Remove multiple @menu.
  10958. (Environment Variables) Move OMP_PROC_BIND and OMP_STACKSIZE node
  10959. texts according to their @menu entry positions.
  10960. 2014-05-11 Jakub Jelinek <jakub@redhat.com>
  10961. * testsuite/libgomp.fortran/cancel-do-1.f90: New test.
  10962. * testsuite/libgomp.fortran/cancel-do-2.f90: New test.
  10963. * testsuite/libgomp.fortran/cancel-parallel-1.f90: New test.
  10964. * testsuite/libgomp.fortran/cancel-parallel-3.f90: New test.
  10965. * testsuite/libgomp.fortran/cancel-sections-1.f90: New test.
  10966. * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: New test.
  10967. * testsuite/libgomp.fortran/declare-simd-1.f90: New test.
  10968. * testsuite/libgomp.fortran/declare-simd-2.f90: New test.
  10969. * testsuite/libgomp.fortran/declare-simd-3.f90: New test.
  10970. * testsuite/libgomp.fortran/depend-1.f90: New test.
  10971. * testsuite/libgomp.fortran/depend-2.f90: New test.
  10972. * testsuite/libgomp.fortran/omp_atomic5.f90: New test.
  10973. * testsuite/libgomp.fortran/simd1.f90: New test.
  10974. * testsuite/libgomp.fortran/simd2.f90: New test.
  10975. * testsuite/libgomp.fortran/simd3.f90: New test.
  10976. * testsuite/libgomp.fortran/simd4.f90: New test.
  10977. * testsuite/libgomp.fortran/taskgroup1.f90: New test.
  10978. 2014-05-02 Jakub Jelinek <jakub@redhat.com>
  10979. * testsuite/libgomp.c/simd-10.c: New test.
  10980. * testsuite/libgomp.c/simd-11.c: New test.
  10981. * testsuite/libgomp.c/simd-12.c: New test.
  10982. * testsuite/libgomp.c/simd-13.c: New test.
  10983. 2014-04-24 Jakub Jelinek <jakub@redhat.com>
  10984. * testsuite/libgomp.c++/atomic-14.C: Allow seq_cst and
  10985. atomic type clauses in any order and optional comma in between.
  10986. * testsuite/libgomp.c++/atomic-15.C: Likewise.
  10987. * testsuite/libgomp.c/atomic-17.c: Likewise.
  10988. * testsuite/libgomp.c/simd-7.c: New test.
  10989. * testsuite/libgomp.c/simd-8.c: New test.
  10990. * testsuite/libgomp.c/simd-9.c: New test.
  10991. * testsuite/libgomp.c/loop-16.c: New test.
  10992. 2014-04-02 Richard Henderson <rth@redhat.com>
  10993. * config/linux/futex.h (futex_wait): Get error value from errno.
  10994. (futex_wake): Likewise.
  10995. 2014-03-25 Jakub Jelinek <jakub@redhat.com>
  10996. PR c++/60331
  10997. * testsuite/libgomp.c++/udr-11.C: New test.
  10998. * testsuite/libgomp.c++/udr-12.C: New test.
  10999. * testsuite/libgomp.c++/udr-13.C: New test.
  11000. * testsuite/libgomp.c++/udr-14.C: New test.
  11001. * testsuite/libgomp.c++/udr-15.C: New test.
  11002. * testsuite/libgomp.c++/udr-16.C: New test.
  11003. * testsuite/libgomp.c++/udr-17.C: New test.
  11004. * testsuite/libgomp.c++/udr-18.C: New test.
  11005. * testsuite/libgomp.c++/udr-19.C: New test.
  11006. 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
  11007. Update copyright years
  11008. 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
  11009. * hashtab.h: Use the standard form for the copyright notice.
  11010. 2014-01-02 Tobias Burnus <burnus@net-b.de>
  11011. * libgomp.texi: Bump @copying's copyright year.
  11012. 2013-12-17 Andreas Tobler <andreast@gcc.gnu.org>
  11013. * testsuite/libgomp.c/affinity-1.c: Remove alloca.h include. Replace
  11014. alloca () with __builtin_alloca ().
  11015. * testsuite/libgomp.c/icv-2.c: Add FreeBSD coverage.
  11016. * testsuite/libgomp.c/lock-3.c: Likewise.
  11017. * testsuite/libgomp.c/pr48591.c: Likewise.
  11018. 2013-12-17 Jakub Jelinek <jakub@redhat.com>
  11019. PR testsuite/59534
  11020. * testsuite/libgomp.fortran/retval1.f90 (e5): Avoid non-shortcircuited
  11021. comparisons.
  11022. 2013-12-16 Jakub Jelinek <jakub@redhat.com>
  11023. PR libgomp/58756
  11024. * testsuite/libgomp.c/pr58756.c: New test.
  11025. 2013-12-12 Jakub Jelinek <jakub@redhat.com>
  11026. PR libgomp/59467
  11027. * testsuite/libgomp.fortran/crayptr2.f90: Add private (d) clause to
  11028. !$omp parallel.
  11029. 2013-11-07 Thomas Schwinge <thomas@codesourcery.com>
  11030. * testsuite/lib/libgomp.exp (libgomp_init): Don't add -fopenmp to
  11031. ALWAYS_CFLAGS.
  11032. * testsuite/libgomp.c++/c++.exp (ALWAYS_CFLAGS): Add -fopenmp.
  11033. * testsuite/libgomp.c/c.exp (ALWAYS_CFLAGS): Likewise.
  11034. * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
  11035. * testsuite/libgomp.graphite/graphite.exp (ALWAYS_CFLAGS):
  11036. Likewise.
  11037. * libgomp_g.h: Include <stddef.h> for size_t.
  11038. * libgomp.spec.in: Update comment about libgomp's dependencies.
  11039. * configure.ac: Likewise.
  11040. * configure: Regenerate.
  11041. 2013-10-16 Tobias Burnus <burnus@net-b.de>
  11042. * libgomp.texi: (Runtime Library Routines): Update references for
  11043. OpenMP 4.0. Add omp_get_cancellation, omp_get_default_device,
  11044. omp_get_num_devices, omp_get_num_teams, omp_get_proc_bind,
  11045. omp_get_team_num, omp_is_initial_device, omp_set_default_device.
  11046. (Environment Variables): Update references for OpenMP 4.0. Add
  11047. OMP_CANCELLATION, OMP_DEFAULT_DEVICE, OMP_PLACES.
  11048. Move OMP_DISPLAY_ENV and OMP_PROC_BIND up to be in alphabetical
  11049. order.
  11050. 2013-10-14 Jakub Jelinek <jakub@redhat.com>
  11051. * env.c (parse_bind_var): Initialize value to avoid
  11052. (false positive) warning.
  11053. 2013-10-12 Jakub Jelinek <jakub@redhat.com>
  11054. PR libgomp/58691
  11055. * config/linux/proc.c (gomp_cpuset_popcount): Add unused attribute
  11056. to check variable.
  11057. (gomp_init_num_threads): Move i variable declaration into
  11058. #ifdef CPU_ALLOC_SIZE block.
  11059. * config/linux/affinity.c (gomp_affinity_init_level): Test
  11060. gomp_places_list_len == 0 rather than gomp_places_list == 0
  11061. when checking for topology reading error.
  11062. * team.c (gomp_team_start): Don't handle bind == omp_proc_bind_false.
  11063. * env.c (parse_affinity): Add ignore argument, if true, don't populate
  11064. gomp_places_list, only parse env var and always return false.
  11065. (parse_places_var): Likewise. Don't check gomp_global_icv.bind_var.
  11066. (initialize_env): Always parse OMP_PLACES and GOMP_CPU_AFFINITY env
  11067. vars, default to OMP_PROC_BIND=true if OMP_PROC_BIND wasn't specified
  11068. and either of these variables were parsed correctly into a places
  11069. list.
  11070. 2013-10-11 Thomas Schwinge <thomas@codesourcery.com>
  11071. Jakub Jelinek <jakub@redhat.com>
  11072. * testsuite/libgomp.graphite/force-parallel-1.c: Expect 4 instead
  11073. of 5 loopfn matches.
  11074. * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
  11075. * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
  11076. * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
  11077. * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
  11078. * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
  11079. * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
  11080. * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
  11081. * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
  11082. 2013-10-11 Thomas Schwinge <thomas@codesourcery.com>
  11083. * Makefile.am (omp_lib.mod): Streamline rule.
  11084. * Makefile.in: Regenerate.
  11085. * libgomp.texi (Runtime Library Routines): C linkage, don't throw
  11086. exceptions.
  11087. * testsuite/libgomp.c/lib-1.c (main): Add missing error check.
  11088. * testsuite/libgomp.fortran/lib1.f90: Likewise.
  11089. * testsuite/libgomp.fortran/lib2.f: Likewise.
  11090. * testsuite/libgomp.fortran/lib3.f: Likewise.
  11091. * configure.ac: Typo fix.
  11092. * configure: Regenerate.
  11093. * testsuite/libgomp.fortran/openmp_version-1.f: New file.
  11094. * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
  11095. * omp.h.in: Don't touch the user's namespace.
  11096. 2013-10-11 Jakub Jelinek <jakub@redhat.com>
  11097. Tobias Burnus <burnus@net-b.de>
  11098. Richard Henderson <rth@redhat.com>
  11099. * target.c: New file.
  11100. * Makefile.am (libgomp_la_SOURCES): Add target.c.
  11101. * Makefile.in: Regenerated.
  11102. * libgomp_g.h (GOMP_task): Add depend argument.
  11103. (GOMP_barrier_cancel, GOMP_loop_end_cancel,
  11104. GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
  11105. GOMP_target_end_data, GOMP_target_update, GOMP_teams,
  11106. GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
  11107. GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
  11108. GOMP_parallel, GOMP_cancel, GOMP_cancellation_point,
  11109. GOMP_taskgroup_start, GOMP_taskgroup_end,
  11110. GOMP_parallel_sections): New prototypes.
  11111. * fortran.c (omp_is_initial_device): Add ialias_redirect.
  11112. (omp_is_initial_device_): New function.
  11113. (ULP, STR1, STR2, ialias_redirect): Removed.
  11114. (omp_get_cancellation_, omp_get_proc_bind_, omp_set_default_device_,
  11115. omp_set_default_device_8_, omp_get_default_device_,
  11116. omp_get_num_devices_, omp_get_num_teams_, omp_get_team_num_): New
  11117. functions.
  11118. * libgomp.map (GOMP_barrier_cancel, GOMP_loop_end_cancel,
  11119. GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
  11120. GOMP_target_end_data, GOMP_target_update, GOMP_teams): Export
  11121. @@GOMP_4.0.
  11122. (omp_is_initial_device, omp_is_initial_device_, omp_get_cancellation,
  11123. omp_get_cancellation_, omp_get_proc_bind, omp_get_proc_bind_,
  11124. omp_set_default_device, omp_set_default_device_,
  11125. omp_set_default_device_8_, omp_get_default_device,
  11126. omp_get_default_device_, omp_get_num_devices, omp_get_num_devices_,
  11127. omp_get_num_teams, omp_get_num_teams_, omp_get_team_num,
  11128. omp_get_team_num_): Export @@OMP_4.0.
  11129. * team.c (struct gomp_thread_start_data): Add place field.
  11130. (gomp_thread_start): Clear thr->thread_pool and
  11131. thr->task before returning. Use gomp_team_barrier_wait_final
  11132. instead of gomp_team_barrier_wait. Initialize thr->place.
  11133. (gomp_new_team): Initialize work_shares_to_free, work_share_cancelled,
  11134. team_cancelled and task_queued_count fields.
  11135. (gomp_free_pool_helper): Clear thr->thread_pool and thr->task
  11136. before calling pthread_exit.
  11137. (gomp_free_thread): No longer static. Use
  11138. gomp_managed_threads_lock instead of gomp_remaining_threads_lock.
  11139. (gomp_team_start): Add flags argument. Set
  11140. thr->thread_pool->threads_busy to nthreads immediately after creating
  11141. new pool. Use gomp_managed_threads_lock instead of
  11142. gomp_remaining_threads_lock. Handle OpenMP 4.0 affinity.
  11143. (gomp_team_end): Use gomp_managed_threads_lock instead of
  11144. gomp_remaining_threads_lock. Use gomp_team_barrier_wait_final instead
  11145. of gomp_team_barrier_wait. If team->team_cancelled, call
  11146. gomp_fini_workshare on ws chain starting at team->work_shares_to_free
  11147. rather than thr->ts.work_share.
  11148. (initialize_team): Don't call gomp_sem_init here.
  11149. * sections.c (GOMP_parallel_sections_start): Adjust gomp_team_start
  11150. caller.
  11151. (GOMP_parallel_sections, GOMP_sections_end_cancel): New functions.
  11152. * env.c (gomp_global_icv): Add default_device_var, target_data and
  11153. bind_var initializers.
  11154. (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
  11155. (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
  11156. gomp_places_list_len): New variables.
  11157. (parse_bind_var, parse_one_place, parse_places_var): New functions.
  11158. (parse_affinity): Rewritten to construct OMP_PLACES list with unit
  11159. sized places.
  11160. (gomp_cancel_var): New global variable.
  11161. (parse_int): New function.
  11162. (handle_omp_display_env): New function.
  11163. (initialize_env): Use it. Initialize default_device_var.
  11164. Parse OMP_CANCELLATION env var. Use parse_bind_var to parse
  11165. OMP_PROC_BIND instead of parse_boolean. Use parse_places_var for
  11166. OMP_PLACES parsing. Don't call parse_affinity if OMP_PLACES has
  11167. been successfully parsed (and call gomp_init_affinity in that case).
  11168. (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
  11169. omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
  11170. omp_get_team_num, omp_is_initial_device): New functions.
  11171. * libgomp.h: Include stdlib.h.
  11172. (ialias_ulp, ialias_str1, ialias_str2, ialias_redirect, ialias_call):
  11173. Define.
  11174. (struct target_mem_desc): Forward declare.
  11175. (struct gomp_task_icv): Add default_device_var, target_data, bind_var
  11176. and thread_limit_var fields.
  11177. (gomp_get_num_devices): New prototype.
  11178. (gomp_cancel_var): New extern decl.
  11179. (struct gomp_team): Add work_shares_to_free, work_share_cancelled,
  11180. team_cancelled and task_queued_count fields. Add comments about
  11181. task_{,queued_,running_}count.
  11182. (gomp_cancel_kind): New enum.
  11183. (gomp_work_share_end_cancel): New prototype.
  11184. (struct gomp_task): Add next_taskgroup, prev_taskgroup, taskgroup,
  11185. copy_ctors_done, dependers, depend_hash, depend_count, num_dependees
  11186. and depend fields.
  11187. (struct gomp_taskgroup): New type.
  11188. (struct gomp_task_depend_entry,
  11189. struct gomp_dependers_vec): New types.
  11190. (gomp_finish_task): Free depend_hash if non-NULL.
  11191. (struct gomp_team_state): Add place_partition_off
  11192. and place_partition_len fields.
  11193. (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
  11194. gomp_places_list_len): New extern decls.
  11195. (struct gomp_thread): Add place field.
  11196. (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
  11197. (gomp_init_thread_affinity): Add place argument.
  11198. (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
  11199. gomp_affinity_remove_cpu, gomp_affinity_copy_place,
  11200. gomp_affinity_same_place, gomp_affinity_finalize_place_list,
  11201. gomp_affinity_init_level, gomp_affinity_print_place): New
  11202. prototypes.
  11203. (gomp_team_start): Add flags argument.
  11204. (gomp_thread_limit_var, gomp_remaining_threads_count,
  11205. gomp_remaining_threads_lock): Remove.
  11206. (gomp_managed_threads_lock): New variable.
  11207. (struct gomp_thread_pool): Add threads_busy field.
  11208. (gomp_free_thread): New prototype.
  11209. * task.c: Include hashtab.h.
  11210. (hash_entry_type): New typedef.
  11211. (htab_alloc, htab_free, htab_hash, htab_eq): New inlines.
  11212. (gomp_init_task): Clear dependers, depend_hash, depend_count,
  11213. copy_ctors_done and taskgroup fields.
  11214. (GOMP_task): Add depend argument, handle depend clauses. If
  11215. gomp_team_barrier_cancelled or if it's taskgroup has been
  11216. cancelled, don't queue or start new tasks. Set copy_ctors_done
  11217. field if needed. Initialize taskgroup field. If copy_ctors_done
  11218. and already cancelled, don't discard the task. If taskgroup is
  11219. non-NULL, enqueue the task into taskgroup queue. Increment
  11220. num_children field in taskgroup. Increment task_queued_count.
  11221. (gomp_task_run_pre, gomp_task_run_post_remove_parent,
  11222. gomp_task_run_post_remove_taskgroup): New inline functions.
  11223. (gomp_task_run_post_handle_depend_hash,
  11224. gomp_task_run_post_handle_dependers,
  11225. gomp_task_run_post_handle_depend): New functions.
  11226. (GOMP_taskwait): Use them. If more than one new tasks
  11227. have been queued, wake other threads if needed.
  11228. (gomp_barrier_handle_tasks): Likewise. If
  11229. gomp_team_barrier_cancelled, don't start any new tasks, just free
  11230. all tasks.
  11231. (GOMP_taskgroup_start, GOMP_taskgroup_end): New functions.
  11232. * omp_lib.f90.in
  11233. (omp_proc_bind_kind, omp_proc_bind_false,
  11234. omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
  11235. omp_proc_bind_spread): New params.
  11236. (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
  11237. omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
  11238. omp_get_team_num, omp_is_initial_device): New interfaces.
  11239. (omp_get_dynamic, omp_get_nested, omp_in_parallel,
  11240. omp_get_max_threads, omp_get_num_procs, omp_get_num_threads,
  11241. omp_get_thread_num, omp_get_thread_limit, omp_set_max_active_levels,
  11242. omp_get_max_active_levels, omp_get_level, omp_get_ancestor_thread_num,
  11243. omp_get_team_size, omp_get_active_level, omp_in_final): Remove
  11244. useless use omp_lib_kinds.
  11245. * omp.h.in (omp_proc_bind_t): New typedef.
  11246. (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
  11247. omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
  11248. omp_get_team_num, omp_is_initial_device): New prototypes.
  11249. * loop.c (gomp_parallel_loop_start): Add flags argument, pass it
  11250. through to gomp_team_start.
  11251. (GOMP_parallel_loop_static_start, GOMP_parallel_loop_dynamic_start,
  11252. GOMP_parallel_loop_guided_start, GOMP_parallel_loop_runtime_start):
  11253. Adjust gomp_parallel_loop_start callers.
  11254. (GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
  11255. GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
  11256. GOMP_loop_end_cancel): New functions.
  11257. (GOMP_parallel_end): Add ialias_redirect.
  11258. * hashtab.h: New file.
  11259. * libgomp.texi (Environment Variables): Minor cleanup,
  11260. update section refs to OpenMP 4.0rc2.
  11261. (OMP_DISPLAY_ENV, GOMP_SPINCOUNT): Document these
  11262. environment variables.
  11263. * work.c (gomp_work_share_end, gomp_work_share_end_nowait): Set
  11264. team->work_shares_to_free to thr->ts.work_share before calling
  11265. free_work_share.
  11266. (gomp_work_share_end_cancel): New function.
  11267. * config/linux/proc.c: Include errno.h.
  11268. (gomp_get_cpuset_size, gomp_cpuset_size, gomp_cpusetp): New variables.
  11269. (gomp_cpuset_popcount): Add cpusetsize argument, use it instead of
  11270. sizeof (cpu_set_t) to determine number of iterations. Fix up check
  11271. extern decl. Use CPU_COUNT_S if available, or CPU_COUNT if
  11272. gomp_cpuset_size is sizeof (cpu_set_t).
  11273. (gomp_init_num_threads): Initialize gomp_cpuset_size,
  11274. gomp_get_cpuset_size and gomp_cpusetp here, use gomp_cpusetp instead
  11275. of &cpuset and pass gomp_cpuset_size instead of sizeof (cpu_set_t)
  11276. to pthread_getaffinity_np. Free and clear gomp_cpusetp if it didn't
  11277. contain any logical CPUs.
  11278. (get_num_procs): Don't call pthread_getaffinity_np if gomp_cpusetp
  11279. is NULL. Use gomp_cpusetp instead of &cpuset and pass
  11280. gomp_get_cpuset_size instead of sizeof (cpu_set_t) to
  11281. pthread_getaffinity_np. Check gomp_places_list instead of
  11282. gomp_cpu_affinity. Adjust gomp_cpuset_popcount caller.
  11283. * config/linux/bar.c (gomp_barrier_wait_end,
  11284. gomp_barrier_wait_last): Use BAR_* defines.
  11285. (gomp_team_barrier_wait_end): Likewise. Clear BAR_CANCELLED
  11286. from state where needed. Set work_share_cancelled to 0 on last
  11287. thread.
  11288. (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel_end,
  11289. gomp_team_barrier_wait_cancel, gomp_team_barrier_cancel): New
  11290. functions.
  11291. * config/linux/proc.h (gomp_cpuset_popcount): Add attribute_hidden.
  11292. Add cpusetsize argument.
  11293. (gomp_cpuset_size, gomp_cpusetp): Declare.
  11294. * config/linux/affinity.c: Include errno.h, stdio.h and string.h.
  11295. (affinity_counter): Remove.
  11296. (CPU_ISSET_S, CPU_ZERO_S, CPU_SET_S, CPU_CLR_S): Define
  11297. if CPU_ALLOC_SIZE isn't defined.
  11298. (gomp_init_affinity): Rewritten, if gomp_places_list is NULL, try
  11299. silently create OMP_PLACES=threads, if it is non-NULL afterwards,
  11300. bind current thread to the first place.
  11301. (gomp_init_thread_affinity): Rewritten. Add place argument, just
  11302. pthread_setaffinity_np to gomp_places_list[place].
  11303. (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
  11304. gomp_affinity_remove_cpu, gomp_affinity_copy_place,
  11305. gomp_affinity_same_place, gomp_affinity_finalize_place_list,
  11306. gomp_affinity_init_level, gomp_affinity_print_place): New functions.
  11307. * config/linux/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
  11308. BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
  11309. (gomp_barrier_t): Add awaited_final field.
  11310. (gomp_barrier_init): Initialize awaited_final field.
  11311. (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel,
  11312. gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): New
  11313. prototypes.
  11314. (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit. Use BAR_*
  11315. defines.
  11316. (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final_start,
  11317. gomp_team_barrier_cancelled): New inline functions.
  11318. (gomp_barrier_last_thread,
  11319. gomp_team_barrier_set_task_pending,
  11320. gomp_team_barrier_clear_task_pending,
  11321. gomp_team_barrier_set_waiting_for_tasks,
  11322. gomp_team_barrier_waiting_for_tasks,
  11323. gomp_team_barrier_done): Use BAR_* defines.
  11324. * config/posix/bar.c (gomp_barrier_init): Clear cancellable field.
  11325. (gomp_barrier_wait_end): Use BAR_* defines.
  11326. (gomp_team_barrier_wait_end): Clear BAR_CANCELLED from state.
  11327. Set work_share_cancelled to 0 on last thread, use __atomic_load_n.
  11328. Use BAR_* defines.
  11329. (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_wait_cancel,
  11330. gomp_team_barrier_cancel): New functions.
  11331. * config/posix/affinity.c (gomp_init_thread_affinity): Add place
  11332. argument.
  11333. (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
  11334. gomp_affinity_remove_cpu, gomp_affinity_copy_place,
  11335. gomp_affinity_same_place, gomp_affinity_finalize_place_list,
  11336. gomp_affinity_init_level, gomp_affinity_print_place): New stubs.
  11337. * config/posix/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
  11338. BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
  11339. (gomp_barrier_t): Add cancellable field.
  11340. (gomp_team_barrier_wait_cancel, gomp_team_barrier_wait_cancel_end,
  11341. gomp_team_barrier_cancel): New prototypes.
  11342. (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit.
  11343. (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final,
  11344. gomp_team_barrier_cancelled): New inline functions.
  11345. (gomp_barrier_wait_start, gomp_barrier_last_thread,
  11346. gomp_team_barrier_set_task_pending,
  11347. gomp_team_barrier_clear_task_pending,
  11348. gomp_team_barrier_set_waiting_for_tasks,
  11349. gomp_team_barrier_waiting_for_tasks,
  11350. gomp_team_barrier_done): Use BAR_* defines.
  11351. * barrier.c (GOMP_barrier_cancel): New function.
  11352. * omp_lib.h.in (omp_proc_bind_kind, omp_proc_bind_false,
  11353. omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
  11354. omp_proc_bind_spread): New params.
  11355. (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
  11356. omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
  11357. omp_get_team_num, omp_is_initial_device): New externals.
  11358. * parallel.c (GOMP_parallel, GOMP_cancel, GOMP_cancellation_point):
  11359. New functions.
  11360. (gomp_resolve_num_threads): Adjust for thread_limit now being in
  11361. icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
  11362. infinity. If not nested, just return minimum of max_num_threads
  11363. and icv->thread_limit_var and if thr->thread_pool, set threads_busy
  11364. to the returned value. Otherwise, don't update atomically
  11365. gomp_remaining_threads_count, but instead thr->thread_pool->threads_busy.
  11366. (GOMP_parallel_end): Adjust for thread_limit now being in
  11367. icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
  11368. infinity. Adjust threads_busy in the pool rather than
  11369. gomp_remaining_threads_count. Remember team->nthreads and call
  11370. gomp_team_end before adjusting threads_busy, if not nested
  11371. afterwards, just set it to 1 non-atomically. Add ialias.
  11372. (GOMP_parallel_start): Adjust gomp_team_start caller.
  11373. * testsuite/libgomp.c/atomic-14.c: Add parens to make it valid.
  11374. * testsuite/libgomp.c/affinity-1.c: New test.
  11375. * testsuite/libgomp.c/atomic-15.c: New test.
  11376. * testsuite/libgomp.c/atomic-16.c: New test.
  11377. * testsuite/libgomp.c/atomic-17.c: New test.
  11378. * testsuite/libgomp.c/cancel-for-1.c: New test.
  11379. * testsuite/libgomp.c/cancel-for-2.c: New test.
  11380. * testsuite/libgomp.c/cancel-parallel-1.c: New test.
  11381. * testsuite/libgomp.c/cancel-parallel-2.c: New test.
  11382. * testsuite/libgomp.c/cancel-parallel-3.c: New test.
  11383. * testsuite/libgomp.c/cancel-sections-1.c: New test.
  11384. * testsuite/libgomp.c/cancel-taskgroup-1.c: New test.
  11385. * testsuite/libgomp.c/cancel-taskgroup-2.c: New test.
  11386. * testsuite/libgomp.c/depend-1.c: New test.
  11387. * testsuite/libgomp.c/depend-2.c: New test.
  11388. * testsuite/libgomp.c/depend-3.c: New test.
  11389. * testsuite/libgomp.c/depend-4.c: New test.
  11390. * testsuite/libgomp.c/for-1.c: New test.
  11391. * testsuite/libgomp.c/for-1.h: New file.
  11392. * testsuite/libgomp.c/for-2.c: New test.
  11393. * testsuite/libgomp.c/for-2.h: New file.
  11394. * testsuite/libgomp.c/for-3.c: New test.
  11395. * testsuite/libgomp.c/pr58392.c: New test.
  11396. * testsuite/libgomp.c/simd-1.c: New test.
  11397. * testsuite/libgomp.c/simd-2.c: New test.
  11398. * testsuite/libgomp.c/simd-3.c: New test.
  11399. * testsuite/libgomp.c/simd-4.c: New test.
  11400. * testsuite/libgomp.c/simd-5.c: New test.
  11401. * testsuite/libgomp.c/simd-6.c: New test.
  11402. * testsuite/libgomp.c/target-1.c: New test.
  11403. * testsuite/libgomp.c/target-2.c: New test.
  11404. * testsuite/libgomp.c/target-3.c: New test.
  11405. * testsuite/libgomp.c/target-4.c: New test.
  11406. * testsuite/libgomp.c/target-5.c: New test.
  11407. * testsuite/libgomp.c/target-6.c: New test.
  11408. * testsuite/libgomp.c/target-7.c: New test.
  11409. * testsuite/libgomp.c/taskgroup-1.c: New test.
  11410. * testsuite/libgomp.c/thread-limit-1.c: New test.
  11411. * testsuite/libgomp.c/thread-limit-2.c: New test.
  11412. * testsuite/libgomp.c/thread-limit-3.c: New test.
  11413. * testsuite/libgomp.c/udr-1.c: New test.
  11414. * testsuite/libgomp.c/udr-2.c: New test.
  11415. * testsuite/libgomp.c/udr-3.c: New test.
  11416. * testsuite/libgomp.c++/affinity-1.C: New test.
  11417. * testsuite/libgomp.c++/atomic-10.C: New test.
  11418. * testsuite/libgomp.c++/atomic-11.C: New test.
  11419. * testsuite/libgomp.c++/atomic-12.C: New test.
  11420. * testsuite/libgomp.c++/atomic-13.C: New test.
  11421. * testsuite/libgomp.c++/atomic-14.C: New test.
  11422. * testsuite/libgomp.c++/atomic-15.C: New test.
  11423. * testsuite/libgomp.c++/cancel-for-1.C: New test.
  11424. * testsuite/libgomp.c++/cancel-for-2.C: New test.
  11425. * testsuite/libgomp.c++/cancel-parallel-1.C: New test.
  11426. * testsuite/libgomp.c++/cancel-parallel-2.C: New test.
  11427. * testsuite/libgomp.c++/cancel-parallel-3.C: New test.
  11428. * testsuite/libgomp.c++/cancel-sections-1.C: New test.
  11429. * testsuite/libgomp.c++/cancel-taskgroup-1.C: New test.
  11430. * testsuite/libgomp.c++/cancel-taskgroup-2.C: New test.
  11431. * testsuite/libgomp.c++/cancel-taskgroup-3.C: New test.
  11432. * testsuite/libgomp.c++/cancel-test.h: New file.
  11433. * testsuite/libgomp.c++/for-9.C: New test.
  11434. * testsuite/libgomp.c++/for-10.C: New test.
  11435. * testsuite/libgomp.c++/for-11.C: New test.
  11436. * testsuite/libgomp.c++/simd-1.C: New test.
  11437. * testsuite/libgomp.c++/simd-2.C: New test.
  11438. * testsuite/libgomp.c++/simd-3.C: New test.
  11439. * testsuite/libgomp.c++/simd-4.C: New test.
  11440. * testsuite/libgomp.c++/simd-5.C: New test.
  11441. * testsuite/libgomp.c++/simd-6.C: New test.
  11442. * testsuite/libgomp.c++/simd-7.C: New test.
  11443. * testsuite/libgomp.c++/simd-8.C: New test.
  11444. * testsuite/libgomp.c++/target-1.C: New test.
  11445. * testsuite/libgomp.c++/target-2.C: New test.
  11446. * testsuite/libgomp.c++/target-2-aux.cc: New file.
  11447. * testsuite/libgomp.c++/target-3.C: New test.
  11448. * testsuite/libgomp.c++/taskgroup-1.C: New test.
  11449. * testsuite/libgomp.c++/udr-1.C: New test.
  11450. * testsuite/libgomp.c++/udr-2.C: New test.
  11451. * testsuite/libgomp.c++/udr-3.C: New test.
  11452. * testsuite/libgomp.c++/udr-4.C: New test.
  11453. * testsuite/libgomp.c++/udr-5.C: New test.
  11454. * testsuite/libgomp.c++/udr-6.C: New test.
  11455. * testsuite/libgomp.c++/udr-7.C: New test.
  11456. * testsuite/libgomp.c++/udr-8.C: New test.
  11457. * testsuite/libgomp.c++/udr-9.C: New test.
  11458. 2013-09-20 Jakub Jelinek <jakub@redhat.com>
  11459. PR testsuite/57605
  11460. * testsuite/lib/libgomp.exp: Add -fdiagnostics-color=never to
  11461. ALWAYS_CFLAGS.
  11462. 2013-09-20 Alan Modra <amodra@gmail.com>
  11463. * configure: Regenerate.
  11464. 2013-09-19 Jakub Jelinek <jakub@redhat.com>
  11465. * testsuite/libgomp.c/sections-2.c: New test.
  11466. 2013-06-28 Marcus Shawcroft <marcus.shawcroft@arm.com>
  11467. * testsuite/libgomp.fortran/strassen.f90:
  11468. Add dg-skip-if aarch64_tiny.
  11469. 2013-06-20 Iain Sandoe <iain@codesourcery.com>
  11470. Cesar Philippidis <cesar@codesourcery.com>
  11471. * testsuite/lib/libgomp.exp: Reorder lib loads into dependency order.
  11472. Do not load_gcc_lib gcc-dg.exp and add a comment as to why.
  11473. * testsuite/libgomp.c/c.exp: load_gcc_lib gcc-dg.exp.
  11474. * testsuite/libgomp.fortran/fortran.exp: Likewise.
  11475. * testsuite/libgomp.graphite/graphite.exp: Likewise.
  11476. * testsuite/libgomp.c++/c++.exp: load_gcc_lib gcc-dg.exp.
  11477. Use dg-runtest rather than gfortran-dg-runtest.
  11478. 2013-06-10 Thomas Schwinge <thomas@codesourcery.com>
  11479. * testsuite/libgomp.c/icv-2.c: Extend current handling of
  11480. Linux-based x86 systems to cover all GNU systems.
  11481. * testsuite/libgomp.c/lock-3.c: Likewise.
  11482. * testsuite/libgomp.c/pr48591.c: Likewise.
  11483. 2013-06-06 Thomas Schwinge <thomas@codesourcery.com>
  11484. * configure.tgt (XCFLAGS): Add -ftls-model=initial-exec for
  11485. GNU/Hurd, as done for Linux-based systems.
  11486. * config/posix/ptrlock.h: Fix comment.
  11487. 2013-05-27 Tobias Burnus <burnus@net-b.de>
  11488. PR fortran/57423
  11489. * libgomp.texi (omp_set_dynamic, omp_set_nested, omp_set_nested,
  11490. omp_set_num_threads, omp_init_lock, omp_set_lock, omp_test_lock,
  11491. omp_unset_lock, omp_destroy_lock, omp_init_nest_lock,
  11492. omp_set_nest_lock, omp_test_nest_lock, omp_unset_nest_lock,
  11493. omp_destroy_nest_lock): Correct arguments to match the one in
  11494. the OpenMP spec.
  11495. * omp_lib.f90.in (omp_init_lock, omp_init_nest_lock, omp_destroy_lock
  11496. omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock, omp_unset_lock,
  11497. omp_unset_nest_lock, omp_set_dynamic, omp_set_nested,
  11498. omp_set_num_threads, omp_test_lock, omp_test_nest_lock): Ditto.
  11499. 2013-05-16 Jakub Jelinek <jakub@redhat.com>
  11500. * testsuite/libgomp.c/loop-13.c: New test.
  11501. * testsuite/libgomp.c/loop-14.c: New test.
  11502. * testsuite/libgomp.c/loop-15.c: New test.
  11503. * testsuite/libgomp.c++/loop-13.C: New test.
  11504. * testsuite/libgomp.c++/loop-14.C: New test.
  11505. * testsuite/libgomp.c++/loop-15.C: New test.
  11506. 2013-02-06 Jakub Jelinek <jakub@redhat.com>
  11507. PR middle-end/56217
  11508. * testsuite/libgomp.c++/pr56217.C: New test.
  11509. 2013-02-01 Alan Modra <amodra@gmail.com>
  11510. * task.c (GOMP_task, GOMP_taskwait): Comment.
  11511. 2013-01-31 Dmitry Vyukov <dvyukov@gcc.gnu.org>
  11512. Joost VandeVondele <Joost.VandeVondele@mat.ethz.ch>
  11513. PR libgomp/55561
  11514. * config/linux/wait.h (do_spin): Use atomic load for addr.
  11515. * config/linux/ptrlock.c (gomp_ptrlock_get_slow): Use atomic
  11516. for intptr and ptrlock.
  11517. * config/linux/ptrlock.h (gomp_ptrlock_get): Use atomic load
  11518. for ptrlock.
  11519. 2013-01-22 Alan Modra <amodra@gmail.com>
  11520. PR libgomp/51376
  11521. PR libgomp/56073
  11522. * task.c (GOMP_task): Revert 2011-12-09 change.
  11523. (GOMP_taskwait): Likewise. Instead use atomic load with acquire
  11524. barrier to read task->children..
  11525. (gomp_barrier_handle_tasks): ..and matching atomic store with
  11526. release barrier here when setting parent->children to NULL.
  11527. 2013-01-16 Jakub Jelinek <jakub@redhat.com>
  11528. Tobias Burnus <burnus@net-b.de>
  11529. PR driver/55884
  11530. * testsuite/libgomp.fortran/fortran.exp: Use
  11531. -fintrinsic-modules-path= instead of
  11532. -fintrinsic-modules-path.
  11533. 2013-01-14 Richard Sandiford <rdsandiford@googlemail.com>
  11534. Update copyright years.
  11535. 2012-12-19 Tobias Burnus <burnus@net-b.de>
  11536. * testsuite/libgomp.fortran/fortran.exp: Set
  11537. -fintrinsic-modules-path.
  11538. 2012-12-19 Tobias Burnus <burnus@net-b.de>
  11539. * testsuite/libgomp.fortran/use_intrinsic_1.f90: New; moved
  11540. from gcc/testsuite/gfortran.dg/gomp/use_intrinsic_1.f90.
  11541. 2012-11-21 Jakub Jelinek <jakub@redhat.com>
  11542. PR libgomp/55411
  11543. * team.c (gomp_free_thread): Decrease gomp_managed_threads
  11544. if pool had any threads_used.
  11545. 2012-11-07 Jack Howarth <howarth@bromo.med.uc.edu>
  11546. * testsuite/libgomp.c++/pr24455.C: Use
  11547. -Wl,-undefined,dynamic_lookup on darwin.
  11548. 2012-11-07 David Edelsohn <dje.gcc@gmail.com>
  11549. * testsuite/libgomp.c++/pr24455.C: Use -Wl,-G on AIX.
  11550. 2012-10-24 Dominique d'Humieres <dominiq@lps.ens.fr>
  11551. * testsuite/libgomp.graphite/force-parallel-6.c: Adjust the loops.
  11552. 2012-10-23 Ian Bolton <ian.bolton@arm.com>
  11553. Jim MacArthur <jim.macarthur@arm.com>
  11554. Marcus Shawcroft <marcus.shawcroft@arm.com>
  11555. Nigel Stephens <nigel.stephens@arm.com>
  11556. Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
  11557. Richard Earnshaw <rearnsha@arm.com>
  11558. Sofiane Naci <sofiane.naci@arm.com>
  11559. Stephen Thomas <stephen.thomas@arm.com>
  11560. Tejas Belagod <tejas.belagod@arm.com>
  11561. Yufeng Zhang <yufeng.zhang@arm.com>
  11562. * configure.tgt: Add AArch64.
  11563. 2012-10-04 Jason Merrill <jason@redhat.com>
  11564. * testsuite/libgomp.c++/tls-init1.C: New.
  11565. 2012-09-14 David Edelsohn <dje.gcc@gmail.com>
  11566. * configure: Regenerated.
  11567. 2012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
  11568. * config/linux/mips/futex.h (sys_futex0): Change to static
  11569. function with noinline, nomips16 attributes under MIPS16. Adjust
  11570. asm statement to place 'li v0,SYS_futex' immediately before
  11571. syscall insn.
  11572. 2012-07-04 Sandra Loosemore <sandra@codesourcery.com>
  11573. * libgomp.texi (Library Index): Renamed from "Index" to prevent
  11574. conflict with index.html on case-insensitive file systems.
  11575. 2012-07-03 Uros Bizjak <ubizjak@gmail.com>
  11576. * config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
  11577. * testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.
  11578. 2012-07-02 Richard Guenther <rguenther@suse.de>
  11579. Michael Matz <matz@suse.de>
  11580. Tobias Grosser <tobias@grosser.es>
  11581. Sebastian Pop <sebpop@gmail.com>
  11582. * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
  11583. * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
  11584. * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
  11585. * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
  11586. 2012-06-28 Andreas Schwab <schwab@linux-m68k.org>
  11587. * libgomp.texi: Include gpl_v3.texi instead of gpl.texi.
  11588. 2012-06-22 Richard Guenther <rguenther@suse.de>
  11589. Merge from graphite branch
  11590. 2012-01-13 Tobias Grosser <tobias@grosser.es>
  11591. * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
  11592. * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
  11593. 2012-06-07 Jakub Jelinek <jakub@redhat.com>
  11594. PR middle-end/53580
  11595. * testsuite/libgomp.c/pr26943-2.c: Remove #pragma omp barrier,
  11596. use GOMP_barrier () call instead.
  11597. * testsuite/libgomp.c/pr26943-3.c: Likewise.
  11598. * testsuite/libgomp.c/pr26943-4.c: Likewise.
  11599. * testsuite/libgomp.fortran/vla4.f90: Remove !$omp barrier,
  11600. call GOMP_barrier instead.
  11601. * testsuite/libgomp.fortran/vla5.f90: Likewise.
  11602. 2012-06-06 Jakub Jelinek <jakub@redhat.com>
  11603. PR libgomp/52993
  11604. * config/linux/lock.c (gomp_init_nest_lock_25): Fix up last
  11605. argument to memset call.
  11606. 2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
  11607. * configure: Regenerated.
  11608. 2012-04-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
  11609. * testsuite/lib/libgomp.exp: Add -fno-diagnostics-show-caret.
  11610. 2012-03-31 H.J. Lu <hongjiu.lu@intel.com>
  11611. PR bootstrap/52812
  11612. * configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.
  11613. 2012-03-22 Jakub Jelinek <jakub@redhat.com>
  11614. PR middle-end/52547
  11615. * testsuite/libgomp.c/pr52547.c: New test.
  11616. 2012-03-16 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
  11617. * testsuite/lib/libgomp.exp: load fortran-modules.exp
  11618. 2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11619. * configure.tgt (mips-sgi-irix6*): Remove.
  11620. 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11621. * configure.tgt (alpha*-dec-osf*): Remove.
  11622. * config/osf/sem.h: Remove.
  11623. * config/posix/lock.c (_XOPEN_SOURCE): Define unconditionally.
  11624. 2012-02-29 Eric Botcazou <ebotcazou@adacore.com>
  11625. * config/linux/sparc/futex.h (cpu_relax): Read from CC register.
  11626. 2012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11627. PR libstdc++/52188
  11628. * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Remove symvers_renaming.
  11629. Remove ENABLE_SYMVERS_SOL2.
  11630. * configure: Regenerate.
  11631. * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB] (comma): New variable.
  11632. (PREPROCESS): New variable.
  11633. (libgomp.ver): New target.
  11634. [LIBGOMP_BUILD_VERSIONED_SHLIB &&
  11635. LIBGOMP_BUILD_VERSIONED_SHLIB_GNU]: Remove
  11636. LIBGOMP_BUILD_VERSIONED_SHLIB_SOL2 handling.
  11637. Use libgomp.ver.
  11638. [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Use libgomp.ver, libgomp.ver-sun.
  11639. * Makefile.in: Regenerate.
  11640. 2012-02-14 Walter Lee <walt@tilera.com>
  11641. * configure.tgt: Handle tilegx and tilepro.
  11642. * config/linux/tile/futex.h: New file.
  11643. 2012-02-08 Richard Guenther <rguenther@suse.de>
  11644. PR tree-optimization/46886
  11645. * testsuite/libgomp.c/pr46886.c: New testcase.
  11646. 2012-01-25 Matthias Klose <doko@ubuntu.com>
  11647. * config/linux/arm: Remove empty directory.
  11648. * configure.tgt (config_path): Remove linux-arm for arm*-*-linux*.
  11649. 2011-12-09 Alan Modra <amodra@gmail.com>
  11650. PR libgomp/51376
  11651. * task.c (GOMP_taskwait): Don't access task->children outside of
  11652. task_lock mutex region.
  11653. (GOMP_task): Likewise.
  11654. 2011-12-06 Jakub Jelinek <jakub@redhat.com>
  11655. PR libgomp/51132
  11656. * testsuite/libgomp.graphite/force-parallel-1.c: Move large arrays
  11657. to file scope.
  11658. * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
  11659. * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
  11660. * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
  11661. * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
  11662. * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
  11663. 2011-12-02 Alan Modra <amodra@gmail.com>
  11664. * config/linux/affinity.c: Use atomic rather than sync builtin.
  11665. * config/linux/lock.c: Likewise.
  11666. * config/linux/ptrlock.h: Likewise.
  11667. * config/linux/ptrlock.c: Likewise.
  11668. * config/linux/ptrlock.h (gomp_ptrlock_set): Always write here..
  11669. * config/linux/ptrlock.c (gomp_ptrlock_set_slow): ..not here.
  11670. * config/linux/futex.h (atomic_write_barrier): Delete unused function.
  11671. * config/linux/alpha/futex.h (atomic_write_barrier): Likewise.
  11672. * config/linux/ia64/futex.h (atomic_write_barrier): Likewise.
  11673. * config/linux/mips/futex.h (atomic_write_barrier): Likewise.
  11674. * config/linux/powerpc/futex.h (atomic_write_barrier): Likewise.
  11675. * config/linux/s390/futex.h (atomic_write_barrier): Likewise.
  11676. * config/linux/sparc/futex.h (atomic_write_barrier): Likewise.
  11677. * config/linux/x86/futex.h (atomic_write_barrier): Likewise.
  11678. 2011-11-30 Alan Modra <amodra@gmail.com>
  11679. PR libgomp/51298
  11680. * config/linux/bar.h: Use atomic rather than sync builtins.
  11681. * config/linux/bar.c: Likewise. Add missing acquire
  11682. synchronisation on generation field.
  11683. * task.c (gomp_barrier_handle_tasks): Regain lock so as to not
  11684. double unlock.
  11685. 2011-11-30 Alan Modra <amodra@gmail.com>
  11686. * ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
  11687. * critical.c (GOMP_critical_start): Add MEMMODEL_RELEASE fence.
  11688. * config/linux/mutex.h: Use atomic rather than sync builtins.
  11689. * config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state.
  11690. * config/linux/omp-lock.h: Comment fix.
  11691. * config/linux/arm/mutex.h: Delete.
  11692. * config/linux/powerpc/mutex.h: Delete.
  11693. * config/linux/ia64/mutex.h: Delete.
  11694. * config/linux/mips/mutex.h: Delete.
  11695. 2011-11-30 Alan Modra <amodra@gmail.com>
  11696. PR libgomp/51249
  11697. * config/linux/sem.h: Rewrite.
  11698. * config/linux/sem.c: Rewrite.
  11699. 2011-11-28 Richard Henderson <rth@redhat.com>
  11700. * libgomp.h (enum memmodel): New.
  11701. 2011-11-21 Andreas Tobler <andreast@fgznet.ch>
  11702. * configure: Regenerate.
  11703. 2011-10-10 Matthias Klose <doko@ubuntu.com>
  11704. * config/posix95: Remove empty directory.
  11705. 2011-08-26 Jakub Jelinek <jakub@redhat.com>
  11706. * testsuite/libgomp.fortran/threadprivate4.f90: New test.
  11707. 2011-08-19 Jakub Jelinek <jakub@redhat.com>
  11708. PR fortran/49792
  11709. * testsuite/libgomp.fortran/pr49792-1.f90: New test.
  11710. * testsuite/libgomp.fortran/pr49792-2.f90: New test.
  11711. 2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11712. * config/posix95/lock.c, posix95/omp-lock.h: Remove.
  11713. 2011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11714. PR libgomp/49965
  11715. * testsuite/libgomp.c++/task-8.C: Replaced err by errval.
  11716. 2011-08-03 Uros Bizjak <ubizjak@gmail.com>
  11717. * config/linux/proc.h: New.
  11718. * config/linux/proc.c: Include "proc.h". Do not include <sched.h>.
  11719. (gomp_cpuset_popcount): Rename from cpuset_popcount. No more static.
  11720. (gomp_init_num_threads): Update call to cpuset_popcount.
  11721. (get_num_procs): Ditto.
  11722. * config/linux/affinity.c (gomp_init_affinity): Call
  11723. gomp_cpuset_popcount.
  11724. 2011-08-02 Jakub Jelinek <jakub@redhat.com>
  11725. PR fortran/42041
  11726. PR fortran/46752
  11727. * omp.h.in (omp_in_final): New prototype.
  11728. * omp_lib.f90.in (omp_in_final): New interface.
  11729. (omp_integer_kind, omp_logical_kind): Remove
  11730. and replace all its uses in the module with 4.
  11731. (openmp_version): Change to 201107.
  11732. * omp_lib.h.in (omp_sched_static, omp_sched_dynamic,
  11733. omp_sched_guided, omp_sched_auto): Use omp_sched_kind
  11734. kind for the parameters.
  11735. (omp_in_final): New external.
  11736. (openmp_version): Change to 201107.
  11737. * task.c (omp_in_final): New function.
  11738. (gomp_init_task): Initialize final_task.
  11739. (GOMP_task): Remove unused attribute from flags. Handle final
  11740. tasks.
  11741. (GOMP_taskyield): New function.
  11742. (omp_in_final): Return true if if (false) or final (true) task
  11743. or descendant of final (true).
  11744. * fortran.c (omp_in_final_): New function.
  11745. * libgomp.map (OMP_3.1): Export omp_in_final and omp_in_final_.
  11746. (GOMP_3.0): Export GOMP_taskyield.
  11747. * env.c (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New
  11748. variables.
  11749. (parse_unsigned_long_list): New function.
  11750. (initialize_env): Use it for OMP_NUM_THREADS. Call parse_boolean
  11751. with "OMP_PROC_BIND". If OMP_PROC_BIND=true, call gomp_init_affinity
  11752. even if parse_affinity returned false.
  11753. * config/linux/affinity.c (gomp_init_affinity): Handle
  11754. gomp_cpu_affinity_len == 0.
  11755. * libgomp_g.h (GOMP_taskyield): New prototype.
  11756. * libgomp.h (struct gomp_task): Add final_task field.
  11757. (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New externs.
  11758. * team.c (gomp_team_start): Override new task's nthreads_var icv
  11759. if list form OMP_NUM_THREADS has been used and it has value for
  11760. the new nesting level.
  11761. * testsuite/libgomp.c/atomic-11.c: New test.
  11762. * testsuite/libgomp.c/atomic-12.c: New test.
  11763. * testsuite/libgomp.c/atomic-13.c: New test.
  11764. * testsuite/libgomp.c/atomic-14.c: New test.
  11765. * testsuite/libgomp.c/reduction-6.c: New test.
  11766. * testsuite/libgomp.c/task-5.c: New test.
  11767. * testsuite/libgomp.c++/atomic-2.C: New test.
  11768. * testsuite/libgomp.c++/atomic-3.C: New test.
  11769. * testsuite/libgomp.c++/atomic-4.C: New test.
  11770. * testsuite/libgomp.c++/atomic-5.C: New test.
  11771. * testsuite/libgomp.c++/atomic-6.C: New test.
  11772. * testsuite/libgomp.c++/atomic-7.C: New test.
  11773. * testsuite/libgomp.c++/atomic-8.C: New test.
  11774. * testsuite/libgomp.c++/atomic-9.C: New test.
  11775. * testsuite/libgomp.c++/task-8.C: New test.
  11776. * testsuite/libgomp.c++/reduction-4.C: New test.
  11777. * testsuite/libgomp.fortran/allocatable7.f90: New test.
  11778. * testsuite/libgomp.fortran/allocatable8.f90: New test.
  11779. * testsuite/libgomp.fortran/crayptr3.f90: New test.
  11780. * testsuite/libgomp.fortran/omp_atomic3.f90: New test.
  11781. * testsuite/libgomp.fortran/omp_atomic4.f90: New test.
  11782. * testsuite/libgomp.fortran/pointer1.f90: New test.
  11783. * testsuite/libgomp.fortran/pointer2.f90: New test.
  11784. * testsuite/libgomp.fortran/task4.f90: New test.
  11785. 2011-08-02 Tobias Burnus <burnus@net-b.de>
  11786. * libgomp.texi: Update OpenMP spec references to 3.1.
  11787. (omp_in_final,OMP_PROC_BIND): New sections.
  11788. (OMP_NUM_THREADS): Document that the value can be now a list.
  11789. (GOMP_STACKSIZE,GOMP_CPU_AFFINITY): Update @ref.
  11790. 2011-08-02 H.J. Lu <hongjiu.lu@intel.com>
  11791. * config/linux/x86/futex.h: Check __x86_64__ instead of
  11792. __LP64__.
  11793. 2011-07-29 Jakub Jelinek <jakub@redhat.com>
  11794. PR middle-end/49897
  11795. PR middle-end/49898
  11796. * testsuite/libgomp.c/pr49897-1.c: New test.
  11797. * testsuite/libgomp.c/pr49897-2.c: New test.
  11798. * testsuite/libgomp.c/pr49898-1.c: New test.
  11799. * testsuite/libgomp.c/pr49898-2.c: New test.
  11800. 2011-07-28 H.J. Lu <hongjiu.lu@intel.com>
  11801. * testsuite/lib/libgomp.exp (libgomp_init): Add -march=i486
  11802. for ia32 instead of ilp32.
  11803. * testsuite/libgomp.c/atomic-1.c: Require ia32 instead of ilp32.
  11804. * testsuite/libgomp.c/atomic-6.c: Likewise.
  11805. 2011-07-23 Sebastian Pop <sebastian.pop@amd.com>
  11806. * testsuite/libgomp.graphite/force-parallel-1.c: Un-xfail.
  11807. * testsuite/libgomp.graphite/force-parallel-2.c: Adjust pattern.
  11808. 2011-07-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11809. PR libgomp/45351
  11810. * config/osf/sem.h: New file.
  11811. * configure.tgt (alpha*-dec-osf*): Prepend osf to config_path.
  11812. 2011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11813. PR target/49541
  11814. * testsuite/lib/libgomp.exp (libgomp_init): Don't add -lgomp to
  11815. ldflags.
  11816. 2011-07-15 Jakub Jelinek <jakub@redhat.com>
  11817. * config/linux/wait.h (do_spin): New inline, largely copied
  11818. from do_wait, just don't do futex_wait here, instead return true if
  11819. it should be done.
  11820. (do_wait): Implement using do_spin.
  11821. * config/linux/mutex.h (gomp_mutex_lock_slow): Add an int argument
  11822. to prototype.
  11823. (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
  11824. __sync_bool_compare_and_swap, pass the oldval to
  11825. gomp_mutex_lock_slow.
  11826. * config/linux/mutex.c (gomp_mutex_lock_slow): Add oldval argument.
  11827. If all mutex contenders are just spinning and not sleeping, don't
  11828. change state to 2 unnecessarily. Optimize the loop when state has
  11829. already become 2 to use just one atomic operation per loop instead
  11830. of two.
  11831. * config/linux/ia64/mutex.h (gomp_mutex_lock_slow): Add an int argument
  11832. to prototype.
  11833. (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
  11834. __sync_bool_compare_and_swap, pass the oldval to
  11835. gomp_mutex_lock_slow.
  11836. 2011-06-22 Jakub Jelinek <jakub@redhat.com>
  11837. PR libgomp/49490
  11838. * iter.c (gomp_iter_static_next): For chunk size 0
  11839. only use n ceil/ nthreads size for the first
  11840. n % nthreads threads in the team instead of
  11841. all threads except for the last few ones which
  11842. get less work or none at all.
  11843. * iter_ull.c (gomp_iter_ull_static_next): Likewise.
  11844. * env.c (parse_schedule): If OMP_SCHEDULE doesn't have
  11845. chunk argument, set run_sched_modifier to 0 for static
  11846. resp. 1 for other kinds. If chunk argument is 0
  11847. and not static, set value to 1.
  11848. 2011-05-19 Jakub Jelinek <jakub@redhat.com>
  11849. PR c++/49043
  11850. * testsuite/libgomp.c++/pr49043.C: New test.
  11851. PR c++/48869
  11852. * testsuite/libgomp.c++/pr48869.C: New test.
  11853. 2011-05-06 Jakub Jelinek <jakub@redhat.com>
  11854. PR fortran/48894
  11855. * fortran.c: Include limits.h.
  11856. (TO_INT): Define.
  11857. (omp_set_dynamic_8_, omp_set_num_threads_8_): Use !!*set instead of
  11858. *set.
  11859. (omp_set_num_threads_8_, omp_set_schedule_8_,
  11860. omp_set_max_active_levels_8_, omp_get_ancestor_thread_num_8_,
  11861. omp_get_team_size_8_): Use TO_INT macro.
  11862. * testsuite/libgomp.fortran/pr48894.f90: New test.
  11863. 2011-04-13 Jakub Jelinek <jakub@redhat.com>
  11864. PR middle-end/48591
  11865. * testsuite/libgomp.c/pr48591.c: New test.
  11866. 2011-03-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11867. PR bootstrap/48135
  11868. * acinclude.m4 (enable_symvers): Handle --disable-symvers.
  11869. * configure: Regenerate.
  11870. 2011-02-27 Jakub Jelinek <jakub@redhat.com>
  11871. PR fortran/47886
  11872. * testsuite/libgomp.fortran/task3.f90: New test.
  11873. 2011-02-24 Tobias Burnus <burnus@net-b.de>
  11874. * libgomp.texi (GOMP_STACKSIZE): Fix @ref to OMP_STACKSIZE.
  11875. 2011-02-23 Jakub Jelinek <jakub@redhat.com>
  11876. PR libgomp/47854
  11877. * libgomp.texi (omp_get_wtime): Don't say time in the past
  11878. must be Unix Epoch.
  11879. 2011-02-18 Jakub Jelinek <jakub@redhat.com>
  11880. PR libgomp/47804
  11881. * testsuite/libgomp.fortran/fortran.exp: Check for both
  11882. libquadmath.a and libquadmath.${shlib_ext}. If neither exists,
  11883. but $blddir != "", still append ${blddir}/${lang_library_path}
  11884. to ld_library_path.
  11885. 2011-02-16 Tobias Burnus <burnus@net-b.de>
  11886. PR libgomp/47758
  11887. * testsuite/libgomp.fortran/fortran.exp: Check for the existence
  11888. of libquadmath.a before adding its libpath to ldflags.
  11889. 2011-02-14 Jakub Jelinek <jakub@redhat.com>
  11890. PR libgomp/47731
  11891. * config/linux/futex.h (futex_wait): Pass NULL as timeout argument
  11892. to FUTEX_WAIT futex syscall.
  11893. * config/linux/wait.h: Include <futex.h> instead of "futex.h".
  11894. 2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  11895. * configure: Regenerate.
  11896. 2011-01-20 Benjamin Kosnik <bkoz@redhat.com>
  11897. PR libstdc++/36104
  11898. * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Accept gnu variants.
  11899. 2011-01-16 Gerald Pfeifer
  11900. * configure.tgt (*-*-freebsd*): Add -lpthread to XLDFLAGS.
  11901. 2010-12-14 Jakub Jelinek <jakub@redhat.com>
  11902. PR fortran/46874
  11903. * libgomp.fortran/allocatable6.f90: New test.
  11904. 2010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11905. * acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
  11906. * configure: Regenerate.
  11907. 2010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
  11908. PR target/40125
  11909. PR lto/46695
  11910. * configure.ac: Invoke ACX_LT_HOST_FLAGS.
  11911. * Makefile.am (libgomp_la_LDFLAGS): Use lt_host_flags.
  11912. * aclocal.m4: Regenerate.
  11913. * configure: Regenerate.
  11914. * Makefile.in: Regenerate.
  11915. * testsuite/Makefile.in: Regenerate.
  11916. 2010-12-02 Jakub Jelinek <jakub@redhat.com>
  11917. PR fortran/46753
  11918. * libgomp.fortran/pr46753.f90: New test.
  11919. PR libgomp/43706
  11920. * env.c (initialize_env): Default to spin count 300000
  11921. instead of 20000000 if neither OMP_WAIT_POLICY nor GOMP_SPINCOUNT
  11922. is specified.
  11923. PR libgomp/45240
  11924. * parallel.c (GOMP_parallel_end): Unlock gomp_remaining_threads_lock
  11925. at the end if sync builtins aren't supported.
  11926. 2010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11927. * configure.tgt (mips-sgi-irix6*): Add -lpthread to XLDFLAGS.
  11928. 2010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11929. * testsuite/libgomp.fortran/vla8.f90: Use dg-timeout-factor 2.0.
  11930. 2010-11-24 Iain Sandoe <iains@gcc.gnu.org>
  11931. * testsuite/libgomp.fortran/fortran.exp: Add paths for libquadmath.
  11932. 2010-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
  11933. Tobias Burnus <burnus@net-b.de>
  11934. PR fortran/32049
  11935. * configure.ac:
  11936. * configure: Regenerate.
  11937. 2010-10-06 Marcus Shawcroft <marcus.shawcroft@arm.com>
  11938. * config/linux/futex.h: New.
  11939. * config/linux/arm/mutex.h: New.
  11940. * configure.tgt (arm*-*-linux*): Add config path.
  11941. 2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
  11942. * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
  11943. 2010-09-23 Tobias Burnus <burnus@net-b.de>
  11944. * libgomp.texi (omp_get_nested, omp_set_nested, omp_set_dynamic):
  11945. Change Fortran datatype to LOGICAL.
  11946. (omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
  11947. omp_unset_nested_lock): Use intent(inout) instead of intent(out).
  11948. 2010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  11949. * configure: Regenerate.
  11950. 2010-07-26 Jakub Jelinek <jakub@redhat.com>
  11951. * libgomp.texi: Add function keyword to a couple of Fortran
  11952. interfaces, use integer instead of int for Fortran.
  11953. 2010-07-26 Aldy Hernandez <aldyh@redhat.com>
  11954. * libgomp.texi: Fix spelling and pasto problems throughout.
  11955. Adjust prototypes to match code.
  11956. 2010-07-24 Tobias Burnus <burnus@net-b.de>
  11957. * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add -w to
  11958. silence -fwhole-file warning.
  11959. 2010-07-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11960. * configure.tgt (*-*-solaris2.[56]*): Removed.
  11961. 2010-07-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  11962. * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
  11963. Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
  11964. LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
  11965. (HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
  11966. targetting solaris2*.
  11967. * configure: Regenerate.
  11968. * config.h.in: Regenerate.
  11969. * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
  11970. libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
  11971. Add libgomp_version_dep.
  11972. [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
  11973. versioning.
  11974. [!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
  11975. (libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
  11976. * Makefile.in: Regenerate.
  11977. * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
  11978. HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
  11979. * libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
  11980. to common block, protected by
  11981. HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
  11982. 2010-06-10 Gerald Pfeifer <gerald@pfeifer.com>
  11983. * libgomp.texi: Move to GFDL version 1.3. Update copyright years.
  11984. 2010-06-09 Iain Sandoe <iains@gcc.gnu.org>
  11985. PR bootstrap/43170
  11986. * configure: Regenerate.
  11987. 2010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  11988. PR other/43620
  11989. * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
  11990. * configure: Regenerate.
  11991. * Makefile.in: Regenerate.
  11992. * testsuite/Makefile.in: Regenerate.
  11993. 2010-04-26 Jakub Jelinek <jakub@redhat.com>
  11994. PR c/43893
  11995. * testsuite/libgomp.c/pr43893.c: New test.
  11996. * testsuite/libgomp.c++/pr43893.C: New test.
  11997. 2010-04-21 Jakub Jelinek <jakub@redhat.com>
  11998. PR middle-end/43570
  11999. * testsuite/libgomp.fortran/vla8.f90: New test.
  12000. 2010-04-20 Jakub Jelinek <jakub@redhat.com>
  12001. PR libgomp/43706
  12002. * config/linux/affinity.c (gomp_init_affinity): Decrease
  12003. gomp_available_cpus if affinity mask confines the process to fewer
  12004. CPUs.
  12005. * config/linux/proc.c (get_num_procs): If gomp_cpu_affinity is
  12006. non-NULL, just return gomp_available_cpus.
  12007. PR libgomp/43569
  12008. * sections.c (gomp_sections_init): Initialize ws->mode.
  12009. 2010-04-14 Uros Bizjak <ubizjak@gmail.com>
  12010. * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
  12011. not unused bar variable.
  12012. * configure: Regenerate.
  12013. 2010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12014. * Makefile.in: Regenerate.
  12015. * aclocal.m4: Regenerate.
  12016. * testsuite/Makefile.in: Regenerate.
  12017. 2010-03-22 Jakub Jelinek <jakub@redhat.com>
  12018. PR libgomp/42942
  12019. * env.c (parse_unsigned_long): Add ALLOW_ZERO argument.
  12020. (initialize_env): Adjust callers.
  12021. (omp_set_max_active_levels): Set gomp_max_active_levels_var even
  12022. when the argument is 0.
  12023. * testsuite/libgomp.c/pr42942.c: New test.
  12024. 2010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
  12025. PR middle-end/42644
  12026. PR middle-end/42130
  12027. * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
  12028. * testsuite/libgomp.graphite/force-parallel-2.c: Adjust.
  12029. 2010-01-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  12030. * testsuite/libgomp.c++/task-1.C: Renamed err to e.
  12031. * testsuite/libgomp.c++/task-6.C: Likewise.
  12032. 2010-01-28 Steve Ellcey <sje@cup.hp.com>
  12033. * configure.tgt (*-*-hpux*): Add -frandom-seed flag.
  12034. 2010-01-26 Paolo Bonzini <bonzini@gnu.org>
  12035. * configure.ac: Test for executability of _the first word_ of GFORTRAN.
  12036. * configure: Regenerate.
  12037. 2010-01-26 Jakub Jelinek <jakub@redhat.com>
  12038. PR fortran/42866
  12039. * testsuite/libgomp.fortran/allocatable5.f90: New test.
  12040. 2010-01-20 Paolo Bonzini <bonzini@gnu.org>
  12041. * configure.ac: Test for executability of GFORTRAN.
  12042. * configure: Regenerate.
  12043. 2010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  12044. * configure: Regenerate.
  12045. 2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
  12046. PR libgomp/42602
  12047. * libgomp.fortran/recursion1.f90 (sub): Make 's' atomic.
  12048. 2010-01-03 Richard Guenther <rguenther@suse.de>
  12049. * testsuite/libgomp.fortran/recursion1.f90: New testcase.
  12050. 2009-12-23 Sebastian Pop <sebpop@gmail.com>
  12051. * testsuite/libgomp.graphite/pr4118.c: New.
  12052. 2009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
  12053. * testsuite/libgomp.fortran/crayptr2.f90: Remove forced static linkage
  12054. for darwin, protect the test with require-effective-target tls_runtime.
  12055. * testsuite/libgomp.fortran/pr32550.f90: Ditto.
  12056. 2009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
  12057. PR target/41605
  12058. * testsuite/lib/libgomp.exp: Provide -B options to allow for
  12059. link spec %s substitutions for static libraries.
  12060. 2009-12-18 Jack Howarth <howarth@bromo.med.uc.edu>
  12061. PR testsuite/42135
  12062. * libgomp.graphite/force-parallel-2.c: Reduce array size.
  12063. 2009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12064. * Makefile.in: Regenerate.
  12065. * configure: Regenerate.
  12066. * testsuite/Makefile.in: Regenerate.
  12067. 2009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
  12068. * testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
  12069. settings for LC_ALL and LANG.
  12070. 2009-11-25 Jakub Jelinek <jakub@redhat.com>
  12071. PR fortran/42162
  12072. * testsuite/libgomp.fortran/pr42162.f90: New test.
  12073. 2009-11-13 Jakub Jelinek <jakub@redhat.com>
  12074. PR middle-end/42029
  12075. * testsuite/libgomp.c/pr42029.c: New test.
  12076. 2009-10-26 Jakub Jelinek <jakub@redhat.com>
  12077. * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many
  12078. *s. Accept ld version without text in ()s.
  12079. * configure: Regenerated.
  12080. 2009-10-22 Razya Ladelsky <razya@il.ibm.com>
  12081. * testsuite/libgomp.graphite/force-parallel-2.c: Adjust scan.
  12082. 2009-10-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12083. PR libgomp/41418
  12084. * configure.ac: Set FC to "no" if $GFORTRAN starts with "no"
  12085. or a hyphen (happens with fortran language disabled).
  12086. * configure: Regenerate.
  12087. 2009-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12088. * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head',
  12089. use sed script portable to Solaris /bin/sed for extracting ld
  12090. version.
  12091. * configure: Regenerate.
  12092. 2009-09-17 Alexander Monakov <amonakov@ispras.ru>
  12093. * testsuite/libgomp.graphite/bounds.c: New test.
  12094. 2009-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12095. * Makefile.am (libgomp_la_LINK): New.
  12096. * Makefile.in: Regenerate.
  12097. 2009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12098. * configure.ac (AC_PREREQ): Bump to 2.64.
  12099. 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12100. * Makefile.am (install-html, install-pdf): Remove.
  12101. * Makefile.in: Regenerate.
  12102. * Makefile.in: Regenerate.
  12103. * aclocal.m4: Regenerate.
  12104. * config.h.in: Regenerate.
  12105. * configure: Regenerate.
  12106. * testsuite/Makefile.in: Regenerate.
  12107. 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12108. * Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
  12109. * Makefile.in: Regenerate.
  12110. 2009-08-20 Dave Korn <dave.korn.cygwin@gmail.com>
  12111. * Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag.
  12112. * Makefile.in: Regenerate.
  12113. 2009-08-19 Tobias Burnus <burnus@net-b.de>
  12114. PR fortran/41102
  12115. omp_lib.h.in: Fix -std=f95 errors.
  12116. 2009-08-14 David Edelsohn <edelsohn@gnu.org>
  12117. * testsuite/libgomp.graphite: Move from gcc.dg/graphite.
  12118. * testsuite/libgomp.graphite/graphite_autopar.exp: Delete.
  12119. * testsuite/libgomp.graphite/graphite.exp: New.
  12120. 2009-08-05 Andreas Tobler <a.tobler@schweiz.org>
  12121. * testsuite/libgomp.fortran/fortran.exp: Add flags in case of shared
  12122. only build.
  12123. 2009-08-04 David Daney <ddaney@caviumnetworks.com>
  12124. * config/linux/mutex.h (gomp_mutex_unlock): Add comment about
  12125. needed memory barrier semantics.
  12126. * config/linux/mips/mutex.h: New file.
  12127. 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12128. * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
  12129. 2009-07-16 Joseph Myers <joseph@codesourcery.com>
  12130. * configure: Regenerate.
  12131. 2009-07-11 Richard Sandiford <rdsandiford@googlemail.com>
  12132. PR testsuite/40699
  12133. PR testsuite/40707
  12134. PR testsuite/40709
  12135. * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
  12136. * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
  12137. testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.
  12138. 2009-07-02 Richard Sandiford <r.sandiford@uk.ibm.com>
  12139. * testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
  12140. options when choosing a multilib.
  12141. 2009-06-30 Richard Sandiford <r.sandiford@uk.ibm.com>
  12142. * testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
  12143. ld_library_path. Use add_path. Add just find_libgcc_s to
  12144. ld_library_path, not every libgcc multilib directory.
  12145. * testsuite/libgomp.c/c.exp (ld_library_path): Don't call
  12146. gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
  12147. * testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
  12148. Use add_path.
  12149. * testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.
  12150. 2009-06-09 Nathan Froyd <froydnj@codesourcery.com>
  12151. * Makefile.am (LTLDFLAGS): Define.
  12152. (LINK): Define.
  12153. * Makefile.in: Regenerate.
  12154. 2009-05-27 Janne Blomqvist <jb@gcc.gnu.org>
  12155. PR fortran/39718
  12156. * testsuite/libgomp.fortran/fortran.exp: Don't link with
  12157. libgfortranbegin, check existence of libgfortran.a instead of
  12158. libgfortranbegin.a.
  12159. 2009-05-20 Jakub Jelinek <jakub@redhat.com>
  12160. PR libgomp/40174
  12161. * team.c (gomp_thread_start): Destroy thr->release semaphore.
  12162. (gomp_free_pool_helper): Likewise.
  12163. 2009-04-20 Vasilis Liaskovitis <vliaskov@gmail.com>
  12164. Jakub Jelinek <jakub@redhat.com>
  12165. PR fortran/35423
  12166. * testsuite/libgomp.fortran/workshare2.f90: New test.
  12167. 2009-04-09 Nick Clifton <nickc@redhat.com>
  12168. * iter.c: Change copyright header to refer to version 3 of the
  12169. GNU General Public License with version 3.1 of the GCC Runtime
  12170. Library Exception and to point readers at the COPYING3 and
  12171. COPYING3.RUNTIME files and the FSF's license web page.
  12172. * alloc.c: Likewise.
  12173. * barrier.c: Likewise.
  12174. * config/bsd/proc.c: Likewise.
  12175. * config/linux/affinity.c: Likewise.
  12176. * config/linux/alpha/futex.h: Likewise.
  12177. * config/linux/bar.c: Likewise.
  12178. * config/linux/bar.h: Likewise.
  12179. * config/linux/ia64/futex.h: Likewise.
  12180. * config/linux/ia64/mutex.h: Likewise.
  12181. * config/linux/lock.c: Likewise.
  12182. * config/linux/mips/futex.h: Likewise.
  12183. * config/linux/mutex.c: Likewise.
  12184. * config/linux/mutex.h: Likewise.
  12185. * config/linux/powerpc/futex.h: Likewise.
  12186. * config/linux/proc.c: Likewise.
  12187. * config/linux/ptrlock.c: Likewise.
  12188. * config/linux/ptrlock.h: Likewise.
  12189. * config/linux/s390/futex.h: Likewise.
  12190. * config/linux/sem.c: Likewise.
  12191. * config/linux/sem.h: Likewise.
  12192. * config/linux/sparc/futex.h: Likewise.
  12193. * config/linux/wait.h: Likewise.
  12194. * config/linux/x86/futex.h: Likewise.
  12195. * config/mingw32/proc.c: Likewise.
  12196. * config/mingw32/time.c: Likewise.
  12197. * config/posix/affinity.c: Likewise.
  12198. * config/posix/bar.c: Likewise.
  12199. * config/posix/bar.h: Likewise.
  12200. * config/posix/lock.c: Likewise.
  12201. * config/posix/mutex.h: Likewise.
  12202. * config/posix/proc.c: Likewise.
  12203. * config/posix/ptrlock.h: Likewise.
  12204. * config/posix/sem.c: Likewise.
  12205. * config/posix/sem.h: Likewise.
  12206. * config/posix/time.c: Likewise.
  12207. * config/posix95/lock.c: Likewise.
  12208. * critical.c: Likewise.
  12209. * env.c: Likewise.
  12210. * error.c: Likewise.
  12211. * fortran.c: Likewise.
  12212. * iter_ull.c: Likewise.
  12213. * libgomp.h: Likewise.
  12214. * libgomp_f.h.in: Likewise.
  12215. * libgomp_g.h: Likewise.
  12216. * loop.c: Likewise.
  12217. * loop_ull.c: Likewise.
  12218. * omp.h.in: Likewise.
  12219. * omp_lib.f90.in: Likewise.
  12220. * omp_lib.h.in: Likewise.
  12221. * ordered.c: Likewise.
  12222. * parallel.c: Likewise.
  12223. * sections.c: Likewise.
  12224. * single.c: Likewise.
  12225. * task.c: Likewise.
  12226. * team.c: Likewise.
  12227. * work.c: Likewise.
  12228. 2009-04-09 Jakub Jelinek <jakub@redhat.com>
  12229. * testsuite/config/default.exp: Change copyright header to refer to
  12230. version 3 of the GNU General Public License and to point readers
  12231. at the COPYING3 file and the FSF's license web page.
  12232. 2009-04-08 Jakub Jelinek <jakub@redhat.com>
  12233. PR middle-end/39573
  12234. * libgomp.c++/pr39573.C: New test.
  12235. 2009-04-01 Jakub Jelinek <jakub@redhat.com>
  12236. PR other/39591
  12237. * testsuite/libgomp.c/pr39591-1.c: New test.
  12238. * testsuite/libgomp.c/pr39591-2.c: New test.
  12239. * testsuite/libgomp.c/pr39591-3.c: New test.
  12240. 2009-03-25 Uros Bizjak <ubizjak@gmail.com>
  12241. * testsuite/libgomp.c/atomic-5.c: Cleanup cpuid usage.
  12242. * testsuite/libgomp.c/atomic-6.c: Ditto.
  12243. 2009-03-23 Jakub Jelinek <jakub@redhat.com>
  12244. PR c/39495
  12245. * testsuite/libgomp.c/loop-12.c: New test.
  12246. * testsuite/libgomp.c/loop-11.c: New test.
  12247. * testsuite/libgomp.c++/loop-11.C: New test.
  12248. * testsuite/libgomp.c++/loop-12.C: New test.
  12249. * testsuite/libgomp.c++/for-8.C: New test.
  12250. 2009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12251. * configure: Regenerate.
  12252. 2009-02-11 Jakub Jelinek <jakub@redhat.com>
  12253. PR middle-end/39154
  12254. * testsuite/libgomp.c/pr39154.c: New test.
  12255. 2009-01-30 Ian Lance Taylor <iant@google.com>
  12256. * acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
  12257. libgomp_ld_is_gold. Get gold version number.
  12258. (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning.
  12259. * configure: Rebuild.
  12260. 2009-01-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
  12261. * testsuite/lib/libgomp.exp: Add -B option for targets that
  12262. use libgfortran.a%s in their specs.
  12263. 2009-01-07 Jakub Jelinek <jakub@redhat.com>
  12264. PR libgomp/38086
  12265. * acinclude.m4 (HAVE_AS_SYMVER_DIRECTIVE): New check.
  12266. * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undefine if
  12267. HAVE_AS_SYMVER_DIRECTIVE is not defined.
  12268. * configure: Regenerated.
  12269. * config.h.in: Likewise.
  12270. 2008-12-28 Jakub Jelinek <jakub@redhat.com>
  12271. PR c++/38650
  12272. * testsuite/libgomp.c/pr38650.c: New test.
  12273. * testsuite/libgomp.c++/pr38650.C: New test.
  12274. 2008-12-27 Jakub Jelinek <jakub@redhat.com>
  12275. * testsuite/libgomp.c/collapse-1.c (main): Add private(k) clause.
  12276. 2008-12-26 Uros Bizjak <ubizjak@gmail.com>
  12277. * testsuite/libgomp.c/atomic-6.c: Add -mieee for alpha*-*-* targets.
  12278. 2008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12279. * configure: Regenerate.
  12280. 2008-12-08 Jakub Jelinek <jakub@redhat.com>
  12281. PR middle-end/36802
  12282. * testsuite/libgomp.c/pr36802-1.c: New test.
  12283. * testsuite/libgomp.c/pr36802-2.c: New test.
  12284. * testsuite/libgomp.c/pr36802-3.c: New test.
  12285. 2008-12-01 Janis Johnson <janis187@us.ibm.com>
  12286. PR libgomp/38270
  12287. * config/linux/powerpc/mutex.h: New.
  12288. 2008-12-01 Jakub Jelinek <jakub@redhat.com>
  12289. PR c++/38257
  12290. * testsuite/libgomp.c++/for-7.C: New test.
  12291. PR c++/38348
  12292. * testsuite/libgomp.c++/for-6.C: New test.
  12293. 2008-11-26 Janis Johnson <janis187@us.ibm.com>
  12294. PR testsuite/28870
  12295. * testsuite/lib/libgomp.exp: Include new timeout library files.
  12296. (libgomp_target_compile): Set timeout value from new proc.
  12297. 2008-11-13 Steve Ellcey <sje@cup.hp.com>
  12298. PR libgomp/37938
  12299. * config/linux/ia64/mutex.h: New.
  12300. 2008-11-04 Tobias Burnus <burnus@net-b.de>
  12301. PR libgomp/37935
  12302. * libgomp.texi (Runtime library routines, environment variables):
  12303. Update for OpenMP version 3.0.
  12304. 2008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
  12305. Steve Ellcey <sje@cup.hp.com>
  12306. * configure: Regenerate for new libtool.
  12307. * Makefile.in: Ditto.
  12308. * testsuite/Makefile.in: Ditto.
  12309. 2008-09-19 Jakub Jelinek <jakub@redhat.com>
  12310. Andreas Tobler <a.tobler@schweiz.org>
  12311. * config/bsd/proc.c: New file.
  12312. * configure.tgt (*-*-darwin*): Use config_path "bsd posix".
  12313. * configure.ac: Check for header <sys/sysctl.h>
  12314. * configure: Regenerate.
  12315. * config.h.in: Likewise.
  12316. 2008-09-05 Janis Johnson <janis187@us.ibm.com>
  12317. * testsuite/ligbomp.c/c.exp: Unset lang_test_file only if it exists.
  12318. 2008-08-31 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
  12319. * Makefile.am (libgomp_la_LDFLAGS): Add -no-undefined.
  12320. * Makefile.in: Regenerated.
  12321. * testsuite/Makefile.in: Regenerated.
  12322. 2008-08-21 Nathan Froyd <froydnj@codesourcery.com>
  12323. * testsuite/lib/libgomp.exp (libgomp_init): Only set things that
  12324. depend on blddir if blddir exists.
  12325. (libgomp_target_compile): Likewise.
  12326. * testsuite/libgomp.c++/c++.exp: Likewise.
  12327. * testsuite/libgomp.fortran/fortran.exp: Likewise.
  12328. 2008-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12329. * libgomp.texi: Update to GFDL 1.2. Update copyright years.
  12330. Do not list GPL as Invariant Section.
  12331. 2008-07-28 Ilie Garbacea <ilie@mips.com>
  12332. Chao-ying Fu <fu@mips.com>
  12333. * configure.tgt: Enable futex for MIPS.
  12334. * config/linux/mips/futex.h: New file.
  12335. 2008-07-16 Jakub Jelinek <jakub@redhat.com>
  12336. * team.c (gomp_team_end): Free team immediately if it has
  12337. just one thread.
  12338. 2008-07-08 David Edelsohn <edelsohn@gnu.org>
  12339. * testsuite/libgomp.c++/c++.exp: Append multilib library path.
  12340. * testsuite/libgomp.fortran/fortran.exp: Same.
  12341. * testsuite/libgomp.c/c.exp: Same.
  12342. * testsuite/lib/libgomp.exp: Append AIX libgcc pthread multilib
  12343. directory to library path first.
  12344. 2008-06-29 Krister Walfridsson <krister.walfridsson@gmail.com>
  12345. * env.c (parse_stacksize): Add cast to avoid warning.
  12346. (parse_spincount): Likewise.
  12347. 2008-06-27 Jakub Jelinek <jakub@redhat.com>
  12348. * testsuite/libgomp.c/loop-10.c: New test.
  12349. * libgomp.c/loop-3.c (main): Add lastprivate clause.
  12350. * libgomp.c++/loop-6.C (main): Likewise.
  12351. PR debug/36617
  12352. * testsuite/libgomp.c/debug-1.c: New test.
  12353. 2008-06-19 Jakub Jelinek <jakub@redhat.com>
  12354. * testsuite/libgomp.c/nqueens-1.c: New test.
  12355. PR c++/36523
  12356. * testsuite/libgomp.c++/task-7.C: New function.
  12357. 2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12358. * configure: Regenerate.
  12359. 2008-06-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
  12360. * env.c (initialize_env): Always initialize gomp_remaining_threads_lock
  12361. mutex when HAVE_SYNC_BUILTINS isn't defined.
  12362. 2008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12363. * libgomp.texi (omp_test_lock): Fix typo.
  12364. 2008-06-12 Tobias Burnus <burnus@net-b.de>
  12365. * omp_lib.f90.in: Add "implicit none".
  12366. 2008-06-12 Jakub Jelinek <jakub@redhat.com>
  12367. PR middle-end/36506
  12368. * testsuite/libgomp.c/reduction-5.c: New test.
  12369. 2008-06-11 Jakub Jelinek <jakub@redhat.com>
  12370. * libgomp.h (struct gomp_task): Add in_tied_task field.
  12371. * task.c (gomp_init_task): Initialize it.
  12372. (GOMP_task): Likewise. Call gomp_team_barrier_set_task_pending
  12373. unconditionally. Don't call gomp_team_barrier_wake if
  12374. current task is implicit or if(0) from implicit and number of
  12375. running tasks is equal to nthreads - 1.
  12376. PR libgomp/36471
  12377. * omp_lib.f90.in (omp_get_ancestor_thread_num_8,
  12378. omp_get_team_size_8): Fix pastos.
  12379. PR libgomp/36469
  12380. * configure.ac: Add AC_CHECK_FUNCS (strtoull).
  12381. * configure: Regenerated.
  12382. * config.h.in: Regenerated.
  12383. * env.c (strtoull): Define to strtoul if HAVE_STRTOULL is not
  12384. defined.
  12385. 2008-06-06 Andreas Tobler <a.tobler@schweiz.org>
  12386. PR bootstrap/36452
  12387. * loop_ull.c (GOMP_loop_ull_static_start): Adjust API.
  12388. (GOMP_loop_ull_dynamic_start): Likewise.
  12389. (GOMP_loop_ull_guided_start): Likewise.
  12390. (GOMP_loop_ull_ordered_static_start): Likewise.
  12391. (GOMP_loop_ull_ordered_dynamic_start): Likewise.
  12392. (GOMP_loop_ull_ordered_guided_start): Likewise.
  12393. 2008-06-06 Jakub Jelinek <jakub@redhat.com>
  12394. Richard Henderson <rth@redhat.com>
  12395. Ulrich Drepper <drepper@redhat.com>
  12396. Jakob Blomer <jakob.blomer@ira.uka.de>
  12397. * configure.ac (LIBGOMP_GNU_SYMBOL_VERSIONING): New AC_DEFINE.
  12398. Substitute also OMP_*LOCK_25*.
  12399. * configure: Regenerated.
  12400. * config.h.in: Regenerated.
  12401. * Makefile.am (libgomp_la_SOURCES): Add loop_ull.c, iter_ull.c,
  12402. ptrlock.c and task.c.
  12403. * Makefile.in: Regenerated.
  12404. * testsuite/Makefile.in: Regenerated.
  12405. * task.c: New file.
  12406. * loop_ull.c: New file.
  12407. * iter_ull.c: New file.
  12408. * libgomp.h: Include ptrlock.h.
  12409. (enum gomp_task_kind): New type.
  12410. (struct gomp_team): Add task_lock, task_queue, task_count,
  12411. task_running_count, single_count fields. Add
  12412. work_share_list_free_lock ifndef HAVE_SYNC_BUILTINS.
  12413. Remove work_share_lock, generation_mask,
  12414. oldest_live_gen, num_live_gen and init_work_shares fields, add
  12415. work work_share_list_alloc, work_share_list_free and work_share_chunk
  12416. fields. Change work_shares from pointer to pointers into an array.
  12417. Change ordered_release field into gomp_sem_t ** from flexible array
  12418. member. Add implicit_task and initial_work_shares fields.
  12419. Move close to the end of the struct.
  12420. (struct gomp_team_state): Add single_count, last_work_share,
  12421. active_level and level fields, remove work_share_generation.
  12422. (gomp_barrier_handle_tasks): New prototype.
  12423. (gomp_finish_task): New inline function.
  12424. (struct gomp_work_share): Move chunk_size, end, incr into
  12425. transparent union/struct, add chunk_size_ull, end_ll, incr_ll and
  12426. next_ll fields. Reshuffle fields. Add next_alloc,
  12427. next_ws, next_free and inline_ordered_team_ids fields, change
  12428. ordered_team_ids into pointer from flexible array member.
  12429. Add mode field. Put lock and next into a different cache line
  12430. from most of the write-once fields.
  12431. (gomp_iter_ull_static_next, gomp_iter_ull_dynamic_next_locked,
  12432. gomp_iter_ull_guided_next_locked, gomp_iter_ull_dynamic_next,
  12433. gomp_iter_ull_guided_next): New prototypes.
  12434. (gomp_new_icv): New prototype.
  12435. (struct gomp_thread): Add thread_pool and task fields.
  12436. (struct gomp_thread_pool): New type.
  12437. (gomp_new_team): New prototype.
  12438. (gomp_team_start): Change type of last argument.
  12439. (gomp_new_work_share): Removed.
  12440. (gomp_init_work_share, gomp_fini_work_share): New prototypes.
  12441. (gomp_work_share_init_done): New static inline.
  12442. (gomp_throttled_spin_count_var, gomp_available_cpus,
  12443. gomp_managed_threads): New extern decls.
  12444. (gomp_init_task): New prototype.
  12445. (gomp_spin_count_var): New extern var decl.
  12446. (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef if no visibility
  12447. or no alias support, or if not PIC.
  12448. (gomp_init_lock_30, gomp_destroy_lock_30, gomp_set_lock_30,
  12449. gomp_unset_lock_30, gomp_test_lock_30, gomp_init_nest_lock_30,
  12450. gomp_destroy_nest_lock_30, gomp_set_nest_lock_30,
  12451. gomp_unset_nest_lock_30, gomp_test_nest_lock_30, gomp_init_lock_25,
  12452. gomp_destroy_lock_25, gomp_set_lock_25, gomp_unset_lock_25,
  12453. gomp_test_lock_25, gomp_init_nest_lock_25, gomp_destroy_nest_lock_25,
  12454. gomp_set_nest_lock_25, gomp_unset_nest_lock_25,
  12455. gomp_test_nest_lock_25): New prototypes.
  12456. (omp_lock_symver, strong_alias): Define.
  12457. (gomp_remaining_threads_count, gomp_remaining_threads_lock): New
  12458. decls.
  12459. (gomp_end_task): New.
  12460. (struct gomp_task_icv, gomp_global_icv): New.
  12461. (gomp_thread_limit_var, gomp_max_active_levels_var): New.
  12462. (struct gomp_task): New.
  12463. (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
  12464. gomp_run_sched_var, gomp_run_sched_chunk): Remove.
  12465. (gomp_icv): New.
  12466. (gomp_schedule_type): Reorder enum to match
  12467. omp_sched_t.
  12468. * team.c (struct gomp_thread_start_data): Add thread_pool and task
  12469. fields.
  12470. (gomp_thread_start): Add gomp_team_barrier_wait call.
  12471. For non-nested case remove clearing of docked thread thr fields.
  12472. Use pool fields instead of global gomp_* variables. Use
  12473. gomp_barrier_wait_last when needed. Initialize ts.active_level.
  12474. Create tasks for each member thread.
  12475. (free_team): Only destroy team barrier, task_lock here and free it.
  12476. (gomp_free_thread): Free last_team if non-NULL.
  12477. (gomp_team_end): Call gomp_team_barrier_wait instead of
  12478. gomp_barrier_wait. For nested case call one extra
  12479. gomp_barrier_wait. Move here some destruction from free_team.
  12480. Call free_team on pool->last_team if any, rather than freeing
  12481. current team. Destroy work_share_list_free_lock ifndef
  12482. HAVE_SYNC_BUILTINS.
  12483. (gomp_new_icv): New function.
  12484. (gomp_threads, gomp_threads_size, gomp_threads_used,
  12485. gomp_threads_dock): Removed.
  12486. (gomp_thread_destructor): New variable.
  12487. (gomp_new_thread_pool, gomp_free_pool_helper, gomp_free_thread): New
  12488. functions.
  12489. (gomp_team_start): Create new pool if current thread doesn't have
  12490. one. Use pool fields instead of global gomp_* variables.
  12491. Initialize thread_pool field for new threads. Clear single_count.
  12492. Change last argument from ws to team, don't create
  12493. new team, set ts.work_share to &team->work_shares[0] and clear
  12494. ts.last_work_share. Don't clear ts.work_share_generation.
  12495. If number of threads changed, adjust atomically gomp_managed_threads.
  12496. Use gomp_init_task instead of gomp_new_task,
  12497. set thr->task to the corresponding implicit_task array entry.
  12498. Create tasks for each member thread. Initialize ts.level.
  12499. (initialize_team): Call pthread_key_create on
  12500. gomp_thread_destructor.
  12501. (team_destructor): New function.
  12502. (new_team): Removed.
  12503. (gomp_new_team): New function.
  12504. (free_team): Free gomp_work_share blocks chained through next_alloc,
  12505. instead of freeing work_shares and destroying work_share_lock.
  12506. (gomp_team_end): Call gomp_fini_work_share. If number of threads
  12507. changed, adjust atomically gomp_managed_threads. Use gomp_end_task.
  12508. * barrier.c (GOMP_barrier): Call gomp_team_barrier_wait instead
  12509. of gomp_barrier_wait.
  12510. * single.c (GOMP_single_copy_start): Call gomp_team_barrier_wait
  12511. instead of gomp_barrier_wait. Call gomp_work_share_init_done
  12512. if gomp_work_share_start returned true. Don't unlock ws->lock.
  12513. (GOMP_single_copy_end): Call gomp_team_barrier_wait instead
  12514. of gomp_barrier_wait.
  12515. (GOMP_single_start): Rewritten if HAVE_SYNC_BUILTINS. Call
  12516. gomp_work_share_init_done if gomp_work_share_start returned true.
  12517. Don't unlock ws->lock.
  12518. * work.c: Include stddef.h.
  12519. (free_work_share): Use work_share_list_free_lock instead
  12520. of atomic chaining ifndef HAVE_SYNC_BUILTINS. Add team argument.
  12521. Call gomp_fini_work_share and then either free ws if orphaned, or
  12522. put it into work_share_list_free list of the current team.
  12523. (alloc_work_share, gomp_init_work_share, gomp_fini_work_share): New
  12524. functions.
  12525. (gomp_work_share_start, gomp_work_share_end,
  12526. gomp_work_share_end_nowait): Rewritten.
  12527. * omp_lib.f90.in Change some tabs to spaces to prevent warnings.
  12528. (openmp_version): Set to 200805.
  12529. (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
  12530. omp_sched_guided, omp_sched_auto): New parameters.
  12531. (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
  12532. omp_set_max_active_levels, omp_get_max_active_levels,
  12533. omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
  12534. omp_get_active_level): New interfaces.
  12535. * omp_lib.h.in (openmp_version): Set to 200805.
  12536. (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
  12537. omp_sched_guided, omp_sched_auto): New parameters.
  12538. (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
  12539. omp_set_max_active_levels, omp_get_max_active_levels,
  12540. omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
  12541. omp_get_active_level): New externals.
  12542. * loop.c: Include limits.h.
  12543. (GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Handle
  12544. GFS_AUTO.
  12545. (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start):
  12546. Likewise. Use gomp_icv.
  12547. (gomp_loop_static_start, gomp_loop_dynamic_start): Clear
  12548. ts.static_trip here.
  12549. (gomp_loop_static_start, gomp_loop_ordered_static_start): Call
  12550. gomp_work_share_init_done after gomp_loop_init. Don't unlock ws->lock.
  12551. (gomp_loop_dynamic_start, gomp_loop_guided_start): Call
  12552. gomp_work_share_init_done after gomp_loop_init. If HAVE_SYNC_BUILTINS,
  12553. don't unlock ws->lock, otherwise lock it.
  12554. (gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start): Call
  12555. gomp_work_share_init_done after gomp_loop_init. Lock ws->lock.
  12556. (gomp_parallel_loop_start): Call gomp_new_team instead of
  12557. gomp_new_work_share. Call gomp_loop_init on &team->work_shares[0].
  12558. Adjust gomp_team_start caller. Pass 0 as second argument to
  12559. gomp_resolve_num_threads.
  12560. (gomp_loop_init): For GFS_DYNAMIC, multiply ws->chunk_size by incr.
  12561. If adding ws->chunk_size nthreads + 1 times after end won't
  12562. overflow, set ws->mode to 1.
  12563. * libgomp_g.h (GOMP_loop_ull_static_start, GOMP_loop_ull_dynamic_start,
  12564. GOMP_loop_ull_guided_start, GOMP_loop_ull_runtime_start,
  12565. GOMP_loop_ull_ordered_static_start,
  12566. GOMP_loop_ull_ordered_dynamic_start,
  12567. GOMP_loop_ull_ordered_guided_start,
  12568. GOMP_loop_ull_ordered_runtime_start, GOMP_loop_ull_static_next,
  12569. GOMP_loop_ull_dynamic_next, GOMP_loop_ull_guided_next,
  12570. GOMP_loop_ull_runtime_next, GOMP_loop_ull_ordered_static_next,
  12571. GOMP_loop_ull_ordered_dynamic_next, GOMP_loop_ull_ordered_guided_next,
  12572. GOMP_loop_ull_ordered_runtime_next, GOMP_task, GOMP_taskwait): New
  12573. prototypes.
  12574. * libgomp.map: Export lock routines also @@OMP_2.0.
  12575. (GOMP_loop_ordered_dynamic_first,
  12576. GOMP_loop_ordered_guided_first, GOMP_loop_ordered_runtime_first,
  12577. GOMP_loop_ordered_static_first): Remove.
  12578. (GOMP_loop_ull_dynamic_next, GOMP_loop_ull_dynamic_start,
  12579. GOMP_loop_ull_guided_next, GOMP_loop_ull_guided_start,
  12580. GOMP_loop_ull_ordered_dynamic_next,
  12581. GOMP_loop_ull_ordered_dynamic_start,
  12582. GOMP_loop_ull_ordered_guided_next,
  12583. GOMP_loop_ull_ordered_guided_start,
  12584. GOMP_loop_ull_ordered_runtime_next,
  12585. GOMP_loop_ull_ordered_runtime_start,
  12586. GOMP_loop_ull_ordered_static_next,
  12587. GOMP_loop_ull_ordered_static_start,
  12588. GOMP_loop_ull_runtime_next, GOMP_loop_ull_runtime_start,
  12589. GOMP_loop_ull_static_next, GOMP_loop_ull_static_start,
  12590. GOMP_task, GOMP_taskwait): Export @@GOMP_2.0.
  12591. (omp_set_schedule, omp_get_schedule,
  12592. omp_get_thread_limit, omp_set_max_active_levels,
  12593. omp_get_max_active_levels, omp_get_level,
  12594. omp_get_ancestor_thread_num, omp_get_team_size, omp_get_active_level,
  12595. omp_set_schedule_, omp_set_schedule_8_,
  12596. omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
  12597. omp_set_max_active_levels_, omp_set_max_active_levels_8_,
  12598. omp_get_max_active_levels_, omp_get_level_,
  12599. omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
  12600. omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
  12601. New exports @@OMP_3.0.
  12602. * omp.h.in (omp_sched_t): New type.
  12603. (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
  12604. omp_set_max_active_levels, omp_get_max_active_levels,
  12605. omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
  12606. omp_get_active_level): New prototypes.
  12607. * env.c (gomp_spin_count_var, gomp_throttled_spin_count_var,
  12608. gomp_available_cpus, gomp_managed_threads, gomp_max_active_levels_var,
  12609. gomp_thread_limit_var, gomp_remaining_threads_count,
  12610. gomp_remaining_threads_lock): New variables.
  12611. (parse_spincount): New function.
  12612. (initialize_env): Call gomp_init_num_threads unconditionally.
  12613. Initialize gomp_available_cpus. Call parse_spincount,
  12614. initialize gomp_{,throttled_}spin_count_var
  12615. depending on presence and value of OMP_WAIT_POLICY and
  12616. GOMP_SPINCOUNT env vars. Handle GOMP_BLOCKTIME env var.
  12617. Handle OMP_WAIT_POLICY, OMP_MAX_ACTIVE_LEVELS,
  12618. OMP_THREAD_LIMIT, OMP_STACKSIZE env vars. Handle unit specification
  12619. for GOMP_STACKSIZE. Initialize gomp_remaining_threads_count and
  12620. gomp_remaining_threads_lock if needed. Use gomp_global_icv.
  12621. (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
  12622. gomp_run_sched_var, gomp_run_sched_chunk): Remove.
  12623. (gomp_global_icv): New.
  12624. (parse_schedule): Use it. Parse "auto".
  12625. (omp_set_num_threads): Use gomp_icv.
  12626. (omp_set_dynamic, omp_get_dynamic, omp_set_nested, omp_get_nested):
  12627. Likewise.
  12628. (omp_get_max_threads): Move from parallel.c.
  12629. (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
  12630. omp_set_max_active_levels, omp_get_max_active_levels): New functions,
  12631. add ialias.
  12632. (parse_stacksize, parse_wait_policy): New functions.
  12633. * fortran.c: Rewrite lock wrappers, if symbol versioning provide
  12634. both wrappers for compatibility and new locks.
  12635. (omp_set_schedule, omp_get_schedule,
  12636. omp_get_thread_limit, omp_set_max_active_levels,
  12637. omp_get_max_active_levels, omp_get_level,
  12638. omp_get_ancestor_thread_num, omp_get_team_size,
  12639. omp_get_active_level): New ialias_redirect.
  12640. (omp_set_schedule_, omp_set_schedule_8_,
  12641. omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
  12642. omp_set_max_active_levels_, omp_set_max_active_levels_8_,
  12643. omp_get_max_active_levels_, omp_get_level_,
  12644. omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
  12645. omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
  12646. New functions.
  12647. * parallel.c: Include limits.h.
  12648. (gomp_resolve_num_threads): Add count argument. Rewritten.
  12649. (GOMP_parallel_start): Call gomp_new_team and pass that as last
  12650. argument to gomp_team_start. Pass 0 as second argument to
  12651. gomp_resolve_num_threads.
  12652. (GOMP_parallel_end): Decrease gomp_remaining_threads_count
  12653. if gomp_thread_limit_var != ULONG_MAX.
  12654. (omp_in_parallel): Implement using ts.active_level.
  12655. (omp_get_max_threads): Move to env.c.
  12656. (omp_get_level, omp_get_ancestor_thread_num,
  12657. omp_get_team_size, omp_get_active_level): New functions,
  12658. add ialias.
  12659. * sections.c (GOMP_sections_start): Call gomp_work_share_init_done
  12660. after gomp_sections_init. If HAVE_SYNC_BUILTINS, call
  12661. gomp_iter_dynamic_next instead of the _locked variant and don't take
  12662. lock around it, otherwise acquire it before calling
  12663. gomp_iter_dynamic_next_locked.
  12664. (GOMP_sections_next): If HAVE_SYNC_BUILTINS, call
  12665. gomp_iter_dynamic_next instead of the _locked variant and don't take
  12666. lock around it.
  12667. (GOMP_parallel_sections_start): Call gomp_new_team instead of
  12668. gomp_new_work_share. Call gomp_sections_init on &team->work_shares[0].
  12669. Adjust gomp_team_start caller. Pass count as second argument to
  12670. gomp_resolve_num_threads, don't adjust num_threads after the call.
  12671. Use gomp_icv.
  12672. * iter.c (gomp_iter_dynamic_next_locked): Don't multiply
  12673. ws->chunk_size by incr.
  12674. (gomp_iter_dynamic_next): Likewise. If ws->mode, use more efficient
  12675. code.
  12676. * libgomp_f.h.in (omp_lock_25_arg_t, omp_nest_lock_25_arg_t): New
  12677. types.
  12678. (omp_lock_25_arg, omp_nest_lock_25_arg): New macros.
  12679. (omp_check_defines): Check even the compat defines.
  12680. * config/linux/ptrlock.c: New file.
  12681. * config/linux/ptrlock.h: New file.
  12682. * config/linux/wait.h: New file.
  12683. * config/posix/ptrlock.c: New file.
  12684. * config/posix/ptrlock.h: New file.
  12685. * config/linux/bar.h (gomp_team_barrier_wait,
  12686. gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
  12687. (gomp_team_barrier_set_task_pending,
  12688. gomp_team_barrier_clear_task_pending,
  12689. gomp_team_barrier_set_waiting_for_tasks,
  12690. gomp_team_barrier_waiting_for_tasks,
  12691. gomp_team_barrier_done): New inlines.
  12692. (gomp_barrier_t): Rewritten.
  12693. (gomp_barrier_state_t): New typedef.
  12694. (gomp_barrier_init, gomp_barrier_reinit, gomp_barrier_destroy,
  12695. gomp_barrier_wait_start): Rewritten.
  12696. (gomp_barrier_wait_end): Change second argument to
  12697. gomp_barrier_state_t.
  12698. (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
  12699. inlines.
  12700. * config/linux/bar.c: Include wait.h instead of libgomp.h and
  12701. futex.h.
  12702. (gomp_barrier_wait_end): Rewritten.
  12703. (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
  12704. gomp_team_barrier_wake, gomp_barrier_wait_last): New functions.
  12705. * config/posix/bar.h (gomp_barrier_t): Add generation field.
  12706. (gomp_barrier_state_t): New typedef.
  12707. (gomp_team_barrier_wait,
  12708. gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
  12709. (gomp_barrier_wait_start): Or all but low 2 bits from generation
  12710. into the return value. Return gomp_barrier_state_t.
  12711. (gomp_team_barrier_set_task_pending,
  12712. gomp_team_barrier_clear_task_pending,
  12713. gomp_team_barrier_set_waiting_for_tasks,
  12714. gomp_team_barrier_waiting_for_tasks,
  12715. gomp_team_barrier_done): New inlines.
  12716. (gomp_barrier_wait_end): Change second argument to
  12717. gomp_barrier_state_t.
  12718. (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
  12719. inlines.
  12720. * config/posix/bar.c (gomp_barrier_init): Clear generation field.
  12721. (gomp_barrier_wait_end): Change second argument to
  12722. gomp_barrier_state_t.
  12723. (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
  12724. gomp_team_barrier_wake): New functions.
  12725. * config/linux/mutex.c: Include wait.h instead of libgomp.h and
  12726. futex.h.
  12727. (gomp_futex_wake, gomp_futex_wait): New variables.
  12728. (gomp_mutex_lock_slow): Call do_wait instead of futex_wait.
  12729. * config/linux/lock.c: Rewrite to make locks task owned,
  12730. for backwards compatibility provide the old entrypoints
  12731. if symbol versioning. Include wait.h instead of libgomp.h and
  12732. futex.h.
  12733. (gomp_set_nest_lock_25): Call do_wait instead of futex_wait.
  12734. * config/posix95/lock.c: Rewrite to make locks task owned,
  12735. for backwards compatibility provide the old entrypoints
  12736. if symbol versioning.
  12737. * config/posix/lock.c: Rewrite to make locks task owned,
  12738. for backwards compatibility provide the old entrypoints
  12739. if symbol versioning.
  12740. * config/linux/proc.c (gomp_init_num_threads): Use gomp_global_icv.
  12741. (get_num_procs, gomp_dynamic_max_threads): Use gomp_icv.
  12742. * config/posix/proc.c, config/mingw32/proc.c: Similarly.
  12743. * config/linux/powerpc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
  12744. (sys_futex0): Return error code.
  12745. (futex_wake, futex_wait): If ENOSYS was returned, clear
  12746. FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
  12747. (cpu_relax, atomic_write_barrier): New static inlines.
  12748. * config/linux/alpha/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
  12749. (futex_wake, futex_wait): If ENOSYS was returned, clear
  12750. FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
  12751. (cpu_relax, atomic_write_barrier): New static inlines.
  12752. * config/linux/x86/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
  12753. (sys_futex0): Return error code.
  12754. (futex_wake, futex_wait): If ENOSYS was returned, clear
  12755. FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
  12756. (cpu_relax, atomic_write_barrier): New static inlines.
  12757. * config/linux/s390/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
  12758. (sys_futex0): Return error code.
  12759. (futex_wake, futex_wait): If ENOSYS was returned, clear
  12760. FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
  12761. (cpu_relax, atomic_write_barrier): New static inlines.
  12762. * config/linux/ia64/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
  12763. (sys_futex0): Return error code.
  12764. (futex_wake, futex_wait): If ENOSYS was returned, clear
  12765. FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
  12766. (cpu_relax, atomic_write_barrier): New static inlines.
  12767. * config/linux/sparc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
  12768. (sys_futex0): Return error code.
  12769. (futex_wake, futex_wait): If ENOSYS was returned, clear
  12770. FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
  12771. (cpu_relax, atomic_write_barrier): New static inlines.
  12772. * config/linux/sem.c: Include wait.h instead of libgomp.h and
  12773. futex.h.
  12774. (gomp_sem_wait_slow): Call do_wait instead of futex_wait.
  12775. * config/linux/affinity.c: Assume HAVE_SYNC_BUILTINS.
  12776. * config/linux/omp-lock.h (omp_lock_25_t, omp_nest_lock_25_t): New
  12777. types.
  12778. (omp_nest_lock_t): Change owner into void *, add lock field.
  12779. * config/posix95/omp-lock.h: Include semaphore.h.
  12780. (omp_lock_25_t, omp_nest_lock_25_t): New types.
  12781. (omp_lock_t): Use sem_t instead of mutex if semaphores
  12782. aren't broken.
  12783. (omp_nest_lock_t): Likewise. Change owner to void *.
  12784. * config/posix/omp-lock.h: Include semaphore.h.
  12785. (omp_lock_25_t, omp_nest_lock_25_t): New types.
  12786. (omp_lock_t): Use sem_t instead of mutex if semaphores
  12787. aren't broken.
  12788. (omp_nest_lock_t): Likewise. Add owner field.
  12789. 2008-06-06 Jakub Jelinek <jakub@redhat.com>
  12790. * testsuite/libgomp.c/collapse-1.c: New test.
  12791. * testsuite/libgomp.c/collapse-2.c: New test.
  12792. * testsuite/libgomp.c/collapse-3.c: New test.
  12793. * testsuite/libgomp.c/icv-1.c: New test.
  12794. * testsuite/libgomp.c/icv-2.c: New test.
  12795. * testsuite/libgomp.c/lib-2.c: New test.
  12796. * testsuite/libgomp.c/lock-1.c: New test.
  12797. * testsuite/libgomp.c/lock-2.c: New test.
  12798. * testsuite/libgomp.c/lock-3.c: New test.
  12799. * testsuite/libgomp.c/loop-4.c: New test.
  12800. * testsuite/libgomp.c/loop-5.c: New test.
  12801. * testsuite/libgomp.c/loop-6.c: New test.
  12802. * testsuite/libgomp.c/loop-7.c: New test.
  12803. * testsuite/libgomp.c/loop-8.c: New test.
  12804. * testsuite/libgomp.c/loop-9.c: New test.
  12805. * testsuite/libgomp.c/nested-3.c: New test.
  12806. * testsuite/libgomp.c/nestedfn-6.c: New test.
  12807. * testsuite/libgomp.c/sort-1.c: New test.
  12808. * testsuite/libgomp.c/task-1.c: New test.
  12809. * testsuite/libgomp.c/task-2.c: New test.
  12810. * testsuite/libgomp.c/task-3.c: New test.
  12811. * testsuite/libgomp.c/task-4.c: New test.
  12812. * testsuite/libgomp.c++/c++.exp: Add libstdc++-v3 build includes
  12813. to C++ testsuite default compiler options.
  12814. * testsuite/libgomp.c++/collapse-1.C: New test.
  12815. * testsuite/libgomp.c++/collapse-2.C: New test.
  12816. * testsuite/libgomp.c++/ctor-10.C: New test.
  12817. * testsuite/libgomp.c++/for-1.C: New test.
  12818. * testsuite/libgomp.c++/for-2.C: New test.
  12819. * testsuite/libgomp.c++/for-3.C: New test.
  12820. * testsuite/libgomp.c++/for-4.C: New test.
  12821. * testsuite/libgomp.c++/for-5.C: New test.
  12822. * testsuite/libgomp.c++/loop-8.C: New test.
  12823. * testsuite/libgomp.c++/loop-9.C: New test.
  12824. * testsuite/libgomp.c++/loop-10.C: New test.
  12825. * testsuite/libgomp.c++/task-1.C: New test.
  12826. * testsuite/libgomp.c++/task-2.C: New test.
  12827. * testsuite/libgomp.c++/task-3.C: New test.
  12828. * testsuite/libgomp.c++/task-4.C: New test.
  12829. * testsuite/libgomp.c++/task-5.C: New test.
  12830. * testsuite/libgomp.c++/task-6.C: New test.
  12831. * testsuite/libgomp.fortran/allocatable1.f90: New test.
  12832. * testsuite/libgomp.fortran/allocatable2.f90: New test.
  12833. * testsuite/libgomp.fortran/allocatable3.f90: New test.
  12834. * testsuite/libgomp.fortran/allocatable4.f90: New test.
  12835. * testsuite/libgomp.fortran/collapse1.f90: New test.
  12836. * testsuite/libgomp.fortran/collapse2.f90: New test.
  12837. * testsuite/libgomp.fortran/collapse3.f90: New test.
  12838. * testsuite/libgomp.fortran/collapse4.f90: New test.
  12839. * testsuite/libgomp.fortran/lastprivate1.f90: New test.
  12840. * testsuite/libgomp.fortran/lastprivate2.f90: New test.
  12841. * testsuite/libgomp.fortran/lib4.f90: New test.
  12842. * testsuite/libgomp.fortran/lock-1.f90: New test.
  12843. * testsuite/libgomp.fortran/lock-2.f90: New test.
  12844. * testsuite/libgomp.fortran/nested1.f90: New test.
  12845. * testsuite/libgomp.fortran/nestedfn4.f90: New test.
  12846. * testsuite/libgomp.fortran/strassen.f90: New test.
  12847. * testsuite/libgomp.fortran/tabs1.f90: New test.
  12848. * testsuite/libgomp.fortran/tabs2.f: New test.
  12849. * testsuite/libgomp.fortran/task1.f90: New test.
  12850. * testsuite/libgomp.fortran/task2.f90: New test.
  12851. * testsuite/libgomp.fortran/vla4.f90: Add dg-warning.
  12852. * testsuite/libgomp.fortran/vla5.f90: Likewise.
  12853. * testsuite/libgomp.c/pr26943-2.c: Likewise.
  12854. * testsuite/libgomp.c/pr26943-3.c: Likewise.
  12855. * testsuite/libgomp.c/pr26943-4.c: Likewise.
  12856. 2008-05-23 Jakub Jelinek <jakub@redhat.com>
  12857. PR c++/36308
  12858. * testsuite/libgomp.c++/ctor-11.C: New test.
  12859. * testsuite/libgomp.c++/ctor-12.C: New test.
  12860. 2008-05-15 Janis Johnson <janis187@us.ibm.com>
  12861. * testsuite/lib/libgomp.exp: Load torture-options.exp from gcc lib.
  12862. 2008-05-07 Jakub Jelinek <jakub@redhat.com>
  12863. PR middle-end/36106
  12864. * testsuite/libgomp.c/atomic-5.c: New test.
  12865. * testsuite/libgomp.c/atomic-6.c: New test.
  12866. * testsuite/libgomp.c/autopar-1.c: New test.
  12867. 2008-04-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12868. * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS)
  12869. (LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY)
  12870. (LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT)
  12871. (LIBGOMP_CHECK_ATTRIBUTE_ALIAS): Fix cache variable names.
  12872. * configure: Regenerate.
  12873. * Makefile.in, testsuite/Makefile.in: Likewise.
  12874. 2008-04-18 Paolo Bonzini <bonzini@gnu.org>
  12875. PR bootstrap/35457
  12876. * aclocal.m4: Regenerate.
  12877. * configure: Regenerate.
  12878. 2008-03-18 Jakub Jelinek <jakub@redhat.com>
  12879. PR middle-end/35611
  12880. * testsuite/libgomp.c/atomic-4.c: New test.
  12881. PR libgomp/35625
  12882. * iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
  12883. (gomp_iter_guided_next): Likewise.
  12884. * testsuite/libgomp.c/pr35625.c: New test.
  12885. 2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  12886. * aclocal.m4: Regenerate.
  12887. * configure: Likewise.
  12888. * Makefile.in: Likewise.
  12889. * testsuite/Makefile.in: Likewise.
  12890. 2008-03-13 Jakub Jelinek <jakub@redhat.com>
  12891. PR middle-end/35185
  12892. * testsuite/libgomp.c++/pr35185.C: New test.
  12893. 2008-03-12 Jakub Jelinek <jakub@redhat.com>
  12894. PR middle-end/35549
  12895. * testsuite/libgomp.c/pr35549.c: New test.
  12896. 2008-03-06 Jakub Jelinek <jakub@redhat.com>
  12897. * testsuite/libgomp.c/atomic-3.c: New test.
  12898. 2008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
  12899. PR fortran/33197
  12900. * testsuite/libgomp.fortran/fortran.exp: Add .f08 and
  12901. .F08 file suffixes.
  12902. 2008-03-03 Peter O'Gorman <pogma@thewrittenword.com>
  12903. PR libgomp/33131
  12904. * configure.ac: Add ACX_HEADER_STRING.
  12905. * env.c: Include strings.h.
  12906. * aclocal.m4: Regenerate.
  12907. * config.h.in: Regenerate.
  12908. * configure: Regenerate.
  12909. * Makefile.in: Regenerate.
  12910. * testsuite/Makefile.in: Regenerate.
  12911. 2008-02-15 Jakub Jelinek <jakub@redhat.com>
  12912. PR middle-end/35196
  12913. * testsuite/libgomp.c/pr35196.c: New test.
  12914. PR middle-end/35130
  12915. * testsuite/libgomp.fortran/pr35130.f90: New test.
  12916. * testsuite/libgomp.c/pr35130.c: New test.
  12917. 2008-01-25 Jakub Jelinek <jakub@redhat.com>
  12918. PR middle-end/33880
  12919. * testsuite/libgomp.c/pr33880.c: New test.
  12920. * testsuite/libgomp.fortran/pr33880.f90: New test.
  12921. 2008-01-24 David Edelsohn <edelsohn@gnu.org>
  12922. * configure: Regenerate.
  12923. 2008-01-08 Jakub Jelinek <jakub@redhat.com>
  12924. * configure.ac: Move futex checking into ../config/futex.m4.
  12925. * configure: Rebuilt.
  12926. * aclocal.m4: Rebuilt.
  12927. * Makefile.in: Rebuilt.
  12928. * configure.tgt: Rename have_tls to gcc_cv_have_tls to match
  12929. 2007-10-15 ../config/tls.m4 change.
  12930. 2007-12-19 Jakub Jelinek <jakub@redhat.com>
  12931. PR c++/34513
  12932. * testsuite/libgomp.c/pr34513.c: New test.
  12933. * testsuite/libgomp.c++/pr34513.C: New test.
  12934. 2007-12-17 Jack Howarth <howarth@bromo.med.uc.edu>
  12935. PR target/32765
  12936. * testsuite/libgomp.fortran/crayptr2.f90: Move dg-options for darwin.
  12937. 2007-12-04 Jakub Jelinek <jakub@redhat.com>
  12938. * omp.h.in (__GOMP_NOTHROW): Define. Use it on omp_* prototypes.
  12939. 2007-12-03 Jakub Jelinek <jakub@redhat.com>
  12940. * testsuite/libgomp.c/private-1.c: New test.
  12941. 2007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
  12942. Paolo Bonzini <bonzini@gnu.org>
  12943. * Makefile.am: Use space as vpath separator. Use 'vpath %'
  12944. instead of 'VPATH ='.
  12945. * Makefile.in: Regenerate.
  12946. 2007-11-23 Matthias Klose <doko@ubuntu.com>
  12947. * configure.ac: Adjust makeinfo version check.
  12948. * configure: Regenerate.
  12949. 2007-11-10 Jakub Jelinek <jakub@redhat.com>
  12950. PR fortran/34020
  12951. * testsuite/libgomp.fortran/pr34020.f90: New test.
  12952. 2007-11-06 Jakub Jelinek <jakub@redhat.com>
  12953. PR c++/33894
  12954. * testsuite/libgomp.c++/atomic-1.C: New test.
  12955. 2007-10-25 Jakub Jelinek <jakub@redhat.com>
  12956. PR libgomp/33275
  12957. * testsuite/libgomp.fortran/omp_parse3.f90 (test_threadprivate):
  12958. Make x and y integers rather than (implicit) reals. Add private (j)
  12959. clause to the last omp parallel.
  12960. 2007-10-15 Maciej W. Rozycki <macro@linux-mips.org>
  12961. * configure: Regenerate following changes to ../config/tls.m4.
  12962. 2007-09-28 Jakub Jelinek <jakub@redhat.com>
  12963. * testsuite/libgomp.fortran/stack.f90: New test.
  12964. 2007-09-10 Danny Smith <dannysmith@users.sourceforge.net>
  12965. * config/mingw32/proc.c: New file.
  12966. 2007-09-05 Uros Bizjak <ubizjak@gmail.com>
  12967. * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
  12968. (main): Use __get_cpuid to get i386 target fetaures.
  12969. * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
  12970. (main): Use __get_cpuid to get x86_64 target fetaures.
  12971. 2007-08-15 Jack Howarth <howarth@bromo.med.uc.edu>
  12972. PR target/32765
  12973. * testsuite/libgomp.fortran/pr32550.f90: Use -static-libgcc on Darwin.
  12974. * testsuite/libgomp.fortran/crayptr2.f90: Likwise.
  12975. 2007-07-12 Jakub Jelinek <jakub@redhat.com>
  12976. PR fortran/32550
  12977. * testsuite/libgomp.fortran/pr32550.f90: New test.
  12978. * testsuite/libgomp.fortran/crayptr2.f90: New test.
  12979. 2007-07-05 H.J. Lu <hongjiu.lu@intel.com>
  12980. * aclocal.m4: Regenerated.
  12981. 2007-07-05 Tobias Burnus <burnus@net-b.de>
  12982. PR fortran/32359
  12983. * testsuite/libgomp.fortran/pr32359.f90: New.
  12984. 2007-07-02 Jakub Jelinek <jakub@redhat.com>
  12985. PR libgomp/32468
  12986. * sections.c (GOMP_parallel_sections_start): Only decrease
  12987. number of threads to COUNT if dyn_var is true.
  12988. * testsuite/libgomp.c/pr32468.c: New test.
  12989. 2007-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
  12990. PR libgomp/26308
  12991. * config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
  12992. 2007-06-21 Jakub Jelinek <jakub@redhat.com>
  12993. PR middle-end/32362
  12994. * testsuite/libgomp.c/pr32362-1.c: New test.
  12995. * testsuite/libgomp.c/pr32362-2.c: New test.
  12996. * testsuite/libgomp.c/pr32362-3.c: New test.
  12997. 2007-06-07 Jakub Jelinek <jakub@redhat.com>
  12998. * team.c (gomp_team_start): Fix setting up thread_attr
  12999. stack size.
  13000. 2007-06-02 Paolo Bonzini <bonzini@gnu.org>
  13001. * configure: Regenerate.
  13002. 2007-05-23 Steve Ellcey <sje@cup.hp.com>
  13003. * Makefile.in: Regenerate.
  13004. * configure: Regenerate.
  13005. * aclocal.m4: Regenerate.
  13006. * testsuite/Makefile.in: Regenerate.
  13007. 2007-05-04 Jakub Jelinek <jakub@redhat.com>
  13008. * config/linux/proc.c: New file.
  13009. PR libgomp/28482
  13010. * configure.tgt: Don't link with -Wl,-z,nodlopen even on Linux.
  13011. 2007-04-19 Daniel Franke <franke.daniel@gmail.com>
  13012. * libgomp.texi (GOMP_CPU_AFFINITY): Updated.
  13013. 2007-04-16 Matthias Klose <doko@debian.org>
  13014. * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
  13015. flags if not building with -m64.
  13016. * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
  13017. flag for i?86-*-* targets, if current target matches -m64.
  13018. 2007-04-14 Steve Ellcey <sje@cup.hp.com>
  13019. * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS.
  13020. * Makefile.in: Regenerate.
  13021. 2007-04-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
  13022. PR testsuite/31369
  13023. * testsuite/libgomp.c++/c++.exp: Don't use concat when setting
  13024. ld_library_path.
  13025. * testsuite/libgomp.fortran/fortran.exp: Likewise.
  13026. 2007-04-04 Jakub Jelinek <jakub@redhat.com>
  13027. * libgomp.h (gomp_cpu_affinity, gomp_cpu_affinity_len): New extern
  13028. decls.
  13029. (gomp_init_affinity, gomp_init_thread_affinity): New prototypes.
  13030. * env.c (gomp_cpu_affinity, gomp_cpu_affinity_len): New variables.
  13031. (parse_affinity): New function.
  13032. (initialize_env): Call it and gomp_init_affinity.
  13033. * team.c (gomp_team_start): If gomp_cpu_affinity != NULL,
  13034. create new pthread_attr_t and call gomp_init_thread_affinity
  13035. on it for each thread before passing the attribute to pthread_create.
  13036. * config/linux/affinity.c: New file.
  13037. * config/posix/affinity.c: New file.
  13038. * configure.ac (HAVE_PTHREAD_AFFINITY_NP): New test.
  13039. * configure: Rebuilt.
  13040. * config.h.in: Rebuilt.
  13041. * Makefile.am (libgomp_la_SOURCES): Add affinity.c.
  13042. * Makefile.in: Rebuilt.
  13043. 2007-03-23 Andreas Tobler <a.tobler@schweiz.org>
  13044. * testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for
  13045. *-*-darwin*.
  13046. * testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library
  13047. and use it if found.
  13048. 2007-03-18 Uros Bizjak <ubizjak@gmail.com>
  13049. * testsuite/config/default.exp: New file.
  13050. * testsuite/lib/libgomp.exp: New file.
  13051. * testsuite/lib/libgomp.dg (load_gcc_lib, libgomp_init,
  13052. libgomp_target_compile, libgomp_option_help, libgomp_option_proc,
  13053. load_lib *, load_gcc_lib *): Move to libgomp.exp.
  13054. (libgomp_load): Remove.
  13055. * testsuite/lib/libgomp.exp (libgomp_init): Compute
  13056. always_ld_library_path, not ld_library_path. Set additional_flags
  13057. to -march=i486 for ilp32 x86_64-*-* and i386-*-* targets.
  13058. (target_compile): Do not call libgomp_init. Append lang_library_path
  13059. and lang_link_flags to options.
  13060. * testsuite/libgomp.c/c.exp: Set DEFAULT_FLAGS to -O2. Set
  13061. ld_library_path from always_ld_library_path. Set LD_LIBRARY_PATH
  13062. here.
  13063. * testsuite/libgomp.c++/c++.exp: Set ld_library_path from
  13064. always_ld_library_path. Set LD_LIBRARY_PATH here.
  13065. * testsuite/libgomp.fortran/fortran.exp: Ditto.
  13066. * testsuite/libgomp.c/atomic-1.c: Set dg-options to
  13067. "-O2 -march=pentium" for ilp32 x86 targets. Simplify check for
  13068. CX8 flag.
  13069. * testsuite/libgomp.c/atomic-2.c: Set dg-options to "-O2 -mcx16" for
  13070. lp64 x86 targets. Do not check for SSE3 bit. Do not define bit_SSE3.
  13071. * testsuite/libgomp.c/pr29947-1.c: Remove default dg-options.
  13072. * testsuite/libgomp.c/pr29947-1.c: Ditto.
  13073. * testsuite/libgomp.c/atomic-10.c: Ditto.
  13074. 2007-03-21 Jakub Jelinek <jakub@redhat.com>
  13075. * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: Add
  13076. dg-final cleanup-modules line.
  13077. * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Likewise.
  13078. * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: Likewise.
  13079. * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: Likewise.
  13080. * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
  13081. * testsuite/libgomp.fortran/reduction5.f90: Likewise.
  13082. * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
  13083. * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
  13084. 2007-03-18 Andreas Schwab <schwab@suse.de>
  13085. * acinclude.m4: Adjust regular expression for ld version
  13086. extraction.
  13087. * configure: Regenerate.
  13088. 2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
  13089. * Makefile.am: Add install-pdf target as copied from
  13090. automake v1.10 rules.
  13091. * Makefile.in: Regenerate
  13092. 2007-02-07 Jakub Jelinek <jakub@redhat.com>
  13093. PR libgomp/28486
  13094. * configure: Regenerate.
  13095. PR c++/30703
  13096. * testsuite/libgomp.c++/pr30703.C: New test.
  13097. 2007-02-02 Jakub Jelinek <jakub@redhat.com>
  13098. Revert:
  13099. 2006-07-05 Eric Christopher <echristo@apple.com>
  13100. * configure.ac: Depend addition of -pthread on host OS.
  13101. * configure: Regenerate.
  13102. 2007-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
  13103. * libgomp.texi: Fix spacing after abbreviations.
  13104. 2007-01-31 Daniel Franke <franke.daniel@gmail.com>
  13105. PR libgomp/30546
  13106. * configure.ac: Add check for makeinfo
  13107. * Makefile.am: Redefined target libgomp.info, build libgomp.info only
  13108. if an appropriate version of makeinfo is found.
  13109. * aclocal.m4: Regenerated.
  13110. * configure: Regenerated.
  13111. * Makefile.in: Regenerated.
  13112. * testsuite/Makefile.in: Regenerated.
  13113. 2007-01-29 Daniel Franke <franke.daniel@gmail.com>
  13114. PR libgomp/30540
  13115. * libgomp.texi: More about implementation-dependent settings.
  13116. 2007-01-26 Tobias Burnus <burnus@net-b.de>
  13117. * testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.
  13118. 2007-01-24 Jakub Jelinek <jakub@redhat.com>
  13119. PR middle-end/30494
  13120. * testsuite/libgomp.c/pr30494.c: New test.
  13121. 2007-01-15 Tom Tromey <tromey@redhat.com>
  13122. * configure: Rebuilt.
  13123. * configure.ac: Fixed comment.
  13124. 2007-01-14 Daniel Franke <franke.daniel@gmail.com>
  13125. * libgomp.texi: Document implementation specific default values of
  13126. environment variables.
  13127. 2006-12-21 Daniel Franke <franke.daniel@gmail.com>
  13128. PR libgomp/28209
  13129. * libgomp.texi: New file.
  13130. * configure.ac: Add --enable-generated-files-in-srcdir option.
  13131. * Makefile.am: Add info, dvi, pdf, html targets. On request, copy
  13132. files to srcdir.
  13133. * Makefile.in: Regenerated.
  13134. * config.h.in: Regenerated.
  13135. * testsuite/Makefile.in: Regenerated.
  13136. * NOTES: Removed.
  13137. 2006-12-04 Daniel Franke <franke.daniel@gmail.com>
  13138. PR libgomp/29949
  13139. * env.c (omp_set_num_threads): Set illegal thread count to 1.
  13140. 2006-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
  13141. * configure: Regenerate.
  13142. 2006-12-04 Jakub Jelinek <jakub@redhat.com>
  13143. PR libgomp/29947
  13144. * loop.c (gomp_loop_init): Make parameters signed. Set ws->end to
  13145. start if there shouldn't be any loop iterations.
  13146. (gomp_loop_ordered_static_start): Remove start == end test.
  13147. * testsuite/libgomp.c/pr29947-1.c: New test.
  13148. * testsuite/libgomp.c/pr29947-2.c: New test.
  13149. 2006-12-02 Eric Botcazou <ebotcazou@libertysurf.fr>
  13150. * configure.tgt: Force initial-exec TLS model on Linux only.
  13151. 2006-11-13 Daniel Jacobowitz <dan@codesourcery.com>
  13152. * configure: Regenerated.
  13153. 2006-11-09 Uros Bizjak <ubizjak@gmail.com>
  13154. * env.c (parse_schedule): Reject out of range values.
  13155. (parse_unsigned_long): Reject out of range, negative or zero values.
  13156. 2006-10-29 Jakub Jelinek <jakub@redhat.com>
  13157. PR fortran/29629
  13158. * testsuite/libgomp.fortran/pr29629.f90: New test.
  13159. 2006-10-24 Eric Botcazou <ebotcazou@libertysurf.fr>
  13160. PR libgomp/29494
  13161. * configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
  13162. * config/posix95: New directory.
  13163. * config/posix95/omp-lock.h: New file.
  13164. * config/posix95/lock.c: Likewise.
  13165. 2006-10-14 Geoffrey Keating <geoffk@apple.com>
  13166. * aclocal.m4: Regenerate.
  13167. * configure: Regenerate.
  13168. 2006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
  13169. * testsuite/libgomp.c/barrier-1.c: Change timestamp tests from
  13170. '<' to '<='.
  13171. 2006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
  13172. * acinclude.m4 (HAVE_ATTRIBUTE_ALIAS): Remove __USER_LABEL_PREFIX__ from
  13173. test.
  13174. * configure: Regenerate.
  13175. * fortran.c (ialias_redirect): Add __USER_LABEL_PREFIX__ to alias.
  13176. 2006-09-26 Jakub Jelinek <jakub@redhat.com>
  13177. PR middle-end/25261
  13178. PR middle-end/28790
  13179. * testsuite/libgomp.c/nestedfn-4.c: New test.
  13180. * testsuite/libgomp.c/nestedfn-5.c: New test.
  13181. * testsuite/libgomp.fortran/nestedfn3.f90: New test.
  13182. PR fortran/29097
  13183. * testsuite/libgomp.fortran/condinc1.f: New test.
  13184. * testsuite/libgomp.fortran/condinc2.f: New test.
  13185. * testsuite/libgomp.fortran/condinc3.f90: New test.
  13186. * testsuite/libgomp.fortran/condinc4.f90: New test.
  13187. * testsuite/libgomp.fortran/condinc1.inc: New file.
  13188. 2006-09-18 Tom Tromey <tromey@redhat.com>
  13189. * configure: Rebuilt.
  13190. 2006-09-13 Joseph S. Myers <joseph@codesourcery.com>
  13191. PR c/28768
  13192. PR preprocessor/14634
  13193. * configure.ac (HAVE_CLOCK_GETTIME): Add missing second argument
  13194. to AC_DEFINE.
  13195. * configure: Regenerate.
  13196. 2006-09-08 Steven G. Kargl <kargl@gcc.gnu.org>
  13197. * testsuite/libgomp.fortran/reduction3.f90: Change
  13198. -2147483648 to -huge(i)-1 to avoid overflow.
  13199. * testsuite/libgomp.fortran/reduction4.f90: Change
  13200. Z'ffffffff' to not(0) to avoid overflow.
  13201. 2006-08-26 Joseph S. Myers <joseph@codesourcery.com>
  13202. PR libgomp/25938
  13203. * Makefile.am (libsubincludedir): New.
  13204. (nodist_include_HEADERS): Rename to nodist_libsubinclude_HEADERS.
  13205. * Makefile.in: Regenerate.
  13206. 2006-08-17 Jakub Jelinek <jakub@redhat.com>
  13207. PR libgomp/28725
  13208. * env.c: Include ctype.h.
  13209. (parse_schedule, parse_unsigned_long, parse_boolean): Allow
  13210. leading and/or trailing whitespace and compare strings case
  13211. insensitively.
  13212. 2006-07-16 Jakub Jelinek <jakub@redhat.com>
  13213. PR fortran/28390
  13214. * testsuite/libgomp.fortran/pr28390.f: New test.
  13215. 2006-07-05 Eric Christopher <echristo@apple.com>
  13216. * configure.ac: Depend addition of -pthread on host OS.
  13217. * configure: Regenerate.
  13218. 2006-06-21 Jakub Jelinek <jakub@redhat.com>
  13219. * critical.c (GOMP_critical_name_start): Fix *pptr initialization
  13220. when gomp_mutex_t is larger than pointer and HAVE_SYNC_BUILTINS is
  13221. defined.
  13222. 2006-06-20 Jakub Jelinek <jakub@redhat.com>
  13223. PR libgomp/26175
  13224. PR libgomp/26477
  13225. * configure.ac: If neither --enable-linux-futex nor
  13226. --disable-linux-futex is passed, determine the default by checking
  13227. for compiling and/or running against NPTL. With --enable-linux-futex,
  13228. check if SYS_gettid and SYS_futex are defined.
  13229. * configure: Rebuilt.
  13230. 2006-06-14 Richard Henderson <rth@redhat.com>
  13231. PR libgomp/28008
  13232. * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
  13233. undefined. Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.
  13234. 2006-06-09 Richard Henderson <rth@redhat.com>
  13235. * env.c (gomp_nthreads_var): Change to unsigned long.
  13236. (gomp_run_sched_chunk): Likewise.
  13237. (parse_unsigned_long): Rename from parse_num_threads and generalize.
  13238. (initialize_env): Initialize gomp_thread_attr.
  13239. * libgomp.h (gomp_nthreads_var): Update decl.
  13240. (gomp_run_sched_chunk): Likewise.
  13241. (gomp_thread_attr): Declare.
  13242. * team.c (gomp_thread_attr): Export.
  13243. (initialize_team): Don't initialize it.
  13244. 2006-06-09 Jakub Jelinek <jakub@redhat.com>
  13245. PR fortran/27916
  13246. * testsuite/libgomp.fortran/pr27916-1.f90: New test.
  13247. * testsuite/libgomp.fortran/pr27916-2.f90: New test.
  13248. 2006-06-06 Francois-Xavier Coudert <coudert@clipper.ens.fr>
  13249. * config/mingw32/time.c: New file.
  13250. * configure.tgt: Use it.
  13251. 2006-05-23 Carlos O'Donell <carlos@codesourcery.com>
  13252. * Makefile.am: Add install-html target. Add install-html to .PHONY
  13253. * Makefile.in: Regenerate.
  13254. 2006-05-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
  13255. PR libgomp/27612
  13256. * testsuite/libgomp.c/sections-1.c: Require sync_int_long.
  13257. * testsuite/libgomp.c/critical-1.c: Likewise.
  13258. * testsuite/libgomp.c/loop-1.c: Likewise.
  13259. * testsuite/libgomp.c/loop-2.c: Likewise.
  13260. * testsuite/libgomp.c/single-1.c: Likewise.
  13261. * testsuite/libgomp.c/ordered-1.c: Likewise.
  13262. * testsuite/libgomp.c/ordered-2.c: Likewise.
  13263. 2006-05-15 Jakub Jelinek <jakub@redhat.com>
  13264. PR middle-end/27416
  13265. * libgomp.fortran/pr27416-1.f90: New test.
  13266. 2006-05-03 Jakub Jelinek <jakub@redhat.com>
  13267. PR fortran/27395
  13268. * testsuite/libgomp.fortran/pr27395-1.f90: New test.
  13269. * testsuite/libgomp.fortran/pr27395-2.f90: New test.
  13270. 2006-05-02 Jakub Jelinek <jakub@redhat.com>
  13271. PR c++/26943
  13272. * testsuite/libgomp.c/pr26943-1.c: New test.
  13273. * testsuite/libgomp.c/pr26943-2.c: New test.
  13274. * testsuite/libgomp.c/pr26943-3.c: New test.
  13275. * testsuite/libgomp.c/pr26943-4.c: New test.
  13276. * testsuite/libgomp.c++/pr27337.C: Remove barrier.
  13277. * testsuite/libgomp.c++/pr26943.C: New test.
  13278. 2006-05-02 Jakub Jelinek <jakub@redhat.com>
  13279. PR middle-end/27337
  13280. * testsuite/libgomp.c++/pr27337.C: New test.
  13281. 2006-04-26 Jakub Jelinek <jakub@redhat.com>
  13282. PR c/26171
  13283. * testsuite/libgomp.c/pr26171.c: New test.
  13284. 2006-04-25 Richard Henderson <rth@redhat.com>
  13285. PR libgomp/25865
  13286. * configure.ac: Use GCC_CHECK_TLS.
  13287. * acinclude.m4 (LIBGOMP_CHECK_TLS): Remove.
  13288. * Makefile.in, aclocal.m4, configure: Regenerate.
  13289. 2006-04-10 Matthias Klose <doko@debian.org>
  13290. * testsuite/lib/libgomp.exp (libgomp_init): Recognize multilib
  13291. directory names containing underscores.
  13292. 2006-03-21 Jakub Jelinek <jakub@redhat.com>
  13293. PR c++/26691
  13294. * testsuite/libgomp.c++/pr26691.C: New test.
  13295. 2006-03-13 Jakub Jelinek <jakub@redhat.com>
  13296. * testsuite/libgomp.fortran/retval2.f90: New test.
  13297. 2006-03-09 Diego Novillo <dnovillo@redhat.com>
  13298. * testsuite/libgomp.c++: New directory.
  13299. 2006-02-25 Shantonu Sen <ssen@opendarwin.org>
  13300. * config/posix/sem.h: Define BROKEN_POSIX_SEMAPHORES functions.
  13301. * config/posix/sem.c: Implement the above.
  13302. 2006-02-25 Andreas Tobler <a.tobler@schweiz.ch>
  13303. * configure.ac (HAVE_BROKEN_POSIX_SEMAPHORES): Check for darwin and
  13304. define HAVE_BROKEN_POSIX_SEMAPHORES.
  13305. * configure: Rebuilt.
  13306. * config.h.in: Rebuilt.
  13307. 2006-02-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
  13308. PR bootstrap/26161
  13309. * configure.ac: Remove AC_CHECK_HEADER for pthread.h. Add comment
  13310. for the other pthread check.
  13311. * configure: Regenerate.
  13312. * config.h.in: Regenerate.
  13313. 2006-02-15 Jakub Jelinek <jakub@redhat.com>
  13314. PR libgomp/25938
  13315. PR libgomp/25984
  13316. * Makefile.am (fincludedir): New variable.
  13317. (nodist_include_HEADERS): Remove Fortran files.
  13318. (nodist_finclude_HEADERS): New variable.
  13319. * Makefile.in: Regenerated.
  13320. 2006-02-13 Jakub Jelinek <jakub@redhat.com>
  13321. * testsuite/libgomp.fortran/vla7.f90: Add -w to options.
  13322. Remove tests for returning assumed character length arrays.
  13323. 2006-02-12 Roger Sayle <roger@eyesopen.com>
  13324. John David Anglin <dave@hiauly1.hia.nrc.ca>
  13325. PR libgomp/25936
  13326. * configure.tgt: Link against -lrt for sem_init on HPUX v11 systems.
  13327. 2006-02-08 Ulrich Weigand <uweigand@de.ibm.com>
  13328. * testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.
  13329. 2006-02-07 Eric Botcazou <ebotcazou@libertysurf.fr>
  13330. * testsuite/lib/libgomp-dg.exp (libgomp_init): Compute multilib related
  13331. part of LD_LIBRARY_PATH manually.
  13332. 2006-02-03 H.J. Lu <hongjiu.lu@intel.com>
  13333. PR libgomp/25852
  13334. * testsuite/lib/libgomp-dg.exp (blddir): Set it in
  13335. libgomp_init.
  13336. 2005-01-25 Paolo Bonzini <bonzini@gnu.org>
  13337. PR libgomp/25884
  13338. * Makefile.am (omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Remove.
  13339. * configure.ac (PERL): Don't set.
  13340. (gstdint.h, omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Create here.
  13341. (OMP_LOCK_SIZE, OMP_LOCK_ALIGN, OMP_LOCK_KIND, OMP_NEST_LOCK_SIZE,
  13342. OMP_NEST_LOCK_ALIGN, OMP_NEST_LOCK_KIND): New substitutions.
  13343. * omp.h.in: Wrap the new configure substitutions with @ characters.
  13344. * omp_lib.h.in, omp_lib.f90.in, libgomp_f.h.in: Likewise.
  13345. * aclocal.m4, configure, Makefile.in: Regenerate.
  13346. * mkomp_h.pl: Delete.
  13347. 2005-01-24 Paolo Bonzini <bonzini@gnu.org>
  13348. PR libgomp/25259
  13349. * configure.ac: Use GCC_HEADER_STDINT.
  13350. * libgomp.h: Include gstdint.h.
  13351. * libgomp_f.h.in: Don't include stdint.h or inttypes.h.
  13352. * configure, Makefile.in, testsuite/Makefile.in, aclocal.m4: Rebuild.
  13353. 2006-01-24 Richard Henderson <rth@redhat.com>
  13354. PR libgomp/25942
  13355. * configure.ac: Add AM_MAINTAINER_MODE.
  13356. * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in: Rebuild.
  13357. 2006-01-24 Diego Novillo <dnovillo@redhat.com>
  13358. * Makefile.in: Regenerate.
  13359. * testsuite/Makefile.in: Regenerate.
  13360. * aclocal.m4: Regenerate.
  13361. 2006-01-23 Andreas Tobler <a.tobler@schweiz.ch>
  13362. * config/posix/proc.c: Conditional include of sys/loadavg.h for
  13363. Solaris.
  13364. * configure.ac: Add check for loadavg.h.
  13365. (link_gomp): Adjust comment.
  13366. * configure: Regenerate.
  13367. * config.h.in: Regenerate.
  13368. 2006-01-21 Steve Ellcey <sje@cup.hp.com>
  13369. PR libgomp/25877
  13370. * configure.ac: Remove check for alloca.h.
  13371. * configure: Regenerate.
  13372. * config.h.in: Regenerate.
  13373. * libgomp.h: define gomp_alloca to be __builtin_alloca.
  13374. * team.c: Remove use of alloca.h.
  13375. Call gomp_alloca instead of alloca.
  13376. 2006-01-20 Steve Ellcey <sje@cup.hp.com>
  13377. PR libgomp/25877
  13378. * team.c: Add include of alloca.h.
  13379. * configure.ac: Add check for alloca.h.
  13380. * configure: Regenerate.
  13381. * config.h.in: Regenerate.
  13382. 2006-01-17 Jakub Jelinek <jakub@redhat.com>
  13383. PR fortran/25219
  13384. * testsuite/libgomp.fortran/pr25219.f90: New test.
  13385. 2005-12-05 Uros Bizjak <uros@kss-loka.si>
  13386. * testsuite/libgomp.c/pr24455.c, testsuite/libgomp.c/copyin-1.c,
  13387. testsuite/libgomp.c/copyin-2.c, testsuite/libgomp.c/copyin-3.c,
  13388. testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
  13389. testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
  13390. testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455.C,
  13391. testsuite/libgomp.fortran/threadprivate1.f90,
  13392. testsuite/libgomp.fortran/threadprivate2.f90,
  13393. testsuite/libgomp.fortran/threadprivate3.f90,
  13394. testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
  13395. testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
  13396. testsuite/libgomp.fortran/omp_parse3.f90: Change required
  13397. effective-target to TLS runtime.
  13398. * testsuite/libgomp.fortran/pr25162.f: Require
  13399. effective-target TLS runtime.
  13400. 2005-12-01 Jakub Jelinek <jakub@redhat.com>
  13401. * testsuite/libgomp.fortran/nestedfn2.f90: New test.
  13402. * testsuite/libgomp.c/nestedfn-3.c: New test.
  13403. 2005-11-30 Jakub Jelinek <jakub@redhat.com>
  13404. PR fortran/25162
  13405. * testsuite/libgomp.fortran/pr25162.f: New test.
  13406. 2005-11-28 Jakub Jelinek <jakub@redhat.com>
  13407. * config/posix/time.c (omp_get_wtime, omp_get_wtick): Fall back to
  13408. CLOCK_REALTIME if clock_* (CLOCK_MONOTONIC, &ts) call failed.
  13409. 2005-11-25 Jakub Jelinek <jakub@redhat.com>
  13410. * alloc.c, barrier.c, critical.c, env.c, error.c, fortran.c, iter.c,
  13411. libgomp.h, libgomp_f.h.in, libgomp_g.h, loop.c, mkomp_h.pl, omp.h.in,
  13412. omp_lib.f90.in, omp_lib.h.in, ordered.c, parallel.c, sections.c,
  13413. single.c, team.c, work.c, config/linux/alpha/futex.h,
  13414. config/linux/bar.c, config/linux/bar.h, config/linux/ia64/futex.h,
  13415. config/linux/lock.c, config/linux/mutex.c, config/linux/mutex.h,
  13416. config/linux/powerpc/futex.h, config/linux/s390/futex.h,
  13417. config/linux/sem.c, config/linux/sem.h, config/linux/sparc/futex.h,
  13418. config/linux/x86/futex.h, config/posix/bar.c, config/posix/bar.h,
  13419. config/posix/lock.c, config/posix/mutex.h, config/posix/proc.c,
  13420. config/posix/sem.c, config/posix/sem.h, config/posix/time.c: Update
  13421. FSF address.
  13422. 2005-11-18 Jakub Jelinek <jakub@redhat.com>
  13423. * Makefile.am: Move libgomp_f.h from nodist_include_HEADERS
  13424. to nodist_noinst_HEADERS.
  13425. * Makefile.in: Rebuilt.
  13426. * config/posix/omp-lock.h (omp_nest_lock_t): Change into struct,
  13427. add integer count field.
  13428. * config/posix/lock.c (omp_destroy_nest_lock): Adjust for
  13429. omp_nest_lock_t type change.
  13430. (omp_init_nest_lock): Likewise. Initialize count to 0.
  13431. (omp_set_nest_lock): Adjust for omp_nest_lock_t type change.
  13432. Increment count.
  13433. (omp_unset_nest_lock): Adjust for omp_nest_lock_t type change.
  13434. Decrement count.
  13435. (omp_test_nest_lock): Adjust for omp_nest_lock_t type change.
  13436. Increment count if successful and return the new nesting level.
  13437. * config/linux/lock.c (omp_test_nest_lock): Return new nesting level.
  13438. * omp_lib.f90.in (omp_test_lock): Fix LOCK argument type.
  13439. * testsuite/libgomp.c/lib-1.c: New test.
  13440. * testsuite/libgomp.fortran/lib1.f90: New test.
  13441. * testsuite/libgomp.fortran/lib2.f: New test.
  13442. * testsuite/libgomp.fortran/lib3.f: New test.
  13443. 2005-11-17 Richard Henderson <rth@redhat.com>
  13444. PR 24845
  13445. * Makefile.am (nodist_toolexeclib_HEADERS): New.
  13446. * configure.ac (link_gomp): New. Substitute it.
  13447. (AC_CONFIG_FILES): Add libgomp.spec.
  13448. * libgomp.spec.in: New file.
  13449. * Makefile.in, testsuite/Makefile.in, configure: Rebuild.
  13450. * testsuite/lib/libgomp-dg.exp: Add -B${blddir}/ to flags.
  13451. 2005-11-18 Jakub Jelinek <jakub@redhat.com>
  13452. * testsuite/libgomp.fortran/reduction1.f90: Adjust for
  13453. reduction(-:var) behaving the same as reduction(+:var).
  13454. * testsuite/libgomp.c/reduction-4.c: New test.
  13455. 2005-11-15 Uros Bizjak <uros@kss-loka.si>
  13456. * testsuite/libgomp.c/pr24455-1.c, testsuite/libgomp.c/pr24455.c,
  13457. testsuite/libgomp.c/copyin-1.c, testsuite/libgomp.c/copyin-2.c,
  13458. testsuite/libgomp.c/copyin-3.c,
  13459. testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
  13460. testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
  13461. testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455-1.C,
  13462. testsuite/libgomp.c++/pr24455.C,
  13463. testsuite/libgomp.fortran/threadprivate1.f90,
  13464. testsuite/libgomp.fortran/threadprivate2.f90,
  13465. testsuite/libgomp.fortran/threadprivate3.f90,
  13466. testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
  13467. testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
  13468. testsuite/libgomp.fortran/omp_parse3.f90: Require
  13469. effective-target TLS.
  13470. 2005-11-14 Diego Novillo <dnovillo@redhat.com>
  13471. * HEADER: Remove.
  13472. 2005-11-13 Jakub Jelinek <jakub@redhat.com>
  13473. PR libgomp/24797
  13474. * team.c (initialize_team): Pass NULL rather than free as
  13475. pthread_key_create destructor. Initialize thread specific data
  13476. pointer in initial thread to a static local variable rather than
  13477. malloced memory.
  13478. 2005-11-11 Uros Bizjak <uros@kss-loka.si>
  13479. * testsuite/lib/libgomp-dg.exp: Locate libgcc.a and append
  13480. its location to ld_library_path.
  13481. 2005-11-10 Diego Novillo <dnovillo@redhat.com>
  13482. * testsuite/libgomp.c/c.exp: Rename from dg.exp.
  13483. 2005-11-10 Diego Novillo <dnovillo@redhat.com>
  13484. * testsuite/libgomp.c: Rename from libgomp.dg.
  13485. 2005-11-09 Diego Novillo <dnovillo@redhat.com>
  13486. * testsuite/libgomp.c++/pr24455.C: Add copyin clause for
  13487. threadprivate variable 'i'.
  13488. 2005-11-09 Jakub Jelinek <jakub@redhat.com>
  13489. * config/linux/s390/futex.h: New file.
  13490. * configure.tgt: Use it.
  13491. * testsuite/libgomp.fortran/omp_parse4.f90: Move n initialization
  13492. before the parallel.
  13493. 2005-11-08 Jakub Jelinek <jakub@redhat.com>
  13494. PR c++/24734
  13495. * testsuite/libgomp.c++/master-1.C: New test.
  13496. 2005-11-07 Jakub Jelinek <jakub@redhat.com>
  13497. * testsuite/libgomp.dg/copyin-3.c: New test.
  13498. 2005-11-07 Jakub Jelinek <jakub@redhat.com>
  13499. * testsuite/libgomp.fortran/retval1.f90: New test.
  13500. * testsuite/libgomp.fortran/vla7.f90: New test.
  13501. 2005-11-06 Jakub Jelinek <jakub@redhat.com>
  13502. * testsuite/libgomp.fortran/vla2.f90: New test.
  13503. * testsuite/libgomp.fortran/vla3.f90: New test.
  13504. * testsuite/libgomp.fortran/vla4.f90: New test.
  13505. * testsuite/libgomp.fortran/vla5.f90: New test.
  13506. * testsuite/libgomp.fortran/vla6.f90: New test.
  13507. 2005-11-01 Jakub Jelinek <jakub@redhat.com>
  13508. * config/linux/sparc/futex.h: New file.
  13509. * configure.tgt: Use it.
  13510. * testsuite/lib/libgomp-dg.exp: Use -mcpu=v9 for sparc testing.
  13511. * critical.c: Include stdlib.h.
  13512. * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Avoid warnings about
  13513. ignoring return value.
  13514. * configure.ac: Don't put -Wc,-pthread into XCFLAGS until after
  13515. LIBGOMP_CHECK_SYNC_BUILTINS check.
  13516. * configure: Rebuilt.
  13517. 2005-10-31 Jakub Jelinek <jakub@redhat.com>
  13518. * testsuite/libgomp.fortran/vla1.f90: New test.
  13519. 2005-10-31 Richard Henderson <rth@redhat.com>
  13520. * testsuite/libgomp.fortran/character2.f90: Fix race condition
  13521. setting 's' in different threads.
  13522. 2005-10-31 Jakub Jelinek <jakub@redhat.com>
  13523. * libgomp.h (attribute_hidden, ialias): Define.
  13524. * config/posix/proc.c (omp_get_num_procs): Add ialias.
  13525. * config/posix/time.c (omp_get_wtime, omp_get_wtick): Likewise.
  13526. * config/posix/lock.c (omp_init_lock, omp_init_nest_lock,
  13527. omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
  13528. omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
  13529. omp_test_lock, omp_test_nest_lock): Likewise.
  13530. * config/linux/lock.c (omp_init_lock, omp_init_nest_lock,
  13531. omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
  13532. omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
  13533. omp_test_lock, omp_test_nest_lock): Likewise.
  13534. * env.c (omp_set_dynamic, omp_set_nested, omp_set_num_threads,
  13535. omp_get_dynamic, omp_get_nested): Likewise.
  13536. * parallel.c (omp_get_num_threads, omp_get_max_threads,
  13537. omp_get_thread_num, omp_in_parallel): Likewise.
  13538. * fortran.c (ialias_redirect): Define.
  13539. (omp_init_lock, omp_init_nest_lock, omp_destroy_lock,
  13540. omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock,
  13541. omp_unset_lock, omp_unset_nest_lock, omp_test_lock,
  13542. omp_test_nest_lock, omp_set_dynamic, omp_set_nested,
  13543. omp_set_num_threads, omp_get_dynamic, omp_get_nested,
  13544. omp_in_parallel, omp_get_max_threads, omp_get_num_procs,
  13545. omp_get_num_threads, omp_get_thread_num, omp_get_wtick,
  13546. omp_get_wtime): Add ialias_redirect.
  13547. 2005-10-30 Jakub Jelinek <jakub@redhat.com>
  13548. * fortran.c: Include stdlib.h.
  13549. 2005-10-29 Jakub Jelinek <jakub@redhat.com>
  13550. * Makefile.am (env.o, env.lo): Depend on libgomp_f.h.
  13551. * Makefile.in: Regenerated.
  13552. 2005-10-28 Jakub Jelinek <jakub@redhat.com>
  13553. * mkomp_h.pl: Remove all -Wc, option prefixes in $COMPILE.
  13554. * libgomp_f.h.in (omp_check_defines): New function.
  13555. * env.c: Include libgomp_f.h.
  13556. (initialize_env): Call omp_check_defines.
  13557. * testsuite/libgomp.dg/copyin-2.c: New test.
  13558. * testsuite/libgomp.c++/copyin-2.C: New test.
  13559. * testsuite/libgomp.fortran/threadprivate3.f90: New test.
  13560. * testsuite/libgomp.fortran/threadprivate2.f90: New test.
  13561. * testsuite/libgomp.fortran/sharing2.f90: New test.
  13562. * testsuite/libgomp.dg/copyin-1.c: New test.
  13563. * testsuite/libgomp.c++/copyin-1.C: New test.
  13564. 2005-10-26 Jakub Jelinek <jakub@redhat.com>
  13565. * testsuite/libgomp.fortran/crayptr1.f90: New test.
  13566. * testsuite/libgomp.fortran/workshare1.f90: New test.
  13567. * libgomp.fortran/appendix-a/a.28.5.f90: Change into compile
  13568. only test.
  13569. * libgomp.fortran/sharing1.f90: New test.
  13570. 2005-10-24 Jakub Jelinek <jakub@redhat.com>
  13571. PR c++/24502
  13572. * testsuite/libgomp.c++/loop-7.C: New test.
  13573. * testsuite/libgomp.dg/nestedfn-2.c: New test.
  13574. * testsuite/libgomp.dg/nestedfn-1.c: New test.
  13575. * testsuite/libgomp.fortran/reduction6.f90: New test.
  13576. * testsuite/libgomp.fortran/nestedfn1.f90: New test.
  13577. 2005-10-23 Richard Henderson <rth@redhat.com>
  13578. * testsuite/libgomp.c++/ctor-1.C: New.
  13579. * testsuite/libgomp.c++/ctor-2.C: New.
  13580. * testsuite/libgomp.c++/ctor-3.C: New.
  13581. * testsuite/libgomp.c++/ctor-4.C: New.
  13582. * testsuite/libgomp.c++/ctor-5.C: New.
  13583. * testsuite/libgomp.c++/ctor-6.C: New.
  13584. * testsuite/libgomp.c++/ctor-7.C: New.
  13585. * testsuite/libgomp.c++/ctor-8.C: New.
  13586. * testsuite/libgomp.c++/ctor-9.C: New.
  13587. 2005-10-21 Diego Novillo <dnovillo@redhat.com>
  13588. PR 24455
  13589. * testsuite/libgomp.c++/pr24455-1.C: New test.
  13590. * testsuite/libgomp.c++/pr24455.C: New test.
  13591. * testsuite/libgomp.dg/pr24455-1.c: New test.
  13592. * testsuite/libgomp.dg/pr24455.c: New test.
  13593. 2005-10-20 Richard Henderson <rth@redhat.com>
  13594. * testsuite/libgomp.c++/loop-6.C: New.
  13595. * testsuite/libgomp.dg/loop-3.c: New.
  13596. 2005-10-20 Jakub Jelinek <jakub@redhat.com>
  13597. * testsuite/libgomp.fortran/jacobi.f: Don't make i and j
  13598. explicitly private.
  13599. * testsuite/libgomp.fortran/omp_parse1.f90 (test_do): Make i
  13600. explicitly shared.
  13601. 2005-10-19 Diego Novillo <dnovillo@redhat.com>
  13602. * testsuite/libgomp.fortran/jacobi.f: New test.
  13603. 2005-10-19 Richard Henderson <rth@redhat.com>
  13604. * configure.tgt (i?86-linux): Default to with_arch instead of
  13605. CFLAGS. Add -mtune to match target_cpu.
  13606. (x86_64-linux): Tune to i686.
  13607. * fortran.c (omp_test_nest_lock_): Fix typo.
  13608. 2005-10-19 Jakub Jelinek <jakub@redhat.com>
  13609. * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
  13610. gomp_ordered_sync): Do nothing if team->nthreads == 1.
  13611. * testsuite/libgomp.dg/ordered-3.c: New test.
  13612. * testsuite/libgomp.dg/appendix-a/a.18.1.c: Remove unconditional abort.
  13613. Remove volatile keyword.
  13614. * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Reorder variables
  13615. in COMMON block to avoid warnings on 64-bit targets.
  13616. 2005-10-18 Diego Novillo <dnovillo@redhat.com>
  13617. * testsuite/libgomp.dg/shared-3.c: New test.
  13618. 2005-10-18 Jakub Jelinek <jakub@redhat.com>
  13619. * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: Removed.
  13620. * testsuite/libgomp.fortran/reduction5.f90: New test.
  13621. 2005-10-18 Jakub Jelinek <jakub@redhat.com>
  13622. * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Add -ffixed-form to
  13623. dg-options.
  13624. * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise. Enable
  13625. flush loop now that __sync_synchronize has proper memory barrier.
  13626. * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: Fix a typo.
  13627. Add -ffixed-form to dg-options.
  13628. 2005-10-17 Diego Novillo <dnovillo@redhat.com>
  13629. * testsuite/libgomp.fortran/fortran.exp: Also gather tests
  13630. from subdirectories.
  13631. * testsuite/libgomp.fortran/appendix-a/a.15.1.f90: New test.
  13632. * testsuite/libgomp.fortran/appendix-a/a.16.1.f90: New test.
  13633. * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: New test.
  13634. * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: New test.
  13635. * testsuite/libgomp.fortran/appendix-a/a.2.1.f90: New test.
  13636. * testsuite/libgomp.fortran/appendix-a/a.21.1.f90: New test.
  13637. * testsuite/libgomp.fortran/appendix-a/a.22.7.f90: New test.
  13638. * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: New test.
  13639. * testsuite/libgomp.fortran/appendix-a/a.26.1.f90: New test.
  13640. * testsuite/libgomp.fortran/appendix-a/a.28.1.f90: New test.
  13641. * testsuite/libgomp.fortran/appendix-a/a.28.2.f90: New test.
  13642. * testsuite/libgomp.fortran/appendix-a/a.28.3.f90: New test.
  13643. * testsuite/libgomp.fortran/appendix-a/a.28.4.f90: New test.
  13644. * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: New test.
  13645. * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: New test.
  13646. * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: New test.
  13647. * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: New test.
  13648. * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: New test.
  13649. * testsuite/libgomp.fortran/appendix-a/a.33.3.f90: New test.
  13650. * testsuite/libgomp.fortran/appendix-a/a.38.1.f90: New test.
  13651. * testsuite/libgomp.fortran/appendix-a/a.39.1.f90: New test.
  13652. * testsuite/libgomp.fortran/appendix-a/a.4.1.f90: New test.
  13653. * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: New test.
  13654. * testsuite/libgomp.fortran/appendix-a/a.5.1.f90: New test.
  13655. * testsuite/libgomp.fortran/appendix-a/a10.1.f90: New test.
  13656. 2005-10-17 Jakub Jelinek <jakub@redhat.com>
  13657. * testsuite/libgomp.dg/dg.exp: Only unset lang_* if
  13658. lang_library_path exists. Use find instead of glob to gather tests.
  13659. * testsuite/libgomp.dg/appendix-a/appendix-a.exp: Removed.
  13660. 2005-10-17 Diego Novillo <dnovillo@redhat.com>
  13661. * testsuite/libgomp.dg/appendix-a/a.15.1.c: New test.
  13662. * testsuite/libgomp.dg/appendix-a/a.16.1.c: New test.
  13663. * testsuite/libgomp.dg/appendix-a/a.18.1.c: New test.
  13664. * testsuite/libgomp.dg/appendix-a/a.19.1.c: New test.
  13665. * testsuite/libgomp.dg/appendix-a/a.2.1.c: New test.
  13666. * testsuite/libgomp.dg/appendix-a/a.21.1.c: New test.
  13667. * testsuite/libgomp.dg/appendix-a/a.26.1.c: New test.
  13668. * testsuite/libgomp.dg/appendix-a/a.29.1.c: New test.
  13669. * testsuite/libgomp.dg/appendix-a/a.3.1.c: New test.
  13670. * testsuite/libgomp.dg/appendix-a/a.39.1.c: New test.
  13671. * testsuite/libgomp.dg/appendix-a/a.4.1.c: New test.
  13672. * testsuite/libgomp.dg/appendix-a/a.5.1.c: New test.
  13673. * testsuite/libgomp.dg/appendix-a/appendix-a.exp: New file.
  13674. 2005-10-15 Jakub Jelinek <jakub@redhat.com>
  13675. * testsuite/libgomp.dg/vla-1.c: New test.
  13676. * testsuite/libgomp.fortran/reference2.f90: New test.
  13677. * testsuite/libgomp.fortran/character2.f90: Remove explicit
  13678. declaration of omp_get_thread_num.
  13679. * testsuite/libgomp.fortran/threadprivate1.f90: Likewise. Add
  13680. use omp_lib.
  13681. * testsuite/libgomp.fortran/reduction1.f90: New test.
  13682. * testsuite/libgomp.fortran/reduction2.f90: New test.
  13683. * testsuite/libgomp.fortran/reduction3.f90: New test.
  13684. * testsuite/libgomp.fortran/reduction4.f90: New test.
  13685. 2005-10-13 Richard Henderson <rth@redhat.com>
  13686. * Makefile.am (libgomp_la_SOURCES): Add bar.c.
  13687. * Makefile.in: Regenerate.
  13688. * barrier.c (GOMP_barrier): Use gomp_barrier_wait.
  13689. * libgomp.h: Include bar.h.
  13690. (struct gomp_barrier): Remove.
  13691. (struct gomp_team): Add barrier. Replace master_barrier with
  13692. master_release. Replace threads with ordered_release.
  13693. (struct gomp_thread): Replace barrier with release.
  13694. * ordered.c (gomp_ordered_first): Update for ordered_release change.
  13695. (gomp_ordered_last, gomp_ordered_next, gomp_ordered_static_init,
  13696. gomp_ordered_static_next, gomp_ordered_sync): Likewise.
  13697. * single.c (GOMP_single_copy_start): Use gomp_barrier_wait.
  13698. (GOMP_single_copy_end): Likewise.
  13699. * team.c (gomp_threads_dock): New.
  13700. (gomp_barrier_init, gomp_barrier_destroy): Remove.
  13701. (gomp_thread_start): Use gomp_barrier_wait.
  13702. (new_team, free_team): Update for gomp_team changes.
  13703. (gomp_team_start): Use gomp_barrier_wait and gomp_barrier_reinit.
  13704. (gomp_team_end): Use gomp_barrier_wait.
  13705. (initialize_team): Update for gomp_thread changes.
  13706. * work.c (gomp_work_share_end): Use gomp_barrier_wait_start.
  13707. (gomp_work_share_end_nowait): Use atomic ops when available.
  13708. * config/linux/bar.c, config/linux/bar.h: New files.
  13709. * config/posix/bar.c, config/posix/bar.h: New files.
  13710. 2005-10-13 Jakub Jelinek <jakub@redhat.com>
  13711. * single.c (GOMP_single_copy_end): Don't segfault if team is NULL.
  13712. * testsuite/libgomp.dg/single-2.c: New test.
  13713. * testsuite/libgomp.dg/dg.exp (lang_library_path, lang_test_file,
  13714. lang_link_flags): Unset, so that they aren't inherited from previously
  13715. sourced *.exp.
  13716. * testsuite/libgomp.fortran/threadprivate1.f90: New test.
  13717. 2005-10-12 Richard Henderson <rth@redhat.com>
  13718. * testsuite/lib/libgomp-dg.exp: Set blddir at toplevel.
  13719. (libgomp_init): Use lang_test_file, lang_library_path, and
  13720. lang_link_flags, set by the subdirectory files. Add -fopenmp here.
  13721. * testsuite/libgomp.fortran/fortran.exp (lang_library_path): New.
  13722. (lang_test_file, lang_link_flags): New.
  13723. (DEFAULT_FFLAGS, ALWAYS_CFLAGS, multilibs, blddir): Remove.
  13724. * testsuite/libgomp.c++/c++.exp, testsuite/libgomp.c++/loop-1.C,
  13725. testsuite/libgomp.c++/loop-2.C, testsuite/libgomp.c++/loop-3.C,
  13726. testsuite/libgomp.c++/loop-4.C, testsuite/libgomp.c++/nested-1.C,
  13727. testsuite/libgomp.c++/parallel-1.C,
  13728. testsuite/libgomp.c++/reduction-1.C,
  13729. testsuite/libgomp.c++/reduction-2.C,
  13730. testsuite/libgomp.c++/reduction-3.C,
  13731. testsuite/libgomp.c++/sections-1.C, testsuite/libgomp.c++/shared-1.C,
  13732. testsuite/libgomp.c++/shared-2.C, testsuite/libgomp.c++/single-1.C,
  13733. testsuite/libgomp.c++/single-2.C, testsuite/libgomp.c++/single-3.C:
  13734. New files, largely cribbed from the C testsuite.
  13735. 2005-10-12 Jakub Jelinek <jakub@redhat.com>
  13736. * testsuite/libgomp.fortran/character1.f90: New test.
  13737. * testsuite/libgomp.fortran/character2.f90: New test.
  13738. * testsuite/libgomp.dg/nested-1.c: New test.
  13739. * testsuite/libgomp.dg/nested-2.c: New test.
  13740. * testsuite/libgomp.fortran/do1.f90: New test.
  13741. * testsuite/libgomp.fortran/do2.f90: New test.
  13742. * testsuite/libgomp.fortran/reference1.f90: New test.
  13743. 2005-10-11 Jakub Jelinek <jakub@redhat.com>
  13744. * testsuite/libgomp.dg/reduction-1.c: New test.
  13745. * testsuite/libgomp.dg/reduction-2.c: New test.
  13746. * testsuite/libgomp.dg/reduction-3.c: New test.
  13747. 2005-10-10 Jakub Jelinek <jakub@redhat.com>
  13748. * testsuite/libgomp.dg/atomic-1.c: New test.
  13749. * testsuite/libgomp.dg/atomic-2.c: New test.
  13750. 2005-10-09 Richard Henderson <rth@redhat.com>
  13751. * critical.c (atomic_lock): New.
  13752. (initialize_critical): Initialize it.
  13753. (GOMP_atomic_start, GOMP_atomic_end): New.
  13754. * libgomp.map: Export them.
  13755. * libgomp_g.h: Declare them.
  13756. * testsuite/libgomp.dg/atomic-10.c: Move from gcc testsuite.
  13757. 2005-10-02 Richard Henderson <rth@redhat.com>
  13758. * configure.ac: Move save_CFLAGS hack earlier. Append -Wall/-Werror
  13759. to XCFLAGS instead of CFLAGS.
  13760. 2005-09-30 Richard Henderson <rth@redhat.com>
  13761. * configure.ac: Determine whether -pthread or -lpthread is needed.
  13762. * Makefile.am (libgomp_la_LDFLAGS): Remove explicit -lpthread.
  13763. * Makefile.in, configure: Rebuild.
  13764. 2005-09-28 Richard Henderson <rth@redhat.com>
  13765. * testsuite/libgomp.dg/omp-loop03.c: Fix return code.
  13766. * testsuite/libgomp.dg/omp-single-3.c: New test.
  13767. 2005-09-28 Diego Novillo <dnovillo@redhat.com>
  13768. * testsuite/libgomp.dg/omp-single-2.c: New test.
  13769. * testsuite/libgomp.dg/shared-2.c: Fix return code.
  13770. 2005-09-27 Richard Henderson <rth@redhat.com>
  13771. * testsuite/libgomp.dg/omp-loop03.c: Add initial barrier.
  13772. * testsuite/libgomp.dg/omp-parallel-for.c: Specify static schedule.
  13773. 2005-09-27 Jakub Jelinek <jakub@redhat.com>
  13774. * testsuite/libgomp.dg/omp-loop03.c: New test.
  13775. 2005-09-27 Diego Novillo <dnovillo@redhat.com>
  13776. * testsuite/libgomp.dg/omp-parallel-for.c: New test.
  13777. 2005-09-27 Diego Novillo <dnovillo@redhat.com>
  13778. * testsuite/libgomp.dg/omp-single-1.c: New test.
  13779. * testsuite/libgomp.dg/shared-1.c: Return 0.
  13780. Add prototype for abort.
  13781. * testsuite/libgomp.dg/shared-2.c: Likewise.
  13782. 2005-09-26 Jakub Jelinek <jakub@redhat.com>
  13783. * testsuite/libgomp.fortran/omp_parse3.f90: Fix non-conforming
  13784. constructs.
  13785. 2005-09-26 Diego Novillo <dnovillo@redhat.com>
  13786. * testsuite/libgomp.dg/shared-1.c: New test.
  13787. * testsuite/libgomp.dg/shared-2.c: New test.
  13788. 2005-09-24 Richard Henderson <rth@redhat.com>
  13789. * testsuite/libgomp.dg/omp_workshare3.c: Mark dg-error.
  13790. 2005-09-24 Richard Henderson <rth@redhat.com>
  13791. * iter.c (gomp_iter_static_next): Round up when computing number
  13792. of iterations. Don't bother distributing a remainder equally.
  13793. * testsuite/libgomp.dg/omp-loop01.c (main1): Rename from main.
  13794. Don't call srand. Zero b before testing.
  13795. (main): New.
  13796. 2005-09-24 Jakub Jelinek <jakub@redhat.com>
  13797. * testsuite/libgomp.fortran/omp_atomic1.f90: New test.
  13798. * testsuite/libgomp.fortran/omp_atomic2.f90: New test.
  13799. 2005-09-23 Jakub Jelinek <jakub@redhat.com>
  13800. * testsuite/libgomp.fortran/omp_parse1.f90: Add a test for !$omp do
  13801. without !$omp end do, followed immediately by subroutine end.
  13802. 2005-09-23 Diego Novillo <dnovillo@redhat.com>
  13803. * testsuite/libgomp.dg/omp-parallel-if.c: New test.
  13804. 2005-09-22 Richard Henderson <rth@redhat.com>
  13805. * critical.c (GOMP_critical_name_start): Change argument to void**.
  13806. Reuse the pointer space if the mutex fits.
  13807. (GOMP_critical_name_end): Likewise.
  13808. (initialize_critical): Don't define if GOMP_MUTEX_INIT_0.
  13809. * libgomp_g.h (GOMP_critical_name_start): Update decl.
  13810. (GOMP_critical_name_end): Likewise.
  13811. * config/linux/mutex.h (GOMP_MUTEX_INIT_0): New.
  13812. * config/posix/mutex.h (GOMP_MUTEX_INIT_0): New.
  13813. 2005-09-20 Richard Henderson <rth@redhat.com>
  13814. * critical.c (GOMP_critical_name_start, GOMP_critical_name_end): New.
  13815. (create_lock_lock): New.
  13816. (initialize_critical): Initialize it.
  13817. * libgomp.map (GOMP_critical_name_start, GOMP_critical_name_end): New.
  13818. * libgomp_g.h (GOMP_ordered_start, GOMP_ordered_end): Declare.
  13819. 2005-09-20 Diego Novillo <dnovillo@redhat.com>
  13820. * testsuite/libgom.dg/omp-loop01.c: Include stdio.h.
  13821. 2005-09-20 Diego Novillo <dnovillo@redhat.com>
  13822. * testsuite/libgomp.dg/omp-loop01.c: New test.
  13823. * testsuite/libgomp.dg/omp-loop02.c: New test.
  13824. 2005-09-20 Jakub Jelinek <jakub@redhat.com>
  13825. * configure.ac (AC_PROG_FC): Add.
  13826. (USE_FORTRAN): New automake conditional.
  13827. * configure: Rebuilt.
  13828. * Makefile.am (libgomp_la_SOURCES): Add fortran.c.
  13829. (nodist_include_HEADERS): Add omp_lib.h, omp_lib.f90 and libgomp_f.h.
  13830. If USE_FORTRAN, add also omp_lib.mod and omp_lib_kinds.mod.
  13831. Add rules to build them.
  13832. * Makefile.in: Rebuilt.
  13833. * mkomp_h.pl: Compute and replace also OMP_LOCK_KIND and
  13834. OMP_NEST_LOCK_KIND.
  13835. * libgomp.map: Add Fortran wrappers.
  13836. * libgomp_f.h.in: New file.
  13837. * omp_lib.h.in: New file.
  13838. * omp_lib.f90.in: New file.
  13839. * fortran.c: New file.
  13840. * testsuite/lib/libgomp-dg.exp: Load a few more .exp files.
  13841. Append libgfortran directory to LD_LIBRARY_PATH if it exists.
  13842. Add -Lpath_to_libgfortran and -lgfortran -lgfortranbegin if
  13843. libgfortran has been built.
  13844. * testsuite/libgomp.fortran/fortran.exp: New file.
  13845. * testsuite/libgomp.fortran/omp_cond1.f: New test.
  13846. * testsuite/libgomp.fortran/omp_cond2.f: New test.
  13847. * testsuite/libgomp.fortran/omp_cond3.F90: New test.
  13848. * testsuite/libgomp.fortran/omp_cond4.F90: New test.
  13849. * testsuite/libgomp.fortran/omp_hello.f: New test.
  13850. * testsuite/libgomp.fortran/omp_orphan.f: New test.
  13851. * testsuite/libgomp.fortran/omp_parse1.f90: New test.
  13852. * testsuite/libgomp.fortran/omp_parse2.f90: New test.
  13853. * testsuite/libgomp.fortran/omp_parse3.f90: New test.
  13854. * testsuite/libgomp.fortran/omp_parse4.f90: New test.
  13855. * testsuite/libgomp.fortran/omp_reduction.f: New test.
  13856. * testsuite/libgomp.fortran/omp_workshare1.f: New test.
  13857. * testsuite/libgomp.fortran/omp_workshare2.f: New test.
  13858. 2005-08-30 Richard Henderson <rth@redhat.com>
  13859. * loop.c (GOMP_loop_static_start): Provide fallback wrapper
  13860. function for when aliases are not usable.
  13861. (GOMP_loop_dynamic_start, GOMP_loop_guided_start,
  13862. GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
  13863. GOMP_loop_ordered_guided_start, GOMP_loop_static_next,
  13864. GOMP_loop_dynamic_next, GOMP_loop_guided_next,
  13865. GOMP_loop_ordered_static_next, GOMP_loop_ordered_dynamic_next,
  13866. GOMP_loop_ordered_guided_next): Likewise.
  13867. * ordered.c (GOMP_ordered_start): Likewise.
  13868. 2005-08-01 Diego Novillo <dnovillo@redhat.com>
  13869. * testsuite/libgomp.dg/dg.exp: Use -O2 for now.
  13870. * testsuite/libgomp.dg/omp_hello.c: Fix return code
  13871. * testsuite/libgomp.dg/omp_matvec.c: Likewise.
  13872. * testsuite/libgomp.dg/omp_orphan.c: Likewise
  13873. * testsuite/libgomp.dg/omp_reduction.c: Likewise
  13874. * testsuite/libgomp.dg/omp_workshare1.c: Likewise
  13875. * testsuite/libgomp.dg/omp_workshare2.c: Likewise
  13876. * testsuite/libgomp.dg/omp_workshare3.c: Likewise
  13877. * testsuite/libgomp.dg/omp_workshare4.c: Likewise
  13878. 2005-07-07 Eric Christopher <echristo@redhat.com>
  13879. Diego Novillo <dnovillo@redhat.com>
  13880. * testsuite/libgomp.dg/dg.exp: Add -fopenmp to DEFAULT_CFLAGS.
  13881. * testsuite/libgomp.dg/omp_hello.c: Add standard includes, fix
  13882. up code.
  13883. * testsuite/libgomp.dg/omp_matvec.c: Ditto.
  13884. * testsuite/libgomp.dg/omp_orphan.c: Ditto.
  13885. * testsuite/libgomp.dg/omp_reduction.c: Ditto.
  13886. * testsuite/libgomp.dg/omp_workshare1.c: Ditto.
  13887. * testsuite/libgomp.dg/omp_workshare2.c: Ditto.
  13888. * testsuite/libgomp.dg/omp_workshare3.c: Ditto.
  13889. * testsuite/libgomp.dg/omp_workshare4.c: Ditto.
  13890. 2005-06-13 Diego Novillo <dnovillo@redhat.com>
  13891. * TOPLEVEL.patch: Remove.
  13892. 2005-05-16 Richard Henderson <rth@redhat.com>
  13893. * configure.ac: Test for clock_gettime.
  13894. * config.h.in, configure: Rebuild.
  13895. * config/posix/time.c: Use recommended TIME_WITH_SYS_TIME pattern.
  13896. (omp_get_wtime): Use clock_gettime if available.
  13897. (omp_get_wtick): Use clock_getres if available.
  13898. 2005-05-11 Richard Henderson <rth@redhat.com>
  13899. * config/linux/ia64/futex.h: New file.
  13900. * configure.tgt: Use it.
  13901. * team.c (gomp_barrier_init, gomp_barrier_destroy): Mark inline.
  13902. 2005-05-07 Richard Henderson <rth@redhat.com>
  13903. * config/linux/powerpc/futex.h: New file.
  13904. * configure.tgt: Use it.
  13905. * config/linux/i486/futex.h: Merge ...
  13906. * config/linux/x86_64/futex.h: ... into ...
  13907. * config/linux/x86/futex.h: ... here.
  13908. * configure.tgt: Update to match.
  13909. 2005-05-06 Richard Henderson <rth@redhat.com>
  13910. * config/linux/alpha/futex.h: Conditionally define SYS_futex.
  13911. * config/linux/i486/futex.h: Likewise.
  13912. * config/linux/x86_64/futex.h: Likewise.
  13913. * config/linux/lock.c: New file.
  13914. * config/linux/omp-lock.h: New file.
  13915. * critical.c, env.h: Don't include omp.h
  13916. * config/posix/lock.c: Include libgomp.h instead of omp.h.
  13917. * config/posix/time.c: Likewise.
  13918. * config/posix/omp-lock.h: New file.
  13919. * libgomp.h: Include omp-lock.h and omp.h.
  13920. * Makefile.am (nodist_include_HEADERS): New.
  13921. (omp.h): New rule.
  13922. * configure.ac (PERL): New.
  13923. * mkomp_h.pl: New file.
  13924. * omp.h.in: Rename from omp.h; replace omp_lock_t and omp_nest_lock_t
  13925. with templates.
  13926. * Makefile.in, configure, testsuite/Makefile.in: Rebuild.
  13927. * testsuite/lib/libgomp-dg.exp (libgomp_init): Add include into
  13928. build directory. Re-add -march=i486 hack.
  13929. * testsuite/lib/libgomp-dg.exp (libgomp_compile_flags): Remove.
  13930. (libgomp_link_flags): Remove.
  13931. (libgomp_initialized): Remove.
  13932. (libgomp_init): Don't protect from reinitialization. Copy code
  13933. from libstdc++ for getting the multilib set correctly.
  13934. 2005-05-05 Richard Henderson <rth@redhat.com>
  13935. * config/linux/alpha/futex.h: New file.
  13936. * configure.tgt (alpha*-*-linux*): Use it.
  13937. * config/posix/mutex.c: New file.
  13938. * config/posix/sem.c: Use libgomp.h.
  13939. * configure.tgt (x86_64-linux): Also test CC for -m32.
  13940. * config/linux/x86_64/futex.h (futex_wait): Fix r10 usage.
  13941. * testsuite/lib/libgomp-dg.exp (libgomp_link_flags): Add /
  13942. after $gccpath.
  13943. * Makefile.am (SUBDIRS): New.
  13944. (libgomp_la_LDFLAGS): Add -lpthread.
  13945. * configure.ac (AM_INIT_AUTOMAKE): Enable dependencies.
  13946. * Makefile.in, aclocal.m4, config.h.in, configure: Rebuild.
  13947. * libgomp_g.h: New file.
  13948. * libgomp.h: Split out all public declarations to libgomp_g.h.
  13949. Use pragma GCC visibility instead of ATTRIBUTE_HIDDEN.
  13950. * config/linux/mutex.h: Remove ATTRIBUTE_HIDDEN.
  13951. * config/linux/sem.h: Likewise.
  13952. * config/posix/sem.h: Likewise.
  13953. * Makefile.am (AM_LDFLAGS): New.
  13954. (libgomp_version_script): Split out from ...
  13955. (libgomp_la_LDFLAGS): ... here.
  13956. (libgomp_version_info): New.
  13957. * acinclude.m4 (LIBGOMP_CHECK_TLS): Use LIBGOMP_ENABLE.
  13958. (LIBGOMP_ENABLE): New.
  13959. (LIBGOMP_CHECK_LINKER_FEATURES): New.
  13960. (LIBGOMP_ENABLE_SYMVERS): New.
  13961. * configure.ac (AC_INIT): Version 1.0.
  13962. (enable-version-specific-runtime-libs): Use LIBGOMP_ENABLE.
  13963. (enable-linux-futex): Likewise. Rename from enable-futex.
  13964. (libtool_VERSION): New.
  13965. (LIBGOMP_ENABLE_SYMVERS): Use it.
  13966. * configure.tgt: Check with_gnu_ld wrt have_tls optimizations.
  13967. * Makefile.in, aclocal.m4, configure: Rebuild.
  13968. * config/linux/mutex.c: Include libgomp.h instead of mutex.h.
  13969. (gomp_mutex_unlock_slow): Fix typo.
  13970. * config/linux/sem.c: Similarly.
  13971. (gomp_sem_post_slow): Fix typo.
  13972. * config/linux/sem.h (gomp_sem_post_slow): Fix typo.
  13973. * config/linux/i486/futex.h: Remove USE_LINUX_SYSENTER code.
  13974. [__PIC__] (sys_futex0): Don't use tmp output in asm.
  13975. * Makefile.am (AM_CFLAGS): Expand with XCFLAGS.
  13976. (libgomp_la_LDFLAGS): Add top_srcdir to path.
  13977. * acinclude.m4: Copy libtool.m4 stuff from libgfortran.
  13978. * configure.ac: Check for getloadavg. Substitute XCFLAGS and
  13979. XLDFLAGS. Add XCFLAGS to CFLAGS around LIBGOMP_CHECK_SYNC_BUILTINS.
  13980. * configure.tgt: Set XCFLAGS and XLDFLAGS instead of CFLAGS and
  13981. LDFLAGS. Pull enable_futex check to top-level.
  13982. * libgomp.h: Fix sem.h and mutex.h includes. Define ATTRIBUTE_HIDDEN.
  13983. * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
  13984. First attempt at real configury.
  13985. * Makefile, config.h: Remove file.
  13986. * Makefile.am, Makefile.in: New file.
  13987. * acinclude.m4 aclocal.m4: New file.
  13988. * configure.ac, configure.tgt, configure: New file.
  13989. * config/posix/lock.c: Rename from sys-lock.c.
  13990. * config/posix/mutex.h: Rename from sys-mutex.h.
  13991. * config/posix/sem.c: Rename from sys-sem.c.
  13992. * config/posix/sem.h: Rename from sys-sem.h.
  13993. * config/posix/proc.c: Rename from sys-proc.c.
  13994. * config/posix/time.c: Rename from sys-proc.c.
  13995. * config/linux/mutex.c: New file.
  13996. * config/linux/mutex.h: New file.
  13997. * config/linux/sem.c: New file.
  13998. * config/linux/sem.h: New file.
  13999. * config/linux/i486/futex.h: New file.
  14000. * config/linux/x86_64/futex.h: New file.
  14001. 2005-05-04 Richard Henderson <rth@redhat.com>
  14002. * iter.c (gomp_iter_dynamic_next, gomp_iter_guided_next): New.
  14003. * libgomp.h: Declare them.
  14004. * loop.c (gomp_loop_dynamic_start, gomp_loop_guided_start,
  14005. gomp_loop_dynamic_next, gomp_loop_guided_next): Use them.
  14006. 2005-05-04 Richard Henderson <rth@redhat.com>
  14007. * libgomp-1 code drop
  14008. 2005-05-04 Richard Henderson <rth@redhat.com>
  14009. * iter.c (gomp_iter_static_next): Return tri-state on 0.
  14010. * ordered.c (gomp_ordered_static_next): Remove not_last argument.
  14011. * libgomp.h (struct gomp_team_state): Make static_trip unsigned.
  14012. (gomp_iter_static_next): Update.
  14013. (gomp_ordered_static_next): Update.
  14014. * loop.c (gomp_loop_static_start): Update for gomp_iter_static_next.
  14015. (gomp_loop_ordered_static_start): Likewise. Exit early for a
  14016. totally empty range.
  14017. (gomp_loop_ordered_static_next): Refine test for calling
  14018. gomp_ordered_static_next.
  14019. * testsuite/ordered-1.c: Add case for more threads than iterations.
  14020. * iter.c (gomp_iter_runtime_next_locked): Remove.
  14021. * loop.c (gomp_loop_static_start, gomp_loop_dynamic_start,
  14022. gomp_loop_guided_start, gomp_loop_ordered_static_start,
  14023. gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
  14024. gomp_loop_static_next, gomp_loop_dynamic_next, gomp_loop_guided_next,
  14025. gomp_loop_ordered_static_next, gomp_loop_ordered_dynamic_next,
  14026. gomp_loop_ordered_guided_next): Downcase name, make static, add
  14027. an external alias with the old name.
  14028. (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
  14029. GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Use a
  14030. switch and call one of the above static functions.
  14031. * libgomp.h: Update.
  14032. * work.c (gomp_work_share_start): Lock the mutex for !first too.
  14033. * loop.c (GOMP_loop_static_start, GOMP_loop_dynamic_start,
  14034. GOMP_loop_guided_start, GOMP_loop_runtime_start,
  14035. GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
  14036. GOMP_loop_ordered_guided_start): Update to match.
  14037. * sections.c (GOMP_sections_start): Likewise.
  14038. * single.c (GOMP_single_start, GOMP_single_copy_start): Likewise.
  14039. * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
  14040. gomp_ordered_static_init, gomp_ordered_static_next): Rename s/_loop//.
  14041. Use bounds check instead of modulus.
  14042. (gomp_ordered_sync): Split out of GOMP_ordered_start.
  14043. (gomp_ordered_last): Don't sync with ordered_owner here.
  14044. (gomp_ordered_next): Likewise.
  14045. (gomp_ordered_static_loop_next): Likewise.
  14046. * loop.c, libgomp.h: Update to match.
  14047. * libgomp.h (GOMP_barrier): Declare.
  14048. * testsuite/barrier-1.c: New file.
  14049. * testsuite/critical-1.c: New file.
  14050. * testsuite/ordered-2.c: New file.
  14051. * testsuite/ordered-1.c: New file.
  14052. * testsuite/sections-1.c: New file.
  14053. * testsuite/single-1.c: New file.
  14054. * testsuite/Makefile (TESTS): Add them.
  14055. 2005-05-04 Richard Henderson <rth@redhat.com>
  14056. * libgomp.h (struct gomp_work_share): Add ordered_owner.
  14057. * loop.c (GOMP_loop_static_start): If not the startup thread,
  14058. acquire the mutex to wait for initialization complete.
  14059. (GOMP_loop_ordered_static_start): Likewise.
  14060. (GOMP_loop_ordered_runtime_start): Likewise.
  14061. (GOMP_loop_ordered_static_first): Remove.
  14062. (GOMP_loop_ordered_dynamic_first): Remove.
  14063. (GOMP_loop_ordered_guided_first): Remove.
  14064. (GOMP_loop_ordered_runtime_first): Remove.
  14065. * ordered.c (gomp_ordered_loop_first): Post to own release when
  14066. we're the first thread.
  14067. (gomp_ordered_loop_last): Wait on release if not owner.
  14068. (gomp_ordered_loop_next): Likewise.
  14069. (gomp_ordered_static_loop_init): New.
  14070. (gomp_ordered_static_loop_next): Use ordered_owner.
  14071. (GOMP_ordered_start): Likewise.
  14072. * work.c (gomp_new_work_share): Initialize ordered_owner.
  14073. 2005-05-03 Richard Henderson <rth@redhat.com>
  14074. * Makefile (OPT): New.
  14075. (CFLAGS): Use it.
  14076. * loop.c (GOMP_loop_end, GOMP_loop_end_nowait): New.
  14077. * sections.c (GOMP_sections_end, GOMP_sections_end_nowait): New.
  14078. * libgomp.h, libgomp.map, NOTES: Update to match.
  14079. * team.c (struct gomp_thread_start_data): Remove ts, fn, data.
  14080. Add initialized and thr members.
  14081. (gomp_thread_start): Pause when initially spawned to wait for
  14082. the whole team to be created.
  14083. (gomp_team_start): Release team members at the end.
  14084. * testsuite/loop-1.c (N): New. Use it instead of hardcoded 100.
  14085. (f_foo_1): Use GOMP_loop_end.
  14086. (f_foo_2): Use GOMP_loop_end_nowait.
  14087. * testsuite/loop-2.c: New file.
  14088. * testsuite/Makefile (TESTS): Add it.
  14089. 2005-05-03 Richard Henderson <rth@redhat.com>
  14090. * iter.c (gomp_iter_static_next): Fix overflow check typo.
  14091. (gomp_iter_dynamic_next_locked): Fix overflow check thinko.
  14092. * team.c (new_team): Initialize oldest_live_gen to 1 if no
  14093. initial work_share.
  14094. * testsuite/Makefile: New file.
  14095. * testsuite/loop-1.c: New file.
  14096. 2005-05-03 Richard Henderson <rth@redhat.com>
  14097. Initial implementation and checkin.
  14098. Copyright (C) 2005-2022 Free Software Foundation, Inc.
  14099. Copying and distribution of this file, with or without modification,
  14100. are permitted in any medium without royalty provided the copyright
  14101. notice and this notice are preserved.