Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
Use DynamicSecurityMethod attribute to mark methods with StackCrawlMark
|
|
Fix System.Numerics.Vectors CoreFx test failures
|
|
ARM64 Modify genCodeForInitBlk assert
|
|
[RyuJIT/ARM32] EH, switch implementation and various updates
|
|
Assert in codegenarm64 was incorrect for the GT_STORE_DYN_BLK oper.
If it is that oper then there will not be a temp reg used and instead
the size is computed and stored into REG_2. Add an assert to assert
this is done.
|
|
|
|
CoreCLR does not have CAS, and so we can conveniently use it to mark methods with StackCrawlMark to
decouple it from NoInlining. The original purpose of DynamicSecurityMethod was to disable inlining
of the caller and to insert CAS security checks, so we are basically just keeping the first part.
Fixes #8102
|
|
This reverts commit 0826f9dee6a8fdf8266523945708a684376b0280.
|
|
Report bytes allocated in the JIT time log.
|
|
CoreFx Issue 15713 is due to a case of an Indir(Addr(Field(Vector3 local))) which for some reason has a MorphAddrContext of MACK_Ind. Although I haven't fully identified why that is the case, we should be conservative in this case and mark the address as do-not-enregister.
In addition, when attempting to debug this with a Checked JIT, I encountered an AV due to `GetJitTls` returning null in the `JITDUMP` calls in `getMaxIntrinsicSIMDVectorLength`. Again, I'm not sure why this would be the case but I have added guarding conditions.
|
|
Inlines of calls from implicit tail call sites should allow recognition
of inlinee implicit tail call sites.
The jit recognizes implicit tail call sites during importation,
but the inlinee compiler instance did not have compTailCallOpt set
and so never recognized these instances. Fix this and update the logic
to detect the transitively implicit tail calls.
Now that these sites are recognized, morph needs a fix to tunnel through
repeated casts for tail calls, since each level of inlining might add a
cast. All these casts should be identical.
Note under R2R tail calls are not yet recognized (see ZapInfo::canTailCall).
Enable only under FEATURE_TAILCALL_OPT_SHARED_RETURN since the
inline tail call sites are not likely to be in BBJ_RETURN blocks.
Closes #9349.
|
|
|
|
This adds a new column, "Total Bytes Allocated", to the JIT time log.
This column reports the total number of bytes requested from the host by
the JIT's arena allocator.
This change also enables `FEATURE_JIT_TIMER` by default (which only
affects JIT32).
|
|
code (#8866)
* [ARM32/Linux] Fix cross-architecture component build error: unused function comparing CONTEXT with T_CONTEXT.
- change build script: remove duplicate test build in cross-component build
|
|
|
|
* Unify GetControlPC
* Unify GetRegdisplaySP/SetRegdisplaySP
|
|
|
|
* GcHandle Perf Tweaks
|
|
* Revert earlier CAS changes to Eventing/** and put under !if !CORECLR
|
|
Increase field count limit to 3 for promoting a struct with no field accesses.
|
|
Replace binary literal with hex
|
|
Revert "Delete mscorlib from packages (#9313)"
|
|
JIT: fix confusing inline failure reason
|
|
|
|
|
|
This reverts commit 4fe623c9235e4df42be810d09ca7f282956e3cec.
# Conflicts:
# src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/debian/Microsoft.NETCore.Runtime.CoreCLR.pkgproj
|
|
Update conservative value numbers during CSE
|
|
Add k-nucleotide to BenchmarkGames
|
|
Changed .gitattributes to set line endings to windows ones for the input
files of this test.
Added two different tests, one with and the other without parallelism.
Used FileStream instead of BufferedStream, since the latter does not
exist in netstandard 1.4
|
|
|
|
When attempting to inline a method from the core library, the inline
will fail if the method being inlined has a noinline callee; the
presumption being that the callee expects to be able to find it's
immediate caller on the stack (this may or not may be the case, see #8102).
Update the failure message for this case to hopefully better explain
why the inline doesn't happen.
|
|
The desktop build breaks with the binary literal used in the fat pointer
mask. Replace it with a hex equivalent.
|
|
When a CSE candidate's defs all share the same conservative value number,
its uses can be updated to share that conservative value number as well
when CSE is performed, because we are removing any reloads that may have
been the cause of the divergence. Performing this update can improve
subsequent range check elimination when the CSE use is array length or
index in a bounds check.
|
|
Fix warning from an unsigned/signed comparison
|
|
|
|
* Rename __reserved to __clr_reserved to avoid a conflict on Android
|
|
Fixes out going call in UMThunkStub to be 16 byte stack aligned
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|