Skip to content
This repository has been archived by the owner on Jan 23, 2023. It is now read-only.

Implement GcInfo v2 for X86 #6974

Merged
merged 1 commit into from
Sep 14, 2016
Merged

Conversation

swaroop-sridhar
Copy link

@swaroop-sridhar swaroop-sridhar commented Aug 30, 2016

Implement GcInfo v2 for X86

This commit includes the following changes:

  1. Thread GcInfo version through X86 specific APIs
  2. Add ReturnKind and ReversePinvokeOffset fields to InfoHdr structure
    GcInfo v1 and v2 use the same InfoHdr structures, because:
    InfoHdrSmall: ReturnKind is encoded within previously unused bits.
    InfoHdr: revPInvokeOffset will never be written to the image,
    since ReversePinvokeOffset==INVALID_REV_PINVOKE_OFFSET for V1.
  3. Update the Pre-computed header table to include bits for the above
    [The default setting of ReturnKind=RT_Scalar is used for all entries in the table.
    Optimizing this table based in most frequent usage scenarios is to be done separately]
  4. Change the GC encoder/decoder to handle the above two fields
  5. Use the ReturnKind in the GCInfo from thread-suspension code.

GcInfo version is changed for CoreCLR X86 only, not for Desktop JIT
Fixes #4379

@swaroop-sridhar swaroop-sridhar added * NO MERGE * The PR is not ready for merge yet (see discussion for detailed reasons) and removed cla-already-signed labels Aug 30, 2016
@swaroop-sridhar swaroop-sridhar force-pushed the gc86 branch 2 times, most recently from edcade3 to 6bb8443 Compare August 30, 2016 20:43
@swaroop-sridhar swaroop-sridhar removed the * NO MERGE * The PR is not ready for merge yet (see discussion for detailed reasons) label Aug 30, 2016
@swaroop-sridhar swaroop-sridhar force-pushed the gc86 branch 4 times, most recently from baaf17b to c2e452b Compare September 7, 2016 23:49
@swaroop-sridhar
Copy link
Author

@dotnet-bot help

@dotnet-bot
Copy link

Welcome to the dotnet/coreclr Repository

The following is a list of valid commands on this PR. To invoke a command, comment the indicated phrase on the PR

The following commands are valid for all PRs and repositories.

Comment Phrase Action
@dotnet-bot test this please Re-run all legs. Use sparingly
@dotnet-bot test ci please Generates (but does not run) jobs based on changes to the groovy job definitions in this branch
@dotnet-bot help Print this help message

The following jobs are launched by default for each PR against dotnet/coreclr:master.

Comment Phrase Job Launched
@dotnet-bot test Linux ARM Emulator Cross Debug Build Linux ARM Emulator Cross Debug Build
@dotnet-bot test Linux ARM Emulator Cross Release Build Linux ARM Emulator Cross Release Build
@dotnet-bot test FreeBSD x64 Checked Build FreeBSD x64 Checked Build
@dotnet-bot test OSX x64 Checked Build and Test OSX x64 Checked Build and Test
@dotnet-bot test Ubuntu x64 Checked Build and Test Ubuntu x64 Checked Build and Test
@dotnet-bot test CentOS7.1 x64 Debug Build and Test CentOS7.1 x64 Debug Build and Test
@dotnet-bot test Windows_NT x64 Debug Build and Test Windows_NT x64 Debug Build and Test
@dotnet-bot test CentOS7.1 x64 Release Priority 1 Build and Test CentOS7.1 x64 Release Priority 1 Build and Test
@dotnet-bot test Windows_NT x64 Release Priority 1 Build and Test Windows_NT x64 Release Priority 1 Build and Test
@dotnet-bot test Windows_NT x86 legacy_backend Checked Build and Test Windows_NT x86 legacy_backend Checked Build and Test
@dotnet-bot test Windows_NT x86 ryujit Checked Build and Test Windows_NT x86 ryujit Checked Build and Test

The following optional jobs are available in PRs against dotnet/coreclr:master.

