Details
Diff Detail
- Repository
 - rG LLVM Github Monorepo
 
Event Timeline
| llvm/lib/AsmParser/LLParser.cpp | ||
|---|---|---|
| 7066 | I guess it's worth briefly noting what this is about: if isSized is passed a SmallPtrSet, it uses that set to catch infinitely recursive types (for example, a struct that has itself as a member). Otherwise, it just crashes on such types. An existing test for alloca caught this, so while I was here I extended the same check to load/store.  | |
| llvm/lib/Transforms/IPO/ArgumentPromotion.cpp | ||
| 390 | I'm not completely confident this is correct; LangRef says the default alignment of a byval argument is target-dependent (not encoded in the datalayout), so it could theoretically by higher than getPrefTypeAlign(). But this matches the current behavior of the code.  | |
Maybe split the one part off but everything LGTM.
| llvm/lib/AsmParser/LLParser.cpp | ||
|---|---|---|
| 7066 | LGTM for committing this separately. I guess it would be perfect if you could add a test as well.  | |
I guess it's worth briefly noting what this is about: if isSized is passed a SmallPtrSet, it uses that set to catch infinitely recursive types (for example, a struct that has itself as a member). Otherwise, it just crashes on such types.
An existing test for alloca caught this, so while I was here I extended the same check to load/store.