- Sep 21, 2010
-
-
Chris Lattner authored
llvm-svn: 114387
-
rdar://8453210Chris Lattner authored
For now, just disable folding the load into the call. llvm-svn: 114386
-
Bill Wendling authored
doing with them. It's a "FIXME" right now because this change hasn't been implemented yet. llvm-svn: 114385
-
Sean Callanan authored
for C++ classes. Replaced it with a less hacky approach: - If an expression is defined in the context of a method of class A, then that expression is wrapped as ___clang_class::___clang_expr(void*) { ... } instead of ___clang_expr(void*) { ... }. - ___clang_class is resolved as the type of the target of the "this" pointer in the method the expression is defined in. - When reporting the type of ___clang_class, a method with the signature ___clang_expr(void*) is added to that class, so that Clang doesn't complain about a method being defined without a corresponding declaration. - Whenever the expression gets called, "this" gets looked up, type-checked, and then passed in as the first argument. This required the following changes: - The ABIs were changed to support passing of the "this" pointer as part of trivial calls. - ThreadPlanCallFunction and ClangFunction were changed to support passing of an optional "this" pointer. - ClangUserExpression was extended to perform the wrapping described above. - ClangASTSource was changed to revert the changes required by the hack. - ClangExpressionParser, IRForTarget, and ClangExpressionDeclMap were changed to handle different manglings of ___clang_expr flexibly. This meant no longer searching for a function called ___clang_expr, but rather looking for a function whose name *contains* ___clang_expr. - ClangExpressionParser and ClangExpressionDeclMap now remember whether "this" is required, and know how to look it up as necessary. A few inheritance bugs remain, and I'm trying to resolve these. But it is now possible to use "this" as well as refer implicitly to member variables, when in the proper context. llvm-svn: 114384
-
Rafael Espindola authored
llvm-svn: 114383
-
Rafael Espindola authored
llvm-svn: 114382
-
Johnny Chen authored
llvm-svn: 114381
-
Johnny Chen authored
order to customize the running of the test suite. For the time being, the supported customizations are: o redirecting stdout and/or stderr o specifying a list of compilers to build the test programs o specifying a list of architectures to build the test programs for Also checked into the examples/test directory some example files which demonstrate the usage for the above customizations. $ ./dotest.py -v -c ~/.lldbtest-config persistent_variables $ cat ~/.lldbtest-config sys.stderr = open("/tmp/lldbtest-stderr", "w") sys.stdout = open("/tmp/lldbtest-stdout", "w") compilers = ["gcc", "llvm-gcc"] archs = ["x86_64", "i386"] $ cat /tmp/lldbtest-stderr ---------------------------------------------------------------------- Collected 1 test Configuration: arch=x86_64 compiler=gcc test_persistent_variables (TestPersistentVariables.PersistentVariablesTestCase) Test that lldb persistent variables works correctly. ... ok ---------------------------------------------------------------------- Ran 1 test in 1.397s OK Configuration: arch=x86_64 compiler=llvm-gcc test_persistent_variables (TestPersistentVariables.PersistentVariablesTestCase) Test that lldb persistent variables works correctly. ... ok ---------------------------------------------------------------------- Ran 1 test in 1.282s OK Configuration: arch=i386 compiler=gcc test_persistent_variables (TestPersistentVariables.PersistentVariablesTestCase) Test that lldb persistent variables works correctly. ... ok ---------------------------------------------------------------------- Ran 1 test in 1.297s OK Configuration: arch=i386 compiler=llvm-gcc test_persistent_variables (TestPersistentVariables.PersistentVariablesTestCase) Test that lldb persistent variables works correctly. ... ok ---------------------------------------------------------------------- Ran 1 test in 1.269s OK $ cat /tmp/lldbtest-stdout $ llvm-svn: 114380
-
Douglas Gregor authored
message send, e.g., [[NSString alloc] initWithCString:<CC> look up all of the possible methods and determine the preferred type for the argument expression based on the type of the corresponding parameter. llvm-svn: 114379
-
Johnny Chen authored
stderr so as not to disrupt the information emitted by the unittest framework. llvm-svn: 114377
-
Fariborz Jahanian authored
complex conditionals. Radar 8453812. llvm-svn: 114376
-
Douglas Gregor authored
Objective-C message sends. There is no functionality change here; this is prep work for using the parameter types to help guide the expression results when code-completing the argument. llvm-svn: 114375
-
Douglas Gregor authored
at the statement level or in Objective-C message receivers. Therefore, just give types and declarations the same basic priority, and adjust from there. llvm-svn: 114374
-
Evan Cheng authored
define double @foo(double %x, double %y, i1 %c) nounwind { %a = fdiv double %x, 3.2 %z = select i1 %c, double %a, double %y ret double %z } Was: _foo: divsd LCPI0_0(%rip), %xmm0 testb $1, %dil jne LBB0_2 movaps %xmm1, %xmm0 LBB0_2: ret Now: _foo: testb $1, %dil je LBB0_2 divsd LCPI0_0(%rip), %xmm0 ret LBB0_2: movaps %xmm1, %xmm0 ret This avoids the divsd when early exit is taken. rdar://8454886 llvm-svn: 114372
-
Nate Begeman authored
llvm-svn: 114371
-
Douglas Gregor authored
various priority adjustments for preferences (based on selectors, types) in a single function to make extension easier. llvm-svn: 114370
-
Dan Gohman authored
from rdar://8452472. This unbreaks gcc.dg/builtins-17.c. llvm-svn: 114368
-
- Sep 20, 2010
-
-
Caroline Tice authored
command options detailed help section (since it's sorted by short option). llvm-svn: 114364
-
Caroline Tice authored
and have them return a bool to indicate success or not. llvm-svn: 114361
-
Douglas Gregor authored
statement context; it really isn't helpful in practice (remember printf!) and we'll be doing other adjustments for statements very soon. llvm-svn: 114358
-
Douglas Gregor authored
- In Objective-C, we prefer BOOL to bool for historic reasons; slightly penalize "bool". - Treat Nil macro as a NULL pointer constant. - Treat YES, NO, true, and false macros as constants. - Treat the bool macro as a type. llvm-svn: 114356
-
Owen Anderson authored
llvm-svn: 114354
-
Caroline Tice authored
the parent of Process settings; add 'default-arch' as a class-wide setting for Target. Replace lldb::GetDefaultArchitecture with Target::GetDefaultArchitecture & Target::SetDefaultArchitecture. Add 'use-external-editor' as user setting to Debugger class & update code appropriately. Add Error parameter to methods that get user settings, for easier reporting of bad requests. Fix various other minor related bugs. Fix test cases to work with new changes. llvm-svn: 114352
-
Bill Wendling authored
llvm-svn: 114349
-
Owen Anderson authored
CombinerAA cannot assume that different FrameIndex's never alias, but can instead use MachineFrameInfo to get the actual offsets of these slots and check for actual aliasing. This fixes CodeGen/X86/2010-02-19-TailCallRetAddrBug.ll and CodeGen/X86/tailcallstack64.ll when CombinerAA is enabled, modulo a different register allocation sequence. llvm-svn: 114348
-
Douglas Gregor authored
that redundant types don't result in super-long USRs. Fixes <rdar://problem/8447875>. llvm-svn: 114347
-
Jim Grosbach authored
between the high and low registers for prologue/epilogue code. This was a Darwin-only thing that wasn't providing a realistic benefit anymore. Combining the save areas simplifies the compiler code and results in better ARM/Thumb2 codegen. For example, previously we would generate code like: push {r4, r5, r6, r7, lr} add r7, sp, #12 stmdb sp!, {r8, r10, r11} With this change, we combine the register saves and generate: push {r4, r5, r6, r7, r8, r10, r11, lr} add r7, sp, #12 rdar://8445635 llvm-svn: 114340
-
Rafael Espindola authored
llvm-svn: 114339
-
Evan Cheng authored
llvm-svn: 114338
-
Douglas Gregor authored
llvm-svn: 114336
-
Daniel Dunbar authored
document behavior. Will wonders never cease. llvm-svn: 114334
-
Johnny Chen authored
llvm-svn: 114333
-
Johnny Chen authored
llvm-svn: 114332
-
Douglas Gregor authored
actually resolves to a particular function. Fixes PR8181, from Faisal Vali! llvm-svn: 114331
-
Johnny Chen authored
llvm-svn: 114330
-
Douglas Gregor authored
bodies, from Martin Vejnar! llvm-svn: 114329
-
Johnny Chen authored
rdar://problem/8449849 llvm-svn: 114328
-
Caroline Tice authored
llvm-svn: 114326
-
Caroline Tice authored
Add GetDescription() and __repr__ () methods to most API classes, to allow "print" from inside Python to print out the objects in a more useful manner. llvm-svn: 114321
-
Francois Pichet authored
Fix the "unable to rename temporary" lit test failing on Windows. rename is now copy + delete on Windows. Problem to be revisited for a permanent and clean solution. llvm-svn: 114320
-