=== If no file names and line numbers are shown below, one can run
            addr2line -Cpfie my_exefile my_line_address
    to convert `my_line_address` (e.g., 0x4a6b) into file name and line number.
    Or one can use amrex/Tools/Backtrace/parse_bt.py.

=== Please note that the line number reported by addr2line may not be accurate.
    One can use
            readelf -wl my_exefile | grep my_line_address'
    to find out the offset for that line.

 0: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0xa586d8]
    amrex::BLBackTrace::print_backtrace_info(_IO_FILE*)
/raid/testing/castro-gfortran/amrex//Src/Base/AMReX_BLBackTrace.cpp:175:29

 1: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0xa5820c]
    amrex::BLBackTrace::handler(int)
/raid/testing/castro-gfortran/amrex//Src/Base/AMReX_BLBackTrace.cpp:85:15

 2: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x88af20]
    amrex::ParallelDescriptor::Abort(int, bool)
/raid/testing/castro-gfortran/amrex//Src/Base/AMReX_ParallelDescriptor.cpp:206:29

 3: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x81d40d]
    amrex::Abort_host(char const*)
/raid/testing/castro-gfortran/amrex//Src/Base/AMReX.cpp:246:1

 4: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x81d1ef]
    amrex::Abort(char const*) inlined at /raid/testing/castro-gfortran/amrex//Src/Base/AMReX.cpp:197:10 in amrex::Abort(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
/raid/testing/castro-gfortran/amrex//Src/Base/AMReX.H:149:5
amrex::Abort(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
/raid/testing/castro-gfortran/amrex//Src/Base/AMReX.cpp:197:10

 5: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x41b38f]
    amrex::Array4<double>::index_assert(int, int, int, int) const
/raid/testing/castro-gfortran/amrex//Src/Base/AMReX_Array4.H:205:29

 6: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x7deb82]
    Radiation::estimate_gamrPr(amrex::FArrayBox const&, amrex::FArrayBox const&, amrex::FArrayBox&, double const*, amrex::Box const&)::{lambda(int, int, int)#1}::operator()(int, int, int) const
/raid/testing/castro-gfortran/amrex//Src/Base/AMReX_Array4.H:90:20

 7: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x7fc5fb]
    call_f<Radiation::estimate_gamrPr(const amrex::FArrayBox&, const amrex::FArrayBox&, amrex::FArrayBox&, const Real*, const amrex::Box&)::<lambda(int, int, int)> >
/raid/testing/castro-gfortran/amrex//Src/Base/AMReX_GpuLaunchFunctsC.H:30:5

 8: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x7fa96c]
    ParallelFor<Radiation::estimate_gamrPr(const amrex::FArrayBox&, const amrex::FArrayBox&, amrex::FArrayBox&, const Real*, const amrex::Box&)::<lambda(int, int, int)> >
/raid/testing/castro-gfortran/amrex//Src/Base/AMReX_GpuLaunchFunctsC.H:118:5

 9: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x7ef65a]
    Radiation::estimate_gamrPr(amrex::FArrayBox const&, amrex::FArrayBox const&, amrex::FArrayBox&, double const*, amrex::Box const&)
/raid/testing/castro-gfortran/Castro//Source/radiation/MGFLD.cpp:1040:25

10: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x56c247]
    Castro::estdt_rad()
/raid/testing/castro-gfortran/Castro//Source/driver/timestep.cpp:524:29

11: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x48c67b]
    Castro::estTimeStep()
/raid/testing/castro-gfortran/Castro//Source/driver/Castro.cpp:1553:36

12: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x4bbc3d]
    Castro::do_advance_ctu(double, double, int, int)
/raid/testing/castro-gfortran/Castro//Source/driver/Castro_advance_ctu.cpp:403:30

13: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x4bc7d4]
    Castro::subcycle_advance_ctu(double, double, int, int)
/raid/testing/castro-gfortran/Castro//Source/driver/Castro_advance_ctu.cpp:673:90

14: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x4b690d]
    Castro::advance(double, double, int, int)
/raid/testing/castro-gfortran/Castro//Source/driver/Castro_advance.cpp:57:55

15: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0xb7dd74]
    amrex::Amr::timeStep(int, double, int, int, double)
/raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_Amr.cpp:2015:44

16: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0xb7e1f8]
    amrex::Amr::timeStep(int, double, int, int, double)
/raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_Amr.cpp:2061:13

17: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0xb7e1f8]
    amrex::Amr::timeStep(int, double, int, int, double)
/raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_Amr.cpp:2061:13

18: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0xb7e586]
    amrex::Amr::coarseTimeStep(double)
/raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_Amr.cpp:2125:26

19: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x4d1e9c]
    main
/raid/testing/castro-gfortran/Castro//Source/driver/main.cpp:136:5

20: /lib64/libc.so.6(__libc_start_main+0xf2) [0x7efce4ebd1e2]
    __libc_start_main
??:0

21: ./Castro3d.gnu.DEBUG.TPROF.MPI.ex() [0x40bb5e]
    _start
??:0


===== TinyProfilers ======
main()
Amr::coarseTimeStep()
Amr::timeStep()
Amr::timeStep()
Amr::timeStep()
Castro::advance()
Castro::subcycle_advance_ctu()
Castro::do_advance_ctu()
Castro::estTimeStep()