tls-nodebug.exp 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. # tls.exp -- Expect script to test thread-local storage without debuginfo
  2. # Copyright (C) 2006-2022 Free Software Foundation, Inc.
  3. # This program is free software; you can redistribute it and/or modify
  4. # it under the terms of the GNU General Public License as published by
  5. # the Free Software Foundation; either version 3 of the License, or
  6. # (at your option) any later version.
  7. #
  8. # This program is distributed in the hope that it will be useful,
  9. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. # GNU General Public License for more details.
  12. #
  13. # You should have received a copy of the GNU General Public License
  14. # along with this program. If not, see <http://www.gnu.org/licenses/>. */
  15. standard_testfile
  16. if [istarget "*-*-linux"] then {
  17. set target_cflags "-D_MIT_POSIX_THREADS"
  18. } else {
  19. set target_cflags ""
  20. }
  21. if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable []] != "" } {
  22. return -1
  23. }
  24. clean_restart ${binfile}
  25. if ![runto_main] then {
  26. return 0
  27. }
  28. # Formerly: Cannot access memory at address 0x0
  29. gdb_test "p thread_local" "'thread_local' has unknown type; cast it to its declared type" \
  30. "thread local storage, unknown type"
  31. gdb_test "p (int) thread_local" "= 42" \
  32. "thread local storage, cast"
  33. # Done!
  34. #
  35. gdb_exit
  36. return 0