[llvm] r253052 - ELFYAML: Add support for parsing AMDGPU section attribute flags

Sean Silva via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 13 19:08:56 PST 2015


On Fri, Nov 13, 2015 at 9:06 AM, Tom Stellard via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: tstellar
> Date: Fri Nov 13 11:06:29 2015
> New Revision: 253052
>
> URL: http://llvm.org/viewvc/llvm-project?rev=253052&view=rev
> Log:
> ELFYAML: Add support for parsing AMDGPU section attribute flags
>
> Reviewers: silvas
>
> Subscribers: llvm-commits
>
> Differential Revision: http://reviews.llvm.org/D14444
>
> Modified:
>     llvm/trunk/lib/Object/ELFYAML.cpp
>     llvm/trunk/test/Object/AMDGPU/elf-definitios.yaml
>

This file name seems to have a typo.

-- Sean Silva


>
> Modified: llvm/trunk/lib/Object/ELFYAML.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Object/ELFYAML.cpp?rev=253052&r1=253051&r2=253052&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Object/ELFYAML.cpp (original)
> +++ llvm/trunk/lib/Object/ELFYAML.cpp Fri Nov 13 11:06:29 2015
> @@ -402,6 +402,7 @@ void ScalarEnumerationTraits<ELFYAML::EL
>
>  void ScalarBitSetTraits<ELFYAML::ELF_SHF>::bitset(IO &IO,
>                                                    ELFYAML::ELF_SHF
> &Value) {
> +  const auto *Object = static_cast<ELFYAML::Object *>(IO.getContext());
>  #define BCase(X) IO.bitSetCase(Value, #X, ELF::X);
>    BCase(SHF_WRITE)
>    BCase(SHF_ALLOC)
> @@ -414,6 +415,17 @@ void ScalarBitSetTraits<ELFYAML::ELF_SHF
>    BCase(SHF_OS_NONCONFORMING)
>    BCase(SHF_GROUP)
>    BCase(SHF_TLS)
> +  switch(Object->Header.Machine) {
> +  case ELF::EM_AMDGPU:
> +    BCase(SHF_AMDGPU_HSA_GLOBAL)
> +    BCase(SHF_AMDGPU_HSA_READONLY)
> +    BCase(SHF_AMDGPU_HSA_CODE)
> +    BCase(SHF_AMDGPU_HSA_AGENT)
> +    break;
> +  default:
> +    // Nothing to do.
> +    break;
> +  }
>  #undef BCase
>  }
>
>
> Modified: llvm/trunk/test/Object/AMDGPU/elf-definitios.yaml
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Object/AMDGPU/elf-definitios.yaml?rev=253052&r1=253051&r2=253052&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Object/AMDGPU/elf-definitios.yaml (original)
> +++ llvm/trunk/test/Object/AMDGPU/elf-definitios.yaml Fri Nov 13 11:06:29
> 2015
> @@ -1,7 +1,16 @@
>  # RUN: yaml2obj -format=elf %s > %t.o
> -# RUN: llvm-readobj -file-headers %t.o | FileCheck %s
> +# RUN: llvm-readobj -s -file-headers %t.o | FileCheck %s
>
>  # CHECK:  Machine: EM_AMDGPU (0xE0)
> +# CHECK: Sections [
> +# CHECK: Section {
> +# CHECK: Name: .shf_amdgpu
> +# CHECK: Flags [ (0xF00000)
> +# CHECK: SHF_AMDGPU_HSA_AGENT (0x800000)
> +# CHECK: SHF_AMDGPU_HSA_CODE (0x400000)
> +# CHECK: SHF_AMDGPU_HSA_GLOBAL (0x100000)
> +# CHECK: SHF_AMDGPU_HSA_READONLY (0x200000)
> +# CHECK: }
>
>  ---
>  FileHeader:
> @@ -9,4 +18,10 @@ FileHeader:
>    Data:    ELFDATA2LSB
>    Type:    ET_REL
>    Machine: EM_AMDGPU
> +
> +Sections:
> +  - Name:  .shf_amdgpu
> +    Type:  SHT_PROGBITS
> +    Flags: [ SHF_AMDGPU_HSA_GLOBAL, SHF_AMDGPU_HSA_READONLY,
> +             SHF_AMDGPU_HSA_CODE, SHF_AMDGPU_HSA_AGENT]
>  ...
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151113/94668d3f/attachment.html>


More information about the llvm-commits mailing list