[PATCH] D148381: [WIP][Clang] Add counted_by attribute

2023-08-29 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D148381#4626229 , @serge-sans-paille wrote: > Jumping a bit late in the thread, apologize in advance if I missed something. > > The GCC version of the attributes seems to be `element_count` (as found in > the link https://gcc.gn

[PATCH] D148381: [WIP][Clang] Add counted_by attribute

2023-08-29 Thread Bill Wendling via Phabricator via cfe-commits
void marked 4 inline comments as done. void added a comment. In D148381#4625462 , @nickdesaulniers wrote: > I assume you plan to add some clang CodeGen tests at some point? Yes. :-) Comment at: clang/lib/CodeGen/CodeGenFunction.h:531

[PATCH] D148381: [WIP][Clang] Add counted_by attribute

2023-08-29 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 554533. void added a comment. Fix some issues Nick pointed out. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148381/new/ https://reviews.llvm.org/D148381 Files: clang/include/clang/AST/Decl.h clang/include/c

[PATCH] D148381: [WIP][Clang] Add counted_by attribute

2023-08-30 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 554769. void added a comment. Add more diagnostics. Coming next: testcases!!! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148381/new/ https://reviews.llvm.org/D148381 Files: clang/include/clang/AST/Decl.h

[PATCH] D148381: [WIP][Clang] Add counted_by attribute

2023-08-30 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 554792. void added a comment. Add testcases. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148381/new/ https://reviews.llvm.org/D148381 Files: clang/include/clang/AST/Decl.h clang/include/clang/AST/DeclBase.h

[PATCH] D148381: [WIP][Clang] Add counted_by attribute

2023-08-31 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 555169. void added a comment. Add a few more tests to the codegen testcase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148381/new/ https://reviews.llvm.org/D148381 Files: clang/include/clang/AST/Decl.h cla

[PATCH] D148381: [WIP][Clang] Add counted_by attribute

2023-08-31 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 555180. void added a comment. Remove un-needed change. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148381/new/ https://reviews.llvm.org/D148381 Files: clang/include/clang/AST/Decl.h clang/include/clang/AST/

[PATCH] D159320: [NFC] Cleanup some #includes in header files

2023-08-31 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added reviewers: nickdesaulniers, erichkeane. Herald added a subscriber: ChuanqiXu. Herald added a project: All. void requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Limit the #includes to the least necessar

[PATCH] D148381: [WIP][Clang] Add counted_by attribute

2023-08-31 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 555219. void added a comment. Fix testcase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148381/new/ https://reviews.llvm.org/D148381 Files: clang/include/clang/AST/Decl.h clang/include/clang/AST/DeclBase.h

[PATCH] D159320: [NFC] Cleanup some #includes in header files

2023-09-01 Thread Bill Wendling via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG671365225ccc: [NFC] Cleanup some #includes in header files (authored by void). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D159320/new/ https://reviews.llv

[PATCH] D159421: [NFC] Remove unneeded header includes

2023-09-04 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added reviewers: erichkeane, nickdesaulniers. Herald added a project: All. void requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Use forward decls instead of #including the header files. Repository: rG LL

[PATCH] D159435: [NFC] remove unneded header includes

2023-09-04 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added reviewers: nickdesaulniers, aaron.ballman. Herald added a project: All. void requested review of this revision. Herald added a reviewer: jdoerfert. Herald added subscribers: cfe-commits, jplehr, sstefan1. Herald added a project: clang. This time from clang/Pa

[PATCH] D159435: [NFC] remove unneded header includes

2023-09-05 Thread Bill Wendling via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGb0cbf3a0dac5: [NFC] remove unneded header includes (authored by void). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://re

[PATCH] D159421: [NFC] Remove unneeded header includes

2023-09-05 Thread Bill Wendling via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG7d6283fd0901: [NFC] Remove unneeded header includes (authored by void). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D159421/new/ https://reviews.llvm.org/D

[PATCH] D148381: [Clang] Add counted_by attribute

2023-09-05 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 555946. void added a comment. Update documentation. Cribbed off of Qing Zhao's GCC implementation. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148381/new/ https://reviews.llvm.org/D148381 Files: clang/include

[PATCH] D148381: [Clang] Add counted_by attribute

2023-09-06 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. This is now ready for a non-WIP review. PTAL. :-) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148381/new/ https://reviews.llvm.org/D148381 ___ cfe-commits mailing list cfe-commits

[PATCH] D148381: [Clang] Add counted_by attribute

