-
Notifications
You must be signed in to change notification settings - Fork 14.3k
[lldb] clang-format AuxVector.h #85057
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This is a stacked PR, first commit here is #84147. |
@llvm/pr-subscribers-lldb Author: David Spickett (DavidSpickett) ChangesDoing this in its own commit so the intent of the previous change is clearer. Full diff: https://github.com/llvm/llvm-project/pull/85057.diff 1 Files Affected:
diff --git a/lldb/source/Plugins/Process/Utility/AuxVector.h b/lldb/source/Plugins/Process/Utility/AuxVector.h
index 3b0f55d35e5d11..9e489b05ab5ee6 100644
--- a/lldb/source/Plugins/Process/Utility/AuxVector.h
+++ b/lldb/source/Plugins/Process/Utility/AuxVector.h
@@ -20,25 +20,34 @@ class AuxVector {
AuxVector(const lldb_private::DataExtractor &data);
/// Constants describing the type of entry.
- /// On Linux, running "LD_SHOW_AUXV=1 ./executable" will spew AUX
+ /// On Linux and FreeBSD, running "LD_SHOW_AUXV=1 ./executable" will spew AUX
/// information. Added AUXV prefix to avoid potential conflicts with system-
- /// defined macros
+ /// defined macros. For FreeBSD, the numbers can be found in sys/elf_common.h.
+ ///
+ /// Linux and FreeBSD values diverge, so the FreeBSD classes will convert
+ /// some entries to the Linux AT_ value so that LLDB only has to use
+ /// the constants listed here when asking the AuxVector for a value.
enum EntryType {
- AUXV_AT_NULL = 0, ///< End of auxv.
- AUXV_AT_IGNORE = 1, ///< Ignore entry.
- AUXV_AT_EXECFD = 2, ///< File descriptor of program.
- AUXV_AT_PHDR = 3, ///< Program headers.
- AUXV_AT_PHENT = 4, ///< Size of program header.
- AUXV_AT_PHNUM = 5, ///< Number of program headers.
- AUXV_AT_PAGESZ = 6, ///< Page size.
- AUXV_AT_BASE = 7, ///< Interpreter base address.
- AUXV_AT_FLAGS = 8, ///< Flags.
- AUXV_AT_ENTRY = 9, ///< Program entry point.
- AUXV_AT_NOTELF = 10, ///< Set if program is not an ELF.
- AUXV_AT_UID = 11, ///< UID.
- AUXV_AT_EUID = 12, ///< Effective UID.
- AUXV_AT_GID = 13, ///< GID.
- AUXV_AT_EGID = 14, ///< Effective GID.
+ AUXV_AT_NULL = 0, ///< End of auxv.
+ AUXV_AT_IGNORE = 1, ///< Ignore entry.
+ AUXV_AT_EXECFD = 2, ///< File descriptor of program.
+ AUXV_AT_PHDR = 3, ///< Program headers.
+ AUXV_AT_PHENT = 4, ///< Size of program header.
+ AUXV_AT_PHNUM = 5, ///< Number of program headers.
+ AUXV_AT_PAGESZ = 6, ///< Page size.
+ AUXV_AT_BASE = 7, ///< Interpreter base address.
+ AUXV_AT_FLAGS = 8, ///< Flags.
+ AUXV_AT_ENTRY = 9, ///< Program entry point.
+ AUXV_AT_NOTELF = 10, ///< Set if program is not an ELF.
+ AUXV_AT_UID = 11, ///< UID.
+ AUXV_AT_EUID = 12, ///< Effective UID.
+ AUXV_AT_GID = 13, ///< GID.
+ AUXV_AT_EGID = 14, ///< Effective GID.
+
+ // At this point Linux and FreeBSD diverge and many of the following values
+ // are Linux specific. If you use them make sure you are in Linux specific
+ // code or they have the same value on other platforms.
+
AUXV_AT_CLKTCK = 17, ///< Clock frequency (e.g. times(2)).
AUXV_AT_PLATFORM = 15, ///< String identifying platform.
AUXV_AT_HWCAP =
@@ -60,6 +69,10 @@ class AuxVector {
AUXV_AT_L1D_CACHESHAPE = 35,
AUXV_AT_L2_CACHESHAPE = 36,
AUXV_AT_L3_CACHESHAPE = 37,
+
+ // Platform specific values which may overlap the Linux values.
+
+ AUXV_FREEBSD_AT_HWCAP = 25, ///< FreeBSD specific AT_HWCAP value.
};
std::optional<uint64_t> GetAuxValue(enum EntryType entry_type) const;
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like the commit messages and content are mismatched - the commit message references AT_HWCAP2 but it doesn't look like that's included here?
Doing this in its own commit so the intent of 2f48a1f is clearer.
546c7a7
to
705a1a5
Compare
Yes that's because I corrected the title in the previous PR but did not on this branch. I've landed that previous PR and updated this so it's only the formatting change now. |
Going to merge this without approval now that it's a simple clang-format. |
Doing this in its own commit so the intent of 2f48a1f is clearer.