Comment Phrase Job Launched
@dotnet-bot test Windows_NT arm64 Checked pri1r2r Queues Windows_NT arm64 Cross Checked pri1r2r Build and Test
@dotnet-bot test Windows_NT arm64 Checked Queues Windows_NT arm64 Cross Checked Build and Test
@dotnet-bot test Windows_NT arm64 Debug Queues Windows_NT arm64 Cross Debug Build
@dotnet-bot test Windows_NT arm64 Release pri1r2r Queues Windows_NT arm64 Cross Release pri1r2r Build and Test
@dotnet-bot test Windows_NT arm64 Release Queues Windows_NT arm64 Cross Release Build and Test
@dotnet-bot test Linux arm cross Checked Queues Ubuntu arm Cross Checked Build
@dotnet-bot test Linux arm cross Debug Queues Ubuntu arm Cross Debug Build
@dotnet-bot test Linux arm cross Release Queues Ubuntu arm Cross Release Build
@dotnet-bot test Debian8.4 Queues Debian8.4 x64 Checked Build
@dotnet-bot test Fedora23 Queues Fedora23 x64 Checked Build
@dotnet-bot test OpenSUSE13.2 Queues OpenSUSE13.2 x64 Checked Build
@dotnet-bot test OpenSUSE42.1 Queues OpenSUSE42.1 x64 Checked Build
@dotnet-bot test RHEL7.2 Queues RHEL7.2 x64 Checked Build
@dotnet-bot test Ubuntu16.04 Queues Ubuntu16.04 x64 Checked Build
@dotnet-bot test Debian8.4 Queues Debian8.4 x64 Debug Build
@dotnet-bot test Fedora23 Queues Fedora23 x64 Debug Build
@dotnet-bot test OpenSUSE13.2 Queues OpenSUSE13.2 x64 Debug Build
@dotnet-bot test OpenSUSE42.1 Queues OpenSUSE42.1 x64 Debug Build
@dotnet-bot test RHEL7.2 Queues RHEL7.2 x64 Debug Build
@dotnet-bot test Ubuntu16.04 Queues Ubuntu16.04 x64 Debug Build
@dotnet-bot test Windows_NT arm64 Checked gcstress0x3 Queues Windows_NT arm64 Cross Checked gcstress0x3 Build and Test
@dotnet-bot test Windows_NT arm64 Checked gcstress0xc Queues Windows_NT arm64 Cross Checked gcstress0xc Build and Test
@dotnet-bot test CentOS7.1 forcerelocs Queues CentOS7.1 x64 Checked Build and Test (Jit - ForceRelocs)
@dotnet-bot test CentOS7.1 gcstress0x3 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0x3)
@dotnet-bot test CentOS7.1 gcstress0xc Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC)
@dotnet-bot test CentOS7.1 gcstress0xc_jitstress1 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC JitStress=1)
@dotnet-bot test CentOS7.1 gcstress0xc_jitstress2 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC JitStress=2)
@dotnet-bot test CentOS7.1 gcstress0xc_minopts_heapverify1 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC JITMinOpts=1 HeapVerify=1)
@dotnet-bot test CentOS7.1 gcstress0xc_zapdisable Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1)
@dotnet-bot test CentOS7.1 gcstress0xc_zapdisable_heapverify1 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 HeapVerify=1)
@dotnet-bot test CentOS7.1 gcstress0xc_zapdisable_jitstress2 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 JitStress=2)
@dotnet-bot test CentOS7.1 heapverify1 Queues CentOS7.1 x64 Checked Build and Test (Jit - HeapVerify=1)
@dotnet-bot test CentOS7.1 jitstress1 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=1)
@dotnet-bot test CentOS7.1 jitstress2 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs0x10 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x10)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs0x80 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x80)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs1 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=1)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs2 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=2)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs3 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=3)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs4 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=4)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs8 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=8)
@dotnet-bot test CentOS7.1 jitstressregs0x10 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=0x10)
@dotnet-bot test CentOS7.1 jitstressregs0x80 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=0x80)
@dotnet-bot test CentOS7.1 jitstressregs1 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test CentOS7.1 jitstressregs2 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=2)
@dotnet-bot test CentOS7.1 jitstressregs3 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=3)
@dotnet-bot test CentOS7.1 jitstressregs4 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=4)
@dotnet-bot test CentOS7.1 jitstressregs8 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=8)
@dotnet-bot test CentOS7.1 minopts Queues CentOS7.1 x64 Checked Build and Test (Jit - MinOpts)
@dotnet-bot test CentOS7.1 Checked r2r_jitforcerelocs Queues CentOS7.1 x64 Checked ForceRelocs R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitminopts Queues CentOS7.1 x64 Checked JITMinOpts R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstress1 Queues CentOS7.1 x64 Checked jitstress1 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstress2 Queues CentOS7.1 x64 Checked jitstress2 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregs1 Queues CentOS7.1 x64 Checked jitstressregs1 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregs2 Queues CentOS7.1 x64 Checked jitstressregs2 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregs3 Queues CentOS7.1 x64 Checked jitstressregs3 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregs4 Queues CentOS7.1 x64 Checked jitstressregs4 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregs8 Queues CentOS7.1 x64 Checked jitstressregs8 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregsx10 Queues CentOS7.1 x64 Checked jitstressregsx10 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregsx80 Queues CentOS7.1 x64 Checked jitstressregsx80 R2R Build & Test
@dotnet-bot test CentOS7.1 zapdisable Queues CentOS7.1 x64 Checked Build and Test (Jit - ZapDisable=0xC)
@dotnet-bot test OSX forcerelocs Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test OSX gcstress0x3 Queues OSX x64 Checked Build and Test (Jit - GCStress=0x3)
@dotnet-bot test OSX gcstress0xc Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC)
@dotnet-bot test OSX gcstress0xc_jitstress1 Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC JitStress=1)
@dotnet-bot test OSX gcstress0xc_jitstress2 Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC JitStress=2)
@dotnet-bot test OSX gcstress0xc_minopts_heapverify1 Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC JITMinOpts=1 HeapVerify=1)
@dotnet-bot test OSX gcstress0xc_zapdisable Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1)
@dotnet-bot test OSX gcstress0xc_zapdisable_heapverify1 Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 HeapVerify=1)
@dotnet-bot test OSX gcstress0xc_zapdisable_jitstress2 Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 JitStress=2)
@dotnet-bot test OSX heapverify1 Queues OSX x64 Checked Build and Test (Jit - HeapVerify=1)
@dotnet-bot test OSX jitstress1 Queues OSX x64 Checked Build and Test (Jit - JitStress=1)
@dotnet-bot test OSX jitstress2 Queues OSX x64 Checked Build and Test (Jit - JitStress=2)
@dotnet-bot test OSX jitstress2_jitstressregs0x10 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x10)
@dotnet-bot test OSX jitstress2_jitstressregs0x80 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x80)
@dotnet-bot test OSX jitstress2_jitstressregs1 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=1)
@dotnet-bot test OSX jitstress2_jitstressregs2 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=2)
@dotnet-bot test OSX jitstress2_jitstressregs3 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=3)
@dotnet-bot test OSX jitstress2_jitstressregs4 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=4)
@dotnet-bot test OSX jitstress2_jitstressregs8 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=8)
@dotnet-bot test OSX jitstressregs0x10 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=0x10)
@dotnet-bot test OSX jitstressregs0x80 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=0x80)
@dotnet-bot test OSX jitstressregs1 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test OSX jitstressregs2 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=2)
@dotnet-bot test OSX jitstressregs3 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=3)
@dotnet-bot test OSX jitstressregs4 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=4)
@dotnet-bot test OSX jitstressregs8 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=8)
@dotnet-bot test OSX minopts Queues OSX x64 Checked Build and Test (Jit - MinOpts)
@dotnet-bot test OSX Checked r2r_jitforcerelocs Queues OSX x64 Checked ForceRelocs R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitminopts Queues OSX x64 Checked JITMinOpts R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstress1 Queues OSX x64 Checked jitstress1 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstress2 Queues OSX x64 Checked jitstress2 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregs1 Queues OSX x64 Checked jitstressregs1 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregs2 Queues OSX x64 Checked jitstressregs2 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregs3 Queues OSX x64 Checked jitstressregs3 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregs4 Queues OSX x64 Checked jitstressregs4 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregs8 Queues OSX x64 Checked jitstressregs8 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregsx10 Queues OSX x64 Checked jitstressregsx10 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregsx80 Queues OSX x64 Checked jitstressregsx80 R2R Build & Test
@dotnet-bot test OSX zapdisable Queues OSX x64 Checked Build and Test (Jit - ZapDisable=0xC)
@dotnet-bot test Ubuntu corefx_baseline Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx)
@dotnet-bot test Ubuntu corefx_jitstress1 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStress=1)
@dotnet-bot test Ubuntu corefx_jitstress2 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStress=2)
@dotnet-bot test Ubuntu corefx_jitstressregs0x10 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=0x10)
@dotnet-bot test Ubuntu corefx_jitstressregs0x80 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=0x80)
@dotnet-bot test Ubuntu corefx_jitstressregs1 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=1)
@dotnet-bot test Ubuntu corefx_jitstressregs2 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=2)
@dotnet-bot test Ubuntu corefx_jitstressregs3 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=3)
@dotnet-bot test Ubuntu corefx_jitstressregs4 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=4)
@dotnet-bot test Ubuntu corefx_jitstressregs8 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=8)
@dotnet-bot test Ubuntu corefx_minopts Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JITMinOpts=1)
@dotnet-bot test Ubuntu forcerelocs Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test Ubuntu gcstress0x3 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0x3)
@dotnet-bot test Ubuntu gcstress0xc Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC)
@dotnet-bot test Ubuntu gcstress0xc_jitstress1 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC JitStress=1)
@dotnet-bot test Ubuntu gcstress0xc_jitstress2 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC JitStress=2)
@dotnet-bot test Ubuntu gcstress0xc_minopts_heapverify1 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC JITMinOpts=1 HeapVerify=1)
@dotnet-bot test Ubuntu gcstress0xc_zapdisable Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1)
@dotnet-bot test Ubuntu gcstress0xc_zapdisable_heapverify1 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 HeapVerify=1)
@dotnet-bot test Ubuntu gcstress0xc_zapdisable_jitstress2 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 JitStress=2)
@dotnet-bot test Ubuntu heapverify1 Queues Ubuntu x64 Checked Build and Test (Jit - HeapVerify=1)
@dotnet-bot test Ubuntu jitstress1 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=1)
@dotnet-bot test Ubuntu jitstress2 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2)
@dotnet-bot test Ubuntu jitstress2_jitstressregs0x10 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x10)
@dotnet-bot test Ubuntu jitstress2_jitstressregs0x80 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x80)
@dotnet-bot test Ubuntu jitstress2_jitstressregs1 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=1)
@dotnet-bot test Ubuntu jitstress2_jitstressregs2 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=2)
@dotnet-bot test Ubuntu jitstress2_jitstressregs3 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=3)
@dotnet-bot test Ubuntu jitstress2_jitstressregs4 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=4)
@dotnet-bot test Ubuntu jitstress2_jitstressregs8 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=8)
@dotnet-bot test Ubuntu jitstressregs0x10 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=0x10)
@dotnet-bot test Ubuntu jitstressregs0x80 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=0x80)
@dotnet-bot test Ubuntu jitstressregs1 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test Ubuntu jitstressregs2 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=2)
@dotnet-bot test Ubuntu jitstressregs3 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=3)
@dotnet-bot test Ubuntu jitstressregs4 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=4)
@dotnet-bot test Ubuntu jitstressregs8 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=8)
@dotnet-bot test Ubuntu minopts Queues Ubuntu x64 Checked Build and Test (Jit - MinOpts)
@dotnet-bot test Ubuntu Checked r2r_jitforcerelocs Queues Ubuntu x64 Checked ForceRelocs R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitminopts Queues Ubuntu x64 Checked JITMinOpts R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstress1 Queues Ubuntu x64 Checked jitstress1 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstress2 Queues Ubuntu x64 Checked jitstress2 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregs1 Queues Ubuntu x64 Checked jitstressregs1 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregs2 Queues Ubuntu x64 Checked jitstressregs2 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregs3 Queues Ubuntu x64 Checked jitstressregs3 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregs4 Queues Ubuntu x64 Checked jitstressregs4 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregs8 Queues Ubuntu x64 Checked jitstressregs8 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregsx10 Queues Ubuntu x64 Checked jitstressregsx10 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregsx80 Queues Ubuntu x64 Checked jitstressregsx80 R2R Build & Test
@dotnet-bot test Ubuntu zapdisable Queues Ubuntu x64 Checked Build and Test (Jit - ZapDisable=0xC)
@dotnet-bot test Windows_NT corefx_baseline Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx )
@dotnet-bot test Windows_NT corefx_jitstress1 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStress=1)
@dotnet-bot test Windows_NT corefx_jitstress2 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStress=2)
@dotnet-bot test Windows_NT corefx_jitstressregs0x10 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=0x10)
@dotnet-bot test Windows_NT corefx_jitstressregs0x80 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=0x80)
@dotnet-bot test Windows_NT corefx_jitstressregs1 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=1)
@dotnet-bot test Windows_NT corefx_jitstressregs2 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=2)
@dotnet-bot test Windows_NT corefx_jitstressregs3 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=3)
@dotnet-bot test Windows_NT corefx_jitstressregs4 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=4)
@dotnet-bot test Windows_NT corefx_jitstressregs8 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=8)
@dotnet-bot test Windows_NT corefx_minopts Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JITMinOpts=1)
@dotnet-bot test Windows_NT forcerelocs Queues Windows_NT x64 Checked Build and Test (Jit - ForceRelocs)
@dotnet-bot test Windows_NT gcstress0x3 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0x3)
@dotnet-bot test Windows_NT gcstress0xc_jitstress1 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC JitStress=1)
@dotnet-bot test Windows_NT gcstress0xc_jitstress2 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC JitStress=2)
@dotnet-bot test Windows_NT gcstress0xc_minopts_heapverify1 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC JITMinOpts=1 HeapVerify=1)
@dotnet-bot test Windows_NT gcstress0xc Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC)
@dotnet-bot test Windows_NT gcstress0xc_zapdisable_heapverify1 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 HeapVerify=1)
@dotnet-bot test Windows_NT gcstress0xc_zapdisable_jitstress2 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 JitStress=2)
@dotnet-bot test Windows_NT gcstress0xc_zapdisable Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1)
@dotnet-bot test Windows_NT heapverify1 Queues Windows_NT x64 Checked Build and Test (Jit - HeapVerify=1)
@dotnet-bot test Windows_NT jitstress1 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=1)
@dotnet-bot test Windows_NT jitstress2_jitstressregs0x10 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x10)
@dotnet-bot test Windows_NT jitstress2_jitstressregs0x80 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x80)
@dotnet-bot test Windows_NT jitstress2_jitstressregs1 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=1)
@dotnet-bot test Windows_NT jitstress2_jitstressregs2 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=2)
@dotnet-bot test Windows_NT jitstress2_jitstressregs3 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=3)
@dotnet-bot test Windows_NT jitstress2_jitstressregs4 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=4)
@dotnet-bot test Windows_NT jitstress2_jitstressregs8 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=8)
@dotnet-bot test Windows_NT jitstress2 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2)
@dotnet-bot test Windows_NT jitstressregs0x10 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=0x10)
@dotnet-bot test Windows_NT jitstressregs0x80 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=0x80)
@dotnet-bot test Windows_NT jitstressregs1 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test Windows_NT jitstressregs2 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=2)
@dotnet-bot test Windows_NT jitstressregs3 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=3)
@dotnet-bot test Windows_NT jitstressregs4 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=4)
@dotnet-bot test Windows_NT jitstressregs8 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=8)
@dotnet-bot test Windows_NT minopts Queues Windows_NT x64 Checked Build and Test (Jit - MinOpts)
@dotnet-bot test Windows_NT Checked r2r_jitforcerelocs Queues Windows_NT x64 Checked ForceRelocs R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitminopts Queues Windows_NT x64 Checked JITMinOpts R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstress1 Queues Windows_NT x64 Checked jitstress1 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstress2 Queues Windows_NT x64 Checked jitstress2 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregs1 Queues Windows_NT x64 Checked jitstressregs1 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregs2 Queues Windows_NT x64 Checked jitstressregs2 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregs3 Queues Windows_NT x64 Checked jitstressregs3 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregs4 Queues Windows_NT x64 Checked jitstressregs4 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregs8 Queues Windows_NT x64 Checked jitstressregs8 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregsx10 Queues Windows_NT x64 Checked jitstressregsx10 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregsx80 Queues Windows_NT x64 Checked jitstressregsx80 R2R Build & Test
@dotnet-bot test Windows_NT zapdisable Queues Windows_NT x64 Checked Build and Test (Jit - ZapDisable=0xC)
@dotnet-bot test Windows_NT x86 ryujit Checked forcerelocs Queues Windows_NT x86 ryujit Checked Build and Test (Jit - ForceRelocs)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0x3 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0x3)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_jitstress1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC JitStress=1)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_jitstress2 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC JitStress=2)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_minopts_heapverify1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC JITMinOpts=1 HeapVerify=1)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_zapdisable_heapverify1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 HeapVerify=1)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_zapdisable_jitstress2 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 JitStress=2)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_zapdisable Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC ZapDisable=1)
@dotnet-bot test Windows_NT x86 ryujit Checked heapverify1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - HeapVerify=1)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=1)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs0x10 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x10)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs0x80 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x80)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=1)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs2 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=2)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs3 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=3)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs4 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=4)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs8 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=8)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs0x10 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=0x10)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs0x80 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=0x80)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs2 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=2)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs3 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=3)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs4 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=4)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs8 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=8)
@dotnet-bot test Windows_NT x86 ryujit Checked minopts Queues Windows_NT x86 ryujit Checked Build and Test (Jit - MinOpts)
@dotnet-bot test Windows_NT x86 ryujit Checked zapdisable Queues Windows_NT x86 ryujit Checked Build and Test (Jit - ZapDisable=0xC)
@dotnet-bot test Debian8.4 Queues Debian8.4 x64 Release Build
@dotnet-bot test Fedora23 Queues Fedora23 x64 Release Build
@dotnet-bot test OpenSUSE13.2 Queues OpenSUSE13.2 x64 Release Build
@dotnet-bot test OpenSUSE42.1 Queues OpenSUSE42.1 x64 Release Build
@dotnet-bot test RHEL7.2 Queues RHEL7.2 x64 Release Build
@dotnet-bot test Ubuntu16.04 Queues Ubuntu16.04 x64 Release Build
@dotnet-bot test CentOS7.1 Checked gcstress15_pri1r2r Queues CentOS7.1 x64 Checked GCStress 15 R2R pri1 Build & Test
@dotnet-bot test CentOS7.1 Checked pri1r2r Queues CentOS7.1 x64 Checked R2R pri1 Build & Test
@dotnet-bot test CentOS7.1 Checked r2r Queues CentOS7.1 x64 Checked R2R pri0 Build & Test
@dotnet-bot test OSX Checked gcstress15_pri1r2r Queues OSX x64 Checked GCStress 15 R2R pri1 Build & Test
@dotnet-bot test OSX Checked pri1r2r Queues OSX x64 Checked R2R pri1 Build & Test
@dotnet-bot test OSX Checked r2r Queues OSX x64 Checked R2R pri0 Build & Test
@dotnet-bot test Ubuntu Checked gcstress15_pri1r2r Queues Ubuntu x64 Checked GCStress 15 R2R pri1 Build & Test
@dotnet-bot test Ubuntu Checked pri1r2r Queues Ubuntu x64 Checked R2R pri1 Build & Test
@dotnet-bot test Ubuntu Checked r2r Queues Ubuntu x64 Checked R2R pri0 Build & Test
@dotnet-bot test Windows_NT Checked gcstress15_pri1r2r Queues Windows_NT x64 Checked GCStress 15 R2R pri1 Build & Test
@dotnet-bot test Windows_NT Checked pri1r2r Queues Windows_NT x64 Checked R2R pri1 Build & Test
@dotnet-bot test Windows_NT Checked r2r Queues Windows_NT x64 Checked R2R pri0 Build & Test
@dotnet-bot test CentOS7.1 Release gcstress15_pri1r2r Queues CentOS7.1 x64 Release GCStress 15 R2R pri1 Build & Test
@dotnet-bot test CentOS7.1 Release pri1r2r Queues CentOS7.1 x64 Release R2R pri1 Build & Test
@dotnet-bot test CentOS7.1 Release r2r Queues CentOS7.1 x64 Release R2R pri0 Build & Test
@dotnet-bot test Debian8.4 pri1 Queues Debian8.4 x64 Release Pri 1 Build & Test
@dotnet-bot test OpenSUSE13.2 pri1 Queues OpenSUSE13.2 x64 Release Pri 1 Build & Test
@dotnet-bot test OSX Release gcsimulator Queues OSX x64 Release GC Simulator
@dotnet-bot test OSX Release gcstress15_pri1r2r Queues OSX x64 Release GCStress 15 R2R pri1 Build & Test
@dotnet-bot test OSX ilrt Queues OSX x64 Release IL RoundTrip Build and Test
@dotnet-bot test OSX Release longgc Queues OSX x64 Release Long-Running GC Build & Test
@dotnet-bot test OSX pri1 Queues OSX x64 Release Priority 1 Build and Test
@dotnet-bot test OSX Release pri1r2r Queues OSX x64 Release R2R pri1 Build & Test
@dotnet-bot test OSX Release r2r Queues OSX x64 Release R2R pri0 Build & Test
@dotnet-bot test RHEL7.2 pri1 Queues RHEL7.2 x64 Release Pri 1 Build & Test
@dotnet-bot test Ubuntu Release gcsimulator Queues Ubuntu x64 Release GC Simulator
@dotnet-bot test Ubuntu Release gcstress15_pri1r2r Queues Ubuntu x64 Release GCStress 15 R2R pri1 Build & Test
@dotnet-bot test Ubuntu ilrt Queues Ubuntu x64 Release IL RoundTrip Build and Test
@dotnet-bot test Ubuntu Release longgc Queues Ubuntu x64 Release Long-Running GC Build & Test
@dotnet-bot test Ubuntu pri1 Queues Ubuntu x64 Release Priority 1 Build and Test
@dotnet-bot test Ubuntu Release pri1r2r Queues Ubuntu x64 Release R2R pri1 Build & Test
@dotnet-bot test Ubuntu Release r2r Queues Ubuntu x64 Release R2R pri0 Build & Test
@dotnet-bot test Windows_NT Release gcsimulator Queues Windows_NT x64 Release GC Simulator
@dotnet-bot test Windows_NT Release gcstress15_pri1r2r Queues Windows_NT x64 Release GCStress 15 R2R pri1 Build & Test
@dotnet-bot test Windows_NT ilrt Queues Windows_NT x64 Release IL RoundTrip Build and Test
@dotnet-bot test Windows_NT Release longgc Queues Windows_NT x64 Release Long-Running GC Build & Test
@dotnet-bot test Windows_NT Release pri1r2r Queues Windows_NT x64 Release R2R pri1 Build & Test
@dotnet-bot test Windows_NT Release r2r Queues Windows_NT x64 Release R2R pri0 Build & Test
@dotnet-bot test Ubuntu formatting Queues Ubuntu x64 Formatting
@dotnet-bot test Windows_NT formatting Queues Windows_NT x64 Formatting