2023-09-06 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D148381#4639909 , @kees wrote: > I can generate warnings for anonymous structs were the `__counted_by` member > is reported as "not found". For example: > > little.c:7:28: warning: counted_by field 'count' not found > 7 |

[PATCH] D62627: [NFC] Do not run CGProfilePass when not using integrated assembler

2020-03-31 Thread Bill Wendling via Phabricator via cfe-commits
void edited subscribers, added: manojgupta; removed: cfe-commits. void added a comment. Friendly ping. :-) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D62627/new/ https://reviews.llvm.org/D62627 ___ c

[PATCH] D69868: Allow "callbr" to return non-void values

2020-02-18 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. It's been almost a month since the last comments on this review. If you need more time, please comment here. Otherwise, I will submit this with the current approvals by the end of the week. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews

[PATCH] D69868: Allow "callbr" to return non-void values

2020-02-19 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D69868#1883687 , @jyknight wrote: > Ugh, it's actually been that long, hasn't it...I'm really sorry about that. :( No worries. Thanks for getting back to us! > I've been actively spending time to look at this over the last coupl

[PATCH] D69868: Allow "callbr" to return non-void values

2020-02-19 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. Would you be okay with me submitting this and working on making INLINEASM_BR a non-terminator? I'd like to give this feature some bake time. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://reviews.llvm.org/D6

[PATCH] D69868: Allow "callbr" to return non-void values

2020-02-24 Thread Bill Wendling via Phabricator via cfe-commits
void marked 2 inline comments as done. void added inline comments. Comment at: llvm/include/llvm/CodeGen/MachineBasicBlock.h:137 + /// List of indirect targets of the callbr of a basic block. + SmallPtrSet InlineAsmBrIndirectTargets; + nickdesaulniers wrote: >

[PATCH] D69868: Allow "callbr" to return non-void values

2020-02-24 Thread Bill Wendling via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG23c2a5ce33f0: Allow "callbr" to return non-void values (authored by void). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://reviews.llvm.org

[PATCH] D69876: Support output constraints on "asm goto"

2020-02-24 Thread Bill Wendling via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG50cac248773c: Support output constraints on "asm goto" (authored by void). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org

[PATCH] D71314: Emit a warning if a variable is uninitialized in indirect ASM goto destination.

2020-02-24 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 246363. void added a comment. Explain what's going on in VisitGCCAsmStmt better. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71314/new/ https://reviews.llvm.org/D71314 Files: clang/lib/Analysis/UninitializedV

[PATCH] D71314: Emit a warning if a variable is uninitialized in indirect ASM goto destination.

2020-02-24 Thread Bill Wendling via Phabricator via cfe-commits
void marked an inline comment as done. void added inline comments. Comment at: clang/lib/Analysis/UninitializedValues.cpp:856 +vals[VD] = MayUninitialized; } nickdesaulniers wrote: > Can you walk me through the logic of this function? > > I would assu

[PATCH] D71314: Warn of uninitialized variables on asm goto's indirect branch

2020-02-26 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 246849. void added a comment. Rebasing. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71314/new/ https://reviews.llvm.org/D71314 Files: clang/lib/Analysis/UninitializedValues.cpp clang/test/Analysis/uninit-asm-goto.cpp Index: clang/test/Analysis/

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-05 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added reviewers: jyknight, nickdesaulniers, hfinkel. Herald added a project: clang. Herald added a subscriber: cfe-commits. THIS IS A WIP! Remove the restrictions that preventing "asm goto" from returning non-void values. The value returned by "asm goto" is only v

[PATCH] D69875: Allow "callbr" to return non-void values

