Displaying 7 results from an estimated 7 matches for "eatifpresent".
2010 Jan 09
0
[LLVMdev] [PATCH] - Union types, attempt 2
...reinterpret_cast<PATypeHandle*>(this + 1);
+ NumContainedTys = Types.size();
+ bool isAbstract = false;
+ for (unsigned i = 0; i < Types.size(); ++i) {
No need to evaluate Types.size() every time through the loop.
+bool LLParser::ParseUnionType(PATypeHolder &Result) {
...
+ if (!EatIfPresent(lltok::lbrace)) {
+ return Error(EltTyLoc, "'{' expected after 'union'");
+ }
Please use:
if (ParseToken(lltok::lbrace, "'{' expected after 'union'")) return true;
+ EltTyLoc = Lex.getLoc();
+ if (ParseTypeRec(Result)) return true;
+ P...
2010 Jan 06
3
[LLVMdev] [PATCH] - Union types, attempt 2
This patch adds a UnionType to DerivedTypes.h. It also adds code to the
bitcode reader / writer and the assembly parser for the new type, as well as
a tiny .ll test file in test/Assembler. It does not contain any code related
to code generation or type layout - I wanted to see if this much was
acceptable before I proceeded any further.
Unlike my previous patch, in which the Union type was
2010 Jan 11
2
[LLVMdev] [PATCH] - Union types, attempt 2
...;
> + NumContainedTys = Types.size();
> + bool isAbstract = false;
> + for (unsigned i = 0; i < Types.size(); ++i) {
>
> No need to evaluate Types.size() every time through the loop.
>
>
> +bool LLParser::ParseUnionType(PATypeHolder &Result) {
> ...
> + if (!EatIfPresent(lltok::lbrace)) {
> + return Error(EltTyLoc, "'{' expected after 'union'");
> + }
>
> Please use:
> if (ParseToken(lltok::lbrace, "'{' expected after 'union'")) return true;
>
>
> + EltTyLoc = Lex.getLoc();
> + i...
2010 Feb 11
0
[LLVMdev] Metadata
On Wednesday 10 February 2010 14:58:58 Dan Gohman wrote:
> On Feb 10, 2010, at 12:42 PM, David Greene wrote:
> > On Wednesday 10 February 2010 12:58:25 Chris Lattner wrote:
> >> I think that adding a bit to LoadSDNode and StoreSDNode would make
> >> sense.
> >
> > Ok. The consequence is that a number of functions will have to change to
> > propagate
2010 Feb 10
3
[LLVMdev] Metadata
On Feb 10, 2010, at 12:42 PM, David Greene wrote:
> On Wednesday 10 February 2010 12:58:25 Chris Lattner wrote:
>
>> I think that adding a bit to LoadSDNode and StoreSDNode would make sense.
>
> Ok. The consequence is that a number of functions will have to change to
> propagate this bit, analogous to what happens with isVolatile. It's
> essentially what we do
2010 Feb 11
3
[LLVMdev] Metadata
.../// ::=
/// ::= ',' align 4
///
/// This returns with AteExtraComma set to true if it ate an excess comma at
the
/// end.
bool LLParser::ParseOptionalCommaAlign(unsigned &Alignment,
bool &AteExtraComma) {
AteExtraComma = false;
while (EatIfPresent(lltok::comma)) {
// Metadata at the end is an early exit.
if (Lex.getKind() == lltok::MetadataVar) {
AteExtraComma = true;
return false;
}
if (Lex.getKind() == lltok::kw_align) {
if (ParseOptionalAlignment(Alignment)) return true;
} else
return true;...
2014 Mar 07
3
[LLVMdev] [RFC] Add second "failure" AtomicOrdering to cmpxchg instruction
...--git a/lib/AsmParser/LLParser.cpp b/lib/AsmParser/LLParser.cpp
index a4bbcfc..fddada9 100644
--- a/lib/AsmParser/LLParser.cpp
+++ b/lib/AsmParser/LLParser.cpp
@@ -1517,6 +1517,15 @@ bool LLParser::ParseScopeAndOrdering(bool isAtomic, SynchronizationScope &Scope,
Scope = CrossThread;
if (EatIfPresent(lltok::kw_singlethread))
Scope = SingleThread;
+
+ return ParseOrdering(Ordering);
+}
+
+/// ParseOrdering
+/// ::= AtomicOrdering
+///
+/// This sets Ordering to the parsed value.
+bool LLParser::ParseOrdering(AtomicOrdering &Ordering) {
switch (Lex.getKind()) {
default: return T...