Have a nice day!

@swaroop-sridhar
Copy link
Author

@dotnet-bot test OSX x64 Checked Build and Test
@dotnet-bot test CentOS7.1 x64 Debug Build and Test

@swaroop-sridhar
Copy link
Author

@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0x3

@swaroop-sridhar
Copy link
Author

@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc

@swaroop-sridhar
Copy link
Author

@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0x3
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc

@swaroop-sridhar
Copy link
Author

@dotnet-bot test Windows_NT x64 Checked gcstress0x3

1 similar comment
@swaroop-sridhar
Copy link
Author

@dotnet-bot test Windows_NT x64 Checked gcstress0x3

@swaroop-sridhar
Copy link
Author

@jkotas , @briansull: Please review
CC: @dotnet/jit-contrib, @rahku

@BruceForstall
Copy link
Member

What is the change in size in mscorlib, or other big managed assembly?

Does this affect desktop? Have you done desktop testing?

@swaroop-sridhar
Copy link
Author

A code size increase is expected from the change because of the extra two bytes to encode the correction to ReturnKind for all methods that have a GcInfo, and return a non-scalar.

For Windows Release X86 RYU Jit:
Code size increase in mscorlib.ni.dll is insignificant
Code size increase in System.Provate.CoreLib.ni.dll was 0.08%

