2009-08-18 07:17:17 +08:00
|
|
|
// This is a regression test on debug info to make sure that we can set a
|
|
|
|
// breakpoint on a objective message.
|
2011-05-07 02:01:58 +08:00
|
|
|
// RUN: %llvmgcc -S -O0 -g %s -o - | llc -disable-cfi -o %t.s -O0
|
2009-08-18 07:17:17 +08:00
|
|
|
// RUN: %compile_c %t.s -o %t.o
|
|
|
|
// RUN: %link %t.o -o %t.exe -framework Foundation
|
|
|
|
// RUN: echo {break randomFunc\n} > %t.in
|
|
|
|
// RUN: gdb -q -batch -n -x %t.in %t.exe | tee %t.out | \
|
2010-07-28 02:13:53 +08:00
|
|
|
// RUN: grep {Breakpoint 1 at 0x.*: file .*2009-08-17-DebugInfo.m, line 21}
|
2009-10-14 04:45:18 +08:00
|
|
|
// XTARGET: darwin
|
2009-08-18 07:17:17 +08:00
|
|
|
@interface MyClass
|
|
|
|
{
|
|
|
|
int my;
|
|
|
|
}
|
|
|
|
+ init;
|
|
|
|
- randomFunc;
|
|
|
|
@end
|
|
|
|
|
|
|
|
@implementation MyClass
|
|
|
|
+ init {
|
|
|
|
}
|
2009-08-19 01:38:27 +08:00
|
|
|
- randomFunc { my = 42; }
|
2009-08-18 07:17:17 +08:00
|
|
|
@end
|
|
|
|
|
|
|
|
int main() {
|
|
|
|
id o = [MyClass init];
|
|
|
|
[o randomFunc];
|
|
|
|
return 0;
|
|
|
|
}
|