[PATCH] D51899: Remove extraneous ".a" suffix from baremetal clang_rt.builtins when compiling for baremetal.

2018-09-10 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. Two things: - Please re-upload this path with with context (`git diff -U9` or `arc patch`) - This is one answer, but the real problem is that this path is halfway between an absolute path and a link-relative path. We should be searching for these libraries relative

[PATCH] D51899: Remove extraneous ".a" suffix from baremetal clang_rt.builtins when compiling for baremetal.

2018-09-10 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. @kristina They're having linker troubles because this driver is hardcoding an incorrect linker flag for libbuiltin on the arm-baremetal triple. https://reviews.llvm.org/D33259 introduced this incorrect behavior by smashing together the incorrect `-lclang_rt.builtins-arm

[PATCH] D51899: Remove extraneous ".a" suffix from baremetal clang_rt.builtins when compiling for baremetal.

2018-09-10 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. The regression tests are only against the text of the driver's cc1 commands. It's not actually testing if we can compile. https://reviews.llvm.org/D51899 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.

[PATCH] D43737: Improve -Winfinite-recursion

2018-02-24 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi created this revision. CodaFi added a reviewer: rsmith. Herald added a subscriber: cfe-commits. Rewrites -Winfinite-recursion to remove the state dictionary and explore paths in loops - especially infinite loops. The new check now detects recursion in loop bodies dominated by a recursive

[PATCH] D43737: Improve -Winfinite-recursion

2018-02-25 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 135827. https://reviews.llvm.org/D43737 Files: lib/Sema/AnalysisBasedWarnings.cpp test/SemaCXX/warn-infinite-recursion.cpp Index: test/SemaCXX/warn-infinite-recursion.cpp === --- test/SemaCXX

[PATCH] D43737: Improve -Winfinite-recursion

2018-02-27 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. > Can you explain the new algorithm for checking recursive calls? The idea is to de-clutter as much of the existing algorithm as possible. The state dictionary is done away with now in favor of just not enqueueing successors of CFG blocks that have recursive calls. Giv

[PATCH] D43737: Improve -Winfinite-recursion

2018-03-13 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 138302. CodaFi added a comment. Respond to code review https://reviews.llvm.org/D43737 Files: lib/Sema/AnalysisBasedWarnings.cpp test/SemaCXX/warn-infinite-recursion.cpp Index: test/SemaCXX/warn-infinite-recursion.cpp ===

[PATCH] D59425: Explicitly Craft a Path to Compiler-RT Builtins on Bare Metal Targets

2019-03-15 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi created this revision. CodaFi added reviewers: georgemorgan, mehdi_amini, kristina. Herald added subscribers: cfe-commits, jdoerfert, kristof.beyls, javed.absar, dberris. Herald added a project: clang. D33259 hard-coded a linker flag relative to a linker

[PATCH] D59425: Explicitly Craft a Path to Compiler-RT Builtins on Bare Metal Targets

2019-04-05 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. @mehdi_amini @kristina Ping. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D59425/new/ https://reviews.llvm.org/D59425 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm

[PATCH] D59425: Explicitly Craft a Path to Compiler-RT Builtins on Bare Metal Targets

2019-04-09 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a reviewer: phosek. CodaFi added a subscriber: phosek. CodaFi added a comment. +@phosek Who seems to be the last significant contributor to this file. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D59425/new/ https://reviews.llvm.org/D59425 ___

[PATCH] D59425: Explicitly Craft a Path to Compiler-RT Builtins on Bare Metal Targets

2019-04-15 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi marked an inline comment as done. CodaFi added inline comments. Comment at: clang/lib/Driver/ToolChains/BareMetal.cpp:173 + } + + // Builds of compiler-rt on bare-metal targets are specialized by specific phosek wrote: > Would it be possible to support t

[PATCH] D58122: Restore Check for Unreachable Exit Block in -Winfinite-recursion

2019-02-12 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi created this revision. CodaFi added reviewers: steven_wu, rtrieu. Herald added a project: clang. Herald added a subscriber: cfe-commits. When this was rewritten in D43737 , the logic changed to better explore infinite loops. The check for a reachable exit b

[PATCH] D58122: Restore Check for Unreachable Exit Block in -Winfinite-recursion

2019-02-13 Thread Robert Widmann via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL353984: Restore Check for Unreachable Exit Block in -Winfinite-recursion (authored by CodaFi, committed by ). Herald added a project: LLVM. Herald added a subscriber: llvm-commits. Changed prior to commit

[PATCH] D51899: Remove extraneous ".a" suffix from baremetal clang_rt.builtins when compiling for baremetal.