It is possible to regain some of this code size by:

  1. Replacing some entries in the precomputed InfoHdrSmall encodings to include some frequent non-scalar RetKind combinations -- but this will not determimistically reduce the code size in all cases
  2. Instead of encoding ReturnKind using two bytes, change the encoding format such that the ReturnKind corrections are one byte -- while some other (previously one byte) encodings are two bytes.
    However, doing this involves introducing more code complexity -- because the byte encodings will mean different things for V1 and V2, and we need two different decoders for V1 and V2.
    I tried prototyping this (encoding returnKind fixups in one additional byte instead of two) but the change in overall size of the binary wasn't significant. So, I left the ReturnKind encodings as two byte fixups.

@dotnet-bot
Copy link

Welcome to the dotnet/coreclr Repository

The following is a list of valid commands on this PR. To invoke a command, comment the indicated phrase on the PR

The following commands are valid for all PRs and repositories.

Comment Phrase Action
@dotnet-bot test this please Re-run all legs. Use sparingly
@dotnet-bot test ci please Generates (but does not run) jobs based on changes to the groovy job definitions in this branch
@dotnet-bot help Print this help message

The following jobs are launched by default for each PR against dotnet/coreclr:master.

Comment Phrase Job Launched
@dotnet-bot test Linux ARM Emulator Cross Debug Build Linux ARM Emulator Cross Debug Build
@dotnet-bot test Linux ARM Emulator Cross Release Build Linux ARM Emulator Cross Release Build
@dotnet-bot test FreeBSD x64 Checked Build FreeBSD x64 Checked Build
@dotnet-bot test OSX x64 Checked Build and Test OSX x64 Checked Build and Test
@dotnet-bot test Ubuntu x64 Checked Build and Test Ubuntu x64 Checked Build and Test
@dotnet-bot test CentOS7.1 x64 Debug Build and Test CentOS7.1 x64 Debug Build and Test
@dotnet-bot test Windows_NT x64 Debug Build and Test Windows_NT x64 Debug Build and Test
@dotnet-bot test CentOS7.1 x64 Release Priority 1 Build and Test CentOS7.1 x64 Release Priority 1 Build and Test
@dotnet-bot test Windows_NT x64 Release Priority 1 Build and Test Windows_NT x64 Release Priority 1 Build and Test
@dotnet-bot test Windows_NT x86 legacy_backend Checked Build and Test Windows_NT x86 legacy_backend Checked Build and Test
@dotnet-bot test Windows_NT x86 ryujit Checked Build and Test Windows_NT x86 ryujit Checked Build and Test

