BEGIN:VCALENDAR
VERSION:2.0
PRODID:Linklings LLC
BEGIN:VTIMEZONE
TZID:America/Chicago
X-LIC-LOCATION:America/Chicago
BEGIN:DAYLIGHT
TZOFFSETFROM:-0600
TZOFFSETTO:-0500
TZNAME:CDT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0500
TZOFFSETTO:-0600
TZNAME:CST
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTAMP:20211207T055339Z
LOCATION:226
DTSTART;TZID=America/Chicago:20211114T143200
DTEND;TZID=America/Chicago:20211114T143900
UID:submissions.supercomputing.org_SC21_sess431_ws_llvmlt105@linklings.com
SUMMARY:Loop Transformations Using Clang's Abstract Syntax Tree
DESCRIPTION:Workshop\n\nLoop Transformations Using Clang's Abstract Syntax
  Tree\n\nKruse\n\nOpenMP 5.1 introduced the first loop nest transformation
  directives unroll and tile, and more are expected to be included in OpenM
 P 6.0.  We discuss the two Abstract Syntax Tree (AST) representations used
  by Clang's implementation that is currently under development.  The first
  representation is designed for compatibility with the existing implementa
 tion and stores the transformed loop nest in a shadow AST next to the synt
 actical AST.  The second representation introduces a new meta AST-node OMP
 CanonicalLoop that guarantees that the semantic requirements of an OpenMP 
 loop are met, and a CanonicalLoopInfo type that the OpenMPIRBuilder uses t
 o represent literal and transformed loops.  This second approach provides 
 a better abstraction of loop semantics, removes the need for shadow AST no
 des that are only relevant for code generation, allows sharing the impleme
 ntation with other front-ends such as Flang, but depends on the OpenMPIRBu
 ilder which is currently under development.\n\nTag: Parallel Programming S
 ystems\n\nRegistration Category: Workshop Reg Pass
END:VEVENT
END:VCALENDAR