2019-11-05 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added reviewers: jyknight, nickdesaulniers, hfinkel. void added a project: LLVM. Herald added a project: clang. Herald added a subscriber: cfe-commits. void abandoned this revision. THIS IS A WIP! Remove the restrictions that preventing "callbr" from returning non

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-09 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 228594. void added a comment. Emit asm goto fallthrough early so that any value extracts will show up in the fallthrough block and not directly after the callbr. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-11 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 228595. void added a comment. Adjust the ASM so that it references labels. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 Files: clang/include/clang/AST/Stmt.h clang/

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-11 Thread Bill Wendling via Phabricator via cfe-commits
void marked an inline comment as done. void added a comment. This change is ready for review. PTAL. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 ___ cfe-comm

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-11 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 228762. void added a comment. Herald added subscribers: llvm-commits, hiraditya. Herald added a project: LLVM. Analyze "asm goto" for initialized variables. An "asm goto" statement is a terminator and thus doesn't indicate variable assignments like normal inline

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-11 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D69876#1740289 , @jyknight wrote: > 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.

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-11 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D69876#1740286 , @jyknight wrote: > 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

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-11 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D69876#1741381 , @nickdesaulniers wrote: > > Nice catch! I updated the patch with a fix. PTAL. > > Please add a test for that! I did, but the "arc" program pushed the wrong change. :-( Fixed. When are we going to use GitHub's P

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-11 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 228775. void added a comment. the real update this time. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 Files: clang/include/clang/AST/Stmt.h clang/lib/AST/Stmt.cpp

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-11 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 228777. void added a comment. Add blurb about asm goto with output constraints to the "language extensions" documentation. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-13 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 229021. void added a comment. Adjust label references to account for in/out constraints. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 Files: clang/docs/LanguageExtens

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-13 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 229166. void added a comment. Move adjustment before error check. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 Files: clang/docs/LanguageExtensions.rst clang/includ

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-14 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. Friendly ping. :-) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.l

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-18 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 229904. void marked 2 inline comments as done. void added a comment. Remove a "const_cast" and use iterators for output constraints. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.or

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-18 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. Changes made. PTAL Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.l

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-18 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 229921. void added a comment. Adjust loop. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 Files: clang/docs/LanguageExtensions.rst clang/include/clang/AST/Stmt.h cl

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-18 Thread Bill Wendling via Phabricator via cfe-commits
void marked 2 inline comments as done. void added inline comments. Comment at: clang/lib/Analysis/UninitializedValues.cpp:831 + for (auto i = as->begin_outputs(), e = as->end_outputs(); i != e; ++i) +if (const VarDecl *VD = findVar(*i).getDecl()) + vals[VD] = Initialize

[PATCH] D70588: Don't report "main" as missing a prototype in freestanding mode

2019-11-22 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added a reviewer: efriedma. Herald added a project: clang. Herald added a subscriber: cfe-commits. A user may want to use freestanding mode with the standard "main" entry point. It's not useful to warn about a missing prototype as it's not typical to have a prototy

[PATCH] D70588: Don't report "main" as missing a prototype in freestanding mode

2019-11-22 Thread Bill Wendling via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG9180f8a57436: Don't report "main" as missing a prototype in freestanding mode (authored by void). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70588/new/ h

[PATCH] D69876: Allow output constraints on "asm goto"

2019-11-24 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. Any further comments? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://list

[PATCH] D69876: Allow output constraints on "asm goto"

2019-12-03 Thread Bill Wendling via Phabricator via cfe-commits
void marked an inline comment as done. void added inline comments. Comment at: clang/test/Analysis/uninit-asm-goto.cpp:10 +return -1; +} rnk wrote: > This could use a test for the case where an input is uninitialized, and where > an uninitialized value is us

[PATCH] D71314: Emit a warning if a variable is uninitialized in indirect ASM goto destination.

2019-12-10 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added reviewers: jyknight, nickdesaulniers, hfinkel. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D71314 Files: clang/lib/Analysis/UninitializedValues.cpp clang/test/Anal

[PATCH] D71314: Emit a warning if a variable is uninitialized in indirect ASM goto destination.

2019-12-12 Thread Bill Wendling via Phabricator via cfe-commits
void added inline comments. Comment at: clang/test/Analysis/uninit-asm-goto.cpp:16 + if (x < 42) +asm volatile goto("testl %0, %0; testl %1, %2; jne %l3" : "+S"(x), "+D"(y) : "r"(x) :: indirect_1, indirect_2); + else nickdesaulniers wrote: > I wonder if it

[PATCH] D71314: Emit a warning if a variable is uninitialized in indirect ASM goto destination.

2019-12-12 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 233738. void marked 3 inline comments as done. void added a comment. Use "any_of" and improve tests. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71314/new/ https://reviews.llvm.org/D71314 Files: clang/lib/Ana

[PATCH] D69876: Allow output constraints on "asm goto"

2019-12-13 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. Note to reviewers: I would *really* like to get this feature into the 10.0.0 release. That's coming up in January. Do you think you'll have your reviews finished by then? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/ne

[PATCH] D69868: Allow "callbr" to return non-void values

2019-12-17 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 234402. void marked 3 inline comments as done. void added a comment. Herald added a project: clang. Herald added a subscriber: cfe-commits. Update Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://r

[PATCH] D69868: Allow "callbr" to return non-void values