The following optional jobs are available in PRs against dotnet/coreclr:master.

Comment Phrase Job Launched
@dotnet-bot test Windows_NT arm64 Checked pri1r2r Queues Windows_NT arm64 Cross Checked pri1r2r Build and Test
@dotnet-bot test Windows_NT arm64 Checked Queues Windows_NT arm64 Cross Checked Build and Test
@dotnet-bot test Windows_NT arm64 Debug Queues Windows_NT arm64 Cross Debug Build
@dotnet-bot test Windows_NT arm64 Release pri1r2r Queues Windows_NT arm64 Cross Release pri1r2r Build and Test
@dotnet-bot test Windows_NT arm64 Release Queues Windows_NT arm64 Cross Release Build and Test
@dotnet-bot test Linux arm cross Checked Queues Ubuntu arm Cross Checked Build
@dotnet-bot test Linux arm cross Debug Queues Ubuntu arm Cross Debug Build
@dotnet-bot test Linux arm cross Release Queues Ubuntu arm Cross Release Build
@dotnet-bot test Debian8.4 Queues Debian8.4 x64 Checked Build
@dotnet-bot test Fedora23 Queues Fedora23 x64 Checked Build
@dotnet-bot test OpenSUSE13.2 Queues OpenSUSE13.2 x64 Checked Build
@dotnet-bot test OpenSUSE42.1 Queues OpenSUSE42.1 x64 Checked Build
@dotnet-bot test RHEL7.2 Queues RHEL7.2 x64 Checked Build
@dotnet-bot test Ubuntu16.04 Queues Ubuntu16.04 x64 Checked Build
@dotnet-bot test Debian8.4 Queues Debian8.4 x64 Debug Build
@dotnet-bot test Fedora23 Queues Fedora23 x64 Debug Build
@dotnet-bot test OpenSUSE13.2 Queues OpenSUSE13.2 x64 Debug Build
@dotnet-bot test OpenSUSE42.1 Queues OpenSUSE42.1 x64 Debug Build
@dotnet-bot test RHEL7.2 Queues RHEL7.2 x64 Debug Build
@dotnet-bot test Ubuntu16.04 Queues Ubuntu16.04 x64 Debug Build
@dotnet-bot test Windows_NT arm64 Checked gcstress0x3 Queues Windows_NT arm64 Cross Checked gcstress0x3 Build and Test
@dotnet-bot test Windows_NT arm64 Checked gcstress0xc Queues Windows_NT arm64 Cross Checked gcstress0xc Build and Test
@dotnet-bot test CentOS7.1 forcerelocs Queues CentOS7.1 x64 Checked Build and Test (Jit - ForceRelocs)
@dotnet-bot test CentOS7.1 gcstress0x3 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0x3)
@dotnet-bot test CentOS7.1 gcstress0xc Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC)
@dotnet-bot test CentOS7.1 gcstress0xc_jitstress1 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC JitStress=1)
@dotnet-bot test CentOS7.1 gcstress0xc_jitstress2 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC JitStress=2)
@dotnet-bot test CentOS7.1 gcstress0xc_minopts_heapverify1 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC JITMinOpts=1 HeapVerify=1)
@dotnet-bot test CentOS7.1 gcstress0xc_zapdisable Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1)
@dotnet-bot test CentOS7.1 gcstress0xc_zapdisable_heapverify1 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 HeapVerify=1)
@dotnet-bot test CentOS7.1 gcstress0xc_zapdisable_jitstress2 Queues CentOS7.1 x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 JitStress=2)
@dotnet-bot test CentOS7.1 heapverify1 Queues CentOS7.1 x64 Checked Build and Test (Jit - HeapVerify=1)
@dotnet-bot test CentOS7.1 jitstress1 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=1)
@dotnet-bot test CentOS7.1 jitstress2 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs0x10 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x10)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs0x80 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x80)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs1 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=1)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs2 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=2)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs3 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=3)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs4 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=4)
@dotnet-bot test CentOS7.1 jitstress2_jitstressregs8 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=8)
@dotnet-bot test CentOS7.1 jitstressregs0x10 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=0x10)
@dotnet-bot test CentOS7.1 jitstressregs0x80 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=0x80)
@dotnet-bot test CentOS7.1 jitstressregs1 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test CentOS7.1 jitstressregs2 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=2)
@dotnet-bot test CentOS7.1 jitstressregs3 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=3)
@dotnet-bot test CentOS7.1 jitstressregs4 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=4)
@dotnet-bot test CentOS7.1 jitstressregs8 Queues CentOS7.1 x64 Checked Build and Test (Jit - JitStressRegs=8)
@dotnet-bot test CentOS7.1 minopts Queues CentOS7.1 x64 Checked Build and Test (Jit - MinOpts)
@dotnet-bot test CentOS7.1 Checked r2r_jitforcerelocs Queues CentOS7.1 x64 Checked ForceRelocs R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitminopts Queues CentOS7.1 x64 Checked JITMinOpts R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstress1 Queues CentOS7.1 x64 Checked jitstress1 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstress2 Queues CentOS7.1 x64 Checked jitstress2 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregs1 Queues CentOS7.1 x64 Checked jitstressregs1 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregs2 Queues CentOS7.1 x64 Checked jitstressregs2 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregs3 Queues CentOS7.1 x64 Checked jitstressregs3 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregs4 Queues CentOS7.1 x64 Checked jitstressregs4 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregs8 Queues CentOS7.1 x64 Checked jitstressregs8 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregsx10 Queues CentOS7.1 x64 Checked jitstressregsx10 R2R Build & Test
@dotnet-bot test CentOS7.1 Checked r2r_jitstressregsx80 Queues CentOS7.1 x64 Checked jitstressregsx80 R2R Build & Test
@dotnet-bot test CentOS7.1 zapdisable Queues CentOS7.1 x64 Checked Build and Test (Jit - ZapDisable=0xC)
@dotnet-bot test OSX forcerelocs Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test OSX gcstress0x3 Queues OSX x64 Checked Build and Test (Jit - GCStress=0x3)
@dotnet-bot test OSX gcstress0xc Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC)
@dotnet-bot test OSX gcstress0xc_jitstress1 Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC JitStress=1)
@dotnet-bot test OSX gcstress0xc_jitstress2 Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC JitStress=2)
@dotnet-bot test OSX gcstress0xc_minopts_heapverify1 Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC JITMinOpts=1 HeapVerify=1)
@dotnet-bot test OSX gcstress0xc_zapdisable Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1)
@dotnet-bot test OSX gcstress0xc_zapdisable_heapverify1 Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 HeapVerify=1)
@dotnet-bot test OSX gcstress0xc_zapdisable_jitstress2 Queues OSX x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 JitStress=2)
@dotnet-bot test OSX heapverify1 Queues OSX x64 Checked Build and Test (Jit - HeapVerify=1)
@dotnet-bot test OSX jitstress1 Queues OSX x64 Checked Build and Test (Jit - JitStress=1)
@dotnet-bot test OSX jitstress2 Queues OSX x64 Checked Build and Test (Jit - JitStress=2)
@dotnet-bot test OSX jitstress2_jitstressregs0x10 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x10)
@dotnet-bot test OSX jitstress2_jitstressregs0x80 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x80)
@dotnet-bot test OSX jitstress2_jitstressregs1 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=1)
@dotnet-bot test OSX jitstress2_jitstressregs2 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=2)
@dotnet-bot test OSX jitstress2_jitstressregs3 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=3)
@dotnet-bot test OSX jitstress2_jitstressregs4 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=4)
@dotnet-bot test OSX jitstress2_jitstressregs8 Queues OSX x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=8)
@dotnet-bot test OSX jitstressregs0x10 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=0x10)
@dotnet-bot test OSX jitstressregs0x80 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=0x80)
@dotnet-bot test OSX jitstressregs1 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test OSX jitstressregs2 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=2)
@dotnet-bot test OSX jitstressregs3 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=3)
@dotnet-bot test OSX jitstressregs4 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=4)
@dotnet-bot test OSX jitstressregs8 Queues OSX x64 Checked Build and Test (Jit - JitStressRegs=8)
@dotnet-bot test OSX minopts Queues OSX x64 Checked Build and Test (Jit - MinOpts)
@dotnet-bot test OSX Checked r2r_jitforcerelocs Queues OSX x64 Checked ForceRelocs R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitminopts Queues OSX x64 Checked JITMinOpts R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstress1 Queues OSX x64 Checked jitstress1 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstress2 Queues OSX x64 Checked jitstress2 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregs1 Queues OSX x64 Checked jitstressregs1 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregs2 Queues OSX x64 Checked jitstressregs2 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregs3 Queues OSX x64 Checked jitstressregs3 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregs4 Queues OSX x64 Checked jitstressregs4 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregs8 Queues OSX x64 Checked jitstressregs8 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregsx10 Queues OSX x64 Checked jitstressregsx10 R2R Build & Test
@dotnet-bot test OSX Checked r2r_jitstressregsx80 Queues OSX x64 Checked jitstressregsx80 R2R Build & Test
@dotnet-bot test OSX zapdisable Queues OSX x64 Checked Build and Test (Jit - ZapDisable=0xC)
@dotnet-bot test Ubuntu corefx_baseline Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx)
@dotnet-bot test Ubuntu corefx_jitstress1 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStress=1)
@dotnet-bot test Ubuntu corefx_jitstress2 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStress=2)
@dotnet-bot test Ubuntu corefx_jitstressregs0x10 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=0x10)
@dotnet-bot test Ubuntu corefx_jitstressregs0x80 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=0x80)
@dotnet-bot test Ubuntu corefx_jitstressregs1 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=1)
@dotnet-bot test Ubuntu corefx_jitstressregs2 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=2)
@dotnet-bot test Ubuntu corefx_jitstressregs3 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=3)
@dotnet-bot test Ubuntu corefx_jitstressregs4 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=4)
@dotnet-bot test Ubuntu corefx_jitstressregs8 Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JitStressRegs=8)
@dotnet-bot test Ubuntu corefx_minopts Queues Ubuntu x64 Checked Build and Test (Jit - CoreFx JITMinOpts=1)
@dotnet-bot test Ubuntu forcerelocs Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test Ubuntu gcstress0x3 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0x3)
@dotnet-bot test Ubuntu gcstress0xc Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC)
@dotnet-bot test Ubuntu gcstress0xc_jitstress1 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC JitStress=1)
@dotnet-bot test Ubuntu gcstress0xc_jitstress2 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC JitStress=2)
@dotnet-bot test Ubuntu gcstress0xc_minopts_heapverify1 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC JITMinOpts=1 HeapVerify=1)
@dotnet-bot test Ubuntu gcstress0xc_zapdisable Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1)
@dotnet-bot test Ubuntu gcstress0xc_zapdisable_heapverify1 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 HeapVerify=1)
@dotnet-bot test Ubuntu gcstress0xc_zapdisable_jitstress2 Queues Ubuntu x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 JitStress=2)
@dotnet-bot test Ubuntu heapverify1 Queues Ubuntu x64 Checked Build and Test (Jit - HeapVerify=1)
@dotnet-bot test Ubuntu jitstress1 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=1)
@dotnet-bot test Ubuntu jitstress2 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2)
@dotnet-bot test Ubuntu jitstress2_jitstressregs0x10 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x10)
@dotnet-bot test Ubuntu jitstress2_jitstressregs0x80 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x80)
@dotnet-bot test Ubuntu jitstress2_jitstressregs1 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=1)
@dotnet-bot test Ubuntu jitstress2_jitstressregs2 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=2)
@dotnet-bot test Ubuntu jitstress2_jitstressregs3 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=3)
@dotnet-bot test Ubuntu jitstress2_jitstressregs4 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=4)
@dotnet-bot test Ubuntu jitstress2_jitstressregs8 Queues Ubuntu x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=8)
@dotnet-bot test Ubuntu jitstressregs0x10 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=0x10)
@dotnet-bot test Ubuntu jitstressregs0x80 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=0x80)
@dotnet-bot test Ubuntu jitstressregs1 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test Ubuntu jitstressregs2 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=2)
@dotnet-bot test Ubuntu jitstressregs3 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=3)
@dotnet-bot test Ubuntu jitstressregs4 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=4)
@dotnet-bot test Ubuntu jitstressregs8 Queues Ubuntu x64 Checked Build and Test (Jit - JitStressRegs=8)
@dotnet-bot test Ubuntu minopts Queues Ubuntu x64 Checked Build and Test (Jit - MinOpts)
@dotnet-bot test Ubuntu Checked r2r_jitforcerelocs Queues Ubuntu x64 Checked ForceRelocs R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitminopts Queues Ubuntu x64 Checked JITMinOpts R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstress1 Queues Ubuntu x64 Checked jitstress1 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstress2 Queues Ubuntu x64 Checked jitstress2 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregs1 Queues Ubuntu x64 Checked jitstressregs1 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregs2 Queues Ubuntu x64 Checked jitstressregs2 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregs3 Queues Ubuntu x64 Checked jitstressregs3 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregs4 Queues Ubuntu x64 Checked jitstressregs4 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregs8 Queues Ubuntu x64 Checked jitstressregs8 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregsx10 Queues Ubuntu x64 Checked jitstressregsx10 R2R Build & Test
@dotnet-bot test Ubuntu Checked r2r_jitstressregsx80 Queues Ubuntu x64 Checked jitstressregsx80 R2R Build & Test
@dotnet-bot test Ubuntu zapdisable Queues Ubuntu x64 Checked Build and Test (Jit - ZapDisable=0xC)
@dotnet-bot test Windows_NT corefx_baseline Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx )
@dotnet-bot test Windows_NT corefx_jitstress1 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStress=1)
@dotnet-bot test Windows_NT corefx_jitstress2 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStress=2)
@dotnet-bot test Windows_NT corefx_jitstressregs0x10 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=0x10)
@dotnet-bot test Windows_NT corefx_jitstressregs0x80 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=0x80)
@dotnet-bot test Windows_NT corefx_jitstressregs1 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=1)
@dotnet-bot test Windows_NT corefx_jitstressregs2 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=2)
@dotnet-bot test Windows_NT corefx_jitstressregs3 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=3)
@dotnet-bot test Windows_NT corefx_jitstressregs4 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=4)
@dotnet-bot test Windows_NT corefx_jitstressregs8 Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JitStressRegs=8)
@dotnet-bot test Windows_NT corefx_minopts Queues Windows_NT x64 Checked Build and Test (Jit - CoreFx JITMinOpts=1)
@dotnet-bot test Windows_NT forcerelocs Queues Windows_NT x64 Checked Build and Test (Jit - ForceRelocs)
@dotnet-bot test Windows_NT gcstress0x3 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0x3)
@dotnet-bot test Windows_NT gcstress0xc_jitstress1 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC JitStress=1)
@dotnet-bot test Windows_NT gcstress0xc_jitstress2 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC JitStress=2)
@dotnet-bot test Windows_NT gcstress0xc_minopts_heapverify1 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC JITMinOpts=1 HeapVerify=1)
@dotnet-bot test Windows_NT gcstress0xc Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC)
@dotnet-bot test Windows_NT gcstress0xc_zapdisable_heapverify1 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 HeapVerify=1)
@dotnet-bot test Windows_NT gcstress0xc_zapdisable_jitstress2 Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 JitStress=2)
@dotnet-bot test Windows_NT gcstress0xc_zapdisable Queues Windows_NT x64 Checked Build and Test (Jit - GCStress=0xC ZapDisable=1)
@dotnet-bot test Windows_NT heapverify1 Queues Windows_NT x64 Checked Build and Test (Jit - HeapVerify=1)
@dotnet-bot test Windows_NT jitstress1 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=1)
@dotnet-bot test Windows_NT jitstress2_jitstressregs0x10 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x10)
@dotnet-bot test Windows_NT jitstress2_jitstressregs0x80 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x80)
@dotnet-bot test Windows_NT jitstress2_jitstressregs1 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=1)
@dotnet-bot test Windows_NT jitstress2_jitstressregs2 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=2)
@dotnet-bot test Windows_NT jitstress2_jitstressregs3 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=3)
@dotnet-bot test Windows_NT jitstress2_jitstressregs4 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=4)
@dotnet-bot test Windows_NT jitstress2_jitstressregs8 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2 JitStressRegs=8)
@dotnet-bot test Windows_NT jitstress2 Queues Windows_NT x64 Checked Build and Test (Jit - JitStress=2)
@dotnet-bot test Windows_NT jitstressregs0x10 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=0x10)
@dotnet-bot test Windows_NT jitstressregs0x80 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=0x80)
@dotnet-bot test Windows_NT jitstressregs1 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test Windows_NT jitstressregs2 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=2)
@dotnet-bot test Windows_NT jitstressregs3 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=3)
@dotnet-bot test Windows_NT jitstressregs4 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=4)
@dotnet-bot test Windows_NT jitstressregs8 Queues Windows_NT x64 Checked Build and Test (Jit - JitStressRegs=8)
@dotnet-bot test Windows_NT minopts Queues Windows_NT x64 Checked Build and Test (Jit - MinOpts)
@dotnet-bot test Windows_NT Checked r2r_jitforcerelocs Queues Windows_NT x64 Checked ForceRelocs R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitminopts Queues Windows_NT x64 Checked JITMinOpts R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstress1 Queues Windows_NT x64 Checked jitstress1 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstress2 Queues Windows_NT x64 Checked jitstress2 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregs1 Queues Windows_NT x64 Checked jitstressregs1 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregs2 Queues Windows_NT x64 Checked jitstressregs2 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregs3 Queues Windows_NT x64 Checked jitstressregs3 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregs4 Queues Windows_NT x64 Checked jitstressregs4 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregs8 Queues Windows_NT x64 Checked jitstressregs8 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregsx10 Queues Windows_NT x64 Checked jitstressregsx10 R2R Build & Test
@dotnet-bot test Windows_NT Checked r2r_jitstressregsx80 Queues Windows_NT x64 Checked jitstressregsx80 R2R Build & Test
@dotnet-bot test Windows_NT zapdisable Queues Windows_NT x64 Checked Build and Test (Jit - ZapDisable=0xC)
@dotnet-bot test Windows_NT x86 ryujit Checked forcerelocs Queues Windows_NT x86 ryujit Checked Build and Test (Jit - ForceRelocs)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0x3 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0x3)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_jitstress1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC JitStress=1)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_jitstress2 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC JitStress=2)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_minopts_heapverify1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC JITMinOpts=1 HeapVerify=1)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_zapdisable_heapverify1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 HeapVerify=1)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_zapdisable_jitstress2 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC ZapDisable=1 JitStress=2)
@dotnet-bot test Windows_NT x86 ryujit Checked gcstress0xc_zapdisable Queues Windows_NT x86 ryujit Checked Build and Test (Jit - GCStress=0xC ZapDisable=1)
@dotnet-bot test Windows_NT x86 ryujit Checked heapverify1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - HeapVerify=1)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=1)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs0x10 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x10)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs0x80 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=0x80)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=1)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs2 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=2)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs3 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=3)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs4 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=4)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2_jitstressregs8 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2 JitStressRegs=8)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstress2 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStress=2)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs0x10 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=0x10)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs0x80 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=0x80)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs1 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=1)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs2 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=2)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs3 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=3)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs4 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=4)
@dotnet-bot test Windows_NT x86 ryujit Checked jitstressregs8 Queues Windows_NT x86 ryujit Checked Build and Test (Jit - JitStressRegs=8)
@dotnet-bot test Windows_NT x86 ryujit Checked minopts Queues Windows_NT x86 ryujit Checked Build and Test (Jit - MinOpts)
@dotnet-bot test Windows_NT x86 ryujit Checked zapdisable Queues Windows_NT x86 ryujit Checked Build and Test (Jit - ZapDisable=0xC)
@dotnet-bot test Debian8.4 Queues Debian8.4 x64 Release Build
@dotnet-bot test Fedora23 Queues Fedora23 x64 Release Build
@dotnet-bot test OpenSUSE13.2 Queues OpenSUSE13.2 x64 Release Build
@dotnet-bot test OpenSUSE42.1 Queues OpenSUSE42.1 x64 Release Build
@dotnet-bot test RHEL7.2 Queues RHEL7.2 x64 Release Build
@dotnet-bot test Ubuntu16.04 Queues Ubuntu16.04 x64 Release Build
@dotnet-bot test CentOS7.1 Checked gcstress15_pri1r2r Queues CentOS7.1 x64 Checked GCStress 15 R2R pri1 Build & Test
@dotnet-bot test CentOS7.1 Checked pri1r2r Queues CentOS7.1 x64 Checked R2R pri1 Build & Test
@dotnet-bot test CentOS7.1 Checked r2r Queues CentOS7.1 x64 Checked R2R pri0 Build & Test
@dotnet-bot test OSX Checked gcstress15_pri1r2r Queues OSX x64 Checked GCStress 15 R2R pri1 Build & Test
@dotnet-bot test OSX Checked pri1r2r Queues OSX x64 Checked R2R pri1 Build & Test
@dotnet-bot test OSX Checked r2r Queues OSX x64 Checked R2R pri0 Build & Test
@dotnet-bot test Ubuntu Checked gcstress15_pri1r2r Queues Ubuntu x64 Checked GCStress 15 R2R pri1 Build & Test
@dotnet-bot test Ubuntu Checked pri1r2r Queues Ubuntu x64 Checked R2R pri1 Build & Test
@dotnet-bot test Ubuntu Checked r2r Queues Ubuntu x64 Checked R2R pri0 Build & Test
@dotnet-bot test Windows_NT Checked gcstress15_pri1r2r Queues Windows_NT x64 Checked GCStress 15 R2R pri1 Build & Test
@dotnet-bot test Windows_NT Checked pri1r2r Queues Windows_NT x64 Checked R2R pri1 Build & Test
@dotnet-bot test Windows_NT Checked r2r Queues Windows_NT x64 Checked R2R pri0 Build & Test
@dotnet-bot test CentOS7.1 Release gcstress15_pri1r2r Queues CentOS7.1 x64 Release GCStress 15 R2R pri1 Build & Test
@dotnet-bot test CentOS7.1 Release pri1r2r Queues CentOS7.1 x64 Release R2R pri1 Build & Test
@dotnet-bot test CentOS7.1 Release r2r Queues CentOS7.1 x64 Release R2R pri0 Build & Test
@dotnet-bot test Debian8.4 pri1 Queues Debian8.4 x64 Release Pri 1 Build & Test
@dotnet-bot test OpenSUSE13.2 pri1 Queues OpenSUSE13.2 x64 Release Pri 1 Build & Test
@dotnet-bot test OSX Release gcsimulator Queues OSX x64 Release GC Simulator
@dotnet-bot test OSX Release gcstress15_pri1r2r Queues OSX x64 Release GCStress 15 R2R pri1 Build & Test
@dotnet-bot test OSX ilrt Queues OSX x64 Release IL RoundTrip Build and Test
@dotnet-bot test OSX Release longgc Queues OSX x64 Release Long-Running GC Build & Test
@dotnet-bot test OSX pri1 Queues OSX x64 Release Priority 1 Build and Test
@dotnet-bot test OSX Release pri1r2r Queues OSX x64 Release R2R pri1 Build & Test
@dotnet-bot test OSX Release r2r Queues OSX x64 Release R2R pri0 Build & Test
@dotnet-bot test RHEL7.2 pri1 Queues RHEL7.2 x64 Release Pri 1 Build & Test
@dotnet-bot test Ubuntu Release gcsimulator Queues Ubuntu x64 Release GC Simulator
@dotnet-bot test Ubuntu Release gcstress15_pri1r2r Queues Ubuntu x64 Release GCStress 15 R2R pri1 Build & Test
@dotnet-bot test Ubuntu ilrt Queues Ubuntu x64 Release IL RoundTrip Build and Test
@dotnet-bot test Ubuntu Release longgc Queues Ubuntu x64 Release Long-Running GC Build & Test
@dotnet-bot test Ubuntu pri1 Queues Ubuntu x64 Release Priority 1 Build and Test
@dotnet-bot test Ubuntu Release pri1r2r Queues Ubuntu x64 Release R2R pri1 Build & Test
@dotnet-bot test Ubuntu Release r2r Queues Ubuntu x64 Release R2R pri0 Build & Test
@dotnet-bot test Windows_NT Release gcsimulator Queues Windows_NT x64 Release GC Simulator
@dotnet-bot test Windows_NT Release gcstress15_pri1r2r Queues Windows_NT x64 Release GCStress 15 R2R pri1 Build & Test
@dotnet-bot test Windows_NT ilrt Queues Windows_NT x64 Release IL RoundTrip Build and Test
@dotnet-bot test Windows_NT Release longgc Queues Windows_NT x64 Release Long-Running GC Build & Test
@dotnet-bot test Windows_NT Release pri1r2r Queues Windows_NT x64 Release R2R pri1 Build & Test
@dotnet-bot test Windows_NT Release r2r Queues Windows_NT x64 Release R2R pri0 Build & Test
@dotnet-bot test Ubuntu formatting Queues Ubuntu x64 Formatting
@dotnet-bot test Windows_NT formatting Queues Windows_NT x64 Formatting

