From mboxrd@z Thu Jan 1 00:00:00 1970 From: RVGG20@freescale.com (George Stephen-RVGG20) Date: Mon, 21 Jun 2010 09:01:40 -0700 Subject: [ltt-dev] UST simple example not working Message-ID: Hello, I tried this simple example for trace_marker and get incorrect values for "return" in "ust.factorial" (return: 0). The trace for "ust.args" works. I even tried this in a C version of the sample with same errors. Using g++ -o sample -g -lust sample.cpp; usttrace ./sample on a PowerPC target. class Factorial1 : public Factorial { public: Factorial1(){} virtual ~Factorial1(){} unsigned long long do_factorial(unsigned long long n) { // user space trace instrumentation trace_mark(ust, args, "in_arg %d", n); if (n <= 1) return 1; else return n * do_factorial(n-1); } }; class Factorial2 : public Factorial { public: Factorial2(){} virtual ~Factorial2(){} unsigned long long do_factorial(unsigned long long n) { unsigned long long ret = 1; for ( int i = 1; i <= n; i++){ ret *= i; } // user space trace instrumentation trace_mark(ust, factorial, "in_arg %d return %d", n, ret); return ret; } }; In another case I tried just: trace_mark(ust, factorial, "return %d", ret) and the value for ret was the value for n. Thanks for the help, Stephen G. -------------- next part -------------- An HTML attachment was scrubbed... URL: