diff options
Diffstat (limited to 'tests/run-addr2line-i-test.sh')
-rwxr-xr-x | tests/run-addr2line-i-test.sh | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/run-addr2line-i-test.sh b/tests/run-addr2line-i-test.sh index d08f3cba..4f63e487 100755 --- a/tests/run-addr2line-i-test.sh +++ b/tests/run-addr2line-i-test.sh @@ -220,4 +220,47 @@ testrun_compare ${abs_top_builddir}/src/addr2line --pretty-print -a -f -i -e tes (inlined by) _Z2fuv at /tmp/x.cpp:33 EOF +# == x.cpp == +# g++ x.cpp -g -fPIC -olibx.so -shared -O0 -flto +# +# __attribute__((always_inline)) inline +# int foobar(int i) +# { +# return i + 1; +# } +# +# __attribute__((always_inline)) inline +# int fubar(int i) +# { +# return i + 1; +# } +# +# __attribute__((always_inline)) inline +# int bar(int i) +# { +# return fubar(i++); +# } +# +# __attribute__((always_inline)) inline +# int foo(int i) +# { +# return foobar(i++); +# } +# +# int fu(int i) +# { +# return foo(i++) + bar(i++); +# } + +testfiles testfile-inlines-lto + +testrun_compare ${abs_top_builddir}/src/addr2line --pretty -fiC -e testfile-inlines-lto 0x1118 0x1137 <<\EOF +foobar(int) at /tmp/x.cpp:4:14 + (inlined by) foo(int) at /tmp/x.cpp:22:16 + (inlined by) fu(int) at /tmp/x.cpp:27:13 +fubar(int) at /tmp/x.cpp:10:14 + (inlined by) bar(int) at /tmp/x.cpp:16:15 + (inlined by) fu(int) at /tmp/x.cpp:27:24 +EOF + exit 0 |