2019-12-17 Thread Bill Wendling via Phabricator via cfe-commits
void added inline comments. Comment at: llvm/lib/CodeGen/MachineBasicBlock.cpp:1116 +if (auto *cbr = dyn_cast(getBasicBlock()->getTerminator())) + if (cbr->getDefaultDest() != bb) +for (unsigned i = 0, e = cbr->getNumIndirectDests(); i != e; ++i)

[PATCH] D69868: Allow "callbr" to return non-void values

2019-12-17 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 234403. void added a comment. Fix bad update Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://reviews.llvm.org/D69868 Files: llvm/docs/LangRef.rst llvm/include/llvm/CodeGen/MachineBasicBlock.h

[PATCH] D71314: Emit a warning if a variable is uninitialized in indirect ASM goto destination.

2019-12-17 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D71314#1788797 , @nickdesaulniers wrote: > strange, the below test isn't warning for me with this patch applied: > > $ clang -O2 foo.c -c > $ cat foo.c > int quux(void) { > int y; > asm volatile goto("ja %l1" : "=r"(

[PATCH] D71314: Emit a warning if a variable is uninitialized in indirect ASM goto destination.

2019-12-18 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 234657. void added a comment. Check that the use isn't in the fallthrough block. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71314/new/ https://reviews.llvm.org/D71314 Files: clang/lib/Analysis/UninitializedV

[PATCH] D69876: Allow output constraints on "asm goto"

2019-12-19 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D69876#1791475 , @nickdesaulniers wrote: > Thinking hard about this, I think there's four cases we really need to think > hard about: > > 1. asm redirects control flow BEFORE assigning to output. ie. > > ``` int foo(void) { int

[PATCH] D69876: Allow output constraints on "asm goto"

2019-12-19 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. I'm not getting the `Undefined temporary symbol` in your example (even with optimizations): [morbo@fawn:llvm-project] cat ../bug.c void baz(void) { int y; asm volatile goto ("mov 42, %0; ja %1": "=d"(y) ::: quux); asm volatile goto ("mov 42, %0; ja %1"

[PATCH] D69876: Allow output constraints on "asm goto"

2019-12-19 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D69876#1791989 , @nickdesaulniers wrote: > In D69876#1791663 , @void wrote: > > > I'm not getting the `Undefined temporary symbol` in your example (even with > > optimizations): > > > >

[PATCH] D69876: Allow output constraints on "asm goto"

2019-12-20 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 234852. void marked 5 inline comments as done. void added a comment. - Improve the asm goto note in the language extensions doc. - Include another testcase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/

[PATCH] D69876: Allow output constraints on "asm goto"

2019-12-20 Thread Bill Wendling via Phabricator via cfe-commits
void added inline comments. Comment at: clang/docs/LanguageExtensions.rst:1275 +It's important to note that outputs are valid only on the "fallthrough" branch. +For example, the value assigned to `y` is not valid in the above `err` block. + nickdesaulniers wrote:

[PATCH] D69876: Allow output constraints on "asm goto"

2019-12-20 Thread Bill Wendling via Phabricator via cfe-commits
void marked an inline comment as done. void added inline comments. Comment at: clang/test/CodeGen/asm-goto.c:91 + return 1; +} nickdesaulniers wrote: > Thanks for adding this test. I think it doesn't test that `addr` is > *clobbered* though? The `+` modifier i

[PATCH] D71314: Warn of uninitialized variables on asm goto's indirect branch

2020-03-10 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. Friendly ping. :-) CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71314/new/ https://reviews.llvm.org/D71314 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-co

[PATCH] D71314: Warn of uninitialized variables on asm goto's indirect branch

2020-03-10 Thread Bill Wendling via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG72aa619a7fe0: Warn of uninitialized variables on asm goto's indirect branch (authored by void). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71314/new/ htt

[PATCH] D69868: Allow "callbr" to return non-void values

2020-02-03 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. Friendly ping. :-) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://reviews.llvm.org/D69868 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.l

[PATCH] D69868: Allow "callbr" to return non-void values

2020-02-05 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. My apologies for being a pest, but I wanted to know the status of reviews for this bug. @jyknight & @rnk, do you have further comments or need more time? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://review

[PATCH] D69868: Allow "callbr" to return non-void values

2020-02-05 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 242752. void added a comment. Use iterator for machine operands. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://reviews.llvm.org/D69868 Files: llvm/docs/LangRef.rst llvm/include/llvm/CodeGen

[PATCH] D69868: Allow "callbr" to return non-void values

