diff options
author | Sverker Eriksson <[email protected]> | 2016-05-26 14:36:52 +0200 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2016-05-26 14:36:52 +0200 |
commit | 89adc0eec23c1a3ac552650004863de4cf82422e (patch) | |
tree | 141a582f3f52290cb07cfd797d8295fc2f094d58 /lib/hipe/llvm/elf_format.hrl | |
parent | 4d7b24dcb8f10ea8ddaa002601916fb389f0e87e (diff) | |
parent | 8914b835d26cc3b513eaef0a19cd9b39d1d2ccae (diff) | |
download | otp-89adc0eec23c1a3ac552650004863de4cf82422e.tar.gz otp-89adc0eec23c1a3ac552650004863de4cf82422e.tar.bz2 otp-89adc0eec23c1a3ac552650004863de4cf82422e.zip |
Merge branch 'margnus1/llvm-compatibility/PR-1057/OTP-13626'
Diffstat (limited to 'lib/hipe/llvm/elf_format.hrl')
-rw-r--r-- | lib/hipe/llvm/elf_format.hrl | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/lib/hipe/llvm/elf_format.hrl b/lib/hipe/llvm/elf_format.hrl index 7a3cdfead6..57a36f0c3e 100644 --- a/lib/hipe/llvm/elf_format.hrl +++ b/lib/hipe/llvm/elf_format.hrl @@ -486,3 +486,43 @@ %% Misc. %%------------------------------------------------------------------------------ -define(bits(Bytes), ((Bytes) bsl 3)). + +%%------------------------------------------------------------------------------ +%% Exported record and type declarations for 'elf_format' module +%%------------------------------------------------------------------------------ + +%% Section header entries +-record(elf_shdr, + {name :: elf_format:name() % Section name + ,type :: elf_format:shdr_type() % Section type + ,flags :: elf_format:bitflags() % Section attributes + ,addr :: elf_format:offset() % Virtual address in memory + ,offset :: elf_format:offset() % Offset in file + ,size :: elf_format:size() % Size of section + ,link :: non_neg_integer() % Link to other section + ,info :: non_neg_integer() % Miscellaneous information + ,addralign :: elf_format:size() % Address align boundary + ,entsize :: elf_format:size() % Size of entries, if section has + % table + }). +-type elf_shdr() :: #elf_shdr{}. + +%% Symbol table entries +-record(elf_sym, + {name :: elf_format:name() % Symbol name + ,bind :: elf_format:sym_bind() % Symbol binding + ,type :: elf_format:sym_type() % Symbol type + ,value :: elf_format:valueoff() % Symbol value + ,size :: elf_format:size() % Size of object + ,section :: undefined | abs | elf_shdr() + }). +-type elf_sym() :: #elf_sym{}. + +%% Relocations +-record(elf_rel, + {offset :: elf_format:offset() + ,type :: elf_format:reloc_type() + ,addend :: elf_format:addend() + ,symbol :: elf_sym() + }). +-type elf_rel() :: #elf_rel{}. |