Page MenuHomePhabricator

void (Bill Wendling)
Mind Taker

Projects

User does not belong to any projects.

User Details

User Since
Dec 3 2012, 10:22 AM (365 w, 3 d)

Sent here from the planet Zvddw, Bill's mission is to conquer the world by staying at home and occasionally (read: always) playing poker.

In his spare time, he works on LLVM-related things.

Recent Activity

Yesterday

void added inline comments to D69868: Allow "callbr" to return non-void values.
Wed, Dec 4, 12:53 AM · Restricted Project
void updated the diff for D69868: Allow "callbr" to return non-void values.

Add "verify-machineinstrs" flag to callbr tests. Relax some of the verification
tests to account for callbrs.

Wed, Dec 4, 12:53 AM · Restricted Project

Tue, Dec 3

void added inline comments to D69876: Allow output constraints on "asm goto".
Tue, Dec 3, 7:04 PM · Restricted Project, Restricted Project

Mon, Dec 2

void committed rGf61099af9ec7: Fix failing testcase to check for the correct output (authored by void).
Fix failing testcase to check for the correct output
Mon, Dec 2, 4:21 PM
void committed rG87f146767ed7: Place the "cold" code piece into the same section as the original function (authored by void).
Place the "cold" code piece into the same section as the original function
Mon, Dec 2, 3:25 PM
void closed D70925: Place the "cold" code piece into the same section as the original function.
Mon, Dec 2, 3:25 PM · Restricted Project
void added a comment to D70929: Don't extract code containing an indirect jump from a callbr.
In D70929#1766125, @vsk wrote:

Could you add a test?

Mon, Dec 2, 3:25 PM · Restricted Project
void updated the diff for D70929: Don't extract code containing an indirect jump from a callbr.

Use range-based for loop.

Mon, Dec 2, 3:21 PM · Restricted Project
void created D70929: Don't extract code containing an indirect jump from a callbr.
Mon, Dec 2, 3:16 PM · Restricted Project
void created D70925: Place the "cold" code piece into the same section as the original function.
Mon, Dec 2, 2:20 PM · Restricted Project
void committed rG936de1c5bc2d: Remove extraneous semicolon. (authored by void).
Remove extraneous semicolon.
Mon, Dec 2, 2:16 PM

Mon, Nov 25

void updated the diff for D69868: Allow "callbr" to return non-void values.

Add testcase for callbrs with different output constraints jumping to the same
default location.

Mon, Nov 25, 11:20 PM · Restricted Project

Sun, Nov 24

void added a comment to D69876: Allow output constraints on "asm goto".

Any further comments?

Sun, Nov 24, 2:05 PM · Restricted Project, Restricted Project
void added a comment to D69868: Allow "callbr" to return non-void values.

Ping? :-)

Sun, Nov 24, 2:05 PM · Restricted Project

Fri, Nov 22

void committed rG2b795637b902: Fix typo to separate "-x" from warning flag. (authored by void).
Fix typo to separate "-x" from warning flag.
Fri, Nov 22, 12:53 PM
void committed rG9180f8a57436: Don't report "main" as missing a prototype in freestanding mode (authored by void).
Don't report "main" as missing a prototype in freestanding mode
Fri, Nov 22, 12:44 PM
void closed D70588: Don't report "main" as missing a prototype in freestanding mode.
Fri, Nov 22, 12:44 PM · Restricted Project
void created D70588: Don't report "main" as missing a prototype in freestanding mode.
Fri, Nov 22, 1:35 AM · Restricted Project

Mon, Nov 18

void added inline comments to D69876: Allow output constraints on "asm goto".
Mon, Nov 18, 2:19 PM · Restricted Project, Restricted Project
void updated the diff for D69876: Allow output constraints on "asm goto".

Adjust loop.

Mon, Nov 18, 2:19 PM · Restricted Project, Restricted Project
void added inline comments to D69868: Allow "callbr" to return non-void values.
Mon, Nov 18, 1:52 PM · Restricted Project
void updated the diff for D69868: Allow "callbr" to return non-void values.

Don't add to BasicBlock, but just loop directly.

Mon, Nov 18, 1:52 PM · Restricted Project
void updated the summary of D69868: Allow "callbr" to return non-void values.
Mon, Nov 18, 1:00 PM · Restricted Project
void added a comment to D69876: Allow output constraints on "asm goto".

Changes made. PTAL

Mon, Nov 18, 12:58 PM · Restricted Project, Restricted Project
void updated the diff for D69876: Allow output constraints on "asm goto".

Remove a "const_cast" and use iterators for output constraints.

Mon, Nov 18, 12:57 PM · Restricted Project, Restricted Project

Thu, Nov 14

void added a comment to D69876: Allow output constraints on "asm goto".