2020-02-14 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. Another friendly ping. :-) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://reviews.llvm.org/D69868 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https:/

[PATCH] D69868: Allow "callbr" to return non-void values

2020-02-15 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 244840. void added a comment. Use the BB when creating the MBB. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://reviews.llvm.org/D69868 Files: llvm/docs/LangRef.rst llvm/include/llvm/CodeGen/

[PATCH] D69876: Allow output constraints on "asm goto"

2020-02-15 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 244841. void added a comment. Herald added a subscriber: martong. Typo Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 Files: clang/docs/LanguageExtensions.rst clang/i

[PATCH] D71314: Emit a warning if a variable is uninitialized in indirect ASM goto destination.

2020-02-15 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 244844. void added a comment. Herald added a subscriber: martong. Use "auto" and change labels to clarify test. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71314/new/ https://reviews.llvm.org/D71314 Files: clang/lib/Analysis/UninitializedValues.cp

[PATCH] D71314: Emit a warning if a variable is uninitialized in indirect ASM goto destination.

2020-02-17 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 245063. void added a comment. Variable can't be 'const' CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71314/new/ https://reviews.llvm.org/D71314 Files: clang/lib/Analysis/UninitializedValues.cpp clang/test/Analysis/uninit-asm-goto.cpp Index: clan

[PATCH] D69868: Allow "callbr" to return non-void values

2020-01-19 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 239026. void added a comment. Update so that each MBB has a list of indirect dests of INLINEASM_BR instructions. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://reviews.llvm.org/D69868 Files: llvm/docs/LangRef.rst llvm/include/ll

[PATCH] D69868: Allow "callbr" to return non-void values

2020-01-20 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 239231. void added a comment. Herald added a subscriber: MatzeB. Split the machine basic block after an INLINEASM_BR instruction that has outputs. The copies then end up in a separate block and the back end doesn't have to deal with COPY instructions between two

[PATCH] D69868: Allow "callbr" to return non-void values

2020-01-21 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. @jyknight Do you think you'll have time to review this patch this week? I'd like to get it into the 10.0 release if possible. :-) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69868/new/ https://reviews.llvm.org/D69868 ___

[PATCH] D69868: Allow "callbr" to return non-void values

2020-01-23 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D69868#1832725 , @MaskRay wrote: > In D69868#1832559 , @void wrote: > > > @jyknight Do you think you'll have time to review this patch this week? I'd > > like to get it into the 10.0 releas

[PATCH] D69868: Allow "callbr" to return non-void values

2020-01-23 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D69868#1836777 , @jyknight wrote: > The idea of moving the copies to a new MachineBasicBlock seems a reasonable > solution. That said, it does mean there will be allocatable physical > registers which are live-in to the following

[PATCH] D73319: Add extension 'gnu_asm_goto_with_outputs'

2020-01-23 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added a reviewer: nickdesaulniers. Herald added a project: clang. Herald added a subscriber: cfe-commits. Clang now supports GNU's asm goto with outputs. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D73319 Files: clang/include/clang/Basic/Fe

[PATCH] D73319: Add extension 'gnu_asm_goto_with_outputs'

2020-01-27 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 240657. void added a comment. Use GNU asm predicate for the "asm goto with outputs" extension. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73319/new/ https://reviews.llvm.org/D73319 Files: clang/include/clang

[PATCH] D73319: Add extension 'gnu_asm_goto_with_outputs'

2020-01-27 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D73319#1842900 , @nickdesaulniers wrote: > Great idea; thanks for the patch! Needs documentation. :) I can't find a place for documentation of extensions, at least not the names of extensions like `gnu_asm`.

[PATCH] D73319: Add extension 'gnu_asm_goto_with_outputs'

2020-01-27 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 240663. void marked 2 inline comments as done. void added a comment. Move extension test to exsiting test. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73319/new/ https://reviews.llvm.org/D73319 Files: clang/i

[PATCH] D73319: Add extension 'gnu_asm_goto_with_outputs'

2020-01-27 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 240681. void added a comment. Add description of "gnu_asm_goto_with_outputs" to the language extensions doc. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73319/new/ https://reviews.llvm.org/D73319 Files: clang

[PATCH] D73319: Add extension 'gnu_asm_goto_with_outputs'

2020-01-27 Thread Bill Wendling via Phabricator via cfe-commits
void marked an inline comment as done. void added a comment. In D73319#1843129 , @nickdesaulniers wrote: > In D73319#1842951 , @void wrote: > > > In D73319#1842900 , > > @n

