| /llvm-project/compiler-rt/lib/tsan/tests/unit/ |
| H A D | tsan_stack_test.cpp | 20 static void TestStackTrace(StackTraceTy *trace) { in TestStackTrace() argument 23 ObtainCurrentStack(&thr, 0, trace); in TestStackTrace() 24 EXPECT_EQ(0U, trace->size); in TestStackTrace() 26 ObtainCurrentStack(&thr, 42, trace); in TestStackTrace() 27 EXPECT_EQ(1U, trace->size); in TestStackTrace() 28 EXPECT_EQ(42U, trace->trace[0]); in TestStackTrace() 32 ObtainCurrentStack(&thr, 0, trace); in TestStackTrace() 33 EXPECT_EQ(2U, trace->size); in TestStackTrace() 34 EXPECT_EQ(100U, trace->trace[0]); in TestStackTrace() 35 EXPECT_EQ(101U, trace->trace[1]); in TestStackTrace() [all …]
|
| /llvm-project/compiler-rt/lib/sanitizer_common/tests/ |
| H A D | sanitizer_stacktrace_test.cpp | 45 BufferedStackTrace trace; member in __sanitizer::FastUnwindTest 77 // Mark the last fp point back up to terminate the stack trace. in SetUp() 108 trace.UnwindFast(start_pc, fake_bp, fake_top, fake_bottom, kStackTraceMax); in UnwindFast() 114 EXPECT_EQ(6U, trace.size); in TEST_F() 115 EXPECT_EQ(start_pc, trace.trace[0]); in TEST_F() 117 EXPECT_EQ(PC(i*2 - 1), trace.trace[i]); in TEST_F() 127 EXPECT_EQ(4U, trace.size); in TEST_F() 128 EXPECT_EQ(start_pc, trace in TEST_F() [all...] |
| H A D | sanitizer_stack_store_test.cpp | 89 StackTrace trace = store_.Load(*(id++)); in TEST_F() local 90 EXPECT_EQ(s.size, trace.size); in TEST_F() 91 EXPECT_EQ(s.tag, trace.tag); in TEST_F() 92 EXPECT_EQ(std::vector<uptr>(s.trace, s.trace + s.size), in TEST_F() 93 std::vector<uptr>(trace.trace, trace.trace + trace.size)); in TEST_F() 169 StackTrace trace = store_.Load(*(id++)); in TEST_P() local 170 EXPECT_EQ(s.size, trace.size); in TEST_P() 171 EXPECT_EQ(s.tag, trace.tag); in TEST_P() 172 EXPECT_EQ(std::vector<uptr>(s.trace, s.trace + s.size), in TEST_P() 173 std::vector<uptr>(trace.trace, trace.trace + trace.size)); in TEST_P()
|
| /llvm-project/lld/test/ELF/ |
| H A D | trace-symbols.s | 2 # Test -y symbol and -trace-symbol=symbol 6 # RUN: %p/Inputs/trace-symbols-foo-weak.s -o %t1 8 # RUN: %p/Inputs/trace-symbols-foo-strong.s -o %t2 18 # PREEMPT: trace-symbols.s.tmp1: definition of foo 19 # PREEMPT-NEXT: trace-symbols.s.tmp1.so: shared definition of foo 21 # RUN: ld.lld -y foo -trace-symbol common -trace-symbol=hsymbol \ 23 # OBJECTRFOO: trace-symbols.s.tmp: reference to foo 25 # RUN: ld.lld -y foo -trace-symbol=common -trace-symbol=hsymbol \ 27 # OBJECTDCOMMON: trace-symbols.s.tmp1: common definition of common 29 # RUN: ld.lld -y foo -trace-symbol=common -trace-symbol=hsymbol \ [all …]
|
| H A D | time-trace.s | 4 # Test implicit trace file name 5 # RUN: ld.lld --time-trace --time-trace-granularity=0 -o %t1.elf %t.o 6 # RUN: cat %t1.elf.time-trace \ 10 # Test specified trace file name 11 # RUN: ld.lld --time-trace=%t2.json --time-trace-granularity=0 -o %t2.elf %t.o 16 # Test trace requested to stdout 17 # RUN: ld.lld --time-trace=- --time-trace-granularity=0 -o %t3.elf %t.o \
|
| /llvm-project/lldb/test/API/lang/c/register_variables/ |
| H A D | TestRegisterVariables.py | 156 self.trace( 167 self.trace("\nchecking {}...".format(var_name)) 169 self.trace("{} cannot be found".format(var_name)) 175 self.trace("checking value...") 177 self.trace("value is invalid") 180 self.trace("value is {}".format(value)) 189 self.trace("checking address...") 192 self.trace( 201 self.trace( 208 def is_struct_pointer_in_register(self, frame, var_name, trace): argument [all …]
|
| /llvm-project/compiler-rt/test/tsan/ |
| H A D | debug_mutex_bad_unlock.cpp | 13 int __tsan_get_report_stack(void *report, unsigned long idx, void **trace, 16 void **addr, int *destroyed, void **trace, 56 void *trace[16] = {0}; in __tsan_on_report() local 57 __tsan_get_report_stack(report, 0, trace, 16); in __tsan_on_report() 59 fprintf(stderr, "trace[0] = %p, trace[1] = %p, trace[2] = %p\n", trace[0], in __tsan_on_report() 60 trace[1], trace[2]); in __tsan_on_report() 67 __tsan_get_report_mutex(report, 0, &mutex_id, &addr, &destroyed, trace, 16); in __tsan_on_report() 70 fprintf(stderr, "trace[0] = %p, trace[1] = %p, trace[2] = %p\n", trace[0], in __tsan_on_report() 71 trace[1], trace[2]); in __tsan_on_report()
|
| H A D | debugging.cpp | 22 void **trace, unsigned long trace_size); 25 const char **name, int *parent_tid, void **trace, 79 void *trace[16] = {0}; in __tsan_on_report() local 81 __tsan_get_report_mop(report, 0, &tid, &addr, &size, &write, &atomic, trace, in __tsan_on_report() 86 fprintf(stderr, "trace[0] = %p, trace[1] = %p\n", trace[0], trace[1]); in __tsan_on_report() 89 __tsan_get_report_mop(report, 1, &tid, &addr, &size, &write, &atomic, trace, in __tsan_on_report() 94 fprintf(stderr, "trace[0] = %p, trace[1] = %p\n", trace[0], trace[1]); in __tsan_on_report() 105 __tsan_get_report_thread(report, 0, &tid, &os_id, &running, &name, &parent_tid, trace, 16); in __tsan_on_report() 109 __tsan_get_report_thread(report, 1, &tid, &os_id, &running, &name, &parent_tid, trace, 16); in __tsan_on_report()
|
| H A D | debug_alloc_stack.cpp | 17 extern "C" int __tsan_get_alloc_stack(void *addr, void **trace, size_t size, 49 void *trace[100]; in main() local 54 __tsan_get_alloc_stack(mem, trace, num_frames, &thread_id, &thread_os_id); in main() 63 fprintf(stderr, "%p\n", trace[0]); in main() 65 fprintf(stderr, "%p\n", trace[1]); in main() 67 fprintf(stderr, "%p\n", trace[2]); in main()
|
| /llvm-project/clang-tools-extra/docs/ |
| H A D | pp-trace.rst | 1 .. index:: pp-trace 4 pp-trace User's Manual 10 :program:`pp-trace` is a standalone tool that traces preprocessor 20 pp-trace Usage 26 ``pp-trace [<pp-trace-options>] <source-file> [-- <front-end-options>]`` 28 ``<pp-trace-options>`` is a place-holder for options 29 specific to pp-trace, which are described below in 82 By default, pp-trace outputs the trace information to stdout. Use this 83 option to output the trace information to a file. 87 pp-trace Output Format [all …]
|
| /llvm-project/lld/test/COFF/ |
| H A D | time-trace.s | 5 # Test implicit trace file name 6 # RUN: lld-link %t.obj /entry:main /out:%t1.exe --time-trace --time-trace-granularity=0 7 # RUN: cat %t1.exe.time-trace \ 11 # Test specified trace file name 12 # RUN: lld-link %t.obj /entry:main /out:%t2.exe --time-trace=%t2.json --time-trace-granularity=0 17 # Test trace requested to stdout 18 # RUN: env LLD_IN_TEST=1 lld-link %t.obj /entry:main /out:%t3.exe --time-trace=- --time-trace-granu…
|
| /llvm-project/compiler-rt/lib/tsan/rtl/ |
| H A D | tsan_rtl.cpp | 85 Trace* trace = &thr->tctx->trace; in TracePartAlloc() 86 if (trace->parts_allocated == max_parts || in TracePartAlloc() local 90 if (part && part->trace) { in TracePartAlloc() 91 Trace* trace1 = part->trace; in TracePartAlloc() 93 part->trace = nullptr; in TracePartAlloc() 103 if (trace->parts_allocated < max_parts) { in TracePartAlloc() 104 trace->parts_allocated++; in TracePartAlloc() 119 DCHECK(part->trace); in TracePartFree() 120 part->trace in TracePartFree() 128 if (auto trace = part->trace) TraceResetForTesting() local 151 auto trace = &tctx->trace; DoResetImpl() local 328 auto* trace = &thr->tctx->trace; SlotDetachImpl() local 915 Trace *trace = &thr->tctx->trace; TraceSkipGap() local 964 Trace* trace = &thr->tctx->trace; TraceSwitchPartImpl() local [all...] |
| H A D | tsan_debugging.cpp | 57 static void CopyTrace(SymbolizedStack *first_frame, void **trace, in CopyTrace() argument 62 trace[i++] = (void *)frame->info.address; in CopyTrace() 100 int __tsan_get_report_stack(void *report, uptr idx, void **trace, in __tsan_get_report_stack() argument 105 if (stack) CopyTrace(stack->frames, trace, trace_size); in __tsan_get_report_stack() 111 int *size, int *write, int *atomic, void **trace, in __tsan_get_report_mop() argument 121 if (mop->stack) CopyTrace(mop->stack->frames, trace, trace_size); in __tsan_get_report_mop() 128 int *fd, int *suppressable, void **trace, in __tsan_get_report_loc() argument 140 if (loc->stack) CopyTrace(loc->stack->frames, trace, trace_size); in __tsan_get_report_loc() 156 int *destroyed, void **trace, uptr trace_size) { in __tsan_get_report_mutex() argument 163 if (mutex->stack) CopyTrace(mutex->stack->frames, trace, trace_size); in __tsan_get_report_mutex() [all …]
|
| /llvm-project/clang-tools-extra/clangd/unittests/support/ |
| H A D | TraceTests.cpp | 82 auto JSONTracer = trace::createJSONTracer(OS); in TEST() 83 trace::Session Session(*JSONTracer); in TEST() 85 trace::Span Tracer("A"); in TEST() 86 trace::log("B"); in TEST() 132 trace::TestTracer Tracer; in TEST() 137 trace::Span SpanWithLat(OpName); in TEST() 146 : OS(Output), Tracer(trace::createCSVMetricTracer(OS)), Session(*Tracer) { in CSVMetricsTracerTest() 148 trace::Metric Dist = {"dist", trace::Metric::Distribution, "lbl"}; 149 trace::Metric Counter = {"cnt", trace::Metric::Counter}; 161 std::unique_ptr<trace::EventTracer> Tracer; [all …]
|
| /llvm-project/llvm/docs/HistoricalNotes/ |
| H A D | 2003-06-25-Reoptimizer1.txt | 56 together to form our trace. But we do not allow more than 5 paths; if 60 exit edge from the hot trace is less than 10% of the number of 87 When we finally generate an optimized trace we first copy the code 88 into the trace cache. This leaves us with 3 copies of the code: the 89 original code, the instrumented code, and the optimized trace. The 90 optimized trace does not have instrumentation. The original code and 91 the instrumented code are modified to have a branch to the trace 97 trace cache. Then we instrument that code. The process is similar for 98 generating the final optimized trace; we copy the same basic blocks 105 original code, trace, and instrumented code. So we have to keep the [all …]
|
| H A D | 2003-06-26-Reoptimizer2.txt | 11 for the modified trace (so it would not, for instance, support 17 trace cache. 20 register allocation on just the trace, and stitch the trace back into 22 it does its register allocation. (On exits from the trace we have 40 spilling registers, normally allocated on the stack, if the trace 42 disable trace generation on functions that have variable-sized 43 alloca()s. Variable-sized allocas in the trace would also probably 98 2. Section 0 is the trace prolog, consisting mainly of live-ins and 101 3. Section 1 is the trace itself, in SSA form used by BinInterface, 104 Each branch (i.e., out of the trace) is annotated with the [all …]
|
| /llvm-project/compiler-rt/test/asan/TestCases/ |
| H A D | debug_stacks.cpp | 1 // Check that the stack trace debugging API works and returns correct 34 void *trace[100]; in main() local 37 num_frames = __asan_get_alloc_stack(mem, trace, num_frames, &thread_id); in main() 44 fprintf(stderr, "0x" PTR "\n", trace[0]); in main() 46 fprintf(stderr, "0x" PTR "\n", trace[1]); in main() 50 num_frames = __asan_get_free_stack(mem, trace, num_frames, &thread_id); in main() 57 fprintf(stderr, "0x" PTR "\n", trace[0]); in main() 59 fprintf(stderr, "0x" PTR "\n", trace[1]); in main()
|
| /llvm-project/lldb/source/Plugins/Process/Linux/ |
| H A D | IntelPTThreadTraceCollection.cpp | 37 Expected<IntelPTSingleBufferTrace> trace = in TraceStart() local 39 if (!trace) in TraceStart() 40 return trace.takeError(); in TraceStart() 42 m_total_buffer_size += trace->GetIptTraceSize(); in TraceStart() 43 m_thread_traces.try_emplace(tid, std::move(*trace)); in TraceStart() 87 if (Expected<IntelPTSingleBufferTrace &> trace = in TryGetBinaryData() local 89 return trace->GetIptTrace(); in TryGetBinaryData() 91 return trace.takeError(); in TryGetBinaryData()
|
| /llvm-project/lldb/docs/use/ |
| H A D | intel_pt.rst | 72 > process trace start # start tracing on all threads, including future ones 75 > thread trace dump instructions 94 Configuring the trace size 105 thread trace start all -s <size_in_bytes> 107 For reference, a 1MB trace buffer can easily store around 5M instructions. 116 thread trace dump instructions -c <count> 126 thread trace dump instructions <#thread index> 128 thread trace dump instructions 8 140 thread trace dump instructions 154 (lldb) thread trace dump instructions -c 5 [all …]
|
| /llvm-project/lldb/source/Plugins/TraceExporter/docs/ |
| H A D | htr.rst | 3 …is the way lldb represents a summarized trace internally. HTR efficiently stores trace data and al… 7 **Block:** One or more contiguous units of the trace. At minimum, the unit of a trace is the load a… 11 **Layer:** The representation of trace data between passes. For Intel PT there are two types of lay… 13 …**Instruction Layer:** Composed of the load addresses of the instructions in the trace. In an effo… 14 …metadata is only stored for instructions that are of interest, not every instruction in the trace.… 21 …t generates a new *layer* that is a more summarized, consolidated representation of the trace data. 22 … specific purpose - for example, a pass designed to summarize a processor trace by function calls … 24 The image below illustrates the transformation of a trace's representation (HTR) 31 …trace representation into a new *layer*. The idea is to have a series of passes where each pass sp…
|
| /llvm-project/compiler-rt/lib/asan/ |
| H A D | asan_debugging.cpp | 50 uptr AsanGetStack(uptr addr, uptr *trace, u32 size, u32 *thread_id, in AsanGetStack() argument 66 if (trace && size) { in AsanGetStack() 69 trace[i] = StackTrace::GetPreviousInstructionPc(stack.trace[i]); in AsanGetStack() 132 uptr __asan_get_alloc_stack(uptr addr, uptr *trace, uptr size, u32 *thread_id) { in __asan_get_alloc_stack() argument 133 return AsanGetStack(addr, trace, size, thread_id, /* alloc_stack */ true); in __asan_get_alloc_stack() 137 uptr __asan_get_free_stack(uptr addr, uptr *trace, uptr size, u32 *thread_id) { in __asan_get_free_stack() argument 138 return AsanGetStack(addr, trace, size, thread_id, /* alloc_stack */ false); in __asan_get_free_stack()
|
| /llvm-project/lld/test/ELF/lto/ |
| H A D | thinlto-time-trace.ll | 3 ; Test ThinLTO with time trace 8 ; RUN: ld.lld --thinlto-jobs=1 --time-trace --time-trace-granularity=0 -shared %t1.o %t2.o -o %t3.so 9 ; RUN: cat %t3.so.time-trace \ 14 ; RUN: ld.lld --time-trace --time-trace-granularity=0 -shared %t1.o %t2.o -o %t4.so 15 ; RUN: cat %t4.so.time-trace \
|
| /llvm-project/compiler-rt/lib/sanitizer_common/ |
| H A D | sanitizer_stacktrace.h | 43 const uptr *trace; member 52 StackTrace() : trace(nullptr), size(0), tag(0) {} in StackTrace() 53 StackTrace(const uptr *trace, u32 size) : trace(trace), size(size), tag(0) {} in StackTrace() 54 StackTrace(const uptr *trace, u32 size, u32 tag) in StackTrace() 55 : trace(trace), size(size), tag(tag) {} in StackTrace()
|
| /llvm-project/compiler-rt/test/tsan/Darwin/ |
| H A D | external-swift-debugging.cpp | 18 int *size, int *write, int *atomic, void **trace, 74 void *trace[16] = {0}; in __tsan_on_report() local 76 trace, 16); in __tsan_on_report() 78 for (int i = 0; i < 16 && trace[i]; i++) { in __tsan_on_report() 80 dladdr(trace[i], &info); in __tsan_on_report() 81 fprintf(stderr, " %d: frame: %p, function: %p %s\n", i, trace[i], in __tsan_on_report()
|
| /llvm-project/llvm/test/tools/gold/X86/ |
| H A D | time-trace.ll | 4 ; RUN: -m elf_x86_64 --plugin-opt=time-trace=%t2.json \ 9 ; RUN: -m elf_x86_64 --plugin-opt=time-trace=%t2.json \ 10 ; RUN: --plugin-opt=time-trace-granularity=250 \ 15 ; RUN: -m elf_x86_64 --plugin-opt=time-trace=%t2.json \ 16 ; RUN: --plugin-opt=time-trace-granularity=hello \ 32 ; ERR: Invalid time trace granularity: hello
|