summaryrefslogtreecommitdiffstats
path: root/tapset/timestamp.stp
diff options
context:
space:
mode:
authorfche <fche>2006-04-25 17:40:53 +0000
committerfche <fche>2006-04-25 17:40:53 +0000
commit1b07c728305a32a8d1fa1bb5da9d428e34dddf4e (patch)
treef86471e86673dbd7ce49f755f7d980aec43a5a58 /tapset/timestamp.stp
parentfe7e582fac54df14452fa017529bf642f2047e5f (diff)
downloadsystemtap-steved-1b07c728305a32a8d1fa1bb5da9d428e34dddf4e.tar.gz
systemtap-steved-1b07c728305a32a8d1fa1bb5da9d428e34dddf4e.tar.xz
systemtap-steved-1b07c728305a32a8d1fa1bb5da9d428e34dddf4e.zip
2006-04-25 Frank Ch. Eigler <fche@elastic.org>
PR 2427. * staptree.cxx (varuse_collecting_visitor::visit_embeddedcode): Support /* pure */ declaration. Stop using __tvar_ naming hack. (v_c_u::visit_print_format): Mark sprint and sprintf as side-effect-free. (deep_copy_visitor::visit_print_format): Propagate raw_components. * stap.1.in: Document declaration. * elaborate.cxx (semantic_pass_opt2): Verbose message tweak. (dead_stmtexpr_remover): Extend for more aggressive optimization. * tapsets.cxx (dwarf,mark_var_expanding_copy_visotor): Add /* pure */ declaration to rvalue expansions. * tapset/*.stp: Added /* pure */ declarations to many functions. * testsuite/parseok/unparsers.stp: Propagate guru mode flag. * testsuite/buildok/twentyfour.stp: New test.
Diffstat (limited to 'tapset/timestamp.stp')
-rw-r--r--tapset/timestamp.stp8
1 files changed, 4 insertions, 4 deletions
diff --git a/tapset/timestamp.stp b/tapset/timestamp.stp
index ee9478cb..67e2e73a 100644
--- a/tapset/timestamp.stp
+++ b/tapset/timestamp.stp
@@ -13,28 +13,28 @@
// return processor cycle counter (if any)
-function get_cycles:long () %{
+function get_cycles:long () %{ /* pure */
cycles_t c = get_cycles();
THIS->__retvalue = (int64_t) c;
%}
// return in microseconds since epoch
-function gettimeofday_us:long () %{
+function gettimeofday_us:long () %{ /* pure */
struct timeval tm;
do_gettimeofday (& tm);
THIS->__retvalue = (tm.tv_sec * 1000000ULL) + (tm.tv_usec);
%}
// return in milliseconds since epoch
-function gettimeofday_ms:long () %{
+function gettimeofday_ms:long () %{ /* pure */
struct timeval tm;
do_gettimeofday (& tm);
THIS->__retvalue = (tm.tv_sec * 1000ULL) + (tm.tv_usec / 1000);
%}
// return in seconds since epoch
-function gettimeofday_s:long () %{
+function gettimeofday_s:long () %{ /* pure */
struct timeval tm;
do_gettimeofday (& tm);
THIS->__retvalue = tm.tv_sec;