]> gitweb.factorcode.org Git - factor.git/blobdiff - vm/sampling_profiler.hpp
Put brackets around ipv6 addresses in `inet6 present`
[factor.git] / vm / sampling_profiler.hpp
index 5f0558fe046e585ae4d0f069b86e7df402319ba5..161adc37e0668f222349de6af5b158b991502767 100644 (file)
@@ -1,64 +1,42 @@
-namespace factor
-{
-
-struct profiling_sample_count
-{
-       // Number of samples taken before the safepoint that recorded the sample
-       fixnum sample_count;
-       // Number of samples taken during GC
-       fixnum gc_sample_count;
-       // Number of samples taken during unoptimized compiler
-       fixnum jit_sample_count;
-       // Number of samples taken during foreign code execution
-       fixnum foreign_sample_count;
-       // Number of samples taken during code execution in non-Factor threads
-       fixnum foreign_thread_sample_count;
-
-       profiling_sample_count() :
-               sample_count(0),
-               gc_sample_count(0),
-               jit_sample_count(0),
-               foreign_sample_count(0),
-               foreign_thread_sample_count(0) {}
-
-       profiling_sample_count(fixnum sample_count,
-               fixnum gc_sample_count,
-               fixnum jit_sample_count,
-               fixnum foreign_sample_count,
-               fixnum foreign_thread_sample_count) :
-               sample_count(sample_count),
-               gc_sample_count(gc_sample_count),
-               jit_sample_count(jit_sample_count),
-               foreign_sample_count(foreign_sample_count),
-               foreign_thread_sample_count(foreign_thread_sample_count) {}
-
-       bool empty() const
-       {
-               return sample_count
-                       + gc_sample_count
-                       + jit_sample_count
-                       + foreign_sample_count
-                       + foreign_thread_sample_count == 0;
-       }
-
-       profiling_sample_count record_counts() volatile;
-       void clear() volatile;
-};
-
-struct profiling_sample
-{
-       // Sample counts
-       profiling_sample_count counts;
-       // Active thread during sample
-       cell thread;
-       /* The callstack at safepoint time. Indexes to the beginning and ending
-       code_block entries in the vm sample_callstacks array. */
-       cell callstack_begin, callstack_end;
-
-       profiling_sample(factor_vm *vm,
-               bool prolog_p,
-               profiling_sample_count const &counts,
-               cell thread);
+namespace factor {
+
+struct profiling_sample {
+  // Active thread during sample
+  cell thread;
+  // The callstack at safepoint time. Indexes to the beginning and ending
+  // word entries in the vm sample_callstacks array.
+  cell callstack_begin, callstack_end;
+
+  // Number of samples taken before the safepoint that recorded the sample
+  fixnum sample_count;
+  // Number of samples taken during GC
+  fixnum gc_sample_count;
+  // Number of samples taken during unoptimized compiler
+  fixnum jit_sample_count;
+  // Number of samples taken during foreign code execution
+  fixnum foreign_sample_count;
+  // Number of samples taken during code execution in non-Factor threads
+  fixnum foreign_thread_sample_count;
+
+  profiling_sample(fixnum sample_count, fixnum gc_sample_count,
+                   fixnum jit_sample_count, fixnum foreign_sample_count,
+                   fixnum foreign_thread_sample_count)
+      : thread(0),
+        callstack_begin(0),
+        callstack_end(0),
+        sample_count(sample_count),
+        gc_sample_count(gc_sample_count),
+        jit_sample_count(jit_sample_count),
+        foreign_sample_count(foreign_sample_count),
+        foreign_thread_sample_count(foreign_thread_sample_count) {}
+
+  profiling_sample record_counts() volatile;
+  void clear_counts() volatile;
+  bool empty() const {
+    return sample_count + gc_sample_count + jit_sample_count +
+               foreign_sample_count + foreign_thread_sample_count ==
+           0;
+  }
 };
 
 }