Friendly ping. :-)

Thu, Nov 14, 10:35 PM · Restricted Project, Restricted Project
void added a comment to D69868: Allow "callbr" to return non-void values.

Friendly ping. :-)

Thu, Nov 14, 10:35 PM · Restricted Project

Wed, Nov 13

void updated the diff for D69876: Allow output constraints on "asm goto".

Move adjustment before error check.

Wed, Nov 13, 1:01 PM · Restricted Project, Restricted Project
void updated the diff for D69876: Allow output constraints on "asm goto".

Adjust label references to account for in/out constraints.

Wed, Nov 13, 12:51 AM · Restricted Project, Restricted Project

Tue, Nov 12

void updated the diff for D69868: Allow "callbr" to return non-void values.

Simplify check that a basic block is the target of an indirect jump from callbr
and add testcase for this.

Tue, Nov 12, 11:32 AM · Restricted Project

Mon, Nov 11

void updated the diff for D69868: Allow "callbr" to return non-void values.

Temporary change to determine if a block is used in a callbr.

Mon, Nov 11, 11:58 PM · Restricted Project
void updated the diff for D69868: Allow "callbr" to return non-void values.

Don't split critical edges into a callbr indirect destination.

Mon, Nov 11, 10:37 PM · Restricted Project
void updated the diff for D69876: Allow output constraints on "asm goto".

Add blurb about asm goto with output constraints to the "language extensions"
documentation.

Mon, Nov 11, 3:32 PM · Restricted Project, Restricted Project
void updated the diff for D69876: Allow output constraints on "asm goto".

the real update this time.

Mon, Nov 11, 3:23 PM · Restricted Project, Restricted Project
void added a comment to D69876: Allow output constraints on "asm goto".

Nice catch! I updated the patch with a fix. PTAL.

Please add a test for that!

Mon, Nov 11, 3:23 PM · Restricted Project, Restricted Project
void updated the diff for D69876: Allow output constraints on "asm goto".

Analyze "asm goto" for initialized variables.

Mon, Nov 11, 1:07 PM · Restricted Project, Restricted Project
void added a comment to D69876: Allow output constraints on "asm goto".

I think -Wuninitialized (UninitializedValues.cpp) should be taught how to detect the use of output variables in error blocks, at least for trivial cases.

Actually, for some reason -- it looks like the warning is failing the wrong way right now, and emits an uninitialized use warning even where there shouldn't be one.

Nice catch! I updated the patch with a fix. PTAL.

Mon, Nov 11, 1:07 PM · Restricted Project, Restricted Project
void added a comment to D69876: Allow output constraints on "asm goto".

Also, since this means we are no longer simply implementing according to GCC's documentation, I think this means we'll need a brand new section in the Clang docs for its inline-asm support.

Mon, Nov 11, 1:07 PM · Restricted Project, Restricted Project

Sun, Nov 10

void added a comment to D69876: Allow output constraints on "asm goto".

This change is ready for review. PTAL.

Sun, Nov 10, 6:27 PM · Restricted Project, Restricted Project
void updated the summary of D69876: Allow output constraints on "asm goto".
Sun, Nov 10, 6:27 PM · Restricted Project, Restricted Project
void updated the summary of D69868: Allow "callbr" to return non-void values.
Sun, Nov 10, 6:27 PM · Restricted Project
void added a comment to D69868: Allow "callbr" to return non-void values.

This change is now ready for review. PTAL.

Sun, Nov 10, 6:27 PM · Restricted Project
void updated the diff for D69868: Allow "callbr" to return non-void values.

Add testcase for multiple output constraints.

Sun, Nov 10, 1:15 AM · Restricted Project
void updated the diff for D69876: Allow output constraints on "asm goto".

Adjust the ASM so that it references labels.

Sun, Nov 10, 1:15 AM · Restricted Project, Restricted Project

Sat, Nov 9

void updated the diff for D69876: Allow output constraints on "asm goto".

Emit asm goto fallthrough early so that any value extracts will show up in the
fallthrough block and not directly after the callbr.

Sat, Nov 9, 10:03 PM · Restricted Project, Restricted Project

Thu, Nov 7

void updated the diff for D69868: Allow "callbr" to return non-void values.

Update description to use "fallthrough" and "indirect"

Thu, Nov 7, 4:37 PM · Restricted Project
void added inline comments to D69868: Allow "callbr" to return non-void values.
Thu, Nov 7, 4:37 PM · Restricted Project
void updated the diff for D69868: Allow "callbr" to return non-void values.

Update language reference.

Thu, Nov 7, 1:47 PM · Restricted Project

Tue, Nov 5

