)]}'
{
  "commit": "450658596be7b45d4682f4e98dafd211ffcfc40d",
  "tree": "026dfff107c4e7c748808012119da59c59fcf905",
  "parents": [
    "3f2b3eced0f8278fa335b1337a98b96df3ea062e"
  ],
  "author": {
    "name": "Torbjörn SVENSSON",
    "email": "torbjorn.svensson@foss.st.com",
    "time": "Sat Jul 25 20:42:10 2026 +0200"
  },
  "committer": {
    "name": "Torbjörn SVENSSON",
    "email": "torbjorn.svensson@foss.st.com",
    "time": "Mon Jul 27 11:55:44 2026 +0200"
  },
  "message": "testsuite: arm: require fp16 alternative hw for tests\n\nCurrently, it\u0027s assumed that arm_fp16_alternative_ok is enough to run\nthe tests, but arm_fp16_alternative_ok allows multilib override.  While\nthe test might link without trouble, execution will likely fail.\nAdd arm_fp16_alternative_hw to explicitly test that target can execute\nfp16 instructions in alternative form.\n\nBelow tests are known to fail for\nthumb/arch\u003darmv7e-m+fp/cpu\u003dcortex-m4/float-abi\u003dhard/fpu\u003dauto among other\ntargets.\n\ngcc/ChangeLog:\n\n\t* doc/sourcebuild.texi (arm_fp16_alternative_hw): Document.\n\t(arm_neon_fp16_hw): Add reference to arm_neon_fp16_ok.\n\ngcc/testsuite/ChangeLog:\n\n\t* g++.dg/ext/arm-fp16/arm-fp16-ops-3.C: Require effective target\n\tarm_fp16_alternative_hw instead of arm_fp16_alternative_ok.\n\t* g++.dg/ext/arm-fp16/arm-fp16-ops-4.C: Likewise.\n\t* gcc.dg/torture/arm-fp16-int-convert-alt.c: Likewise.\n\t* gcc.dg/torture/arm-fp16-ops-3.c: Likewise.\n\t* gcc.dg/torture/arm-fp16-ops-4.c: Likewise.\n\t* lib/target-supports.exp (arm_fp16_alternative_hw): New proc.\n\nSigned-off-by: Torbjörn SVENSSON \u003ctorbjorn.svensson@foss.st.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7b59cf89050acbd9aa59162943d9a84d6d1ecb5f",
      "old_mode": 33188,
      "old_path": "gcc/doc/sourcebuild.texi",
      "new_id": "31e0552a9249407d11616ebf7311e971eb91dbaa",
      "new_mode": 33188,
      "new_path": "gcc/doc/sourcebuild.texi"
    },
    {
      "type": "modify",
      "old_id": "5eceb3074dfdf00ec823a9783c5bce7d3da58d24",
      "old_mode": 33188,
      "old_path": "gcc/testsuite/g++.dg/ext/arm-fp16/arm-fp16-ops-3.C",
      "new_id": "839da720ad549ca454e7e669346014ef0d0205ac",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/g++.dg/ext/arm-fp16/arm-fp16-ops-3.C"
    },
    {
      "type": "modify",
      "old_id": "d86019f14699dbbe905439a181263bad5c08693c",
      "old_mode": 33188,
      "old_path": "gcc/testsuite/g++.dg/ext/arm-fp16/arm-fp16-ops-4.C",
      "new_id": "ec22e2534108f2a417d575b48bca14acb3ab1c20",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/g++.dg/ext/arm-fp16/arm-fp16-ops-4.C"
    },
    {
      "type": "modify",
      "old_id": "42171d4e83e23e6da8b366c5775dcaf548a09c0b",
      "old_mode": 33188,
      "old_path": "gcc/testsuite/gcc.dg/torture/arm-fp16-int-convert-alt.c",
      "new_id": "08eba10a3b62b6c37b6572f27c4d026ab3e870fe",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/gcc.dg/torture/arm-fp16-int-convert-alt.c"
    },
    {
      "type": "modify",
      "old_id": "3f0aecf357b4ec067b311c5a2fedc2073ed2da87",
      "old_mode": 33188,
      "old_path": "gcc/testsuite/gcc.dg/torture/arm-fp16-ops-3.c",
      "new_id": "839da720ad549ca454e7e669346014ef0d0205ac",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/gcc.dg/torture/arm-fp16-ops-3.c"
    },
    {
      "type": "modify",
      "old_id": "846515b5eabcaaad44be1d4f8a29fc8988bb3219",
      "old_mode": 33188,
      "old_path": "gcc/testsuite/gcc.dg/torture/arm-fp16-ops-4.c",
      "new_id": "ec22e2534108f2a417d575b48bca14acb3ab1c20",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/gcc.dg/torture/arm-fp16-ops-4.c"
    },
    {
      "type": "modify",
      "old_id": "57a6df4f83ba7edca0bc9464cf3e27072ef2e3cb",
      "old_mode": 33188,
      "old_path": "gcc/testsuite/lib/target-supports.exp",
      "new_id": "ab6aab6f935de1bce8320a4369b1997981ae2f8a",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/lib/target-supports.exp"
    }
  ]
}
