<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
.MsoChpDefault
{mso-style-type:export-only;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style>
</head>
<body lang="EN-US" link="blue" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Thanks for the replies, Andrzej and Steve,</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">This placeholder driver may be sufficient for my purposes for now. My goal is to use Flang to implement some high-level transformations for the Adaptive MPI project, those being converting: global variables into !omp threadprivate() variables,
and LUNs with hardcoded values into virtualized ones. Does Flang provide a mechanism for manipulating the AST directly? If not, are there any code rewriting mechanisms (a la Clang) or should these manipulations be performed at the FIR-level? Any guidance on
this matter would be appreciated, I scanned through the documentation and did not immediately see any discussion of code manipulation.</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thanks,</p>
<p class="MsoNormal">Justin Szaday<br>
PhD Student in Computer Science<br>
University of Illinois at Urbana-Champaign</p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="border:none;padding:0in"><b>From: </b><a href="mailto:flang-dev@lists.llvm.org">Andrzej Warzynski via flang-dev</a><br>
<b>Sent: </b>Thursday, June 25, 2020 7:45 AM<br>
<b>To: </b><a href="mailto:flang-dev@lists.llvm.org">flang-dev@lists.llvm.org</a><br>
<b>Subject: </b>Re: [flang-dev] Difficulties with In-Tree Build of Flang</p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Hello Justin,<br>
<br>
The new driver will take a while to implement. Internally we are aiming <br>
for LLVM 12, but that depends on many factors. First we'd like to <br>
refactor some bits of Clang's driver so that it is easy to re-use them <br>
in Flang.<br>
<br>
- Andrzej<br>
<br>
<br>
On 24/06/2020 22:50, Steve Scalpone via flang-dev wrote:<br>
> Hi Justin,<br>
> <br>
> The flang script reads from standard input if a source file is not <br>
> provided on the command line. It appears to hang, but it’s really just <br>
> waiting for input.<br>
> <br>
> Flang isn’t hooked up to a code generator yet, so instead, by default, <br>
> flang generates another Fortran source file and tries to compile that <br>
> file with a different compiler. The default is pgf90, but you can set <br>
> the environment variable F18_FC to be a different compiler, like gfortran.<br>
> <br>
> The flang script that you are running is just a throwaway driver until <br>
> the real driver is ready. That work is under development right now, but <br>
> I don’t know when it will be ready. Until then, we have this quirky <br>
> script that lets us test flang semantics.<br>
> <br>
> - Steve<br>
> <br>
> *From: *flang-dev <flang-dev-bounces@lists.llvm.org> on behalf of <br>
> flang-dev <flang-dev@lists.llvm.org><br>
> *Reply-To: *"Szaday, Justin Josef" <szaday2@illinois.edu><br>
> *Date: *Wednesday, June 24, 2020 at 2:02 PM<br>
> *To: *flang-dev <flang-dev@lists.llvm.org><br>
> *Subject: *[flang-dev] Difficulties with In-Tree Build of Flang<br>
> <br>
> *External email: Use caution opening links or attachments*<br>
> <br>
> Hello all,<br>
> <br>
> I am having a very difficult time getting in-tree builds of Flang <br>
> working. My build commands are as follows:<br>
> <br>
> cmake -G Ninja -DLLVM_ENABLE_PROJECTS="flang" <br>
> -DCMAKE_INSTALL_PREFIX=$(pwd) -DCMAKE_BUILD_TYPE=MinSizeRel ../llvm<br>
> <br>
> cmake --build . --target check-flang<br>
> <br>
> cmake --build . --target install<br>
> <br>
> The build itself completes successfully, and all the Flang tests pass <br>
> when using “check-flang”; however, “flang -v” and “flang -h” hang (it <br>
> does not produce any output and has to be killed) and, when trying to <br>
> compile a program, I get the error message “execvp(pgf90) failed: No <br>
> such file or directory” (which fails even if I set F18_FC to gfortran or <br>
> flang). I have tried building it on a few machines to no avail. I have <br>
> tested both the Debug and MinSizeRel build types, used both Ninja and <br>
> Unix Makefiles to build it, and tested a few different versions of <br>
> GCC/G++, ultimately settling on v9.1.0. I am building from master of the <br>
> llvm-project GitHub repository.<br>
> <br>
> Any insights here would be appreciated, I am at a loss about what else <br>
> to try here. Any other debugging suggestions or usage tips would be <br>
> appreciated as well.<br>
> <br>
> Thanks,<br>
> <br>
> Justin<br>
> <br>
> <br>
> _______________________________________________<br>
> flang-dev mailing list<br>
> flang-dev@lists.llvm.org<br>
> <a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/flang-dev">https://lists.llvm.org/cgi-bin/mailman/listinfo/flang-dev</a><br>
> <br>
_______________________________________________<br>
flang-dev mailing list<br>
flang-dev@lists.llvm.org<br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/flang-dev">https://lists.llvm.org/cgi-bin/mailman/listinfo/flang-dev</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>