void created D69876: Allow output constraints on "asm goto".
Tue, Nov 5, 6:20 PM · Restricted Project, Restricted Project
void created D69875: Allow "callbr" to return non-void values.
Tue, Nov 5, 6:20 PM · Restricted Project, Restricted Project
void abandoned D69875: Allow "callbr" to return non-void values.
Tue, Nov 5, 6:20 PM · Restricted Project, Restricted Project
void abandoned D64963: Add a pass to lower is.constant intrinsics.
Tue, Nov 5, 4:00 PM · Restricted Project

Nov 5 2019

void created D69868: Allow "callbr" to return non-void values.
Nov 5 2019, 2:38 PM · Restricted Project
void committed rGee10d934dddd: Fix typo so that '-O0' is correctly specified (authored by void).
Fix typo so that '-O0' is correctly specified
Nov 5 2019, 1:24 PM

Oct 8 2019

void committed rG4d69ca8c67c9: [IA] Add tests for a few other edge cases (authored by void).
[IA] Add tests for a few other edge cases
Oct 8 2019, 3:12 PM
void committed rL374124: [IA] Add tests for a few other edge cases.
[IA] Add tests for a few other edge cases
Oct 8 2019, 3:12 PM

Oct 7 2019

void committed rG411f1885b655: [IA] Recognize hexadecimal escape sequences (authored by void).
[IA] Recognize hexadecimal escape sequences
Oct 7 2019, 10:27 PM
void committed rL374018: [IA] Recognize hexadecimal escape sequences.
[IA] Recognize hexadecimal escape sequences
Oct 7 2019, 10:27 PM
void closed D68598: [IA] Recognize hexadecimal escape sequences.
Oct 7 2019, 10:27 PM · Restricted Project
void committed rG6942327a8f3b: [IA] Recognize hexadecimal escape sequences (authored by void).
[IA] Recognize hexadecimal escape sequences
Oct 7 2019, 10:07 PM
void added a comment to D68483: [IA] Recognize hexadecimal escape sequences.

I reverted this in r373898 since MC/AsmParser/directive_ascii.s failed on bots. I didn't look into it, but maybe it's because there's no bounds checking on the i + 1 index.

Oct 7 2019, 2:49 PM · Restricted Project
void created D68598: [IA] Recognize hexadecimal escape sequences.
Oct 7 2019, 2:48 PM · Restricted Project
void committed rL373888: [IA] Recognize hexadecimal escape sequences.
[IA] Recognize hexadecimal escape sequences
Oct 7 2019, 2:56 AM
void closed D68483: [IA] Recognize hexadecimal escape sequences.
Oct 7 2019, 2:56 AM · Restricted Project

Oct 4 2019

void updated the diff for D68483: [IA] Recognize hexadecimal escape sequences.

Adding testcase for hex over 0xFF.

Oct 4 2019, 4:28 PM · Restricted Project
void created D68483: [IA] Recognize hexadecimal escape sequences.
Oct 4 2019, 1:43 PM · Restricted Project

Sep 24 2019

void added a comment to rGcb3d969453c9: Revert rL372693 : [clang-tidy] New bugprone-infinite-loop check for detecting….

You forgot to add the InfiniteLoopCheck.cpp file.

Sep 24 2019, 1:59 AM

Sep 23 2019

void accepted D67196: [Verifier] add invariant check for callbr.

LGTMing. Others please comment if you have objections.

Sep 23 2019, 5:24 PM · Restricted Project

Sep 16 2019

void committed rL372045: Add my SVN/GitHub information.
Add my SVN/GitHub information
Sep 16 2019, 4:16 PM

Sep 9 2019

void added a comment to D67196: [Verifier] add invariant check for callbr.

The llvm/test/CodeGen/AArch64/callbr-asm-obj-file.ll change LGTM.

Sep 9 2019, 3:07 PM · Restricted Project

Aug 14 2019

void committed rGcc2bebe03937: Ignore indirect branches from callbr. (authored by void).
Ignore indirect branches from callbr.
Aug 14 2019, 9:44 AM
void committed rL368873: Ignore indirect branches from callbr..
Ignore indirect branches from callbr.
Aug 14 2019, 9:43 AM
void closed D66200: Ignore indirect branches from callbr..
Aug 14 2019, 9:43 AM · Restricted Project
void created D66200: Ignore indirect branches from callbr..
Aug 14 2019, 1:35 AM · Restricted Project

Aug 13 2019

void added a comment to D65280: Add a pass to lower is.constant and objectsize intrinsics.

This PR is possibly related to the original issue: https://bugs.llvm.org/show_bug.cgi?id=42956

Aug 13 2019, 3:05 AM · Restricted Project

Aug 9 2019