Have a nice day!

@swaroop-sridhar
Copy link
Author

Yes, this change will affect Desktop too, because of the changes to the VM code.
I have some changes to the Desktop JIT, and will checkin everything together.
But I wanted to do the CodeReview for GitHub portion here.

size_t* prologSize) = 0;

/*
Returns true if the given IP is in the synchronized region of the method (valid for synchronized methods only)
*/
virtual bool IsInSynchronizedRegion(
DWORD relOffset,
PTR_VOID methodInfoPtr,
GCInfoToken gcInfoToken,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit - spacing

@swaroop-sridhar
Copy link
Author

@BruceForstall: I updated gcinfo.h so that the GCINFO_VERSION is changed to 2 only for CoreCLR on X86.

So, the desktop X86 JIT GCInfo is not affected by this change. I'll checkin the changes to Desktop Jit to its own branch separate from this change.

I'm still running Desktop tests on this change, since there are some changes in common code.

@swaroop-sridhar
Copy link
Author

@dotnet-bot test Ubuntu gcstress0xc
@dotnet-bot test Windows_NT gcstress0xc
@dotnet-bot test Windows_NT arm64 Checked

@jkotas
Copy link
Member

jkotas commented Sep 10, 2016

LGTM

@jkotas
Copy link
Member

jkotas commented Sep 12, 2016

@janvorli Could you please take a look as well?

@swaroop-sridhar
Copy link
Author

@dotnet-bot test Windows_NT arm64 Checked
@dotnet-bot test CentOS7.1 x64 Debug Build and Test
@dotnet-bot test Linux ARM Emulator Cross Debug Build

@swaroop-sridhar swaroop-sridhar force-pushed the gc86 branch 2 times, most recently from 51fa362 to 16fcca9 Compare September 14, 2016 00:26
" %1d, %1d, %1d, %1d, %1d,"
" %1d, %2d, %2d, %2d, %2d,"
" %2d, %2d), \n",
" %1d, %1d, %1d, %1d, %1d, %1d,"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The number of arguments in the format string and the number of actual value arguments doesn't match - there are 23 of them in the formatting string, but 28 actual arguments.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like there was a pre-existing mismatch. I'll fix it.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is fixed now, thanks.

// | | | | | | | | | | | | | | | | | | | returnKind
// | | | | | | | | | | | | | | | | | | | |
// | | | | | | | | | | | | | | | | | | | | Arg count
// | | | | | | | | | | | | | | | | | | | | | Counted occurances
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since you are editing this file, could you please fix the spelling of the comment here: occurances -> occurences

This commit includes the following changes:
1) Thread GcInfo version through X86 specific APIs
2) Add ReturnKind and ReversePinvokeOffset fields to InfoHdr structure
   GcInfo v1 and v2 use the same InfoHdr structures, because:
   InfoHdrSmall: ReturnKind is encoded within previously unused bits.
   InfoHdr: revPInvokeOffset will never be written to the image,
            since ReversePinvokeOffset==INVALID_REV_PINVOKE_OFFSET for V1.
3) Update the Pre-computed header table to include bits for the above
   [The default setting of ReturnKind=RT_Scalar is used for all entries in the table.
    Optimizing this table based in most frequent usage scenarios is to be done separately]
4) Change the GC encoder/decoder to handle the above two fields
5) Use the ReturnKind in the GCInfo from thread-suspension code.

GcInfo version is changed for CoreCLR X86 only, not for Desktop JIT
Fixes #4379
@janvorli
Copy link
Member

LGTM, thank you!


BYTE nextByte = *table++;
BYTE encoding = nextByte & 0x7f;
const BYTE maskHaveMoreBytesBit = MORE_BYTES_TO_FOLLOW - 1;
Copy link

@briansull briansull Sep 14, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This value is confusing: maskHaveMoreBytesBit
Instead of this why not define a second constant:
ENCODING_MASK = 0x7f

SET_UNTRACKED_MAX = 3,
SET_RET_KIND_MAX = 4, // 2 bits for ReturnKind
MORE_BYTES_TO_FOLLOW = 0x80 // If the High-bit of a header or adjustment byte
// is set, then there are more adjustments to follow.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add this
ENCODING_MASK = 0x7f

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@briansull your comments showed up in my browser after I merged.
I'll make the change in a separate checkin.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants