Explicit representation of ASTs for all the functions in a compile unit.

Added AST and Function classes.
Now, we parse the whole file and build up the AST for all of the
  functions in the Module before we emit IR for the functions (vs. before,
  when we generated IR along the way as we parsed the source file.)
This commit is contained in:
Matt Pharr
2011-10-06 15:18:42 -07:00
parent ec5e627e56
commit f9c67ff806
15 changed files with 935 additions and 613 deletions

View File

@@ -11,10 +11,12 @@
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClCompile Include="builtins.cpp" />
<ClCompile Include="ast.cpp" />
<ClCompile Include="builtins.cpp" />
<ClCompile Include="ctx.cpp" />
<ClCompile Include="decl.cpp" />
<ClCompile Include="expr.cpp" />
<ClCompile Include="expr.cpp" />
<ClCompile Include="func.cpp" />
<ClCompile Include="gen-bitcode-avx.cpp" />
<ClCompile Include="gen-bitcode-avx-x2.cpp" />
<ClCompile Include="gen-bitcode-c-32.cpp" />
@@ -47,10 +49,12 @@
<ClCompile Include="util.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="builtins.h" />
<ClInclude Include="ast.h" />
<ClInclude Include="builtins.h" />
<ClInclude Include="ctx.h" />
<ClInclude Include="decl.h" />
<ClInclude Include="expr.h" />
<ClInclude Include="expr.h" />
<ClInclude Include="func.h" />
<ClInclude Include="ispc.h" />
<ClInclude Include="llvmutil.h" />
<ClInclude Include="module.h" />