Derek Mauro
ea9951d3a9
MSVC: Fix warnings c4244 and c4267 in the main library code
...
These are integer-type shortening warnings.
These warnings are still disabled in tests.
c4244: conversion from 'type1' to 'type2', possible loss of data
https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-levels-3-and-4-c4244?view=msvc-170
c4267: conversion from 'size_t' to 'type', possible loss of data
https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-3-c4267?view=msvc-170
Fixes https://github.com/abseil/abseil-cpp/issues/1844
PiperOrigin-RevId: 730882892
Change-Id: Id6506d71846caf1a6a5be3375c34266299c221e1
2025-02-25 07:44:44 -08:00
Derek Mauro
5852b47a81
Actually use the hint space instruction to strip PAC bits for return
...
addresses in stack traces as the comment says
71f2c75111/src/hotspot/os_cpu/linux_aarch64/pauth_linux_aarch64.inline.hpp
PiperOrigin-RevId: 724360415
Change-Id: I691160e43354131a04919765ce283e07c3c933a9
2025-02-07 08:49:51 -08:00
Abseil Team
3de434ab4c
Strip PAC bits for return addresses in stack traces
...
PiperOrigin-RevId: 705945725
Change-Id: I0a87d81244999849b163480758247b2e87c2d430
2024-12-13 11:26:23 -08:00
Lu Yahan
a3f7e9866c
PR #1788 : Fix warning for sign-conversion on riscv
...
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1788
```
error: operand of ? changes signedness: 'long' to 'uintptr_t' (aka 'unsigned long') [-Werror,-Wsign-conversion]
```
Merge 82deb4bbc4 into 95950b32c5
Merging this change closes #1788
COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1788 from luyahan:luyahan-patch-1 82deb4bbc4
PiperOrigin-RevId: 702375910
Change-Id: Ia95d342ddd277dcbde19008e31aaef09f3c3a282
2024-12-03 09:59:22 -08:00
Alexey Pavlyutkin
78ed38cf2c
PR #1783 : [riscv][debugging] Fix a few warnings in RISC-V inlines
...
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1783
Today we cannot build V8 (which uses the Abseil library) in strict mode for RISC-V due to a few warnings in debbugging inlines. All the warnings are about implicit signed to unsigned conversion and precision losses, nothing serious, but they are still very annoying.
Merge 7b2a865021 into 8596c6e7f5
Merging this change closes #1783
COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1783 from apavlyutkin:riscv-fix-warnings 7b2a865021
PiperOrigin-RevId: 693802454
Change-Id: Ibfefc9370606a6b8ec217ac6d87d7c6d70d1a3ce
2024-11-06 11:31:27 -08:00
Abseil Team
07fff76ed6
Disable Elf symbols for Xtensa
...
PiperOrigin-RevId: 689081310
Change-Id: I394b8eb6f87f3ea8e2ebce511baeef132b28d452
2024-10-23 13:23:56 -07:00
Francois Bleibel
40a975ff1e
Add stacktrace config for android using the generic implementation
...
This change adds support for unwinding stack traces on supported android platforms (NDK 33+) to absl::GetStackTrace().
PiperOrigin-RevId: 668041186
Change-Id: Ie4c4c123686050c6b81683b71fe0246e8fa75f2b
2024-08-27 10:23:20 -07:00
Abseil Team
bd3ae17f02
Disable ABSL_INTERNAL_HAVE_DEBUGGING_STACK_CONSUMPTION for Fuchsia
...
The POSIX sigaltstack() function is not implemented on Fuchsia.
PiperOrigin-RevId: 656080882
Change-Id: Ibf4892df85f299b888eb7f0016c220f49f975b96
2024-07-25 14:00:10 -07:00
Fangrui Song
1278ee9bd9
vdso_support: support DT_GNU_HASH
...
This library provides `LookupSymbol` and `LookupSymbolByAddress`. The latter
needs `GetNumSymbols` support. An object file needs either .hash (DT_HASH) or
.gnu.hash (DT_GNU_HASH). This patch adds DT_GNU_HASH support.
Note: glibc has been supporting DT_GNU_HASH since 2006 and .hash has been quite
obsoleted in the Linux communities.
PiperOrigin-RevId: 648459622
Change-Id: I3aa1274cd4617990844258175715e3be2343afd2
2024-07-01 12:59:40 -07:00
Chris Mihelich
d4cf6b71af
Declare Rust demangling feature-complete.
...
PiperOrigin-RevId: 647417773
Change-Id: I7d945ae27199262b3baf83b232d17c2f641a27ac
2024-06-27 12:59:04 -07:00
Chris Mihelich
4b9a55fd27
Decode Rust Punycode when it's not too long.
...
PiperOrigin-RevId: 647340145
Change-Id: I4b0076595dbda1f81ffdc32adad2dc1e35cb9e04
2024-06-27 09:13:53 -07:00
Chris Mihelich
16452e1418
Decoder for Rust-style Punycode encodings of bounded length.
...
PiperOrigin-RevId: 647093624
Change-Id: Ic76bfa4aa8fb616cb23095ce7bfa30c3812dcb21
2024-06-26 15:14:45 -07:00
Chris Mihelich
f04e489056
Drop std:: qualification from integer types like uint64_t.
...
PiperOrigin-RevId: 643418422
Change-Id: Ib16cfef8ddedc8366df49ca75ab02eb60af08f26
2024-06-14 12:12:29 -07:00
Chris Mihelich
7c17d8bc53
If so configured, report which part of a C++ mangled name didn't parse.
...
PiperOrigin-RevId: 642757934
Change-Id: I6dffe81e5173201b80a107b951fe1c69b20972f5
2024-06-12 15:28:39 -07:00
Chris Mihelich
fc7612086f
Sequence of 1-to-4 values with prefix sum to support Punycode decoding.
...
PiperOrigin-RevId: 642696557
Change-Id: Ia6b8e174ddb55e44bd082bf0d81d2f9c53c94016
2024-06-12 12:21:10 -07:00
Chris Mihelich
d30298a1b6
UTF-8 encoding library to support Rust Punycode decoding.
...
PiperOrigin-RevId: 641983507
Change-Id: Iad7933884aef6bfd90d159c049a1d698d19456c6
2024-06-10 12:18:15 -07:00
Chris Mihelich
5195c35dc4
Demangle template parameter object names, TA <template-arg>.
...
PiperOrigin-RevId: 641893938
Change-Id: I8a21e322c9cf1d5dab7477af5367aad134fbf2ab
2024-06-10 07:26:46 -07:00
Chris Mihelich
2f61aed18c
Demangle sr St <simple-id> <simple-id>, a dubious encoding found in the wild.
...
PiperOrigin-RevId: 641418373
Change-Id: I2999228cccfd18a000725b938a692c0c9004867c
2024-06-07 19:21:12 -07:00
Chris Mihelich
696b32788c
Try not to lose easy type combinators in S::operator const int*() and the like.
...
PiperOrigin-RevId: 641411131
Change-Id: Icba1307cccb8957e09f087a7b544f7fe8bfd8333
2024-06-07 18:27:59 -07:00
Chris Mihelich
f875817b18
Demangle fixed-width floating-point types, DF....
...
PiperOrigin-RevId: 641400156
Change-Id: Ib9f6e4f6c4bbd6d3234dfd322d1d14a59b08d88a
2024-06-07 17:20:02 -07:00
Chris Mihelich
3941dc4183
Demangle _BitInt types DB..., DU....
...
PiperOrigin-RevId: 641360162
Change-Id: Iabce55eb61feaa4dc099093a6496e26ab66906fa
2024-06-07 14:34:47 -07:00
Chris Mihelich
9140cc7b19
Demangle complex floating-point literals.
...
PiperOrigin-RevId: 641324572
Change-Id: Ie266da9c8c702e62b89352d64870fb41d2ea76c3
2024-06-07 12:28:06 -07:00
Chris Mihelich
c6000317f1
Demangle <extended-qualifier> in types, e.g., U5AS128 for address_space(128).
...
PiperOrigin-RevId: 641310017
Change-Id: I0f10a2a1965e842db4efda455e0cdfbeb6656fa5
2024-06-07 11:35:12 -07:00
Chris Mihelich
c586e8d88a
Demangle operator co_await (aw).
...
PiperOrigin-RevId: 641291188
Change-Id: I02f6bae62b05c8964a3b6e8f78299061ce57e01a
2024-06-07 10:32:10 -07:00
Chris Mihelich
61e721f41f
Demangle fully general vendor extended types (any <template-args>).
...
PiperOrigin-RevId: 641271471
Change-Id: Ibeedb4dea3b961955d073f048d293b19aa917792
2024-06-07 09:26:29 -07:00
Chris Mihelich
59d0a7d141
Demangle transaction-safety notations GTt and Dx.
...
PiperOrigin-RevId: 641249074
Change-Id: Id410ce6c3b7a9a2b10aedf9c70ec65d3e37af06d
2024-06-07 07:52:56 -07:00
Chris Mihelich
6e607350cc
Demangle C++11 user-defined literal operator functions.
...
PiperOrigin-RevId: 641046309
Change-Id: Iaa2564a60035421969c2cd6074a457980083cbd2
2024-06-06 15:48:15 -07:00
Chris Mihelich
2a40eb6086
Demangle C++20 constrained friend names, F (<source-name> | <operator-name>).
...
PiperOrigin-RevId: 641011959
Change-Id: I844d4eb99a9f9da160bb53e491dee753a70750df
2024-06-06 13:58:39 -07:00
Chris Mihelich
0cd50e6ee3
Demangle dependent GNU vector extension types, Dv <expression> _ <type>.
...
PiperOrigin-RevId: 640993627
Change-Id: I84073099907a3634eca4b12cd2e633908465907a
2024-06-06 13:01:45 -07:00
Chris Mihelich
586a541d2b
Demangle elaborated type names, (Ts | Tu | Te) <name>.
...
PiperOrigin-RevId: 640972027
Change-Id: I810aaa10e7761686d03854abab3198be8b2868cf
2024-06-06 11:49:03 -07:00
Chris Mihelich
ed34153e0d
Demangle delete-expressions with the global-scope operator, gs (dl | da) ....
...
PiperOrigin-RevId: 640928445
Change-Id: I547f194ebb0a4482ecec627a7a03bab60e8e1c0b
2024-06-06 09:43:54 -07:00
Chris Mihelich
ffa1e4a52a
Demangle new-expressions with braced-init-lists.
...
PiperOrigin-RevId: 640908672
Change-Id: I85bed6e7d79b24b693007c08acde8e28e3e1429c
2024-06-06 08:35:28 -07:00
Chris Mihelich
e7a5d7ace0
Demangle array new-expressions, [gs] na ....
...
PiperOrigin-RevId: 640891321
Change-Id: I2bc0f6b907d8af88446375409fb523158ae0e001
2024-06-06 07:31:13 -07:00
Chris Mihelich
54e1f14c6f
Demangle object new-expressions, [gs] nw ....
...
PiperOrigin-RevId: 640688552
Change-Id: I843e5aed55f90eeb89e007389390d0aba705a3fe
2024-06-05 16:34:48 -07:00
Chris Mihelich
fe43a4cb56
Demangle preincrement and predecrement, pp_... and mm_....
...
PiperOrigin-RevId: 640666300
Change-Id: I1dae13f515de5fae3768a54c3808b80083ed63f8
2024-06-05 15:20:33 -07:00
Chris Mihelich
aad792d4cf
Demangle throw and rethrow (tw... and tr).
...
PiperOrigin-RevId: 640648613
Change-Id: Ifb4c385e629e2649da61b2b49c786a320da05fc7
2024-06-05 14:23:44 -07:00
Chris Mihelich
49e0099abc
Demangle ti... and te... expressions (typeid).
...
PiperOrigin-RevId: 640616282
Change-Id: I2aa94673283d89458886f0634adec87bbf0e57de
2024-06-05 12:45:11 -07:00
Chris Mihelich
8ece6dc435
Demangle nx... syntax for noexcept(e) as an expression in a dependent signature.
...
PiperOrigin-RevId: 640590102
Change-Id: I2641cddd35119062328a197162bb700d8309fc05
2024-06-05 11:27:28 -07:00
Chris Mihelich
699fcf35d2
Demangle alignof expressions, at... and az....
...
PiperOrigin-RevId: 640568425
Change-Id: Id63142ff2e94d7f7ee16367f34a2e4ae81c29b4e
2024-06-05 10:24:42 -07:00
Chris Mihelich
8322d3abcc
Demangle C++17 structured bindings, DC...E.
...
PiperOrigin-RevId: 640547784
Change-Id: Ib230993a358f89258367a1c10271c47be3b724e5
2024-06-05 09:17:46 -07:00
Chris Mihelich
cba68bb93b
Demangle modern _ZGR..._ symbols.
...
PiperOrigin-RevId: 640517212
Change-Id: Ideaaf45d2104a3c82cc9b6807894554335e5b904
2024-06-05 07:22:24 -07:00
Chris Mihelich
8777d44089
Demangle sizeof...(pack captured from an alias template), sP ... E.
...
PiperOrigin-RevId: 640314320
Change-Id: I1020879b354c75558d3dba064bb3ea13bd667227
2024-06-04 16:07:33 -07:00
Chris Mihelich
d8e17c0091
Demangle types nested under vendor extended types.
...
PiperOrigin-RevId: 640284003
Change-Id: I3ad2d971383513c7eeb5e3179e50c036cf7aa020
2024-06-04 14:29:31 -07:00
Chris Mihelich
36d1644be1
Demangle il ... E syntax (braced list other than direct-list-initialization).
...
PiperOrigin-RevId: 640242497
Change-Id: I5574281110ddb27a6ee8d902dae90be6be6c0886
2024-06-04 12:18:33 -07:00
Chris Mihelich
b0e72168e5
Avoid signed overflow for Ed <number> _ manglings with large <number>s.
...
PiperOrigin-RevId: 640213246
Change-Id: Ib0dcf34d52566bfd0e3e9129c4438954aedab8ec
2024-06-04 11:02:24 -07:00
Chris Mihelich
9605d816c5
Demangle constrained auto types (Dk <type-constraint>).
...
PiperOrigin-RevId: 638831461
Change-Id: Ie30ff381e7d74a40a689b52e66b2e8bb81e0fda6
2024-05-30 16:57:28 -07:00
Chris Mihelich
9a2da1a407
Parse <discriminator> more accurately.
...
PiperOrigin-RevId: 638778076
Change-Id: I97b9bab2d1b6f87d2f449777145f932949d61a38
2024-05-30 14:11:24 -07:00
Chris Mihelich
c8671e7542
Demangle lambdas in class member functions' default arguments.
...
PiperOrigin-RevId: 638723132
Change-Id: I26ef4dbcb1b965a9d8c2f6092ccb51cf3575ba22
2024-05-30 11:30:17 -07:00
Chris Mihelich
36c2a14c59
Demangle unofficial <unresolved-qualifier-level> encodings like S0_IT_E.
...
PiperOrigin-RevId: 638430573
Change-Id: Ifc4d93bc4ea30951404546436f5397c8fb1bda57
2024-05-29 15:24:50 -07:00
Chris Mihelich
64457068f2
Demangle Clang's last-resort notation _SUBSTPACK_.
...
PiperOrigin-RevId: 638283381
Change-Id: Icdd46801f530bd4e8083777c14c78593fd6e111d
2024-05-29 07:51:59 -07:00