[PATCH] D69876: Allow output constraints on "asm goto"

2020-01-27 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 240692. void added a comment. Fix extension example, found by eagle-eye @maskray! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 Files: clang/docs/LanguageExtensions.rs

[PATCH] D73319: Add extension 'gnu_asm_goto_with_outputs'

2020-01-27 Thread Bill Wendling via Phabricator via cfe-commits
void marked an inline comment as done. void added inline comments. Comment at: clang/docs/LanguageExtensions.rst:1273 + int y; + asm goto("# %0 %1 %2" : "=r"(y) : "r"(x) : : err); + return y; MaskRay wrote: > Is the canonical spelling `%l2`? Nice c

[PATCH] D69876: Allow output constraints on "asm goto"

2020-01-27 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D69876#1843199 , @MaskRay wrote: > Does this depend on D69868 ? Yes. I added it as a parent. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/ne

[PATCH] D73319: Add extension 'gnu_asm_goto_with_outputs'

2020-01-27 Thread Bill Wendling via Phabricator via cfe-commits
void abandoned this revision. void added a comment. I'm going to merge this into D69876 as it's closely related. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73319/new/ https://reviews.llvm.org/D73319

[PATCH] D69876: Allow output constraints on "asm goto"

2020-01-27 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 240720. void added a comment. Merge "__has_extension" patch into this patch. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69876/new/ https://reviews.llvm.org/D69876 Files: clang/docs/LanguageExtensions.rst c

[PATCH] D69868: Allow "callbr" to return non-void values

2020-01-29 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. In D69868#1848327 , @MaskRay wrote: > @rnk Thoughts on passing live-in formation (a bit similar to WinEH catchpad) > to `callbr` at the SelectionDAG stage? To help with the review, here are some of the assumptions I'm making about

[PATCH] D38479: Make -mgeneral-regs-only more like GCC's

2018-04-06 Thread Bill Wendling via Phabricator via cfe-commits
void added a comment. Hallo! I was wondering what the status of this patch was. :-) https://reviews.llvm.org/D38479 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D144136: Add a "remark" to report on array accesses

2023-03-06 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 502760. void added a comment. Revise with Kees's code. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D144136/new/ https://reviews.llvm.org/D144136 Files: clang/include/clang/Basic/DiagnosticGroups.td clang/inc

[PATCH] D144136: Add a "remark" to report on array accesses

2023-03-06 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 502766. void added a comment. Slight typo Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D144136/new/ https://reviews.llvm.org/D144136 Files: clang/include/clang/Basic/DiagnosticGroups.td clang/include/clang/Ba

[PATCH] D147580: [Clang] Refactor "Designators" to be more similar [NFC]

2023-04-04 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added reviewers: aaron.ballman, rjmccall, rsmith, dblaikie, shafik. Herald added a subscriber: martong. Herald added a project: All. void requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This makes the two in

[PATCH] D147580: [Clang] Refactor "Designators" to be more similar [NFC]

2023-04-05 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 511215. void added a comment. Rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147580/new/ https://reviews.llvm.org/D147580 Files: clang/include/clang/AST/Expr.h clang/include/clang/Sema/Designator.h c

[PATCH] D147580: [Clang][NFC] Refactor "Designators" to be more similar

2023-04-05 Thread Bill Wendling via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGbfee6f114236: [Clang][NFC] Refactor "Designators" to be more similar (authored by void). Changed prior to commit: https://reviews.llvm.org/D147580

[PATCH] D147673: [Clang] Improve designated inits diagnostic location

2023-04-05 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added a reviewer: rsmith. Herald added a project: All. void requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. A "null" designator won't have a valid location. Try to approximate this location as best we can in

[PATCH] D147673: [Clang] Improve designated inits diagnostic location

2023-04-06 Thread Bill Wendling via Phabricator via cfe-commits
void updated this revision to Diff 511529. void added a comment. Remove extraneous space. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147673/new/ https://reviews.llvm.org/D147673 Files: clang/lib/Sema/SemaInit.cpp clang/test/SemaCXX/cxx2b-de

[PATCH] D147743: [Clang][NFC] Rename methods/vars to reflect their real usage

2023-04-06 Thread Bill Wendling via Phabricator via cfe-commits
void created this revision. void added reviewers: rsmith, rjmccall, aaron.ballman, dblaikie. Herald added a subscriber: arphaman. Herald added a project: All. void requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. The "getField" method is a b

<    1   2   3   4   5   6   >