)]}'
{
  "commit": "8f2db47d13b6afdba8e7b09a01ac2a0ca41d708e",
  "tree": "f3701d2d543ccb93d62275b286a0f6e516f9e927",
  "parents": [
    "b9dfae3c245cc41f95bc4158e6f656ada65397ca"
  ],
  "author": {
    "name": "Maciej W. Rozycki",
    "email": "macro@imgtec.com",
    "time": "Fri Apr 22 01:04:52 2016 +0100"
  },
  "committer": {
    "name": "Maciej W. Rozycki",
    "email": "macro@imgtec.com",
    "time": "Wed Jun 29 04:08:27 2016 +0100"
  },
  "message": "MIPS/GAS: Fix an ISA override not lifting ABI restrictions\n\nCorrect a regression introduced with commit 919731affbef (\"Add MIPS\n.module directive\") causing code like:\n\n\t.set\tmips3\n\tdli\t$2, 0x9000000080000000\n\nto fail assembly with the following error message produced:\n\nError: number (0x9000000080000000) larger than 32 bits\n\nif built with `mips3\u0027 selected as the global ISA (e.g. `-march\u003dmips3\u0027).\nThis is because a `.set\u0027 directive doing an ISA override does not lift\nthe ABI restriction on register sizes if the ISA remains unchanged.\nPreviously the directive always set register sizes from the ISA chosen,\nwhich is what some code expects.  Restore the old semantics then.\n\n\tgas/\n\t* config/tc-mips.c (code_option_type): New enum.\n\t(parse_code_option): Return status indicating option type.\n\t(s_mipsset): Update `parse_code_option\u0027 call site accordingly.\n\tAlways set register sizes from the ISA with ISA overrides.\n\t(s_module): Update `parse_code_option\u0027 call site.\n\t* testsuite/gas/mips/isa-override-1.d: New test.\n\t* testsuite/gas/mips/micromips@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips1@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips2@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips32@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips32r2@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips32r3@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips32r5@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips32r6@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips64r2@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips64r3@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips64r5@isa-override-1.d: New test.\n\t* testsuite/gas/mips/mips64r6@isa-override-1.d: New test.\n\t* testsuite/gas/mips/r3000@isa-override-1.d: New test.\n\t* testsuite/gas/mips/r3900@isa-override-1.d: New test.\n\t* testsuite/gas/mips/r5900@isa-override-1.d: New test.\n\t* testsuite/gas/mips/octeon@isa-override-1.d: New test.\n\t* testsuite/gas/mips/octeon3@isa-override-1.d: New test.\n\t* testsuite/gas/mips/isa-override-2.l: New list test.\n\t* testsuite/gas/mips/mips1@isa-override-2.l: New list test.\n\t* testsuite/gas/mips/mips2@isa-override-2.l: New list test.\n\t* testsuite/gas/mips/mips32@isa-override-2.l: New list test.\n\t* testsuite/gas/mips/mips32r2@isa-override-2.l: New list test.\n\t* testsuite/gas/mips/mips32r3@isa-override-2.l: New list test.\n\t* testsuite/gas/mips/mips32r5@isa-override-2.l: New list test.\n\t* testsuite/gas/mips/mips32r6@isa-override-2.l: New list test.\n\t* testsuite/gas/mips/r3000@isa-override-2.l: New list test.\n\t* testsuite/gas/mips/r3900@isa-override-2.l: New list test.\n\t* testsuite/gas/mips/octeon3@isa-override-2.l: New list test.\n\t* testsuite/gas/mips/octeon3@isa-override-1.l: New stderr\n\toutput.\n\t* testsuite/gas/mips/isa-override-1.s: New test source.\n\t* testsuite/gas/mips/r5900@isa-override-1.s: New test source.\n\t* testsuite/gas/mips/isa-override-2.s: New test source.\n\t* testsuite/gas/mips/mips1@isa-override-2.s: New test source.\n\t* testsuite/gas/mips/mips2@isa-override-2.s: New test source.\n\t* testsuite/gas/mips/mips32@isa-override-2.s: New test source.\n\t* testsuite/gas/mips/mips32r2@isa-override-2.s: New test source.\n\t* testsuite/gas/mips/mips32r3@isa-override-2.s: New test source.\n\t* testsuite/gas/mips/mips32r5@isa-override-2.s: New test source.\n\t* testsuite/gas/mips/mips32r6@isa-override-2.s: New test source.\n\t* testsuite/gas/mips/r3000@isa-override-2.s: New test source.\n\t* testsuite/gas/mips/r3900@isa-override-2.s: New test source.\n\t* testsuite/gas/mips/octeon3@isa-override-2.s: New test source.\n\t* testsuite/gas/mips/mips.exp: Run the new tests.\n\n(cherry picked from commit 5475e3249a6ab15afa0fe00456ada988d940a302)\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ff0493dfb1abe58bbb7ba675918ca2728b724f99",
      "old_mode": 33188,
      "old_path": "gas/ChangeLog",
      "new_id": "7ebbd8bb2050afed18dc60e19a07b11dde49abd2",
      "new_mode": 33188,
      "new_path": "gas/ChangeLog"
    },
    {
      "type": "modify",
      "old_id": "c3e3e2a8f9314e58731046f2737285c9976daa58",
      "old_mode": 33188,
      "old_path": "gas/config/tc-mips.c",
      "new_id": "1ea125135d04647c0ba6417c36d50356c96d3e9d",
      "new_mode": 33188,
      "new_path": "gas/config/tc-mips.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "70f34e24747bbc70f71d40bb61fa1a3c6bdd4ea2",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9a38981e847ff76cb5ec3fc47521055d5452b01f",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/isa-override-1.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cd215bcdc5f31b88260ca10e7e7db64477e46d86",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e600ff8ea34bde4fe427a07159f68f1e213c0684",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/micromips@isa-override-1.d"
    },
    {
      "type": "modify",
      "old_id": "1949cd8f9f8b22a3b4bffcb01eee7cb5d8178a7c",
      "old_mode": 33188,
      "old_path": "gas/testsuite/gas/mips/mips.exp",
      "new_id": "2f29b20eb7a20e7b839fbc6dbef09528e0913ec8",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips.exp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "80371b81392aec5440176e0114c9861a25e06bda",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips1@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2ec668427b24fb37474f38633dd935cafbedb475",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips1@isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips1@isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5341e0dc53a56cea00d5ee2169fbfe5b8dc6637c",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips2@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "19ad921f4112ef27caf601c66e4f7e2efcea9930",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips2@isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips2@isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "75a8f0a0630082d567cb13853fe959704b87665a",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2f693d63b3762e0fa36a7d398237a7973ebdfb92",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32@isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32@isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0ab21b972afd4883d5e05c360655e41a9173be2d",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r2@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d4d4aea98fbc65d69d74f50390e2a293d1af7811",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r2@isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r2@isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5aa2f5b8777ad88a0ff7a3bb594186214aa19467",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r3@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a32137d37476abbb866ce79bafa31b9f80d4858e",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r3@isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r3@isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5aa2f5b8777ad88a0ff7a3bb594186214aa19467",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r5@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dedc04faadb888ecc5ede50b905168c1e9d38f97",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r5@isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r5@isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5aa2f5b8777ad88a0ff7a3bb594186214aa19467",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r6@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dda7cdfbcd2d795b09ac9a30f2fa13276b1493e4",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r6@isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips32r6@isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d53fb2cc39dc94d476f2705d2ba5db9654baad3b",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips64r2@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "79873cc7823fb84854d1ee1ced21a9ac180ad46d",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips64r3@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "79873cc7823fb84854d1ee1ced21a9ac180ad46d",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips64r5@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "79873cc7823fb84854d1ee1ced21a9ac180ad46d",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/mips64r6@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dc3e9c56dc404e7294d66104644f3dec251c9447",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/octeon3@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3774f17b399b80d09d30edc36ee41a314f39f592",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/octeon3@isa-override-1.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6ca0d8d9ef2dcd5c3a08facc6250282d4387f771",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/octeon3@isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/octeon3@isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "79873cc7823fb84854d1ee1ced21a9ac180ad46d",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/octeon@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8e090ef1d1c7e11e719aa0e555e0b40f0c9c3a78",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/r3000@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2ec668427b24fb37474f38633dd935cafbedb475",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/r3000@isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/r3000@isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8e090ef1d1c7e11e719aa0e555e0b40f0c9c3a78",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/r3900@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "18c982ad25780852a9dd4c20906863d6f227ec06",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/r3900@isa-override-2.l"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "402c11829556a88b02713e46f3f25a8f2bf37f65",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/r3900@isa-override-2.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7e9c0e2eb3d769bffc5ac651050de9d1118e496c",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/r5900@isa-override-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "02352f85547a6572e5ae0d1790759d0a24ca31ff",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/mips/r5900@isa-override-1.s"
    }
  ]
}