void committed rG79176a2542d0: [CodeGen] Require a name for a block addr target (authored by void).
[CodeGen] Require a name for a block addr target
Aug 9 2019, 1:18 PM
void committed rL368478: [CodeGen] Require a name for a block addr target.
[CodeGen] Require a name for a block addr target
Aug 9 2019, 1:17 PM
void closed D65352: [CodeGen] Require a name for a block addr target.
Aug 9 2019, 1:17 PM · Restricted Project
void committed rG1b104388752f: [MC] Don't recreate a label if it's already used (authored by void).
[MC] Don't recreate a label if it's already used
Aug 9 2019, 1:17 PM
void committed rL368477: [MC] Don't recreate a label if it's already used.
[MC] Don't recreate a label if it's already used
Aug 9 2019, 1:15 PM
void closed D65304: [MC] Don't recreate a label if it's already used.
Aug 9 2019, 1:15 PM · Restricted Project
void updated the diff for D65304: [MC] Don't recreate a label if it's already used.

Move method out-of-line to keep MCContext.h simpler.

Aug 9 2019, 1:13 PM · Restricted Project
void added a comment to D65352: [CodeGen] Require a name for a block addr target.

I think the comment in LLVMTargetMachine::addAsmPrinter about // Don't waste memory on names of temp labels. should be amended in this patch to say ... unless it's address is taken or something to that effect.

Aug 9 2019, 1:08 PM · Restricted Project

Aug 8 2019

void updated the diff for D65304: [MC] Don't recreate a label if it's already used.

Update testcase.

Aug 8 2019, 10:24 PM · Restricted Project
void added inline comments to D65304: [MC] Don't recreate a label if it's already used.
Aug 8 2019, 1:15 PM · Restricted Project
void updated the diff for D65304: [MC] Don't recreate a label if it's already used.

Remove smelly code and use correct triple in test.

Aug 8 2019, 1:15 PM · Restricted Project
void added a comment to D65352: [CodeGen] Require a name for a block addr target.

In the "Revision Contents" box, there's a "Stack" tab. It looks like that's what shows the relationship.

Aug 8 2019, 12:50 PM · Restricted Project

Aug 7 2019

void retitled D65304: [MC] Don't recreate a label if it's already used from Don't recreate a label if it's already used to [MC] Don't recreate a label if it's already used.
Aug 7 2019, 10:12 PM · Restricted Project
void updated the summary of D65352: [CodeGen] Require a name for a block addr target.
Aug 7 2019, 5:57 PM · Restricted Project
void updated the diff for D65352: [CodeGen] Require a name for a block addr target.

It's not enough to just check that a BB's address is used by a callbr, since
the value doesn't have to be directly used by it. E.g., it could be stored into
memory and then loaded.

Aug 7 2019, 5:56 PM · Restricted Project
void updated the diff for D65352: [CodeGen] Require a name for a block addr target.

Remove accidentally added files.

Aug 7 2019, 5:10 PM · Restricted Project
void updated the summary of D65352: [CodeGen] Require a name for a block addr target.
Aug 7 2019, 4:39 PM · Restricted Project
void updated the diff for D65352: [CodeGen] Require a name for a block addr target.

Ah! Good point. Use "any_of" instead of creating a symbol for all block addresses.

Aug 7 2019, 4:39 PM · Restricted Project
void added a comment to D65352: [CodeGen] Require a name for a block addr target.

Ugh! The last update combined D65304 with this...:-/

Aug 7 2019, 4:39 PM · Restricted Project
void committed rG85f07cbb547c: Add target requirements for those bots which don't handle x86. (authored by void).
Add target requirements for those bots which don't handle x86.
Aug 7 2019, 12:38 PM
void committed rL368202: Add target requirements for those bots which don't handle x86..
Add target requirements for those bots which don't handle x86.
Aug 7 2019, 12:38 PM
void added a comment to D60943: Delay diagnosing asm constraints that require immediates until after inlining.

In case you haven't seen, this commit breaks non-x86 build bots due to the combination of '-triple x86_64*' and '-S'. Some tests that use this target are only looking for AST dumps, and do not actually require such a target. This is not one of those tests, as it's inspecting assembly.
See clang/test/CodeGen/addrsig.c to see how that is handled (via REQUIRES: x86-registered-target).

Oddly enough, other tests that use -triple x86_64* and only inspect the AST don't require the registered target.

Aug 7 2019, 12:37 PM · Restricted Project, Restricted Project
void added a comment to D65352: [CodeGen] Require a name for a block addr target.

Friendly ping. :-)

Aug 7 2019, 11:24 AM · Restricted Project
void added a comment to D65304: [MC] Don't recreate a label if it's already used.

Friendly ping. :-)

Aug 7 2019, 11:24 AM · Restricted Project

Aug 6 2019

void committed rG73be7cf5aaf2: Use parenthses to silence warning. (authored by void).
Use parenthses to silence warning.
Aug 6 2019, 3:48 PM