Bug 310082
| Summary: | [libpas] PAS_ASSERT should always use brk #0xc471 instead of #0x1 | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Marcus Plutowski <marcus_plutowski> |
| Component: | bmalloc | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | ggaren, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Marcus Plutowski
rdar://172722059
When libpas calls PAS_ASSERT with more than one argument, the __LINE__ and all arguments except the first (the condition) are stored in registers for our perusal in crash-dumps, and then we execute `brk #0xc471` to crash the program.
But if it’s just one argument, then we instead do `__builtin_trap()` and rely on it being lowered to `__builtin_trap()` i.e. `brk #0x1`. Which is a bad idea for a variety of reasons.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Marcus Plutowski
Pull request: https://github.com/WebKit/WebKit/pull/60748
EWS
Committed 309669@main (7b43a563bdda): <https://commits.webkit.org/309669@main>
Reviewed commits have been landed. Closing PR #60748 and removing active labels.