{
  "_class" : "hudson.model.FreeStyleBuild",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "com.cloudbees.jenkins.GitHubPushCause",
          "shortDescription" : "Started by GitHub push by xavierleroy"
        }
      ]
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/trunk" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 227,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "e41dc9c44327f40c1ab0feea12f779c931c9e31e",
            "branch" : [
              {
                "SHA1" : "e41dc9c44327f40c1ab0feea12f779c931c9e31e",
                "name" : "origin/trunk"
              }
            ]
          },
          "revision" : {
            "SHA1" : "e41dc9c44327f40c1ab0feea12f779c931c9e31e",
            "branch" : [
              {
                "SHA1" : "e41dc9c44327f40c1ab0feea12f779c931c9e31e",
                "name" : "origin/trunk"
              }
            ]
          }
        },
        "origin/4.11" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 221,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "3e74be23f5f2631dbb0f5ce86817f9bed934efcc",
            "branch" : [
              {
                "SHA1" : "3e74be23f5f2631dbb0f5ce86817f9bed934efcc",
                "name" : "origin/4.11"
              }
            ]
          },
          "revision" : {
            "SHA1" : "3e74be23f5f2631dbb0f5ce86817f9bed934efcc",
            "branch" : [
              {
                "SHA1" : "3e74be23f5f2631dbb0f5ce86817f9bed934efcc",
                "name" : "origin/4.11"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "e41dc9c44327f40c1ab0feea12f779c931c9e31e",
        "branch" : [
          {
            "SHA1" : "e41dc9c44327f40c1ab0feea12f779c931c9e31e",
            "name" : "origin/trunk"
          }
        ]
      },
      "remoteUrls" : [
        "https://github.com/ocaml/ocaml"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#227",
  "duration" : 2463064,
  "estimatedDuration" : 2534434,
  "executor" : None,
  "fullDisplayName" : "Risc-V-legacy #227",
  "id" : "227",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 227,
  "queueId" : 59972,
  "result" : "SUCCESS",
  "timestamp" : 1595663455713,
  "url" : "https://ci.inria.fr/ocaml/view/all/job/Risc-V-legacy/227/",
  "builtOn" : "olive",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "asmcomp/s390x/proc.ml",
          "asmcomp/selectgen.ml",
          "asmcomp/mach.ml",
          "asmcomp/arm/proc.ml",
          "asmcomp/i386/proc.ml",
          "asmcomp/arm64/emit.mlp",
          "asmcomp/cmmgen.ml",
          "asmcomp/cmm.ml",
          "testsuite/tools/parsecmm.mly",
          "asmcomp/reg.mli",
          "asmcomp/selectgen.mli",
          "asmcomp/spacetime_profiling.ml",
          "asmcomp/i386/selection.ml",
          "asmcomp/cmm_helpers.ml",
          "asmcomp/reg.ml",
          ".depend",
          "asmcomp/arm64/selection.ml",
          "asmcomp/arm64/arch.ml",
          "asmcomp/amd64/proc.ml",
          "asmcomp/amd64/selection.ml",
          "asmcomp/riscv/proc.ml",
          "asmcomp/cmm.mli",
          "asmcomp/proc.mli",
          "asmcomp/afl_instrument.ml",
          "asmcomp/printcmm.ml",
          "asmcomp/arm/selection.ml",
          "asmcomp/printcmm.mli",
          "asmcomp/arm64/proc.ml",
          "asmcomp/power/proc.ml",
          "asmcomp/arm64/reload.ml",
          "asmcomp/mach.mli"
        ],
        "commitId" : "9fcb295b980daf56b78b4c6788e885b950eac7e6",
        "timestamp" : 1595605162000,
        "author" : {
          "absoluteUrl" : "https://ci.inria.fr/ocaml/user/xavier.leroy",
          "fullName" : "xavier.leroy"
        },
        "authorEmail" : "xavier.leroy@college-de-france.fr",
        "comment" : "Revised passing of arguments to external C functions\u000a\u000aIntroduce the type Cmm.exttype to precisely describe arguments to\u000aexternal C functions, especially unboxed numerical arguments.\u000a\u000aAnnotate Cmm.Cextcall with the types of the arguments (Cmm.exttype list).\u000aAn empty list means \"all arguments have default type XInt\".\u000a\u000aAnnotate Mach.Iextcall with the type of the result (Cmm.machtype)\u000aand the types of the arguments (Cmm.exttype list).\u000a\u000aChange (slightly) the API for describing calling conventions in Proc:\u000a- loc_external_arguments now takes a Cmm.exttype list,\u000a  in order to know more precisely the types of the arguments.\u000a- loc_arguments, loc_parameters, loc_results, loc_external_results\u000a  now take a Cmm.machype instead of an array of pseudoregisters.\u000a  (Only the types of the pseudoregisters mattered anyway.)\u000a\u000aUpdate the implementations of module Proc accordingly, in every port.\u000a\u000aIntroduce a new overridable method in Selectgen, insert_move_extcall_arg,\u000ato produce the code that moves an argument of an external C function\u000ato the locations returned by Proc.loc_external_arguments.\u000a\u000aRevise the selection of external calls accordingly\u000a(method emit_extcall_args in Selectgen).\u000a",
        "date" : "2020-07-24 17:39:22 +0200",
        "id" : "9fcb295b980daf56b78b4c6788e885b950eac7e6",
        "msg" : "Revised passing of arguments to external C functions",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "asmcomp/printcmm.mli"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/cmm.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/mach.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/proc.mli"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/spacetime_profiling.ml"
          },
          {
            "editType" : "edit",
            "file" : ".depend"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/i386/proc.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/cmm_helpers.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/arm64/proc.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/s390x/proc.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/afl_instrument.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/mach.mli"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/arm64/emit.mlp"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/riscv/proc.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/cmmgen.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/selectgen.mli"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/power/proc.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/amd64/selection.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/printcmm.ml"
          },
          {
            "editType" : "edit",
            "file" : "testsuite/tools/parsecmm.mly"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/i386/selection.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/amd64/proc.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/arm/selection.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/arm64/selection.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/reg.mli"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/cmm.mli"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/reg.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/arm64/reload.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/arm/proc.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/arm64/arch.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/selectgen.ml"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "asmcomp/arm64/proc.ml",
          "asmcomp/arm64/selection.ml",
          "asmcomp/arm64/arch.ml"
        ],
        "commitId" : "ed8f3b427cd20bb968e8059d6b9b4cf537ce3bcc",
        "timestamp" : 1595605167000,
        "author" : {
          "absoluteUrl" : "https://ci.inria.fr/ocaml/user/xavier.leroy",
          "fullName" : "xavier.leroy"
        },
        "authorEmail" : "xavier.leroy@college-de-france.fr",
        "comment" : "ARM64 back-end: support the iOS/macOS ABI for calling external C functions\u000a\u000aUnboxed arguments of type `int32` that are passed on the stack\u000aare passed in 32-bit words instead of 64-bit words as in the AAPCS64 ABI.\u000a\u000aTo support this, we introduce a new specific operation, `Imove32`,\u000athat compiles down to 32-bit moves or 32-bit stack loads or 32-bit\u000astack stores.\u000a\u000aIn the Selection pass, method `insert_move_extcall_arg`,\u000awe generate `Imove32` instructions when required, i.e. if the\u000aargument is an unboxed `int32` and needs to be passed on stack.\u000a\u000aWe then update `Proc.loc_external_arguments` to use 32-bit stack words\u000afor `int32` arguments.\u000a",
        "date" : "2020-07-24 17:39:27 +0200",
        "id" : "ed8f3b427cd20bb968e8059d6b9b4cf537ce3bcc",
        "msg" : "ARM64 back-end: support the iOS/macOS ABI for calling external C functions",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "asmcomp/arm64/proc.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/arm64/selection.ml"
          },
          {
            "editType" : "edit",
            "file" : "asmcomp/arm64/arch.ml"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "Changes"
        ],
        "commitId" : "cc25fc9342c63d7a97eeb052c6eaaadfe7fb2fc5",
        "timestamp" : 1595605167000,
        "author" : {
          "absoluteUrl" : "https://ci.inria.fr/ocaml/user/xavier.leroy",
          "fullName" : "xavier.leroy"
        },
        "authorEmail" : "xavier.leroy@college-de-france.fr",
        "comment" : "Changes entry for #9752\u000a",
        "date" : "2020-07-24 17:39:27 +0200",
        "id" : "cc25fc9342c63d7a97eeb052c6eaaadfe7fb2fc5",
        "msg" : "Changes entry for #9752",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "Changes"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://ci.inria.fr/ocaml/user/xavier.leroy",
      "fullName" : "xavier.leroy"
    }
  ]
}