Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Add an option to crossgen S.P.CoreLib using the alt jit.
|
|
This also changes the x86/RyuJIT CI job to pass this option to
build.cmd. This leg will now use RyuJIT when crossgen'ing S.P.CoreLib
and when running tests.
|
|
* Add PGO GENPROFILE support to coreclr and clrjit
Update the cmake build system to enable support for Profile Guided
Optimization (PGO) on Windows, and enable this feature for two target
binaries (coreclr and clrjit).
With this change, toggle between instrumented and profile-optimized
settings for target binaries by passing pgoinstrument argument to the build.cmd
Assume profile-optimized mode by default. Fall back to regular non-PGO
optimized builds if profile data is not available.
|
|
This change has two parts. The first part changes build.cmd and the pkgproj
so that as part of generating a .NET Core package we also generate the PDBS
for the Native System.Private.Corelib.ni.dll.
The second part changes crossgen so that it marks the Native Images as having
a list of 0 exports. This is important because we want the generated PDBs
to be naturally published on the symbol server, and currently the symbol server
skips DLLs what are 'resource only' (no imports or exports). Because native
images don't use 'normal' PE imports and exports, they get optimized away
by the symbol server. Making a empy list of exports fixes this.
|
|
Enable Windows Arm32 build
|
|
For formatting, we want to be able to obtain the compile_commands.json
file so that we do not have to 1) do a full build of coreclr and 2)
generate it ourselves from the build log. This change modifies build.cmd
to take an option "usenmakemakefiles." This option will set
__NMakeMakefiles to 1, which is used by the gen-buildsys-win.bat script.
This option also sets all the same options as configureonly, as we cannot
do a full build using NMake Makefiles, and we only want to use this to
force CMake to generate a compile_commands.json file for the jit
directory, which it can do using NMake Makefiles, but not Visual Studio.
The update to gen-buildsys-win.bat checks the value of __NMakeMakefiles,
and if it is set to 1, it sets the CMake Generator to NMake Makefiles.
|
|
|
|
|
|
|
|
|
|
ARM64: Fix Build Break
|
|
|
|
|
|
|
|
|
|
|
|
* Add to model.xml several members we wish to expose in the FX.
Done by pulling lines selectively from a model.xml created from the full
s.p.corelib.dll.
* Add parameter to build.cmd to build both mscorlib and its native image, then stop. Also dump any errors to console for CI.
* Fix up to date check of BCLRewriter: should build when model.xml is changed
|
|
|
|
|
|
|
|
|
|
|
|
Include the targeting pack in the build process.
|
|
Explanation: if errorlevel n actually tests if the errorlevel is
greater than or equal to n. See: http://ss64.com/nt/if.html
|
|
packages.
This removes the need to have individual packages added to the build scripts to generate them.
|
|
Removing Build dependency for GC Stress
|
|
Fixes #5172
This has dependency on CoreCLR.
Use the same version 1.0.3 as CoreCLR.
Tested both packages are produced in Windows/Linux locally.
|
|
|
|
|
|
|
|
|
|
Fix checking of correct errorlevel for crossgen
|
|
|
|
|
|
Fix issue 4367 where file description of native tools is wrong
|
|
1. Update arm64 toolset to latest.
2. Link against ucrt.
3. Fix tls offsets which have changed due to updated toolset
4. Fix source code in decimal.cpp to avoid integer overflow. Result of signed integer overlfow is undefined in C++.
5. Enable build of sos which can be loaded in arm64 windbg
6. Add nop to empty assembly marker methods as new toolset generates invalid .pdata for them.
|
|
The PS version log path is incorrectly set to the root of the current drive when
building for ARM64 with toolset_dir set. In that case, the `%~dp0` doesn't hold
the current drive and directory anymore.
I have fixed it by using `__LogsDir` instead. It it a good practice to put generated
files somewhere under the bin folder and the logs directory seems appropriate.
|
|
Adding Versioning to Native components in non-Windows builds.
|
|
|
|
Powershell v3 or higher is required to decompress the build tools
bundle. Windows 7 typically has v2 installed.
Detect earlier versions and fail with a pointer to the
build prerequisites and a download link for an updated version.
Also propagate failures out of init-tools.cmd. The last step
of this is unchecked since the build tool init script can return
nonzero status even on success.
See #3510.
|
|
This change adds a new argument to build.cmd, buildjit32, that configures
the build to build and link JIT32 instead of RyuJIT if the sources are
available in `src/jit32`.
|
|
Remove UseRoslynCompiler variable from the build system
|
|
|
|
|
|
|
|
This fixes path for the right libs that are consistent with tools.
With this, crossgen.exe can run natively on arm64.
fix
|
|
Currently ARM64 build requires a plain CMD environment which often causes
a trouble when we use a different CMD or other native tools are in the path.
The fix is to simply prepend the tool path instead of appending it.
|
|
|
|
Disable OpenSourceSign and update BuildTools
|