2019-10-23 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. @MaskRay I have a refactoring in https://reviews.llvm.org/D59425 that covers that. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D51899/new/ https://reviews.llvm.org/D51899 ___ cfe-commits mailing list cfe-commits@li

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-14 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi created this revision. CodaFi added reviewers: vsapsai, Bigcheese, doug.gregor. CodaFi added a project: clang. Herald added subscribers: cfe-commits, dexonsmith. CodaFi requested review of this revision. The ModuleManager's use of FileEntry nodes as the keys for its map of loaded modules is

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-15 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. In D85981#2218583 , @vsapsai wrote: > It's good to imagine these attack vectors. But I think the module cache being a relatively fault-tolerant and compiler-controlled system mitigates a lot of the damage you could cause by a we

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-15 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 285868. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85981/new/ https://reviews.llvm.org/D85981 Files: clang/include/clang/Serialization/ModuleManager.h clang/lib/Serialization/ModuleManager.cpp Index: cla

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-15 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 285873. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85981/new/ https://reviews.llvm.org/D85981 Files: clang/include/clang/Serialization/ModuleManager.h clang/lib/Serialization/ModuleManager.cpp clang/test

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-15 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 285874. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85981/new/ https://reviews.llvm.org/D85981 Files: clang/include/clang/Serialization/ModuleManager.h clang/lib/Serialization/ASTWriter.cpp clang/lib/Seri

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-15 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 285875. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85981/new/ https://reviews.llvm.org/D85981 Files: clang/include/clang/Serialization/ModuleManager.h clang/lib/Serialization/ModuleManager.cpp Index: cla

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-15 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added inline comments. Comment at: clang/include/clang/Serialization/ModuleManager.h:62 - /// All loaded modules, indexed by name. - llvm::DenseMap Modules; + /// All loaded modules, indexed by file name. + llvm::StringMap Modules; aprantl wrote: > a

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-15 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a subscriber: rsmith. CodaFi added a comment. Okay, I'm done throwing revisions at the bots. This windows-only failure is bizarre. @rsmith Do you have any insight into what's going wrong here? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.o

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-17 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 286201. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85981/new/ https://reviews.llvm.org/D85981 Files: clang/include/clang/Serialization/ModuleManager.h clang/lib/Serialization/ModuleManager.cpp Index: cla

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-17 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. Figured it out for myself. The test is forming paths that are using non-canonical path separators. Naively using those as keys means that the subsequent canonicalization done by the ASTWriter renders the keys useless for lookups into these structures. I'm going to switch

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-18 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 286334. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85981/new/ https://reviews.llvm.org/D85981 Files: clang/include/clang/Serialization/ModuleManager.h clang/lib/Serialization/ModuleManager.cpp Index: clan

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-18 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. Switched tactics here. Rather than just change the source of the entropy, let's increase it from just inodes to (64-bits of inode) plus (file size) plus (mod time). It is still possible to defeat this scheme, but it means an attacker would have to replace the PCM with on

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-18 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 286361. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85981/new/ https://reviews.llvm.org/D85981 Files: clang/include/clang/Serialization/ModuleManager.h clang/lib/Serialization/ModuleManager.cpp Index: clan

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-18 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 286460. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85981/new/ https://reviews.llvm.org/D85981 Files: clang/include/clang/Serialization/ModuleManager.h clang/lib/Serialization/ModuleManager.cpp Index: clan

[PATCH] D85981: [clang][Modules] Use File Names Instead of inodes As Loaded Module Keys

2020-08-18 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. @aprantl Good idea. Updated. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85981/new/ https://reviews.llvm.org/D85981 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https

[PATCH] D85981: [clang][Modules] Increase the Entropy of ModuleManager Map Keys

2020-08-19 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 286679. CodaFi retitled this revision from "[clang][Modules] Use File Names Instead of inodes As Loaded Module Keys" to "[clang][Modules] Increase the Entropy of ModuleManager Map Keys". Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https

[PATCH] D85981: [clang][Modules] Increase the Entropy of ModuleManager Map Keys

2020-08-19 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 286697. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85981/new/ https://reviews.llvm.org/D85981 Files: clang/include/clang/Serialization/ModuleManager.h clang/lib/Serialization/ModuleManager.cpp Index: clan

[PATCH] D85981: [clang][Modules] Increase the Entropy of ModuleManager Map Keys

2020-08-28 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi abandoned this revision. CodaFi added a comment. Herald added a subscriber: danielkiss. We have tested this proposed change out on our CI systems and have seen no relief from the symptoms of inode reuse with this approach. Abandoning this revision in favor of a more narrow fix. Reposito

[PATCH] D86823: [clang][Modules] Perform an Extra Consistency Check When Searching The ModuleManager's Cache For Implicit Modules

2020-08-28 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi created this revision. CodaFi added reviewers: vsapsai, aprantl, doug.gregor. Herald added subscribers: cfe-commits, danielkiss. Herald added a project: clang. CodaFi requested review of this revision. The ModuleManager's use of FileEntry nodes as the keys for its map of loaded modules is l

[PATCH] D86823: [clang][Modules] Perform an Extra Consistency Check When Searching The ModuleManager's Cache For Implicit Modules

2020-08-28 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 288734. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D86823/new/ https://reviews.llvm.org/D86823 Files: clang/lib/Serialization/ModuleManager.cpp Index: clang/lib/Serialization/ModuleManager.cpp =

[PATCH] D97850: Fix PCM read from ModuleCache for ext4 filesystem

2021-03-09 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. I believe removing inode numbers is the correct fix, yes. The workaround I applied, and the one here, are both insufficient in the general case. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D97850/new/ https://reviews.llvm.

[PATCH] D70111: [DWARF5]Addition of alignment field in the typedef for dwarf5

2019-11-21 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi added a comment. C binding changes LGTM. Don’t worry about changing them, they are marked as experimental and subject to change at any time. Comment at: llvm/include/llvm-c/DebugInfo.h:878 LLVMMetadataRef File, unsigned LineNo, -

[PATCH] D43737: Improve -Winfinite-recursion

2018-03-21 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi updated this revision to Diff 139325. https://reviews.llvm.org/D43737 Files: lib/Sema/AnalysisBasedWarnings.cpp test/SemaCXX/warn-infinite-recursion.cpp Index: test/SemaCXX/warn-infinite-recursion.cpp === --- test/SemaCXX

[PATCH] D43737: Improve -Winfinite-recursion

2018-03-21 Thread Robert Widmann via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL328173: Improve -Winfinite-recursion (authored by CodaFi, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D43737?vs=139325&id=139408#toc Repos

[PATCH] D116014: [clang][CodeGen] Remove the signed version of createExpression

2021-12-26 Thread Robert Widmann via Phabricator via cfe-commits
CodaFi accepted this revision. CodaFi added a comment. This revision is now accepted and ready to land. C API changes LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D116014/new/ https://reviews.llvm.org/D116014