- Sep 07, 2011
-
-
Jakob Stoklund Olesen authored
It broke the self host and clang-x86_64-darwin10-RA. llvm-svn: 139259
-
Jim Grosbach authored
llvm-svn: 139258
-
Jim Grosbach authored
Need branch relocation support to distinguish this encoding from the 16-bit Thumb1 encoding w/o the explicit .w suffix. That comes later, though. llvm-svn: 139257
-
Owen Anderson authored
llvm-svn: 139256
-
Jim Grosbach authored
llvm-svn: 139255
-
Jim Grosbach authored
The immediate offset of the non-writeback i8 form (encoding T4) allows negative offsets only. The positive offset form of the encoding is the LDRT instruction. Immediate offsets in the range [0,255] use encoding T3 instead. llvm-svn: 139254
-
Douglas Gregor authored
ctor-initializer, remember to call the Sema action to generate default ctor-initializers. What a delightful little miscompile. Fixes PR10578 / <rdar://problem/9877267>. llvm-svn: 139253
-
Kaelyn Uhrain authored
llvm-svn: 139252
-
Jim Grosbach authored
llvm-svn: 139251
-
James Molloy authored
Second of a three-patch series aiming to fix MSR/MRS on Cortex-M. This adds predicate checking to the Disassembler. llvm-svn: 139250
-
Enrico Granata authored
llvm-svn: 139249
-
Peter Collingbourne authored
llvm-svn: 139248
-
Jakob Stoklund Olesen authored
In some cases such as interpreters using indirectbr, the CFG can be very complicated, and live range splitting may be forced to insert a large number of phi-defs. When that happens, traceSiblingValue can spend a lot of time zipping around in the CFG looking for defs and reloads. This patch causes more information to be cached in SibValues, and the cached values are used to terminate searches early. This speeds up spilling by 20x in one interpreter test case. For more typical code, this is just a 10% speedup of spilling. llvm-svn: 139247
-
Johnny Chen authored
(MachThreadList::EnableHardwareWatchpoint()) where the watchpoint is not associated with a thread and the current thread, if set, is returned, otherwise we return the first thread. Plus minor change to RNBRemote::HandlePacket_z() to use the existing macros to check the validity of break_id/watch_id. llvm-svn: 139246
-
Eli Friedman authored
Fix atomic load and store on x86 to pass -verify-machineinstrs (and possibly fix some subtle bugs involving passes which check mayStore()). This isn't exactly ideal, but it is good enough for the moment. llvm-svn: 139245
-
Jim Grosbach authored
llvm-svn: 139244
-
Jim Grosbach authored
There is no 16-bit wide encoding, so the .w suffix isn't needed (indeed, isn't documented as allowed). Also add the missing '!' token on the _UPD variant. llvm-svn: 139243
-
Jim Grosbach authored
Choose 32-bit vs. 16-bit encoding when there's no .w suffix in post-processing as match classes are insufficient to handle the context-sensitiveness of the writeback operand's legality for the 16-bit encodings. llvm-svn: 139242
-
Owen Anderson authored
llvm-svn: 139240
-
James Molloy authored
llvm-svn: 139238
-
James Molloy authored
Refactor instprinter and mcdisassembler to take a SubtargetInfo. Add -mattr= handling to llvm-mc. Reviewed by Owen Anderson. llvm-svn: 139237
-
Duncan Sands authored
duplicate tests are eliminated (for example if the two functions both have a catch clause catching the same type, ensure the redundant one is removed). Note that it would probably be safe to say that eh.typeid.for is 'const', but since two calls to it with the same argument can give different results (but only if the calls are in different functions), it seems more correct to mark it only 'pure'; this doesn't get in the way of the optimization. llvm-svn: 139236
-
Fariborz Jahanian authored
in GC mode. // rdar://10073896 llvm-svn: 139235
-
Jim Grosbach authored
Handle explicit 'ia' suffix via a MnemonicAlias (pre-existing). llvm-svn: 139234
-
Rafael Espindola authored
(not assert) early. llvm-svn: 139233
-
Jim Grosbach authored
llvm-svn: 139232
-
Duncan Sands authored
llvm-svn: 139230
-
Duncan Sands authored
llvm-svn: 139229
-
Chandler Carruth authored
function. This is really the beginning of the second phase of refactorings here. The end goal is to have (roughly) three interfaces: 1) Base class to format a single diagnostic suitable for display on the console. 2) Extension of the base class which also displays a caret diagnostic suitable for display on the console. 3) An adaptor that implements the DiagnosticClient by delegating to #1 and/or #2 as appropriate. Once we have these, things like libclang's formatDiagnostic can use #1 and #2 to provide really well formatted (and consistently formatted!) textual formatting of diagnostics. Getting there is going to be quite a bit of shuffling. I'm basically sketching out where the interface boundaries can be drawn for #1 and #2 within the existing classes. That lets me shuffle with a minimum of fuss and delta. Once that's done, and any of the related interfaces that need to change are updated, I'll hoist these into separate headers and re-implement libclang in terms of their interfaces. Long WIP, but comments at each step welcome. =D llvm-svn: 139228
-
Chandler Carruth authored
CaretDiagnostic. It's completely generic, with nothing to do with the diagnostic client or info APIs. llvm-svn: 139227
-
Chandler Carruth authored
llvm-svn: 139226
-
Chandler Carruth authored
llvm-svn: 139225
-
Eli Friedman authored
llvm-svn: 139224
-
Argyrios Kyrtzidis authored
llvm-svn: 139223
-
Argyrios Kyrtzidis authored
are returning a pointer to pointer. llvm-svn: 139222
-
Eli Friedman authored
Relax the MemOperands on atomics a bit. Fixes -verify-machineinstrs failures for atomic laod/store on ARM. (The fix for the related failures on x86 is going to be nastier because we actually need Acquire memoperands attached to the atomic load instrs, etc.) llvm-svn: 139221
-
Joerg Sonnenberger authored
name. llvm-svn: 139220
-
Richard Trieu authored
ExprResult LHS, RHS, Expr *LHSExpr, *RHSExpr QualType LHSType, RHSType Functions changed: DiagnoseLogicalAndInLogicalOrLHS() DiagnoseBinOpPrecedence() ActOnBinOp() BuildBinOp() llvm-svn: 139219
-
Richard Trieu authored
ExprResult LHS, RHS, Expr *LHSExpr, *RHSExpr QualType LHSType, RHSType Functions changed: CreateBuiltinBinOp() DiagnoseBitwisePrecedence() llvm-svn: 139218
-
Chandler Carruth authored
a stack array of a magical size with an assert() that we never overflowed it. That seems incredibly risky. We also have a very nice API for bundling up a vector we expect to usually have a small size without loss of functionality or security if the size is excessive. The fallout is to remove the last pointer+size parameter pair that are traced through the recursive caret diagnostic emission. llvm-svn: 139217
-