- Jun 18, 2011
-
-
Jakob Stoklund Olesen authored
llvm-svn: 133325
-
Galina Kistanova authored
llvm-svn: 133324
-
Argyrios Kyrtzidis authored
[arcmt] Fix the ARC migrator. -arcmt-modify requires running before the initialization of SourceManager because it is going to modify the input file. llvm-svn: 133323
-
Argyrios Kyrtzidis authored
llvm-svn: 133322
-
Jakob Stoklund Olesen authored
llvm-svn: 133321
-
Jakob Stoklund Olesen authored
A register class can define AltOrders and AltOrderSelect instead of defining method protos and bodies. The AltOrders lists can be defined with set operations, and TableGen can verify that the alternative allocation orders only contain valid registers. This is currently an opt-in feature, and it is still possible to override allocation_order_begin/end. That will not be true for long. llvm-svn: 133320
-
Bill Wendling authored
* Make this used only if CFI is used. llvm-svn: 133319
-
Eric Christopher authored
range without a libcall to a new mulo<mode> libcall that we'd have to create. Finishes the rest of rdar://9090077 and rdar://9210061 llvm-svn: 133318
-
Greg Clayton authored
This us useful because sometomes you have to show a single character as: 'a' (using eFormatChar) and other times you might have an array of single charcters for display as: 'a' 'b' 'c', and other times you might want to show the contents of buffer of characters that can contain non printable chars: "\0\x22\n123". This also fixes an issue that currently happens when you have a single character C string (const char *a = "a"; or char b[1] = { 'b' };) that was being output as "'a'" incorrectly due to the way the eFormatChar format output worked. llvm-svn: 133316
-
Argyrios Kyrtzidis authored
llvm-svn: 133315
-
Bill Wendling authored
llvm-svn: 133314
-
Jakob Stoklund Olesen authored
llvm-svn: 133313
-
-
Eric Christopher authored
llvm-svn: 133311
-
Jakob Stoklund Olesen authored
llvm-svn: 133310
-
Douglas Gregor authored
silently dropped ownership qualifiers that were being applied to ownership-qualified, substituted type that was *not* a substituted template type parameter. We now provide a diagnostic in such cases, and recover by dropping the added qualifiers. Document this behavior in the ARC specification. llvm-svn: 133309
-
Jakob Stoklund Olesen authored
llvm-svn: 133308
-
Eric Christopher authored
llvm-svn: 133307
-
Douglas Gregor authored
qualifiers, so that an __unsafe_unretained-qualified type T in ARC code will have the same mangling as T in non-ARC code, improving ABI interoperability. This works now because we infer or require a lifetime qualifier everywhere one can appear in an external interface. Another part of <rdar://problem/9595486>. llvm-svn: 133306
-
Matt Beaumont-Gay authored
llvm-svn: 133305
-
Douglas Gregor authored
llvm-svn: 133304
-
Douglas Gregor authored
ownership-unqualified retainable object type as __strong. This allows us to write, e.g., std::vector<id> and we'll infer that the vector's element types have __strong ownership semantics, which is far nicer than requiring: std::vector<__strong id> Note that we allow one to override the ownership qualifier of a substituted template type parameter, e.g., given template<typename T> struct X { typedef __weak T type; }; X<id> is treated the same as X<__strong id>. At instantiation type, the __weak in "__weak T" overrides the (inferred or specified) __strong on the template argument type, so that we can still provide metaprogramming transformations. This is part of <rdar://problem/9595486>. llvm-svn: 133303
-
Greg Clayton authored
issue in the way block variables are marked as parsed. In the DWARF parser we always parse all blocks for a function at once, so we can mark all blocks as having all variables parsed and avoid recursive function calls to try and reparse things that have already been handled. Fixed an issue with how variables get scoped into blocks. The DWARF parser can now handle abtract class definitions that contain concrete static variables. When the concrete instance of the class functions get instantiated, they will track down the concrete block for the abtract block and add the variable to each block. llvm-svn: 133302
-
Chad Rosier authored
llvm-svn: 133301
-
- Jun 17, 2011
-
-
John McCall authored
llvm-svn: 133300
-
Bill Wendling authored
llvm-svn: 133299
-
Devang Patel authored
llvm-svn: 133298
-
Bill Wendling authored
llvm-svn: 133297
-
Bill Wendling authored
the correct values, etc. In particular, the exception handling type is SjLj, not ARM. llvm-svn: 133296
-
John McCall authored
__bridge_retain as a synonym for __bridge_retained. llvm-svn: 133295
-
Johnny Chen authored
Let's remove the @expectedFailure marker from it. llvm-svn: 133294
-
Bill Wendling authored
llvm-svn: 133293
-
Bill Wendling authored
llvm-svn: 133292
-
Nadav Rotem authored
the newly created simple type is valid before checking its legality. Re-commit the test file. llvm-svn: 133291
-
Eli Friedman authored
Add a minor hack to avoid using isNullPointerConstant on a hot path. Fixes -O0 compile-time regressions from r133196. rdar://9629775 . llvm-svn: 133290
-
Evan Cheng authored
Add an alternative rev16 pattern. We should figure out a better way to handle these complex rev patterns. rdar://9609108 llvm-svn: 133289
-
Eric Christopher authored
calls if we haven't been able to lower them any other way. Fixes rdar://9090077 and rdar://9210061 llvm-svn: 133288
-
Richard Trieu authored
Put the new warning from revision 133196 on NULL arithmetic behind the flag -Wnull-arthimetic and set to DefaultIgnore. A few edge cases need to be worked out before this can be set to default. llvm-svn: 133287
-
Bill Wendling authored
The LSDA is a bit difficult for the non-initiated to read. Even with comments, it's not always clear what's going on. This wraps the ASM streamer in a class that retains the LSDA and then emits a human-readable description of what's going on in it. So instead of having to make sense of: Lexception1: .byte 255 .byte 155 .byte 168 .space 1 .byte 3 .byte 26 Lset0 = Ltmp7-Leh_func_begin1 .long Lset0 Lset1 = Ltmp812-Ltmp7 .long Lset1 Lset2 = Ltmp913-Leh_func_begin1 .long Lset2 .byte 3 Lset3 = Ltmp812-Leh_func_begin1 .long Lset3 Lset4 = Leh_func_end1-Ltmp812 .long Lset4 .long 0 .byte 0 .byte 1 .byte 0 .byte 2 .byte 125 .long __ZTIi@GOTPCREL+4 .long __ZTIPKc@GOTPCREL+4 you can read this instead: ## Exception Handling Table: Lexception1 ## @LPStart Encoding: omit ## @TType Encoding: indirect pcrel sdata4 ## @TType Base: 40 bytes ## @CallSite Encoding: udata4 ## @Action Table Size: 26 bytes ## Action 1: ## A throw between Ltmp7 and Ltmp812 jumps to Ltmp913 on an exception. ## For type(s): __ZTIi@GOTPCREL+4 __ZTIPKc@GOTPCREL+4 ## Action 2: ## A throw between Ltmp812 and Leh_func_end1 does not have a landing pad. llvm-svn: 133286
-
Stuart Hastings authored
Followup to 132926. rdar://problem/9265821 llvm-svn: 133285
-