1
0
Fork 0
mirror of https://github.com/VSadov/Satori.git synced 2025-06-08 03:27:04 +09:00

Removed legacy LLVM ObjWriter. Removed all mentions of LLVM ObjWriter. Removed all LLVM ObjWriter package references. (#99733)

This commit is contained in:
Will Smith 2024-03-14 12:35:42 -07:00 committed by GitHub
parent 0ea9b8f68c
commit 5961ee1830
Signed by: github
GPG key ID: B5690EEEBB952194
9 changed files with 8 additions and 1513 deletions

View file

@ -22,8 +22,6 @@ The Native AOT toolchain can be currently built for Linux (x64/arm64), macOS (x6
The paths to major components can be overridden using `IlcToolsPath`, `IlcSdkPath`, `IlcFrameworkPath`, `IlcFrameworkNativePath` and `IlcMibcPath` properties for `dotnet publish`. For example, `/p:IlcToolsPath=<repo root>\artifacts\bin\coreclr\windows.x64.Debug\ilc` can be used to override the compiler with a local debug build for troubleshooting or quick iterations.
The component that writes out object files (objwriter.dll/libobjwriter.so/libobjwriter.dylib) is based on LLVM and doesn't build in the runtime repo. It gets published as a NuGet package out of the [dotnet/llvm-project](https://github.com/dotnet/llvm-project) repo (branch [objwriter/12.x](https://github.com/dotnet/llvm-project/tree/objwriter/12.x)). If you're working on ObjWriter or bringing up a new platform that doesn't have ObjWriter packages yet, as additional pre-requisites you need to build objwriter out of that repo and replace the file in the output.
### Building packages
Run `build[.cmd|.sh] -c Release` from the repo root to build the NativeAOT toolchain packages. The build will place the toolchain packages at `artifacts\packages\Release\Shipping`. To publish your project using these packages:

View file

@ -85,7 +85,7 @@ The object files generated by the ILC compiler contain debug information for met
The ILC compiler typically compiles the whole program - it loosely corresponds to the composite mode of crossgen2. There is a multifile mode, where each managed assembly corresponds to a single object file, but this mode is not shipping.
The object files generated by the ILC compiler are written out using an LLVM-based object writer (consumed as a NuGet package built out of the dotnet/llvm-project repo, branch objwriter/12.x). The object writer uses the LLVM assembler APIs (APIs meant to be used by tools that convert textual assembly into machine code) to emit object files in PE/ELF/Mach-O formats.
The supported object files generated by the ILC compiler are PE/ELF/Mach-O formats.
## Example of debugging a test application in Crossgen2