)]}'
{
  "log": [
    {
      "commit": "64b024a57c56c3528d6be3d14be5e3da42614a6f",
      "tree": "8229de122e932b8117471f0331f8d85fea3e8a9f",
      "parents": [
        "8c742da1fd4f4acc78032a34021de228e3621ea5"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Mon Oct 21 09:35:34 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Mon Oct 21 09:35:34 2019 +0000"
      },
      "message": "[LLD] [COFF] Fix use of uninitialized memory since SVN r375390\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375400 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "8c742da1fd4f4acc78032a34021de228e3621ea5",
      "tree": "fc1cd5fb667511309b0150590119471e50a0b808",
      "parents": [
        "3a192b4c7952e420f700884089bcd486ece23df5"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Mon Oct 21 08:01:59 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Mon Oct 21 08:01:59 2019 +0000"
      },
      "message": "[LLD] [COFF] Use the local dwarf code instead of Symbolizer for resolving code locations. NFC.\n\nAs we now have code that parses the dwarf info for variable locations,\nwe can use that instead of relying on the higher level Symbolizer library,\nreducing the previous two different dwarf codepaths into one.\n\nDifferential Revision: https://reviews.llvm.org/D69198\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375391 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "3a192b4c7952e420f700884089bcd486ece23df5",
      "tree": "dbb087294cfe8d403398d5ed734d2fca12ff7b5a",
      "parents": [
        "63c19e2f97d3b6a83803a14c27983211a32bad25"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Mon Oct 21 08:01:52 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Mon Oct 21 08:01:52 2019 +0000"
      },
      "message": "[LLD] Move duplicated dwarf parsing code to the Common library. NFC.\n\nDifferential Revision: https://reviews.llvm.org/D69197\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375390 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "63c19e2f97d3b6a83803a14c27983211a32bad25",
      "tree": "d540f63561e28b984d1934c25a8a007b89dea31a",
      "parents": [
        "45f33cf9da0cace7fc89c631b542de82b0f36f6c"
      ],
      "author": {
        "name": "George Rimar",
        "email": "grimar@accesssoftek.com",
        "time": "Sun Oct 20 14:47:09 2019 +0000"
      },
      "committer": {
        "name": "George Rimar",
        "email": "grimar@accesssoftek.com",
        "time": "Sun Oct 20 14:47:09 2019 +0000"
      },
      "message": "[LLD][ELF] - Update tests after yaml2obj tool update.\n\nyaml2obj doesn\u0027t create .symtab by default anymore.\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375360 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "45f33cf9da0cace7fc89c631b542de82b0f36f6c",
      "tree": "caa9134aa2bab2d2ab269231792e514dc4a0b7b8",
      "parents": [
        "85c8ee18394b0813d1d5a3992e3eb2df8657af23"
      ],
      "author": {
        "name": "Reid Kleckner",
        "email": "rnk@google.com",
        "time": "Sat Oct 19 00:48:11 2019 +0000"
      },
      "committer": {
        "name": "Reid Kleckner",
        "email": "rnk@google.com",
        "time": "Sat Oct 19 00:48:11 2019 +0000"
      },
      "message": "Move endian constant from Host.h to SwapByteOrder.h, prune include\n\nWorks on this dependency chain:\n  ArrayRef.h -\u003e\n  Hashing.h -\u003e --CUT--\n  Host.h -\u003e\n  StringMap.h / StringRef.h\n\nArrayRef is very popular, but Host.h is rarely needed. Move the\nIsBigEndianHost constant to SwapByteOrder.h. Clients of that header are\nmore likely to need it.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375316 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "85c8ee18394b0813d1d5a3992e3eb2df8657af23",
      "tree": "987bccf550fbc219d448eea403b135ef51da857a",
      "parents": [
        "f6f221b0d3aff14f3a94a3c54eb56d9d3a244923"
      ],
      "author": {
        "name": "Thomas Lively",
        "email": "tlively@google.com",
        "time": "Fri Oct 18 20:27:30 2019 +0000"
      },
      "committer": {
        "name": "Thomas Lively",
        "email": "tlively@google.com",
        "time": "Fri Oct 18 20:27:30 2019 +0000"
      },
      "message": "[WebAssembly] Allow multivalue signatures in object files\n\nSummary:\nAlso changes the wasm YAML format to reflect the possibility of having\nmultiple return types and to put the returns after the params for\nconsistency with the binary encoding.\n\nReviewers: aheejin, sbc100\n\nSubscribers: dschuff, jgravelle-google, hiraditya, sunfish, arphaman, rupprecht, llvm-commits\n\nTags: #llvm\n\nDifferential Revision: https://reviews.llvm.org/D69156\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375283 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "f6f221b0d3aff14f3a94a3c54eb56d9d3a244923",
      "tree": "f225051408b3294f353a5cae3e14b6b6ef6814f0",
      "parents": [
        "133aa00fca6fdd1b168c8ef5e236784ec155c98c"
      ],
      "author": {
        "name": "Michael Liao",
        "email": "michael.hliao@gmail.com",
        "time": "Fri Oct 18 14:31:58 2019 +0000"
      },
      "committer": {
        "name": "Michael Liao",
        "email": "michael.hliao@gmail.com",
        "time": "Fri Oct 18 14:31:58 2019 +0000"
      },
      "message": "[lld][coff] Add missing dependency to fix build.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375238 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "133aa00fca6fdd1b168c8ef5e236784ec155c98c",
      "tree": "866c924dbfdbc4bd5025e59bcd5f61b62c4dd919",
      "parents": [
        "46510801b1abf1f3e3451e79534cc6b62514f215"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Oct 18 10:43:15 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Oct 18 10:43:15 2019 +0000"
      },
      "message": "[LLD] [COFF] Try to report source locations for duplicate symbols\n\nThis fixes the second part of PR42407.\n\nFor files with dwarf debug info, it manually loads and iterates\n.debug_info to find the declared location of variables, to allow\nreporting them. (This matches the corresponding code in the ELF\nlinker.)\n\nFor functions, it uses the existing getFileLineDwarf which uses\nLLVMSymbolizer for translating addresses to file lines.\n\nIn object files with codeview debug info, only the source location\nof duplicate functions is printed. (And even there, only for the\nfirst input file. The getFileLineCodeView function requires the\nobject file to be fully loaded and initialized to properly resolve\nsource locations, but duplicate symbols are reported at a stage when\nthe second object file isn\u0027t fully loaded yet.)\n\nDifferential Revision: https://reviews.llvm.org/D68975\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375218 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "46510801b1abf1f3e3451e79534cc6b62514f215",
      "tree": "89ee69aac862702541268edafa272a7352ea02c6",
      "parents": [
        "feb6bd86eaeaa956aefb3c8be45da7aae3abb422"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Fri Oct 18 06:11:16 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Fri Oct 18 06:11:16 2019 +0000"
      },
      "message": "Update release notes\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375206 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "feb6bd86eaeaa956aefb3c8be45da7aae3abb422",
      "tree": "6fa20d009f2659761bab39de7e855a12153e4acf",
      "parents": [
        "e4368078a0d67a64040934b22d678ee7858c393d"
      ],
      "author": {
        "name": "Jordan Rupprecht",
        "email": "rupprecht@google.com",
        "time": "Thu Oct 17 16:29:03 2019 +0000"
      },
      "committer": {
        "name": "Jordan Rupprecht",
        "email": "rupprecht@google.com",
        "time": "Thu Oct 17 16:29:03 2019 +0000"
      },
      "message": "[lld][test] Speculative fix for lld+windows failures\n\nThis updates some more places using `%T` to use `%/T` for path normalization.\n\nIf this does not work, this and r375126 should be reverted together.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375131 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "e4368078a0d67a64040934b22d678ee7858c393d",
      "tree": "4dfd4f11a5cc855ffc95209da13bcf217fb775b4",
      "parents": [
        "cc9144b5dc8210e8c28c248a58bce3ec17829dfd"
      ],
      "author": {
        "name": "Jordan Rupprecht",
        "email": "rupprecht@google.com",
        "time": "Thu Oct 17 15:35:28 2019 +0000"
      },
      "committer": {
        "name": "Jordan Rupprecht",
        "email": "rupprecht@google.com",
        "time": "Thu Oct 17 15:35:28 2019 +0000"
      },
      "message": "[lld][test] Fix use of escape character in an lld test on Windows\n\nSummary:\nGlob support was improved to accept `\\` as an escape character in r375051, but reverted as r375052 due to a failure in this test on Windows.\n\nThe reason this failure seems Windows specific is because the path separator `\\` is currently being relied on to be interpreted literally instead of as an escape character. Per documentation on linker input section wildcard patterns, this seems to be a bug in lld accepting `\\` as a literal instead of an escape character.\n\nFor example:\n```\nSECTIONS{ .foo :{ /path/to/foo.o(.foo) }} # OK: standard UNIX path\nSECTIONS{ .foo :{ C:/path/to/foo.o(.foo) }} # OK: windows accepts slashes in either direction\nSECTIONS{ .foo :{ C:\\\\path\\\\to\\\\foo.o(.foo) }} # OK: escape character used to match a literal \\\nSECTIONS{ .foo :{ C:\\path\\to\\foo.o(.foo) }} # BAD: this actually matches the path C:pathtofoo.o(.foo)\n```\n\nThis avoids the problem in the test by using `%/T` in place of `%T` to normalize the path separator to `/`, which windows should also accept.\n\nThis patch just fixes the test, and glob support will be be relanded separately.\n\nFor a sample buildbot error, see: http://lab.llvm.org:8011/builders/clang-x64-windows-msvc/builds/11578/steps/stage%201%20check/logs/stdio\n\nReviewers: evgeny777, ruiu, MaskRay, espindola\n\nReviewed By: ruiu, MaskRay\n\nSubscribers: emaste, arichardson, llvm-commits\n\nTags: #llvm\n\nDifferential Revision: https://reviews.llvm.org/D69074\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375126 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "cc9144b5dc8210e8c28c248a58bce3ec17829dfd",
      "tree": "64102cc1c34e02c73c4280c25180d3b450588693",
      "parents": [
        "51a6b6a6878f36d11d65f89e3be36efee88078fa"
      ],
      "author": {
        "name": "George Rimar",
        "email": "grimar@accesssoftek.com",
        "time": "Thu Oct 17 10:23:59 2019 +0000"
      },
      "committer": {
        "name": "George Rimar",
        "email": "grimar@accesssoftek.com",
        "time": "Thu Oct 17 10:23:59 2019 +0000"
      },
      "message": "[LLD][ELF] - Update test cases after llvm-readobj output format change.\n\nThe change was:\n\nSHT_GNU_verdef { -\u003e VersionDefinitions [\nSHT_GNU_verneed { -\u003e VersionRequirements [\nVersion symbols [ -\u003e VersionSymbols [\nEH_FRAME Header [ -\u003e EHFrameHeader {\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375096 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "51a6b6a6878f36d11d65f89e3be36efee88078fa",
      "tree": "22abb7f385bd57d1308571c3d16e8fbe0419b090",
      "parents": [
        "3dafd644af855246f057cebff67557663dd0e4b9"
      ],
      "author": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Thu Oct 17 05:16:54 2019 +0000"
      },
      "committer": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Thu Oct 17 05:16:54 2019 +0000"
      },
      "message": "[lld][WebAssebmly] Preserve custom import attributes with LTO\n\nUndefined symbols in WebAssembly can come with custom `import-module`\nand `import-field` attributes.  However when reading symbols from\nbitcode object files during LTO those curtom attributes are not\navailable.\n\nOnce we compile the LTO object and read in the symbol table from the\nobject file we have access to these custom attributes.  In this case,\nwhen undefined symbols are added and a symbol already exists in the\nSymbolTable we can\u0027t simple return it, we may need to update the\nsymbol\u0027s attributes.\n\nFixes: PR43211\n\nDifferential Revision: https://reviews.llvm.org/D68959\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375081 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "3dafd644af855246f057cebff67557663dd0e4b9",
      "tree": "43b41e4dd138eb6a8a47e4a37a662f500968992f",
      "parents": [
        "3a000037f13f9d26ef6a1c497916f24c661a3cc2"
      ],
      "author": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Thu Oct 17 03:21:02 2019 +0000"
      },
      "committer": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Thu Oct 17 03:21:02 2019 +0000"
      },
      "message": "[lld][WebAssembly] Fix for weak references to data symbols in archives\n\nFix a bug where were not handling relocations against weakly undefined\ndata symbol.  Add a test for this case.  Also ensure that the weak\nreferences to data symbols are not pulled in from archive files by\ndefault (but are if `-u \u003cname\u003e` is added to the command line).\n\nFixes: PR43696\n\nDifferential Revision: https://reviews.llvm.org/D69073\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@375077 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "3a000037f13f9d26ef6a1c497916f24c661a3cc2",
      "tree": "2c024928ab9f8a43dd470e3826efc636f12a1899",
      "parents": [
        "5c63f0cbd82b92e57ec1c8aa929dee820d1b3938"
      ],
      "author": {
        "name": "Thomas Lively",
        "email": "tlively@google.com",
        "time": "Tue Oct 15 19:05:11 2019 +0000"
      },
      "committer": {
        "name": "Thomas Lively",
        "email": "tlively@google.com",
        "time": "Tue Oct 15 19:05:11 2019 +0000"
      },
      "message": "[WebAssembly] Elide data segments for .bss sections\n\nSummary:\nWebAssembly memories are zero-initialized, so when module does not\nimport its memory initializing .bss sections is guaranteed to be a\nno-op. To reduce binary size and initialization time, .bss sections\nare simply not emitted into the final binary unless the memory is\nimported.\n\nReviewers: sbc100\n\nSubscribers: dschuff, jgravelle-google, aheejin, sunfish, llvm-commits\n\nTags: #llvm\n\nDifferential Revision: https://reviews.llvm.org/D68965\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374940 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "5c63f0cbd82b92e57ec1c8aa929dee820d1b3938",
      "tree": "2b23d99b161824cfb47a39e3c316a121a1d8596f",
      "parents": [
        "e9ded30bb67525d2812bc31e544507a643a7336b"
      ],
      "author": {
        "name": "James Clarke",
        "email": "jrtc27@jrtc27.com",
        "time": "Tue Oct 15 17:05:42 2019 +0000"
      },
      "committer": {
        "name": "James Clarke",
        "email": "jrtc27@jrtc27.com",
        "time": "Tue Oct 15 17:05:42 2019 +0000"
      },
      "message": "[lld][WebAssembly] Fix static linking of -fPIC code with external undefined data\n\nReviewers: ruiu, sbc100\n\nReviewed By: sbc100\n\nSubscribers: dschuff, jgravelle-google, aheejin, sunfish, llvm-commits\n\nTags: #llvm\n\nDifferential Revision: https://reviews.llvm.org/D68991\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374913 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "e9ded30bb67525d2812bc31e544507a643a7336b",
      "tree": "be0ee7c43559c756642dca0ba1feed9323a0ca23",
      "parents": [
        "2eeb58c9d16e603ef36a4c1c19541924824311a6"
      ],
      "author": {
        "name": "Sid Manning",
        "email": "sidneym@quicinc.com",
        "time": "Tue Oct 15 14:12:54 2019 +0000"
      },
      "committer": {
        "name": "Sid Manning",
        "email": "sidneym@quicinc.com",
        "time": "Tue Oct 15 14:12:54 2019 +0000"
      },
      "message": "[lld] Check for branch range overflows.\n\nDifferential Revision: https://reviews.llvm.org/D68875\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374891 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "2eeb58c9d16e603ef36a4c1c19541924824311a6",
      "tree": "bd03e992ce76b4d754ec4fec3b6e4bd235ce8d22",
      "parents": [
        "9fcef6f85bb2bc79bd4c8c23506d7cdfd75aba69"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Tue Oct 15 09:46:33 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Tue Oct 15 09:46:33 2019 +0000"
      },
      "message": "[LLD] [COFF] Update a leftover comment after SVN r374869. NFC.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374874 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "9fcef6f85bb2bc79bd4c8c23506d7cdfd75aba69",
      "tree": "eb24b32d1c42c6f13a32a1135dbfc3683d348950",
      "parents": [
        "bb61331be7028438dde4bfae29080e35ebb6dcfc"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Tue Oct 15 09:33:14 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Tue Oct 15 09:33:14 2019 +0000"
      },
      "message": "[LLD] [COFF] Fix -Wmissing-field-initializers warnings. NFC.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374873 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "bb61331be7028438dde4bfae29080e35ebb6dcfc",
      "tree": "822ed096ab1bea95faa1c48015bccb43bab7466a",
      "parents": [
        "84c1c1d1b5b0797cac49978ab04b874226564ab4"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Tue Oct 15 09:18:18 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Tue Oct 15 09:18:18 2019 +0000"
      },
      "message": "[LLD] [COFF] Wrap file location pair\u003cStringRef,int\u003e in Optional\u003c\u003e. NFC.\n\nThis makes use of it slightly clearer, and makes it match the\nsame construct in the lld ELF linker.\n\nDifferential Revision: https://reviews.llvm.org/D68935\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374869 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "84c1c1d1b5b0797cac49978ab04b874226564ab4",
      "tree": "7a210de5fcf606309f1e1452b0b79eca9794cd7c",
      "parents": [
        "9702db582d0a916fdf26c28d06c7d42c6f6ccf3e"
      ],
      "author": {
        "name": "Jordan Rupprecht",
        "email": "rupprecht@google.com",
        "time": "Mon Oct 14 17:47:17 2019 +0000"
      },
      "committer": {
        "name": "Jordan Rupprecht",
        "email": "rupprecht@google.com",
        "time": "Mon Oct 14 17:47:17 2019 +0000"
      },
      "message": "[llvm-objdump] Adjust spacing and field width for --section-headers\n\nSummary:\n- Expand the \"Name\" column past 13 characters when any of the section names are longer. Current behavior is a staggard output instead of a nice table if a single name is longer.\n- Only print the required number of hex chars for addresses (i.e. 8 characters for 32-bit, 16 characters for 64-bit)\n- Fix trailing spaces\n\nReviewers: grimar, jhenderson, espindola\n\nReviewed By: grimar\n\nSubscribers: emaste, sbc100, arichardson, aheejin, seiya, llvm-commits, MaskRay\n\nTags: #llvm\n\nDifferential Revision: https://reviews.llvm.org/D68730\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374795 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "9702db582d0a916fdf26c28d06c7d42c6f6ccf3e",
      "tree": "5149ddb6a9db9c3eb08a1f30b262e5b3a2f99833",
      "parents": [
        "085b0c8d6bdeb6b563b47962c0bfe4ab6413fddb"
      ],
      "author": {
        "name": "George Rimar",
        "email": "grimar@accesssoftek.com",
        "time": "Fri Oct 11 12:27:20 2019 +0000"
      },
      "committer": {
        "name": "George Rimar",
        "email": "grimar@accesssoftek.com",
        "time": "Fri Oct 11 12:27:20 2019 +0000"
      },
      "message": "[LLD][ELF] - Update test cases after llvm-readobj change.\n\nhttps://reviews.llvm.org/D68704 changed the output format.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374542 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "085b0c8d6bdeb6b563b47962c0bfe4ab6413fddb",
      "tree": "60cbb74192b00d2f56cae6984ead1cc5bf42eb9d",
      "parents": [
        "7809ac6b9d6fa488a028346af702a1473b09b937"
      ],
      "author": {
        "name": "Amy Huang",
        "email": "akhuang@google.com",
        "time": "Thu Oct 10 23:35:53 2019 +0000"
      },
      "committer": {
        "name": "Amy Huang",
        "email": "akhuang@google.com",
        "time": "Thu Oct 10 23:35:53 2019 +0000"
      },
      "message": "Change test case so that it accepts backslashes in file path, in the case that the test runs on Windows\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374473 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "7809ac6b9d6fa488a028346af702a1473b09b937",
      "tree": "de16e8709b80cff40a26b29f5bd185204d0d9922",
      "parents": [
        "acdb89e153e76b3ed3119c01b44a104f7a97f8a6"
      ],
      "author": {
        "name": "Zachary Turner",
        "email": "zturner@google.com",
        "time": "Thu Oct 10 20:25:51 2019 +0000"
      },
      "committer": {
        "name": "Zachary Turner",
        "email": "zturner@google.com",
        "time": "Thu Oct 10 20:25:51 2019 +0000"
      },
      "message": "[PDB] Fix bug when using multiple PCH header objects with the same name.\n\nA common pattern in Windows is to have all your precompiled headers\nuse an object named stdafx.obj.  If you\u0027ve got a project with many\ndifferent static libs, you might use a separate PCH for each one of\nthese.\n\nDuring the final link step, a file from A might reference the PCH\nobject from A, but it will have the same name (stdafx.obj) as any\nother PCH from another project.  The only difference will be the\npath.  For example, A might be A/stdafx.obj while B is B/stdafx.obj.\n\nThe existing algorithm checks only the filename that was passed on\nthe command line (or stored in archive), but this is insufficient in\nthe case where relative paths are used, because depending on the\ncommand line object file / library order, it might find the wrong\nPCH object first resulting in a signature mismatch.\n\nThe fix here is to simply check whether the absolute path of the\nPCH object (which is stored in the input obj file for the file that\nreferences the PCH) *ends with* the full relative path of whatever\nis specified on the command line (or is in the archive).\n\nDifferential Revision: https://reviews.llvm.org/D66431\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374442 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "acdb89e153e76b3ed3119c01b44a104f7a97f8a6",
      "tree": "9668d5c1394dd59068bd5589dcf7e02fec276678",
      "parents": [
        "de87c07e876a24b77b27add95a85cfe5e5ec83ac"
      ],
      "author": {
        "name": "Russell Gallop",
        "email": "russell.gallop@gmail.com",
        "time": "Thu Oct 10 14:50:02 2019 +0000"
      },
      "committer": {
        "name": "Russell Gallop",
        "email": "russell.gallop@gmail.com",
        "time": "Thu Oct 10 14:50:02 2019 +0000"
      },
      "message": "[LLD][ELF] Fix stale comments about doing ICF\n\nDifferential Revision: https://reviews.llvm.org/D68396\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374362 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "de87c07e876a24b77b27add95a85cfe5e5ec83ac",
      "tree": "2b6e0154e46d1f7bb4c588302a88e6f00749143f",
      "parents": [
        "78ff3823616618be876753304e132ac02666254e"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Thu Oct 10 12:41:08 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Thu Oct 10 12:41:08 2019 +0000"
      },
      "message": "Make nullptr check more robust\n\nThe only condition that isecLoc becomes null is\n\n  Out::bufferStart \u003d\u003d nullptr,\n  isec-\u003egetParent()-\u003eoffset \u003d\u003d 0, and\n  isec-\u003eoutSecOff \u003d\u003d 0.\n\nWe can check the first condition only once.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374332 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "78ff3823616618be876753304e132ac02666254e",
      "tree": "758675febf9d4241a8c9c837c10a4e2eea08e35c",
      "parents": [
        "990493632c35371aef18138d4a59f14d07dc0fa1"
      ],
      "author": {
        "name": "Roman Lebedev",
        "email": "lebedev.ri@gmail.com",
        "time": "Thu Oct 10 12:22:55 2019 +0000"
      },
      "committer": {
        "name": "Roman Lebedev",
        "email": "lebedev.ri@gmail.com",
        "time": "Thu Oct 10 12:22:55 2019 +0000"
      },
      "message": "[lld] getErrPlace(): don\u0027t perform arithmetics on maybe-null pointer\n\nisecLoc there can be null, but at the same time isec-\u003egetSize() may\nbe non-null. It is UB to offset a nullptr.The most straight-forward fix\nhere appears to perform casts+normal integral arithmetics.\n\nFAIL: lld :: ELF/invalid/invalid-relocation-aarch64.test (1158 of 2217)\n******************** TEST \u0027lld :: ELF/invalid/invalid-relocation-aarch64.test\u0027 FAILED ********************\nScript:\n--\n: \u0027RUN: at line 2\u0027;   /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/yaml2obj /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/lld/test/ELF/invalid/invalid-relocation-aarch64.test -o /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/tools/lld/test/ELF/invalid/Output/invalid-relocation-aarch64.test.tmp.o\n: \u0027RUN: at line 3\u0027;   not /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld.lld /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/tools/lld/test/ELF/invalid/Output/invalid-relocation-aarch64.test.tmp.o -o /dev/null 2\u003e\u00261 | /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/FileCheck /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/lld/test/ELF/invalid/invalid-relocation-aarch64.test\n--\nExit Code: 1\n\nCommand Output (stderr):\n--\n/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/lld/test/ELF/invalid/invalid-relocation-aarch64.test:4:10: error: CHECK: expected string not found in input\n# CHECK: error: unknown relocation (1024) against symbol foo\n         ^\n\u003cstdin\u003e:1:1: note: scanning from here\n/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/lld/ELF/Target.cpp:100:41: runtime error: applying non-zero offset 24 to null pointer\n^\n\u003cstdin\u003e:1:118: note: possible intended match here\n/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/lld/ELF/Target.cpp:100:41: runtime error: applying non-zero offset 24 to null pointer\n                                                                                                                     ^\n\n--\n\n********************\nTesting:  0.. 10.. 20.. 30.. 40.. 50.\nFAIL: lld :: ELF/invalid/invalid-relocation-x64.test (1270 of 2217)\n******************** TEST \u0027lld :: ELF/invalid/invalid-relocation-x64.test\u0027 FAILED ********************\nScript:\n--\n: \u0027RUN: at line 2\u0027;   /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/yaml2obj /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/lld/test/ELF/invalid/invalid-relocation-x64.test -o /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/tools/lld/test/ELF/invalid/Output/invalid-relocation-x64.test.tmp1.o\n: \u0027RUN: at line 3\u0027;   echo \".global foo; foo:\" \u003e /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/tools/lld/test/ELF/invalid/Output/invalid-relocation-x64.test.tmp2.s\n: \u0027RUN: at line 4\u0027;   /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/llvm-mc /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/tools/lld/test/ELF/invalid/Output/invalid-relocation-x64.test.tmp2.s -o /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/tools/lld/test/ELF/invalid/Output/invalid-relocation-x64.test.tmp2.o -filetype\u003dobj -triple x86_64-pc-linux\n: \u0027RUN: at line 5\u0027;   not /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld.lld /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/tools/lld/test/ELF/invalid/Output/invalid-relocation-x64.test.tmp1.o /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/tools/lld/test/ELF/invalid/Output/invalid-relocation-x64.test.tmp2.o -o /dev/null 2\u003e\u00261 | /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/FileCheck /b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/lld/test/ELF/invalid/invalid-relocation-x64.test\n--\nExit Code: 1\n\nCommand Output (stderr):\n--\n/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/lld/test/ELF/invalid/invalid-relocation-x64.test:6:10: error: CHECK: expected string not found in input\n# CHECK: error: unknown relocation (152) against symbol foo\n         ^\n\u003cstdin\u003e:1:1: note: scanning from here\n/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/lld/ELF/Target.cpp:100:41: runtime error: applying non-zero offset 24 to null pointer\n^\n\u003cstdin\u003e:1:118: note: possible intended match here\n/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/lld/ELF/Target.cpp:100:41: runtime error: applying non-zero offset 24 to null pointer\n                                                                                                                     ^\n\n--\n\n********************\nTesting:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..\nTesting Time: 20.73s\n********************\nFailing Tests (2):\n    lld :: ELF/invalid/invalid-relocation-aarch64.test\n    lld :: ELF/invalid/invalid-relocation-x64.test\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374329 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "990493632c35371aef18138d4a59f14d07dc0fa1",
      "tree": "0cef8a1b09d36330c52c0d61cc514f191c4dd9ec",
      "parents": [
        "860f000e63e174ddd10b0d4f1f566b4d94a927af"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Thu Oct 10 11:27:58 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Thu Oct 10 11:27:58 2019 +0000"
      },
      "message": "[COFF] Wrap definitions in namespace lld { namespace coff {. NFC\n\nSimilar to D67323, but for COFF. Many lld/COFF/ files already use\n`namespace lld { namespace coff {`. Only a few need changing.\n\nReviewed By: ruiu\n\nDifferential Revision: https://reviews.llvm.org/D68772\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374314 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "860f000e63e174ddd10b0d4f1f566b4d94a927af",
      "tree": "cf24342f13fa388b862755500dfab99bdc9596cc",
      "parents": [
        "5cd168d52a1de34c2a08ba8b58d1e6002e72885b"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Thu Oct 10 09:46:41 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Thu Oct 10 09:46:41 2019 +0000"
      },
      "message": "Use error instead of fatal to report usage errors\n\nDifferential Revision: https://reviews.llvm.org/D68768\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374297 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "5cd168d52a1de34c2a08ba8b58d1e6002e72885b",
      "tree": "2890e0c921a6191abab52ab7fe29100d74dbb502",
      "parents": [
        "b531f5752da816f44e71f952b9c92c9da8a20ecd"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Oct 10 08:52:39 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Oct 10 08:52:39 2019 +0000"
      },
      "message": "[LLD] [MinGW] Look for other library patterns with -l\n\nGNU ld looks for a number of other patterns than just lib\u003cname\u003e.dll.a\nand lib\u003cname\u003e.a.\n\nGNU ld does support linking directly against a DLL without using an\nimport library. If that\u0027s the only match for a -l argument, point out\nthat the user needs to use an import library, instead of leaving the\nuser with a puzzling message about the -l argument not being found\nat all.\n\nAlso convert an existing case of fatal() into error().\n\nDifferential Revision: https://reviews.llvm.org/D68689\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374292 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "b531f5752da816f44e71f952b9c92c9da8a20ecd",
      "tree": "36b42db05ae3182611146ebb3c54918fa278bd1e",
      "parents": [
        "2af8248999db1c5e7e58f5914824e6f617fde2c4"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Oct 10 08:52:31 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Thu Oct 10 08:52:31 2019 +0000"
      },
      "message": "[LLD] [MinGW] Add a testcase for -l:name style library options. NFC.\n\nDifferential Revision: https://reviews.llvm.org/D68688\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374291 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "2af8248999db1c5e7e58f5914824e6f617fde2c4",
      "tree": "b75302dc858575787e34a3e93eaf99b660b0b90f",
      "parents": [
        "472e9b95b43b97efd52b0c19346b379c928b09a7"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Thu Oct 10 08:32:12 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Thu Oct 10 08:32:12 2019 +0000"
      },
      "message": "Improve error message for bad SHF_MERGE sections\n\nThis patch adds a section name to error messages.\n\nDifferential Revision: https://reviews.llvm.org/D68758\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374290 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "472e9b95b43b97efd52b0c19346b379c928b09a7",
      "tree": "afc724b5dc09ac0458b954c6294c0eeef4988414",
      "parents": [
        "787a17d20e338de7268553ab1faa1415ee1bdabb"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Thu Oct 10 05:25:39 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Thu Oct 10 05:25:39 2019 +0000"
      },
      "message": "[WebAssembly] Wrap definitions in namespace lld { namespace wasm {. NFC\n\nSimilar to D68323, but for wasm.\n\nReviewed By: ruiu\n\nDifferential Revision: https://reviews.llvm.org/D68759\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374279 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "787a17d20e338de7268553ab1faa1415ee1bdabb",
      "tree": "bd1f1498845e741cda39ec630da21f744b94389c",
      "parents": [
        "07fe59cf099cebd65a30b9a1e0b7616da41919a2"
      ],
      "author": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Thu Oct 10 03:23:06 2019 +0000"
      },
      "committer": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Thu Oct 10 03:23:06 2019 +0000"
      },
      "message": "[lld][WebAssembly] Refactor markLive.cpp. NFC\n\nThis pattern matches the ELF implementation add if also useful as\npart of a planned change where running `mark` more than once is needed.\n\nDifferential Revision: https://reviews.llvm.org/D68749\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374275 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "07fe59cf099cebd65a30b9a1e0b7616da41919a2",
      "tree": "248ff5ae425a3e5354df22f6997b65b8ca6526c8",
      "parents": [
        "05e1ab2da149c990fc8dd8c6a1fe221f7ad42cd8"
      ],
      "author": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Thu Oct 10 02:04:56 2019 +0000"
      },
      "committer": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Thu Oct 10 02:04:56 2019 +0000"
      },
      "message": "dummy comment typo fix commit to cycle the bots\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374270 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "05e1ab2da149c990fc8dd8c6a1fe221f7ad42cd8",
      "tree": "c704cf48bc374f1a9f3b84b5a7ade4198ba13b14",
      "parents": [
        "84513dbf89ba561783184083fe6cb70547db46d2"
      ],
      "author": {
        "name": "Hans Wennborg",
        "email": "hans@hanshq.net",
        "time": "Wed Oct 09 09:06:30 2019 +0000"
      },
      "committer": {
        "name": "Hans Wennborg",
        "email": "hans@hanshq.net",
        "time": "Wed Oct 09 09:06:30 2019 +0000"
      },
      "message": "Unify the two CRC implementations\n\nDavid added the JamCRC implementation in r246590. More recently, Eugene\nadded a CRC-32 implementation in r357901, which falls back to zlib\u0027s\ncrc32 function if present.\n\nThese checksums are essentially the same, so having multiple\nimplementations seems unnecessary. This replaces the CRC-32\nimplementation with the simpler one from JamCRC, and implements the\nJamCRC interface in terms of CRC-32 since this means it can use zlib\u0027s\nimplementation when available, saving a few bytes and potentially making\nit faster.\n\nJamCRC took an ArrayRef\u003cchar\u003e argument, and CRC-32 took a StringRef.\nThis patch changes it to ArrayRef\u003cuint8_t\u003e which I think is the best\nchoice, and simplifies a few of the callers nicely.\n\nDifferential revision: https://reviews.llvm.org/D68570\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374148 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "84513dbf89ba561783184083fe6cb70547db46d2",
      "tree": "ac5a92dcf4316122b0f418c71d9ef08f2c545b33",
      "parents": [
        "4043bb3e96f61469c5f6db277047d0504e0b2e2e"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Wed Oct 09 07:04:38 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Wed Oct 09 07:04:38 2019 +0000"
      },
      "message": "Use lld-link instead of llvm-dlltool to create an implib\n\nSuggested by Martin Storsjö.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374142 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "4043bb3e96f61469c5f6db277047d0504e0b2e2e",
      "tree": "fe906b30902f3807caf6ab67be9684388aafca5a",
      "parents": [
        "24eea52cc3a9fae1a59eea36b232cba0f9cce650"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Wed Oct 09 06:48:24 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Wed Oct 09 06:48:24 2019 +0000"
      },
      "message": "[lld] Don\u0027t create hints-section if Hint/Name Table is empty\n\nFixes assert in addLinkerModuleCoffGroup() when using by-ordinal imports\nonly.\n\nPatch by Stefan Schmidt.\n\nDifferential revision: https://reviews.llvm.org/D68352\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374140 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "24eea52cc3a9fae1a59eea36b232cba0f9cce650",
      "tree": "ea83e1373b7652fcf8dca914551d3910be074243",
      "parents": [
        "2fa6e378814a358a4eb053dd83c112b016089b81"
      ],
      "author": {
        "name": "Sid Manning",
        "email": "sidneym@quicinc.com",
        "time": "Tue Oct 08 14:23:49 2019 +0000"
      },
      "committer": {
        "name": "Sid Manning",
        "email": "sidneym@quicinc.com",
        "time": "Tue Oct 08 14:23:49 2019 +0000"
      },
      "message": "[lld][Hexagon] Support PLT relocation R_HEX_B15_PCREL_X/R_HEX_B9_PCREL_X\n\nThese are sometimes generated by tail call optimizations.\n\nDifferential Revision: https://reviews.llvm.org/D66542\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374052 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "2fa6e378814a358a4eb053dd83c112b016089b81",
      "tree": "a2fe17a26fdd4c714784ffcbbf5656d014489871",
      "parents": [
        "decee5e4e9972c7014ad2cebe4326511c0f1949f"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Tue Oct 08 08:03:44 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Tue Oct 08 08:03:44 2019 +0000"
      },
      "message": "Use /dev/null for tests that we do not need outputs\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374023 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "decee5e4e9972c7014ad2cebe4326511c0f1949f",
      "tree": "a8480544bd0f1a1224d08bea952139c105957b76",
      "parents": [
        "fd5a9c648e11812a9f88bc0b7bc59e6315f2317c"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Tue Oct 08 08:03:40 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Tue Oct 08 08:03:40 2019 +0000"
      },
      "message": "Report error if -export-dynamic is used with -r\n\nThe combination of the two flags doesn\u0027t make sense. And other linkers\nseem to just ignore --export-dynamic if --relocatable is given, but\nwe probably should report it as an error to let users know that is\nan invalid combination.\n\nFixes https://bugs.llvm.org/show_bug.cgi?id\u003d43552\n\nDifferential Revision: https://reviews.llvm.org/D68441\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@374022 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "fd5a9c648e11812a9f88bc0b7bc59e6315f2317c",
      "tree": "172c412d20be2579508f157927df3cfa59c335e3",
      "parents": [
        "0f13b95a30df8808f4507259b45f4afa0b480d75"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Oct 07 08:52:07 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Oct 07 08:52:07 2019 +0000"
      },
      "message": "[ELF][MIPS] De-template writeValue. NFC\n\nDepends on D68561.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373886 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "0f13b95a30df8808f4507259b45f4afa0b480d75",
      "tree": "505c30d7707e1382154279a0e8eed75b92194228",
      "parents": [
        "e2cf0c5df20c19fc3955c2a501d3429872fdb621"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Oct 07 08:31:18 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Oct 07 08:31:18 2019 +0000"
      },
      "message": "[ELF] Wrap things in `namespace lld { namespace elf {`, NFC\n\nThis makes it clear `ELF/**/*.cpp` files define things in the `lld::elf`\nnamespace and simplifies `elf::foo` to `foo`.\n\nReviewed By: atanasyan, grimar, ruiu\n\nDifferential Revision: https://reviews.llvm.org/D68323\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373885 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "e2cf0c5df20c19fc3955c2a501d3429872fdb621",
      "tree": "d3b7cf3718d725e252078cfe38c07b9b515a8dd5",
      "parents": [
        "2af29ec2a5f66a224848e0368daf5ba5fc03c342"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Oct 07 08:30:46 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Oct 07 08:30:46 2019 +0000"
      },
      "message": "[ELF][MIPS] Use lld::elf::{read,write}* instead of llvm::support::endian::{read,write}*\n\nThis allows us to delete `using namespace llvm::support::endian` and\nsimplify D68323. This change adds runtime config-\u003eendianness check but\nthe overhead should be negligible.\n\nReviewed By: ruiu\n\nDifferential Revision: https://reviews.llvm.org/D68561\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373884 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "2af29ec2a5f66a224848e0368daf5ba5fc03c342",
      "tree": "53396c13c08a46ff6ce4408c8eefb7f623785a34",
      "parents": [
        "16f08a15ce9edb8f8a0577cb7343fa7fe4e60ca1"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Oct 04 19:47:59 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Oct 04 19:47:59 2019 +0000"
      },
      "message": "[LLD] [COFF] Always demangle the __imp_ prefix to __declspec(dllimport)\n\nDifferential Revision: https://reviews.llvm.org/D68017\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373781 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "16f08a15ce9edb8f8a0577cb7343fa7fe4e60ca1",
      "tree": "46598f7a0eaa5de528cb0f246eec9c0c96104961",
      "parents": [
        "8d659669e5f2125d2a9bf67a3f9358bbd940889d"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Oct 04 08:34:26 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Oct 04 08:34:26 2019 +0000"
      },
      "message": "Revert r371732: \"lld-link: Fix tests that do not run on macOS after r371729.\"\n\nThis commit should be reverted along with r371729.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373713 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "8d659669e5f2125d2a9bf67a3f9358bbd940889d",
      "tree": "51d59ce97099aab9fe4e772e958dd171ca06597f",
      "parents": [
        "da418fcf9d440fb8006255ac208c5497496a222d"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Fri Oct 04 07:56:54 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Fri Oct 04 07:56:54 2019 +0000"
      },
      "message": "[ELF] Use union-find set and doubly linked list in Call-Chain Clustering (C³) heuristic\n\nBefore, SecToClusters[*] was used to track the belonged cluster.\nDuring a merge (From -\u003e Into), every element of From has to be updated.\nUse a union-find set to speed up this use case.\n\nAlso, replace `std::vector\u003cint\u003e Sections;` with a doubly-linked\npointers: int Next, Prev;\n\nReviewed By: Bigcheese\n\nDifferential Revision: https://reviews.llvm.org/D46228\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373708 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "da418fcf9d440fb8006255ac208c5497496a222d",
      "tree": "cf5018c61a6b95e03fad2578ad18fcb9d7dff9fa",
      "parents": [
        "99aff0634eaa18699798680677cc368f498d9e68"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Fri Oct 04 07:27:45 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Fri Oct 04 07:27:45 2019 +0000"
      },
      "message": "[MinGW] Add --reproduce option\n\nDifferential Revision: https://reviews.llvm.org/D68382\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373705 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "99aff0634eaa18699798680677cc368f498d9e68",
      "tree": "d1305230de52817e1f346e81707bb90b3d5799ec",
      "parents": [
        "95d363dd43a6e8f0f7541efe48420d74e5cf32c6"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Fri Oct 04 07:27:38 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Fri Oct 04 07:27:38 2019 +0000"
      },
      "message": "Add /reproduce option to lld/COFF\n\nThis patch adds /reproduce:\u003cpath\u003e option to lld/COFF. This is an\nlld-specific option, so we can name it freely. I chose /reproduce\nover other names (e.g. /lldlinkrepro) for consistency with other lld\nports.\n\nDifferential Revision: https://reviews.llvm.org/D68381\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373704 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "95d363dd43a6e8f0f7541efe48420d74e5cf32c6",
      "tree": "5a14f54492973afb65a21142e88113007126aa01",
      "parents": [
        "5a44221885d97a8e95b3422cbf5f516892b79831"
      ],
      "author": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Fri Oct 04 07:27:31 2019 +0000"
      },
      "committer": {
        "name": "Rui Ueyama",
        "email": "ruiu@google.com",
        "time": "Fri Oct 04 07:27:31 2019 +0000"
      },
      "message": "Revert r371729: lld-link: Make /linkrepro: take a filename, not a directory.\n\nThis reverts commit r371729 because /linkrepro option also exists\nin Microsoft link.exe and their linker takes not a filename but a\ndirectory name as an argument for /linkrepro.\n\nDifferential Revision: https://reviews.llvm.org/D68378\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373703 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "5a44221885d97a8e95b3422cbf5f516892b79831",
      "tree": "00cbd83899e3f6d7514a46543fad31ea7d529dc4",
      "parents": [
        "62d516e1753d8420623eeaaa9660d3f8747e595b"
      ],
      "author": {
        "name": "Jordan Rupprecht",
        "email": "rupprecht@google.com",
        "time": "Thu Oct 03 22:01:08 2019 +0000"
      },
      "committer": {
        "name": "Jordan Rupprecht",
        "email": "rupprecht@google.com",
        "time": "Thu Oct 03 22:01:08 2019 +0000"
      },
      "message": "[llvm-objdump] Further rearrange llvm-objdump sections for compatability\n\nSummary:\nrL371826 rearranged some output from llvm-objdump for GNU objdump compatability, but there still seem to be some more.\n\nI think this rearrangement is a little closer. Overview of the ordering which matches GNU objdump:\n* Archive headers\n* File headers\n* Section headers\n* Symbol table\n* Dwarf debugging\n* Relocations (if `--disassemble` is not used)\n* Section contents\n* Disassembly\n\nReviewers: jhenderson, justice_adams, grimar, ychen, espindola\n\nReviewed By: jhenderson\n\nSubscribers: aprantl, emaste, arichardson, jrtc27, atanasyan, seiya, llvm-commits, MaskRay\n\nTags: #llvm\n\nDifferential Revision: https://reviews.llvm.org/D68066\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373671 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "62d516e1753d8420623eeaaa9660d3f8747e595b",
      "tree": "7f2e39154f7765cd674217ecc79932c9fcfe1cde",
      "parents": [
        "6539ab48f69e781e92f5682e306175305d6926f1"
      ],
      "author": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Thu Oct 03 12:08:04 2019 +0000"
      },
      "committer": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Thu Oct 03 12:08:04 2019 +0000"
      },
      "message": "[mips] Use llvm-readobj `-A` flag in test cases. NFC\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373589 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "6539ab48f69e781e92f5682e306175305d6926f1",
      "tree": "86269fe4c1c8a1166024394d3cc3da36a8874005",
      "parents": [
        "60dd73a693472865fd6978dc62252c41ee22fb46"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "peter@pcc.me.uk",
        "time": "Tue Oct 01 17:35:56 2019 +0000"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "peter@pcc.me.uk",
        "time": "Tue Oct 01 17:35:56 2019 +0000"
      },
      "message": "Add missing REQUIRES: arm.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373357 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "60dd73a693472865fd6978dc62252c41ee22fb46",
      "tree": "5e8cbb9f821ef48f50b232ed6c536c6c9175015d",
      "parents": [
        "ff54d4faecc1687516d1ae1e3d81a9c9d238123d"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "peter@pcc.me.uk",
        "time": "Tue Oct 01 16:10:13 2019 +0000"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "peter@pcc.me.uk",
        "time": "Tue Oct 01 16:10:13 2019 +0000"
      },
      "message": "ELF: Add .interp synthetic sections first in createSyntheticSections().\n\nOur .interp section is not a SyntheticSection. As a result, it terminates the\nloop in removeUnusedSyntheticSections(). This has at least two consequences:\n\n- The synthetic .bss and .bss.rel.ro sections are always present in\n  dynamically linked executables, even when they are not needed.\n- The synthetic .ARM.exidx (and possibly other) sections are always present\n  in partitions other than the last one, even when not needed.\n  .ARM.exidx in particular is problematic because it assumes that its\n  list of code sections is non-empty in getLinkOrderDep(), which can\n  lead to a crash if the partition does not have any code sections.\n\nFix these problems by moving the creation of the .interp sections to the\ntop of createSyntheticSections(). While here, make the code a little less\nerror-prone by changing the add() lambdas to take a SyntheticSection instead\nof an InputSectionBase.\n\nDifferential Revision: https://reviews.llvm.org/D68256\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373347 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "ff54d4faecc1687516d1ae1e3d81a9c9d238123d",
      "tree": "f1b14b4f913339978a8e3a6c1d0146f63abfa25e",
      "parents": [
        "49042c57ce1b49a303adc0ed2ccc1b1763cfe0bc"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "peter@pcc.me.uk",
        "time": "Mon Sep 30 20:23:00 2019 +0000"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "peter@pcc.me.uk",
        "time": "Mon Sep 30 20:23:00 2019 +0000"
      },
      "message": "ELF: Don\u0027t merge SHF_LINK_ORDER sections for different output sections in relocatable links.\n\nMerging SHF_LINK_ORDER sections can affect semantics if the sh_link\nfields point to different sections.\n\nSpecifically, for SHF_LINK_ORDER sections, the sh_link field acts as a reverse\ndependency from the linked section, causing the SHF_LINK_ORDER section to\nbe included if the linked section is included. Merging sections with different\nsh_link fields will cause the entire contents of the SHF_LINK_ORDER section\nto be associated with a single (arbitrarily chosen) output section, whereas the\ncorrect semantics are for the individual pieces of the SHF_LINK_ORDER section\nto be associated with their linked output sections. As a result we can end up\nincorrectly dropping SHF_LINK_ORDER section contents or including the wrong\nsection contents, depending on which linked sections were chosen.\n\nDifferential Revision: https://reviews.llvm.org/D68094\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373255 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "49042c57ce1b49a303adc0ed2ccc1b1763cfe0bc",
      "tree": "11107d69d8ab537fceff5c7312513dfe4476b5e5",
      "parents": [
        "f47e28277c5cbebdbfebc778711db5f4e01eb69e"
      ],
      "author": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Mon Sep 30 18:13:48 2019 +0000"
      },
      "committer": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Mon Sep 30 18:13:48 2019 +0000"
      },
      "message": "Revert \"[MC] Emit unused undefined symbol even if its binding is not set\"\n\nThis reverts r373168. It caused PR43511.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373242 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "f47e28277c5cbebdbfebc778711db5f4e01eb69e",
      "tree": "4cf4e15218068dd3ebf7b73aafb2dfa68c600aed",
      "parents": [
        "ee929f2db80db7e09f0d5a772fb55559ab2e333b"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Sep 30 04:24:35 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Sep 30 04:24:35 2019 +0000"
      },
      "message": "[ELF][test] Change llvm-readobj --arm-attributes to --arch-specific after r373125\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373178 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "ee929f2db80db7e09f0d5a772fb55559ab2e333b",
      "tree": "da0093ab0b1a85988c885ca93d2fe2d705332b7b",
      "parents": [
        "2340c6a190dc74c6da330b77f6c7f415121a194c"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Sun Sep 29 15:26:12 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Sun Sep 29 15:26:12 2019 +0000"
      },
      "message": "[MC] Emit unused undefined symbol even if its binding is not set\n\nFor the following two cases, we currently suppress the symbols. This\npatch emits them (compatible with GNU as).\n\n* `test2_a \u003d undef`: if `undef` is otherwise unused.\n* `.hidden hidden`: if `hidden` is unused. This is the main point of the\n  patch, because omitting the symbol would cause a linker semantic\n  difference.\n\nIt causes a behavior change that is not compatible with GNU as:\n\n.weakref foo1, bar1\n\nWhen neither foo1 nor bar1 is used, we now emit bar1, which is arguably\nmore consistent.\n\nAnother change is that we will emit .TOC. for .TOC.@tocbase .  For this\ndirective, suppressing .TOC. can be seen as a size optimization, but we\nchoose to drop it for simplicity and consistency.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373168 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "2340c6a190dc74c6da330b77f6c7f415121a194c",
      "tree": "9d8da0eae947cd7abb3188c8c121680ecf641fd9",
      "parents": [
        "6871dcc63496efb22de6cdaf55840bd1f8552412"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Sat Sep 28 09:51:02 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Sat Sep 28 09:51:02 2019 +0000"
      },
      "message": "[LLD] [test] Add a forgotten comment. NFC.\n\nThis was requested in https://reviews.llvm.org/D68014, but I forgot\nto add it before pushing the commit.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373145 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "6871dcc63496efb22de6cdaf55840bd1f8552412",
      "tree": "1151c2a2d00cc32bf2812e2e9ef1817a1fed1acc",
      "parents": [
        "fab3f8620555f156808c0615678e8b2d7922ae6f"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Sep 27 12:24:18 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Sep 27 12:24:18 2019 +0000"
      },
      "message": "[LLD] Simplify the demangleItanium function. NFC.\n\nInstead of returning an optional, just return the input string if\ndemangling fails, as that\u0027s what all callers use anyway.\n\nDifferential Revision: https://reviews.llvm.org/D68015\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373077 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "fab3f8620555f156808c0615678e8b2d7922ae6f",
      "tree": "a5b8c47d2aca0c79407676dee2e211c3b2511f5b",
      "parents": [
        "7347917c51e22634205fdcc64fe772b5699e05dc"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Sep 27 12:24:03 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Sep 27 12:24:03 2019 +0000"
      },
      "message": "[LLD] Convert demangleItanium to use the higher level llvm::demangle function. NFC.\n\nThis avoids a few lines of boilerplate of dealing with C string\nallocations.\n\nAdd a testcase for a case where demangling shouldn\u0027t happen.\n\nDifferential Revision: https://reviews.llvm.org/D68014\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373076 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "7347917c51e22634205fdcc64fe772b5699e05dc",
      "tree": "a7d620a56d517c2e66fc6d38eac81ef942933532",
      "parents": [
        "9f862613b368fa8d35a67bc005e3360d1ccbb2e3"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Sep 27 12:23:45 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Fri Sep 27 12:23:45 2019 +0000"
      },
      "message": "[LLD] [COFF] Use the unified llvm demangle frontend function. NFC.\n\nAdd test cases for some cases where we don\u0027t want demangling to happen.\n\nDifferential Revision: https://reviews.llvm.org/D67301\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@373075 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "9f862613b368fa8d35a67bc005e3360d1ccbb2e3",
      "tree": "56c126dbaaf3d545c7a38419885e624b5774bcd4",
      "parents": [
        "1683917d99e0e7c1b922e961b5cd0f20fd55d00f"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Thu Sep 26 17:10:09 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Thu Sep 26 17:10:09 2019 +0000"
      },
      "message": "[ELF] Set SectionBase::partition in processSectionCommands\n\nFixes PR43461 (regression caused by D67504)\n\nThe partition field of a SECTIONS-specified section is not set after\nD67504. The 0 value affects findSection() which checks if the partition\nfield is 1.\n\nSo `Out::initArray \u003d findSection(\".init_array\")` is null, and\nDT_INIT_ARRAYSZ is not set.\n\nReviewed By: peter.smith\n\nDifferential Revision: https://reviews.llvm.org/D68087\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372996 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "1683917d99e0e7c1b922e961b5cd0f20fd55d00f",
      "tree": "4a9f0764dbdecc77657032b62db542c3602222bf",
      "parents": [
        "51997f03061bda3c31727fe3feaaf79720580f42"
      ],
      "author": {
        "name": "Matt Davis",
        "email": "nullptr@fb.com",
        "time": "Thu Sep 26 17:03:20 2019 +0000"
      },
      "committer": {
        "name": "Matt Davis",
        "email": "nullptr@fb.com",
        "time": "Thu Sep 26 17:03:20 2019 +0000"
      },
      "message": "[lld][mach-o] Avoid segfaulting when handling an empty section list.\n\nSummary:\nThe following patch avoids segfaulting if the section list is empty when writing a mach-o MH_OBJECT.  I ran into this case from a more complicated example trying to dead_strip while using \u0027-r\u0027 in lld.\n\nI\u0027m not sure if having empty sections is a legal mach-o, but it does seem that other llvm-binutils tools can ingest such a boring object with out issue.  Would it be better to emit an error, emit a warning, or do nothing?  It seems that adding a warning diagnostic might be helpful to users, as I did not expect to have a section-less object when the linker was done.\n\nReviewers: kledzik, ruiu\n\nSubscribers: llvm-commits, jrm\n\nTags: #lld, #llvm\n\nDifferential Revision: https://reviews.llvm.org/D67735\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372995 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "51997f03061bda3c31727fe3feaaf79720580f42",
      "tree": "e69133c03d270b1e2bcecca31fe16e3929baa123",
      "parents": [
        "0e91a45b47a0aa72830fbe947925c2b5900ce43c"
      ],
      "author": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Thu Sep 26 09:13:20 2019 +0000"
      },
      "committer": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Thu Sep 26 09:13:20 2019 +0000"
      },
      "message": "[mips] Relax jalr/jr instructions using R_MIPS_JALR relocation\n\nThe R_MIPS_JALR relocation denotes jalr/jr instructions in position\nindependent code. Both these instructions take a target\u0027s address from\nthe $25 register. If offset to the target symbol fits into the 18-bits,\nit\u0027s more efficient to replace jalr/jr by bal/b instructions.\n\nDifferential Revision: https://reviews.llvm.org/D68057\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372951 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "0e91a45b47a0aa72830fbe947925c2b5900ce43c",
      "tree": "245677a94b9a5b14cfbb50b34cd2482bc7cf02ba",
      "parents": [
        "e55bb9563315588c92a7fa64aa67501f770ac885"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed Sep 25 12:07:50 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed Sep 25 12:07:50 2019 +0000"
      },
      "message": "[LLD] Fix testcase from SVN r372843 if executed on windows\n\nThis should fix buildbot errors like this one:\nhttp://lab.llvm.org:8011/builders/clang-x64-windows-msvc/builds/10997\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372852 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "e55bb9563315588c92a7fa64aa67501f770ac885",
      "tree": "294bc198e373799af59036da0f7757f52a93987c",
      "parents": [
        "e4b5aac85445af4c86d81499ace9a59b434859cd"
      ],
      "author": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed Sep 25 11:03:48 2019 +0000"
      },
      "committer": {
        "name": "Martin Storsjo",
        "email": "martin@martin.st",
        "time": "Wed Sep 25 11:03:48 2019 +0000"
      },
      "message": "[LLD] [COFF] Resolve source locations for undefined references using dwarf\n\nThis fixes PR42407.\n\nDifferential Revision: https://reviews.llvm.org/D67053\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372843 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "e4b5aac85445af4c86d81499ace9a59b434859cd",
      "tree": "d95f95609f40cb3bbf4d4b2693c7daf5fd15e79e",
      "parents": [
        "2a6ee260cd30932ba84de8e8a4aa40131f694ec7"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Wed Sep 25 03:39:31 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Wed Sep 25 03:39:31 2019 +0000"
      },
      "message": "[ELF] Add -z separate-loadable-segments to complement separate-code and noseparate-code\n\nD64906 allows PT_LOAD to have overlapping p_offset ranges. In the\ndefault R RX RW RW layout + -z noseparate-code case, we do not tail pad\nsegments when transiting to another segment. This can save at most\n3*maxPageSize bytes.\n\na) Before D64906, we tail pad R, RX and the first RW.\nb) With -z separate-code, we tail pad R and RX, but not the first RW (RELRO).\n\nIn some cases, b) saves one file page. In some cases, b) wastes one\nvirtual memory page. The waste is a concern on Fuchsia. Because it uses\ncompressed binaries, it doesn\u0027t benefit from the saved file page.\n\nThis patch adds -z separate-loadable-segments to restore the behavior before\nD64906. It can affect section addresses and can thus be used as a\ndebugging mechanism (see PR43214 and ld.so partition bug in\ncrbug.com/998712).\n\nReviewed By: jakehehrlich, ruiu\n\nDifferential Revision: https://reviews.llvm.org/D67481\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372807 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "2a6ee260cd30932ba84de8e8a4aa40131f694ec7",
      "tree": "bc807f2032f9aa5f11f7c0f0f60db61f14d8814e",
      "parents": [
        "751a2936ac5d505bdf04a5793bb9ed67b377f92b"
      ],
      "author": {
        "name": "Bob Haarman",
        "email": "llvm@inglorion.net",
        "time": "Wed Sep 25 01:19:48 2019 +0000"
      },
      "committer": {
        "name": "Bob Haarman",
        "email": "llvm@inglorion.net",
        "time": "Wed Sep 25 01:19:48 2019 +0000"
      },
      "message": "[ELF] accept thinlto options without --plugin-opt\u003d prefix\n\nSummary:\nWhen support for ThinLTO was first added to lld, the options that\ncontrol it were prefixed with --plugin-opt\u003d for compatibility with\nan existing implementation as a linker plugin. This change enables\nshorter versions of the options to be used, as follows:\n\n  New                              Existing\n  -thinlto-emit-imports-files      --plugin-opt\u003dthinlto-emit-imports-files\n  -thinlto-index-only              --plugin-opt\u003dthinlto-index-only\n  -thinlto-index-only\u003d             --plugin-opt\u003dthinlto-index-only\u003d\n  -thinlto-object-suffix-replace\u003d  --plugin-opt\u003dthinlto-object-suffix-replace\u003d\n  -thinlto-prefix-replace\u003d         --plugin-opt\u003dthinlto-prefix-replace\u003d\n  -lto-obj-path\u003d                   --plugin-opt\u003dobj-path\u003d\n\nThe options with the --plugin-opt\u003d prefix have been retained as aliases\nfor the shorter variants so that they continue to be accepted.\n\nReviewers: tejohnson, ruiu, espindola\n\nReviewed By: ruiu\n\nSubscribers: emaste, arichardson, MaskRay, steven_wu, dexonsmith, arphaman, llvm-commits\n\nTags: #llvm\n\nDifferential Revision: https://reviews.llvm.org/D67782\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372798 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "751a2936ac5d505bdf04a5793bb9ed67b377f92b",
      "tree": "afe0c99ee8863767d200479d3376a802253fecd6",
      "parents": [
        "46070e3c42b1528afbd44cba4233c9cd3a5b5d8e"
      ],
      "author": {
        "name": "Peter Smith",
        "email": "peter.smith@linaro.org",
        "time": "Tue Sep 24 21:44:14 2019 +0000"
      },
      "committer": {
        "name": "Peter Smith",
        "email": "peter.smith@linaro.org",
        "time": "Tue Sep 24 21:44:14 2019 +0000"
      },
      "message": "[ELF][ARM] Fix crash when discarding InputSections that have .ARM.exidx\n\nWhen /DISCARD/ is used on an input section, that input section may have\na .ARM.exidx metadata section that depends on it. As the discard handling\ncomes after the .ARM.exidx synthetic section is created we need to make\nsure that we account for the case where the .ARM.exidx output section\nshould be removed because there are no more live input sections.\n\nDifferential Revision: https://reviews.llvm.org/D67848\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372781 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "46070e3c42b1528afbd44cba4233c9cd3a5b5d8e",
      "tree": "67391c82c013b98ff238108591a482322c1366b9",
      "parents": [
        "1b5c54024666ea7888c4dd901e45ace77de16d92"
      ],
      "author": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Tue Sep 24 20:52:12 2019 +0000"
      },
      "committer": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Tue Sep 24 20:52:12 2019 +0000"
      },
      "message": "[lld][WebAssembly] Fix static linking of -fPIC code with external undefined functions\n\nDifferential Revision: https://reviews.llvm.org/D66784\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372779 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "1b5c54024666ea7888c4dd901e45ace77de16d92",
      "tree": "da6c03b077095d54081df0b93cf47150608b54e8",
      "parents": [
        "ae7859de7b3b3b97e3158e433f11c3d1010d9aec"
      ],
      "author": {
        "name": "Bob Haarman",
        "email": "llvm@inglorion.net",
        "time": "Tue Sep 24 20:17:54 2019 +0000"
      },
      "committer": {
        "name": "Bob Haarman",
        "email": "llvm@inglorion.net",
        "time": "Tue Sep 24 20:17:54 2019 +0000"
      },
      "message": "[NFC][COFF] fix typo in comment (\"algortihm\" -\u003e \"algorithm\")\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372776 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "ae7859de7b3b3b97e3158e433f11c3d1010d9aec",
      "tree": "91ec18b28f9ec232518d3cb59349a4ad066fedff",
      "parents": [
        "d51111a692e7ec957b91b9ba3ec626c54c5c50a5"
      ],
      "author": {
        "name": "George Rimar",
        "email": "grimar@accesssoftek.com",
        "time": "Tue Sep 24 12:53:53 2019 +0000"
      },
      "committer": {
        "name": "George Rimar",
        "email": "grimar@accesssoftek.com",
        "time": "Tue Sep 24 12:53:53 2019 +0000"
      },
      "message": "[LLD][ELF][MIPS] - Inline the short helper function. NFC.\n\nIt was requested in a post-commit comment for r372570.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372747 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "d51111a692e7ec957b91b9ba3ec626c54c5c50a5",
      "tree": "01cc018e5c3109488014a2f212e91d06354f722c",
      "parents": [
        "e32dec685a5d0e7fc5ce703aae21bf4e0b2c2ccf"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Tue Sep 24 11:48:46 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Tue Sep 24 11:48:46 2019 +0000"
      },
      "message": "[ELF] Delete SectionBase::assigned\n\nD67504 removed uses of `assigned` from OutputSection::addSection, which\nmakes `assigned` purely used in processSectionCommands() and its\ncallees. By replacing its references with `parent`, we can remove\n`assigned`.\n\nReviewed By: grimar\n\nDifferential Revision: https://reviews.llvm.org/D67531\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372735 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "e32dec685a5d0e7fc5ce703aae21bf4e0b2c2ccf",
      "tree": "3741d300c298c92078ab2e89ded744188c0dfb4c",
      "parents": [
        "b41af6025a187c7c1dd00ef25e04d6effbfcc4d5"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Tue Sep 24 11:48:31 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Tue Sep 24 11:48:31 2019 +0000"
      },
      "message": "[ELF] Make MergeInputSection merging aware of output sections\n\nFixes PR38748\n\nmergeSections() calls getOutputSectionName() to get output section\nnames. Two MergeInputSections may be merged even if they are made\ndifferent by SECTIONS commands.\n\nThis patch moves mergeSections() after processSectionCommands() and\naddOrphanSections() to fix the issue. The new pass is renamed to\nOutputSection::finalizeInputSections().\n\nprocessSectionCommands() and addorphanSections() are changed to add\nsections to InputSectionDescription::sectionBases.\n\nfinalizeInputSections() merges MergeInputSections and migrates\n`sectionBases` to `sections`.\n\nFor the -r case, we drop an optimization that tries keeping sh_entsize\nnon-zero. This is for the simplicity of addOrphanSections(). The\nupdated merge-entsize2.s reflects the change.\n\nReviewed By: grimar\n\nDifferential Revision: https://reviews.llvm.org/D67504\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372734 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "b41af6025a187c7c1dd00ef25e04d6effbfcc4d5",
      "tree": "36f28f7c3ae14bfdad9de1b4d47598270736d8f2",
      "parents": [
        "80810287c3bd9f965294dd8997bdac729c8c831f"
      ],
      "author": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Mon Sep 23 21:28:29 2019 +0000"
      },
      "committer": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Mon Sep 23 21:28:29 2019 +0000"
      },
      "message": "[lld][WebAssembly] Preserve symbol flags in --relocatable output\n\nFixes https://github.com/emscripten-core/emscripten/issues/8879\n\nDifferential Revision: https://reviews.llvm.org/D67729\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372660 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "80810287c3bd9f965294dd8997bdac729c8c831f",
      "tree": "5c168b2b89f10a3448756667643e0e35fa998e62",
      "parents": [
        "fd5c35f04067d38e0c71c2ee90c3e0b24cc5b602"
      ],
      "author": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Mon Sep 23 20:32:43 2019 +0000"
      },
      "committer": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Mon Sep 23 20:32:43 2019 +0000"
      },
      "message": "[mips] Support elf32btsmipn32_fbsd / elf32ltsmipn32_fbsd emulations\n\nPatch by Kyle Evans.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372651 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "fd5c35f04067d38e0c71c2ee90c3e0b24cc5b602",
      "tree": "be27ebcee402a6d4f9be3d064458026765a5238d",
      "parents": [
        "b162abdf44297321f6fab8e2cfb6601ad9ab72b1"
      ],
      "author": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Mon Sep 23 20:32:33 2019 +0000"
      },
      "committer": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Mon Sep 23 20:32:33 2019 +0000"
      },
      "message": "[mips] Add tests to check MIPS FreeBSD emulations. NFC\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372650 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "b162abdf44297321f6fab8e2cfb6601ad9ab72b1",
      "tree": "dfdd3232e345782652572f38ae31added99d5d6e",
      "parents": [
        "3aed87e9252ed9f480cdf281254863331f5d09f2"
      ],
      "author": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Mon Sep 23 20:32:27 2019 +0000"
      },
      "committer": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Mon Sep 23 20:32:27 2019 +0000"
      },
      "message": "[mips] Reformat test case to simplify addition new tests. NFC\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372649 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "3aed87e9252ed9f480cdf281254863331f5d09f2",
      "tree": "5f05c6e19673f76cd548a20738d32b69e6d94490",
      "parents": [
        "f0c7ca9b6cc5d7b92f74651d0aff99878a2655e1"
      ],
      "author": {
        "name": "George Rimar",
        "email": "grimar@accesssoftek.com",
        "time": "Mon Sep 23 09:55:10 2019 +0000"
      },
      "committer": {
        "name": "George Rimar",
        "email": "grimar@accesssoftek.com",
        "time": "Mon Sep 23 09:55:10 2019 +0000"
      },
      "message": "[LLD][ELF] - Simplify getFlagsFromEmulation(). NFCI.\n\nA straightforward simplification.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372570 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "f0c7ca9b6cc5d7b92f74651d0aff99878a2655e1",
      "tree": "d11ba92ffed31682588aa9c2815e97a5a7620073",
      "parents": [
        "b7eeaf878bcb9ef63dbbaf5a076271d204aeb875"
      ],
      "author": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Sun Sep 22 16:26:39 2019 +0000"
      },
      "committer": {
        "name": "Simon Atanasyan",
        "email": "simon@atanasyan.com",
        "time": "Sun Sep 22 16:26:39 2019 +0000"
      },
      "message": "[mips] Deduce MIPS specific ELF header flags from `emulation`\n\nIn case of linking binary blobs which do not have any ELF headers, we can\ndeduce MIPS ABI  ELF header flags from an `emulation` option.\n\nPatch by Kyle Evans.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372513 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "b7eeaf878bcb9ef63dbbaf5a076271d204aeb875",
      "tree": "b3cd638683dde9da7e5ab5e1ade304cd7956d2c2",
      "parents": [
        "1f1de38b0686fc0793d5c7afac9e99e05b4c5c3e"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Fri Sep 20 15:03:21 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Fri Sep 20 15:03:21 2019 +0000"
      },
      "message": "[ELF] Error if the linked-to section of a SHF_LINK_ORDER section is discarded\n\nSummary:\nIf st_link(A)\u003dB, and A has the SHF_LINK_ORDER flag, we may dereference\na null pointer if B is garbage collected (PR43147):\n\n1. In Wrter.cpp:compareByFilePosition, `aOut-\u003esectionIndex` or `bOut-\u003esectionIndex`\n2. In OutputSections::finalize, `d-\u003egetParent()-\u003esectionIndex`\n\nSimply error and bail out to avoid null pointer dereferences. ld.bfd has\na similar error:\n\n    sh_link of section `.bar\u0027 points to discarded section `.foo0\u0027 of `a.o\u0027\n\nld.bfd is more permissive in that it just checks whether the linked-to\nsection of the first input section is discarded. This is likely because\nit sets sh_link of the output section according to the first input\nsection.\n\nReviewed By: grimar\n\nDifferential Revision: https://reviews.llvm.org/D67761\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372400 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "1f1de38b0686fc0793d5c7afac9e99e05b4c5c3e",
      "tree": "bc8998f79e7871baa6fc18e391a1605e74e4c050",
      "parents": [
        "c4cb4af5040359164f400951448f8637c95afd86"
      ],
      "author": {
        "name": "Thomas Lively",
        "email": "tlively@google.com",
        "time": "Thu Sep 19 21:51:52 2019 +0000"
      },
      "committer": {
        "name": "Thomas Lively",
        "email": "tlively@google.com",
        "time": "Thu Sep 19 21:51:52 2019 +0000"
      },
      "message": "[WebAssembly][NFC] Remove unnecessary braces\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372358 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "c4cb4af5040359164f400951448f8637c95afd86",
      "tree": "242295b6687966ebf6086045f9d13774e2c0d1ea",
      "parents": [
        "6b039ae1c98b51859ffa52b082d07382d6747de5"
      ],
      "author": {
        "name": "Mitch Phillips",
        "email": "mitchphillips@outlook.com",
        "time": "Thu Sep 19 20:44:12 2019 +0000"
      },
      "committer": {
        "name": "Mitch Phillips",
        "email": "mitchphillips@outlook.com",
        "time": "Thu Sep 19 20:44:12 2019 +0000"
      },
      "message": "Don\u0027t false-positive match against binary path.\n\ncopy-rel-abs.s uses llvm-objdump to generate output that\u0027s then run\nthrough FileCheck. llvm-objdump prints the file path at the top of the\nfile, which means that any build path that contains \u0027zed\u0027 will get\nfalse-matched. Ensure that \u0027zed\u0027 is only matched after the \u0027SYMBOL\nTABLE:\u0027 output, preventing this from failing if your build directory is\n~/build/sanitized-xxx/, or similar.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372351 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "6b039ae1c98b51859ffa52b082d07382d6747de5",
      "tree": "940c9b28e69c0ba7d6b172aa962cbdedddb258fe",
      "parents": [
        "3dda288c4b6bb8dd457ab1abe243d92ef6ce819f"
      ],
      "author": {
        "name": "Thomas Lively",
        "email": "tlively@google.com",
        "time": "Thu Sep 19 01:14:59 2019 +0000"
      },
      "committer": {
        "name": "Thomas Lively",
        "email": "tlively@google.com",
        "time": "Thu Sep 19 01:14:59 2019 +0000"
      },
      "message": "[WebAssembly] Sort output data sections to place .bss last\n\nSummary:\nThis was always the intended behavior, but had not been\nimplemented. This ordering is important for Emscripten when generating\n.mem files while compiling to JS, since only zeros at the end of\ninitialized memory can be dropped.\n\nFixes https://github.com/emscripten-core/emscripten/issues/8999\n\nReviewers: sbc100\n\nSubscribers: dschuff, jgravelle-google, aheejin, sunfish, llvm-commits\n\nTags: #llvm\n\nDifferential Revision: https://reviews.llvm.org/D67736\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372284 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "3dda288c4b6bb8dd457ab1abe243d92ef6ce819f",
      "tree": "bc02f877127d552d4629d7ea2119bf5bb9ea06ed",
      "parents": [
        "f65b8ad103009859c5b03d716610b0024c2461f3"
      ],
      "author": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Wed Sep 18 21:51:03 2019 +0000"
      },
      "committer": {
        "name": "Sam Clegg",
        "email": "sbc@chromium.org",
        "time": "Wed Sep 18 21:51:03 2019 +0000"
      },
      "message": "[lld][WebAssembly] Fix use after free of archive path\n\nThis was fixed in the ELF backend in https://reviews.llvm.org/D34554.\n\nDifferential Revision: https://reviews.llvm.org/D67676\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372266 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "f65b8ad103009859c5b03d716610b0024c2461f3",
      "tree": "e1bb164ea595368cac05f0cf76886fa936978d08",
      "parents": [
        "c53f64f45d24fbe5cd662f59b49061d45f3589fe"
      ],
      "author": {
        "name": "Peter Smith",
        "email": "peter.smith@linaro.org",
        "time": "Tue Sep 17 09:49:30 2019 +0000"
      },
      "committer": {
        "name": "Peter Smith",
        "email": "peter.smith@linaro.org",
        "time": "Tue Sep 17 09:49:30 2019 +0000"
      },
      "message": "[ELF][AARCH64] Refactor AArchErrataFix to match changes in ARMErrataFix NFC.\n\nD67284 introduced ARMErrataFix.cpp which was derived from\nAArch64ErrataFix.cpp. There were some useful refactoring changes made to\nARMErrataFix.cpp made as part of the review. This change applies the\nrelevant changes back to AArch64ErrataFix.cpp.\n\nMain changes are:\n- Old style variable names in comments like IS, are now new style isec.\n- Simplify init() collection of mappingSymbols to always start with a code\nmapping symbol.\n- Simplify logic in mergeCmp().\n- Fix one 80 column overflow caused by IS -\u003e isec transformation.\n\nDifferential Revision: https://reviews.llvm.org/D67622\n\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372094 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "c53f64f45d24fbe5cd662f59b49061d45f3589fe",
      "tree": "4f66e8f363b293127d0de6ad13517be58db87039",
      "parents": [
        "70fa1a96a5e2115bf1ddcad8a76aadf30bd397c2"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Tue Sep 17 02:45:38 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Tue Sep 17 02:45:38 2019 +0000"
      },
      "message": "[ELF][Hexagon] Allow PT_LOAD to have overlapping p_offset ranges on EM_HEXAGON\n\nPort the D64906 technique to EM_HEXAGON. This concludes the patch series.\n\nDifferential Revision: https://reviews.llvm.org/D67605\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372059 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "70fa1a96a5e2115bf1ddcad8a76aadf30bd397c2",
      "tree": "df3a70174dad5ae018acc0c3e9266cab143c23af",
      "parents": [
        "e96c967c6ec70fbc2923bbb57f21c39f2d3b6157"
      ],
      "author": {
        "name": "Steven Wu",
        "email": "stevenwu@apple.com",
        "time": "Mon Sep 16 18:49:57 2019 +0000"
      },
      "committer": {
        "name": "Steven Wu",
        "email": "stevenwu@apple.com",
        "time": "Mon Sep 16 18:49:57 2019 +0000"
      },
      "message": "[lld] Update lld driver to use new LTO APIs to handle libcall symbols\n\nNFC. Remove duplicated code in ELF/COFF driver and libLTO legacy\ninterfaces.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@372022 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "e96c967c6ec70fbc2923bbb57f21c39f2d3b6157",
      "tree": "18448b9ccd70f66e6351c6200db3aa93c2f7c572",
      "parents": [
        "0a49d36eee0f66cf76a7ab356ed884123be5fcf5"
      ],
      "author": {
        "name": "Peter Smith",
        "email": "peter.smith@linaro.org",
        "time": "Mon Sep 16 10:07:53 2019 +0000"
      },
      "committer": {
        "name": "Peter Smith",
        "email": "peter.smith@linaro.org",
        "time": "Mon Sep 16 10:07:53 2019 +0000"
      },
      "message": "[ELF][ARM] Fix -Werror buildbots NFC.\n\nProvide a missing initializer to get rid of warning provoking buildbot\nfailures.\n\nerror: missing field \u0027rel\u0027 initializer\n[-Werror,-Wmissing-field-initializers]\n\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371970 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "0a49d36eee0f66cf76a7ab356ed884123be5fcf5",
      "tree": "89532e555a410cfb7009ad3933f3525df7855961",
      "parents": [
        "b9d863c6c9289df2505f27aedd444a9c389f0087"
      ],
      "author": {
        "name": "Peter Smith",
        "email": "peter.smith@linaro.org",
        "time": "Mon Sep 16 09:38:38 2019 +0000"
      },
      "committer": {
        "name": "Peter Smith",
        "email": "peter.smith@linaro.org",
        "time": "Mon Sep 16 09:38:38 2019 +0000"
      },
      "message": "[ELF][ARM] Implement --fix-cortex-a8 to fix erratum 657417\n\nThe --fix-cortex-a8 option implements a linker workaround for the\ncoretex-a8 erratum 657417. A summary of the erratum conditions is:\n- A 32-bit Thumb-2 branch instruction B.w, Bcc.w, BL, BLX spans two\n4KiB regions.\n- The destination of the branch is to the first 4KiB region.\n- The instruction before the branch is a 32-bit Thumb-2 non-branch\ninstruction.\n\nThe linker fix is to redirect the branch to a patch not in the first\n4KiB region. The patch forwards the branch on to its target.\n\nThe cortex-a8, is an old CPU, with the first implementation of this\nworkaround in ld.bfd appearing in 2009. The cortex-a8 has been used in\nearly Android Phones and there are some critical applications that still\nneed to run on a cortex-a8 that have the erratum. The patch is applied\nroughly 10 times on LLD and 20 on Clang when they are built with\n--fix-cortex-a8 on an Arm system.\n\nThe formal erratum description is avaliable in the ARM Core Cortex-A8\n(AT400/AT401) Errata Notice document. This is available from Arm on\nrequest but it seems to be findable via a web search.\n\nDifferential Revision: https://reviews.llvm.org/D67284\n\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371965 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "b9d863c6c9289df2505f27aedd444a9c389f0087",
      "tree": "fc7528077e89879595664fa43bfa9a093da79ee9",
      "parents": [
        "6edf175d10694eb1b410bc2ac166ed77c35944ef"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Sep 16 07:05:34 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Sep 16 07:05:34 2019 +0000"
      },
      "message": "[ELF][X86] Allow PT_LOAD to have overlapping p_offset ranges on EM_X86_64\n\nPort the D64906 technique to EM_X86_64.\n\nDifferential Revision: https://reviews.llvm.org/D67482\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371958 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "6edf175d10694eb1b410bc2ac166ed77c35944ef",
      "tree": "a5133f74358132775dce0e908f0278457e27aa71",
      "parents": [
        "68496f45341840bfe4061213a6c6a1e90d2df850"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Sep 16 07:04:16 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Mon Sep 16 07:04:16 2019 +0000"
      },
      "message": "[ELF] Map the ELF header at imageBase\n\nIf there is no readonly section, we map:\n\n* The ELF header at imageBase+maxPageSize\n* Program headers at imageBase+maxPageSize+sizeof(Ehdr)\n* The first section .text at imageBase+maxPageSize+sizeof(Ehdr)+sizeof(program headers)\n\nDue to the interaction between Writer\u003cELFT\u003e::fixSectionAlignments and\nLinkerScript::allocateHeaders,\n`alignDown(p_vaddr(R PT_LOAD)) \u003d alignDown(p_vaddr(RX PT_LOAD))`.\nThe RX PT_LOAD will override the R PT_LOAD at runtime, which is not ideal:\n\n```\n// PHDR at 0x401034, should be 0x400034\n  PHDR           0x000034 0x00401034 0x00401034 0x000a0 0x000a0 R   0x4\n// R PT_LOAD contains just Ehdr and program headers.\n// At 0x401000, should be 0x400000\n  LOAD           0x000000 0x00401000 0x00401000 0x000d4 0x000d4 R   0x1000\n  LOAD           0x0000d4 0x004010d4 0x004010d4 0x00001 0x00001 R E 0x1000\n```\n\n* createPhdrs allocates the headers to the R PT_LOAD.\n* fixSectionAlignments assigns `imageBase+maxPageSize+sizeof(Ehdr)+sizeof(program headers)` (formula: `alignTo(dot, maxPageSize) + dot % config-\u003emaxPageSize`) to addrExpr of .text\n* allocateHeaders computes the minimum address among SHF_ALLOC sections, i.e. addr(.text)\n* allocateHeaders sets address of ELF header to `addr(.text)-sizeof(Ehdr)-sizeof(program headers) \u003d imageBase+maxPageSize`\n\nThe main observation is that when the SECTIONS command is not used, we\ndon\u0027t have to call allocateHeaders. This requires an assumption that\nthe presence of PT_PHDR and addresses of headers can be decided\nregardless of address information.\n\nThis may seem natural because dot is not manipulated by a linker script.\nThe other thing is that we have to drop the special rule for -T\u003csection\u003e\nin `getInitialDot`. If -Ttext is smaller than the image base, the headers\nwill not be allocated with the old behavior (allocateHeaders is called)\nbut always allocated with the new behavior.\n\nThe behavior change is not a problem. Whether and where headers are\nallocated can vary among linkers, or ld.bfd across different versions\n(--enable-separate-code or not). It is thus advised to use a linker\nscript with the PHDRS command to have a consistent behavior across\nlinkers. If PT_PHDR is needed, an explicit --image-base can be a simpler\nalternative.\n\nDifferential Revision: https://reviews.llvm.org/D67325\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371957 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "68496f45341840bfe4061213a6c6a1e90d2df850",
      "tree": "9366af4f7d12f2cecc42d1f32fec94699793dbdd",
      "parents": [
        "4fb31540fb812c46e3f8d2b6b7e4115ed0930693"
      ],
      "author": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Sat Sep 14 23:41:42 2019 +0000"
      },
      "committer": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Sat Sep 14 23:41:42 2019 +0000"
      },
      "message": "lld-link: Make Options.td formatting more self-consistent.\n\nAlso tighten up help strings for /force, --start-lib, and --end-lib.\n\nDifferential Revision: https://reviews.llvm.org/D67457\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371927 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "4fb31540fb812c46e3f8d2b6b7e4115ed0930693",
      "tree": "c59f73df5d1c479b065b0d439e573486d2cdd024",
      "parents": [
        "a4a4ad55926fd271cd9bd05d81ed6420bc75c17c"
      ],
      "author": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Fri Sep 13 13:13:52 2019 +0000"
      },
      "committer": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Fri Sep 13 13:13:52 2019 +0000"
      },
      "message": "lld-link: Add a flag /lldignoreenv that makes lld-link ignore env vars.\n\nThis is useful for enforcing that builds are independent of the\nenvironment; it can be used when all system library paths are added\nvia /libpath: already. It\u0027s similar ot cl.exe\u0027s /X flag.\n\nSince it should also affect %LINK% (the other caller of\n`Process::GetEnv` in lld/COFF), the early-option-parsing needs\nto move around a bit. The options are:\n\n- Add a manual loop over the argv ArrayRef and look for \"/lldignoreenv\".\n  This repeats the name of the flag in both Options.td and in\n  DriverUtils.cpp.\n\n- Add yet another table.ParseArgs() call just for /lldignoreenv before\n  adding %LINK%.\n\n- Use the existing early ParseArgs() that\u0027s there for --rsp-quoting and use\n  it for /lldignoreenv for %LINK% as well. This means --rsp-quoting\n  and /lldignoreenv can\u0027t be passed via %LINK%.\n\nI went with the third approach.\n\nDifferential Revision: https://reviews.llvm.org/D67456\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371852 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "a4a4ad55926fd271cd9bd05d81ed6420bc75c17c",
      "tree": "5f7342255b45f109727f9e5eb9f5028de909c0c5",
      "parents": [
        "0368b80b0d43100a69e0f30efd57fa421302a2e4"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Fri Sep 13 02:18:04 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Fri Sep 13 02:18:04 2019 +0000"
      },
      "message": "[ELF] Delete a redundant assignment to SectionBase::assigned. NFC\n\nLinkerScript::discard marks a section dead. It is unnecessary to set the\n`assigned` bit.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371804 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "0368b80b0d43100a69e0f30efd57fa421302a2e4",
      "tree": "b525c942557b8a551a944908a83da992eb602c7b",
      "parents": [
        "508ce7d5de1678d77a780929bfebd7a215879522"
      ],
      "author": {
        "name": "Amy Huang",
        "email": "akhuang@google.com",
        "time": "Thu Sep 12 22:04:56 2019 +0000"
      },
      "committer": {
        "name": "Amy Huang",
        "email": "akhuang@google.com",
        "time": "Thu Sep 12 22:04:56 2019 +0000"
      },
      "message": "[COFF] Fix to not add archive name to buffer identifiers when they come\nfrom thin archives.\n\nCurrently lld adds the archive name to MemoryBufferRef identifiers in order to\nensure they are unique. For thin archives, since the file name is already unique and we\nwant to keep the original path to the file, don\u0027t add the archive name.\n\nDifferential Revision: https://reviews.llvm.org/D67295\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371778 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "508ce7d5de1678d77a780929bfebd7a215879522",
      "tree": "f20078548aed9cd777290a9b3266401865628e10",
      "parents": [
        "3ee1b4eb4ec2a97874d3ee18cc8b9299f63538cf"
      ],
      "author": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Thu Sep 12 16:46:19 2019 +0000"
      },
      "committer": {
        "name": "Fangrui Song",
        "email": "maskray@google.com",
        "time": "Thu Sep 12 16:46:19 2019 +0000"
      },
      "message": "[ELF] ICF: change a dyn_cast\u003cInputSection\u003e to cast\n\nICF is performed after EhInputSections and MergeInputSections were\neliminated from inputSections. Every element of inputSections is an\nInputSection.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371744 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "3ee1b4eb4ec2a97874d3ee18cc8b9299f63538cf",
      "tree": "21528005f0104400760d02050437e47cc98fa2b1",
      "parents": [
        "9def4bd04d10dec18e11a12e4e86ea12ecf77c10"
      ],
      "author": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Thu Sep 12 12:35:34 2019 +0000"
      },
      "committer": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Thu Sep 12 12:35:34 2019 +0000"
      },
      "message": "lld-link: Fix tests that do not run on macOS after r371729.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371732 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    },
    {
      "commit": "9def4bd04d10dec18e11a12e4e86ea12ecf77c10",
      "tree": "aba9b8f10424ce8c971a832f885c0adc91cff097",
      "parents": [
        "c58b3b818f75a0b1b0a0f49b28858152361d423a"
      ],
      "author": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Thu Sep 12 11:44:13 2019 +0000"
      },
      "committer": {
        "name": "Nico Weber",
        "email": "nicolasweber@gmx.de",
        "time": "Thu Sep 12 11:44:13 2019 +0000"
      },
      "message": "lld-link: Make /linkrepro: take a filename, not a directory.\n\nThis makes lld-link behave like ld.lld. I don\u0027t see a reason for\nthe two drivers to have different behavior here.\n\nWhile here, also make lld-link add a version.txt to the tar, like\nld.lld does.\n\nDifferential Revision: https://reviews.llvm.org/D67461\n\ngit-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@371729 91177308-0d34-0410-b5e6-96231b3b80d8\n"
    }
  ],
  "next": "c58b3b818f75a0b1b0a0f49b28858152361d423a"
}
