Anyone notice the duplication of ELF Relocation enums in two different places?

So far, for X86 identical ELF relocation flags show up in

include/llvm/Support/ELF.h and
lib/Target/X86/X86ELFWriterInfo.h

Not to mention, there are two different files named ELF.h

./lib/CodeGen/ELF.h
./include/llvm/Support/ELF.h

I'd think the latter should be renamed MCELFSupport.h

Thanks!
-jason

So far, for X86 identical ELF relocation flags show up in

include/llvm/Support/ELF.h and
lib/Target/X86/X86ELFWriterInfo.h

Not to mention, there are two different files named ELF.h

I would say that ELF.h should be the canonical one.

./lib/CodeGen/ELF.h
./include/llvm/Support/ELF.h

I'd think the latter should be renamed MCELFSupport.h

The first one should probably be removed. It is included from

JITDebugRegisterer.cpp
ELFCodeEmitter.cpp
ELFWriter.cpp

We might be able to remove the last two files today. Any missing
information in the first can probably be inlined while the MCJIT is
implemented. I will take a look at what is using this.

Thanks!
-jason

Cheers,
Rafael

The first one should probably be removed. It is included from

JITDebugRegisterer.cpp
ELFCodeEmitter.cpp
ELFWriter.cpp

We might be able to remove the last two files today. Any missing
information in the first can probably be inlined while the MCJIT is
implemented. I will take a look at what is using this.

The jit debug info works by writing an elf file to memory :frowning: While it should
be possible to change it to use MC, it is probably not a good idea as the
old JIT is going away.

If you really want to rename one of the files, rename the one in CodeGen.

Cheers,
Rafael