Skip to content
  1. May 13, 2020
  2. May 12, 2020
    • Jonas Devlieghere's avatar
      [VirtualFileSystem] Add unit test that showcases another YAMLVFSWriter bug · 58bc507b
      Jonas Devlieghere authored
      This scenario generates another broken YAML mapping as illustrated below.
      
        {
          'type': 'directory',
          'name': "c",
          'contents': [
            ,
            {
              'type': 'directory',
              'name': "d",
              'contents': [
                ,
                {
                  'type': 'directory',
                  'name': "e",
                  'contents': [
                    {
                      'type': 'file',
                      'name': "f",
                      'external-contents': "//root/a/c/d/e/f"
                    }                    {
                      'type': 'file',
                      'name': "g",
                      'external-contents': "//root/a/c/d/e/g"
                    }
                  ]
                }
              ]
            }
          ]
        },
      58bc507b
    • Jonas Devlieghere's avatar
      [VirtualFileSystem] Add unit test that showcases YAMLVFSWriter bug · 59ba19c5
      Jonas Devlieghere authored
      This scenario generates a broken YAML mapping as illustrated below.
      
       {
         'type': 'directory',
         'name': "c",
         'contents': [
           {
             'type': 'file',
             'name': "d",
             'external-contents': "//root/a/c/d"
           }            {
             'type': 'file',
             'name': "e",
             'external-contents': "//root/a/c/e"
           }            {
             'type': 'file',
             'name': "f",
             'external-contents': "//root/a/c/f"
           }
         ]
       },
      59ba19c5
    • Alexey Lapshin's avatar
      [X86][ISelLowering] refactor Varargs handling in X86ISelLowering.cpp · aa1eb515
      Alexey Lapshin authored
      Summary:
      This patch refactors handling of VarArgs in
      X86TargetLowering::LowerFormalArguments.
      That refactoring was requested while reviewing
      D69372. Code related to varargs handling is removed
      from X86TargetLowering::LowerFormalArguments and
      is divided into smaller routines.
      
      Reviewed By: aeubanks
      
      Differential Revision: https://reviews.llvm.org/D74794
      aa1eb515
    • Fangrui Song's avatar
      [TargetLoweringObjectFileImpl] Produce .text.hot. instead of .text.hot for... · 66055230
      Fangrui Song authored
      [TargetLoweringObjectFileImpl] Produce .text.hot. instead of .text.hot for -fno-unique-section-names
      
      GNU ld's internal linker script uses (https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=add44f8d5c5c05e08b11e033127a744d61c26aee)
      
        .text           :
        {
          *(.text.unlikely .text.*_unlikely .text.unlikely.*)
          *(.text.exit .text.exit.*)
          *(.text.startup .text.startup.*)
          *(.text.hot .text.hot.*)
          *(SORT(.text.sorted.*))
          *(.text .stub .text.* .gnu.linkonce.t.*)
          /* .gnu.warning sections are handled specially by elf.em.  */
          *(.gnu.warning)
        }
      
      Because `*(.text.exit .text.exit.*)` is ordered before `*(.text .text.*)`, in a -ffunction-sections build, the C library function `exit` will be placed before other functions.
      gold's `-z keep-text-section-prefix` has the same problem.
      
      In lld, `-z keep-text-section-prefix` recognizes `.text.{exit,hot,startup,unlikely,unknown}.*`, but not `.text.{exit,hot,startup,unlikely,unknown}`, to avoid the strange placement problem.
      
      In -fno-function-sections or -fno-unique-section-names mode, a function whose `function_section_prefix` is set to `.exit"`
      will go to the output section `.text` instead of `.text.exit` when linked by lld.
      To address the problem, append a dot to become `.text.exit.`
      
      Reviewed By: grimar
      
      Differential Revision: https://reviews.llvm.org/D79600
      66055230
    • Sergey Dmitriev's avatar
      [Attributor] Fixup block addresses after rewriting function signature · 32f5ee83
      Sergey Dmitriev authored
      Reviewers: jdoerfert, sstefan1, uenoku
      
      Reviewed By: jdoerfert
      
      Subscribers: hiraditya, uenoku, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D79801
      32f5ee83
Loading