GNU DDD 3.3.12 (x86_64-pc-linux-gnu) Copyright (C) 1995-1999 Technische Universität Braunschweig, Germany. Copyright (C) 1999-2001 Universität Passau, Germany. Copyright (C) 2001 Universität des Saarlandes, Germany. Copyright (C) 2001-2009 Free Software Foundation, Inc. Compiled with GCC 4.8.1, GNU libc 2.17 Requires X11R6, Xt11R6, Motif 2.3.4 (Motif Version 2.3.4) Includes XPM 3.4.11, Athena Panner (7000002L), DDD core Built 2013-07-07 by Daniel Schepler . $ ddd ./main + /bin/sh -c 'exec gdb -q -fullname '\''./main'\''' # Hello, world! # Opening session ".ddd"... # Running GDB (pid 6456, tty /dev/pts/6)... # Current language: C/C++ # File: waiting until GDB gets ready # Searching "vsllib/ddd.vsl"... # Trying "/home/lash/.ddd/vsllib/ddd.vsl" # Trying "/usr/share/ddd/vsllib/ddd.vsl" # Searching "vsllib/ddd.vsl"..."/usr/share/ddd/vsllib/ddd.vsl". # Saving session in "/home/lash/.ddd/sessions/.ddd/init"... # Searching "ddd/Ddd"... # Trying "/home/lash/.ddd/ddd/Ddd" # Trying "/usr/share/ddd/ddd/Ddd" # Searching "ddd/Ddd"..."/usr/share/ddd/ddd/Ddd". # Saving session in "/home/lash/.ddd/sessions/.ddd/init"...done. 2015.05.03 15:55:34 <- "Reading symbols from ./main..." 2015.05.03 15:55:34 <- "done.\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "set prompt (gdb) \n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "set height 0\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "set width 0\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "set annotate 1\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> " set verbose off\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "info line\n" 2015.05.03 15:55:34 <- "No line number information available.\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "list\n" 2015.05.03 15:55:34 <- "27\t#include \n" 2015.05.03 15:55:34 <- "28\t#include \n" "29\t#include \"raytoedge.h\"\n" "30\t\n" "31\t#define SCREEN_X 1920\n" "32\t#define SCREEN_Y 893\n" "33\t\n" "34\tint main(int argc, char **argv)\n" "35\t{\n" "36\t\tsrand(time(NULL));\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "info line\n" 2015.05.03 15:55:34 <- "Line 36 of \"main.c\" starts at address 0x4007ec and ends at 0x4007fd .\n" "\032\032/home/lash/programming/c/main.c:36:984:beg:0x4007ec\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "output 4711\n" 2015.05.03 15:55:34 <- "4711" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "show language\n" 2015.05.03 15:55:34 <- "The current source language is \"auto; currently c\".\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "show version\n" 2015.05.03 15:55:34 <- "GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1\n" "Copyright (C) 2014 Free Software Foundation, Inc.\n" 2015.05.03 15:55:34 <- "License GPLv3+: GNU GPL version 3 or later \n" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law. Type \"show copying\"\n" "and \"show warranty\" for details.\n" "This GDB was configured as \"x86_64-linux-gnu\".\n" "Type \"show configuration\" for configuration details.\n" "For bug reporting instructions, please see:\n" ".\n" "Find the GDB manual and other documentation resources online at:\n" ".\n" 2015.05.03 15:55:34 <- "For help, type \"help\".\n" "Type \"apropos word\" to search for commands related to \"word\".\n" "(gdb) " 2015.05.03 15:55:34 -> "pwd\n" 2015.05.03 15:55:34 <- "Working directory /home/lash/programming/c.\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "info breakpoints\n" 2015.05.03 15:55:34 <- "No breakpoints or watchpoints.\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "show history filename\n" 2015.05.03 15:55:34 <- "The filename in which to record the command history is \"/home/lash/programming/c/.gdb_history\".\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "show history size\n" 2015.05.03 15:55:34 <- "The size of the command history is 256.\n" 2015.05.03 15:55:34 <- "(gdb) " # Reading file "/home/lash/programming/c/main.c"... # Reading file "/home/lash/programming/c/main.c"...done. # File "/home/lash/programming/c/main.c" 51 lines, 1520 characters 2015.05.03 15:55:34 -> "set confirm off\n" # Setting buttons... # Setting buttons...done. 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "file /home/lash/programming/c/main\n" # Disassembling location 0x4007ec to 0x4008ec... 2015.05.03 15:55:34 <- "Reading symbols from /home/lash/programming/c/main...done.\n" "(gdb) " 2015.05.03 15:55:34 -> "info line\n" 2015.05.03 15:55:34 <- "No line number information available.\n" "(gdb) " 2015.05.03 15:55:34 -> "list\n" 2015.05.03 15:55:34 <- "27\t#include \n" "28\t#include \n" "29\t#include \"raytoedge.h\"\n" "30\t\n" "31\t#define SCREEN_X 1920\n" "32\t#define SCREEN_Y 893\n" "33\t\n" "34\tint main(int argc, char **argv)\n" "35\t{\n" "36\t\tsrand(time(NULL));\n" "(gdb) " 2015.05.03 15:55:34 -> "info line\n" 2015.05.03 15:55:34 <- "Line 36 of \"main.c\" starts at address 0x4007ec and ends at 0x4007fd .\n" "\032\032/home/lash/programming/c/main.c:36:984:beg:0x4007ec\n" "(gdb) " 2015.05.03 15:55:34 -> "info breakpoints\n" 2015.05.03 15:55:34 <- "No breakpoints or watchpoints.\n" "(gdb) " 2015.05.03 15:55:34 -> "display\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "info display\n" 2015.05.03 15:55:34 <- "There are no auto-display expressions now.\n" "(gdb) " # Reading file "/home/lash/programming/c/main.c"... # Reading file "/home/lash/programming/c/main.c"...done. # File "/home/lash/programming/c/main.c" 51 lines, 1520 characters 2015.05.03 15:55:34 -> "disassemble 0x4007ec,0x4008ec\n" 2015.05.03 15:55:34 <- "Dump of assembler code from 0x4007ec to 0x4008ec:\n" " 0x00000000004007ec :\tmov $0x0,%edi\n" " 0x00000000004007f1 :\tcallq 0x4006c0 \n" " 0x00000000004007f6 :\tmov %eax,%edi\n" " 0x00000000004007f8 :\tcallq 0x4006a0 \n" " 0x00000000004007fd :\tmov -0x40(%rbp),%rax\n" " 0x0000000000400801 :\tadd $0x8,%rax\n" " 0x0000000000400805 :\tmov (%rax),%rax\n" " 0x0000000000400808 :\tmov %rax,%rdi\n" " 0x000000000040080b :\tcallq 0x400650 \n" " 0x0000000000400810 :\tcvttsd2si %xmm0,%eax\n" " 0x0000000000400814 :\tmov %eax,-0x28(%rbp)\n" " 0x0000000000400817 :\tmov -0x40(%rbp),%rax\n" " 0x000000000040081b :\tadd $0x10,%rax\n" " 0x000000000040081f :\tmov (%rax),%rax\n" " 0x0000000000400822 :\tmov %rax,%rdi\n" " 0x0000000000400825 :\tcallq 0x400650 \n" " 0x000000000040082a :\tcvttsd2si %xmm0,%eax\n" " 0x000000000040082e :\tmov %eax,-0x24(%rbp)\n" " 0x0000000000400831 :\tcallq 0x4006e0 \n" " 0x0000000000400836 :\tcvtsi2sd %eax,%xmm0\n" " 0x000000000040083a :\tmovsd 0x5a6(%rip),%xmm1 # 0x400de8\n" " 0x0000000000400842 :\tdivsd %xmm1,%xmm0\n" " 0x0000000000400846 :\tmovsd 0x5a2(%rip),%xmm1 # 0x400df0\n" " 0x000000000040084e :\tmulsd %xmm1,%xmm0\n" " 0x0000000000400852 :\tmovsd %xmm0,-0x20(%rbp)\n" " 0x0000000000400857 :\tcmpl $0x3,-0x34(%rbp)\n" " 0x000000000040085b :\tjle 0x40087d \n" " 0x000000000040085d :\tmov -0x40(%rbp),%rax\n" " 0x0000000000400861 :\tadd $0x18,%rax\n" " 0x0000000000400865 :\tmov (%rax),%rax\n" " 0x0000000000400868 :\tmov %rax,%rdi\n" " 0x000000000040086b :\tcallq 0x400650 \n" " 0x0000000000400870 :\tmovsd %xmm0,-0x48(%rbp)\n" " 0x0000000000400875 :\tmov -0x48(%rbp),%rax\n" " 0x0000000000400879 :\tmov %rax,-0x20(%rbp)\n" " 0x000000000040087d :\tlea -0x10(%rbp),%rsi\n" " 0x0000000000400881 :\tmov -0x24(%rbp),%ecx\n" " 0x0000000000400884 :\tmov -0x28(%rbp),%edx\n" " 0x0000000000400887 :\tmov -0x20(%rbp),%rax\n" " 0x000000000040088b :\tmov %rsi,%r8\n" " 0x000000000040088e :\tmov $0x37d,%esi\n" " 0x0000000000400893 :\tmov $0x780,%edi\n" " 0x0000000000400898 :\tmov %rax,-0x48(%rbp)\n" " 0x000000000040089c :\tmovsd -0x48(%rbp),%xmm0\n" " 0x00000000004008a1 :\tcallq 0x40091e \n" " 0x00000000004008a6 :\tmov %rax,-0x18(%rbp)\n" " 0x00000000004008aa :\tmovsd -0x20(%rbp),%xmm1\n" " 0x00000000004008af :\tmovsd 0x541(%rip),%xmm0 # 0x400df8\n" " 0x00000000004008b7 :\tmulsd %xmm1,%xmm0\n" " 0x00000000004008bb :\tmovsd 0x53d(%rip),%xmm1 # 0x400e00\n" " 0x00000000004008c3 :\tdivsd %xmm1,%xmm0\n" " 0x00000000004008c7 :\tmovapd %xmm0,%xmm1\n" " 0x00000000004008cb :\tmov -0x18(%rbp),%rax\n" " 0x00000000004008cf :\tmovsd (%rax),%xmm2\n" " 0x00000000004008d3 :\tmovsd 0x52d(%rip),%xmm0 # 0x400e08\n" " 0x00000000004008db :\taddsd %xmm2,%xmm0\n" " 0x00000000004008df :\tmov -0x18(%rbp),%rax\n" " 0x00000000004008e3 :\tmov (%rax),%rax\n" " 0x00000000004008e6 :\tmov -0x24(%rbp),%edx\n" " 0x00000000004008e9 :\tmov -0x28(%rbp),%esi\n" "End of assembler dump.\n" "(gdb) " # Disassembling location 0x4007ec to 0x4008ec...done. 2015.05.03 15:55:34 -> "x /i 0x4007ec\n" 2015.05.03 15:55:34 <- " 0x4007ec :\tmov $0x0,%edi\n" "(gdb) " 2015.05.03 15:55:34 -> "x /i 0x4008dd\n" 2015.05.03 15:55:34 <- " 0x4008dd :\tpop %rax\n" "(gdb) " # Disassembling location 0x4007ec to 0x4008ec... 2015.05.03 15:55:34 -> "disassemble 0x4007ec,0x4008ec\n" 2015.05.03 15:55:34 <- "Dump of assembler code from 0x4007ec to 0x4008ec:\n" " 0x00000000004007ec :\tmov $0x0,%edi\n" " 0x00000000004007f1 :\tcallq 0x4006c0 \n" " 0x00000000004007f6 :\tmov %eax,%edi\n" " 0x00000000004007f8 :\tcallq 0x4006a0 \n" " 0x00000000004007fd :\tmov -0x40(%rbp),%rax\n" " 0x0000000000400801 :\tadd $0x8,%rax\n" " 0x0000000000400805 :\tmov (%rax),%rax\n" " 0x0000000000400808 :\tmov %rax,%rdi\n" " 0x000000000040080b :\tcallq 0x400650 \n" " 0x0000000000400810 :\tcvttsd2si %xmm0,%eax\n" " 0x0000000000400814 :\tmov %eax,-0x28(%rbp)\n" " 0x0000000000400817 :\tmov -0x40(%rbp),%rax\n" " 0x000000000040081b :\tadd $0x10,%rax\n" " 0x000000000040081f :\tmov (%rax),%rax\n" " 0x0000000000400822 :\tmov %rax,%rdi\n" " 0x0000000000400825 :\tcallq 0x400650 \n" " 0x000000000040082a :\tcvttsd2si %xmm0,%eax\n" " 0x000000000040082e :\tmov %eax,-0x24(%rbp)\n" " 0x0000000000400831 :\tcallq 0x4006e0 \n" " 0x0000000000400836 :\tcvtsi2sd %eax,%xmm0\n" " 0x000000000040083a :\tmovsd 0x5a6(%rip),%xmm1 # 0x400de8\n" " 0x0000000000400842 :\tdivsd %xmm1,%xmm0\n" " 0x0000000000400846 :\tmovsd 0x5a2(%rip),%xmm1 # 0x400df0\n" " 0x000000000040084e :\tmulsd %xmm1,%xmm0\n" " 0x0000000000400852 :\tmovsd %xmm0,-0x20(%rbp)\n" " 0x0000000000400857 :\tcmpl $0x3,-0x34(%rbp)\n" " 0x000000000040085b :\tjle 0x40087d \n" " 0x000000000040085d :\tmov -0x40(%rbp),%rax\n" " 0x0000000000400861 :\tadd $0x18,%rax\n" " 0x0000000000400865 :\tmov (%rax),%rax\n" " 0x0000000000400868 :\tmov %rax,%rdi\n" " 0x000000000040086b :\tcallq 0x400650 \n" " 0x0000000000400870 :\tmovsd %xmm0,-0x48(%rbp)\n" " 0x0000000000400875 :\tmov -0x48(%rbp),%rax\n" " 0x0000000000400879 :\tmov %rax,-0x20(%rbp)\n" " 0x000000000040087d :\tlea -0x10(%rbp),%rsi\n" " 0x0000000000400881 :\tmov -0x24(%rbp),%ecx\n" " 0x0000000000400884 :\tmov -0x28(%rbp),%edx\n" " 0x0000000000400887 :\tmov -0x20(%rbp),%rax\n" " 0x000000000040088b :\tmov %rsi,%r8\n" " 0x000000000040088e :\tmov $0x37d,%esi\n" " 0x0000000000400893 :\tmov $0x780,%edi\n" " 0x0000000000400898 :\tmov %rax,-0x48(%rbp)\n" " 0x000000000040089c :\tmovsd -0x48(%rbp),%xmm0\n" " 0x00000000004008a1 :\tcallq 0x40091e \n" " 0x00000000004008a6 :\tmov %rax,-0x18(%rbp)\n" " 0x00000000004008aa :\tmovsd -0x20(%rbp),%xmm1\n" " 0x00000000004008af :\tmovsd 0x541(%rip),%xmm0 # 0x400df8\n" " 0x00000000004008b7 :\tmulsd %xmm1,%xmm0\n" " 0x00000000004008bb :\tmovsd 0x53d(%rip),%xmm1 # 0x400e00\n" " 0x00000000004008c3 :\tdivsd %xmm1,%xmm0\n" " 0x00000000004008c7 :\tmovapd %xmm0,%xmm1\n" " 0x00000000004008cb :\tmov -0x18(%rbp),%rax\n" " 0x00000000004008cf :\tmovsd (%rax),%xmm2\n" " 0x00000000004008d3 :\tmovsd 0x52d(%rip),%xmm0 # 0x400e08\n" " 0x00000000004008db :\taddsd %xmm2,%xmm0\n" " 0x00000000004008df :\tmov -0x18(%rbp),%rax\n" " 0x00000000004008e3 :\tmov (%rax),%rax\n" " 0x00000000004008e6 :\tmov -0x24(%rbp),%edx\n" " 0x00000000004008e9 :\tmov -0x28(%rbp),%esi\n" "End of assembler dump.\n" "(gdb) " # Disassembling location 0x4007ec to 0x4008ec...done. 2015.05.03 15:55:34 -> "info source\n" 2015.05.03 15:55:34 <- "Current source file is main.c\n" "Compilation directory is /home/lash/programming/c\n" "Located in /home/lash/programming/c/main.c\n" "Contains 51 lines.\n" "Source language is c.\n" "Compiled with DWARF 2 debugging format.\n" "Does not include preprocessor macro info.\n" "(gdb) " 2015.05.03 15:55:34 -> "info files\n" 2015.05.03 15:55:34 <- "Symbols from \"/home/lash/programming/c/main\".\n" "Local exec file:\n" "\t`/home/lash/programming/c/main\', file type elf64-x86-64.\n" "\tEntry point: 0x4006f0\n" "\t0x0000000000400238 - 0x0000000000400254 is .interp\n" "\t0x0000000000400254 - 0x0000000000400274 is .note.ABI-tag\n" "\t0x0000000000400274 - 0x0000000000400298 is .note.gnu.build-id\n" "\t0x0000000000400298 - 0x00000000004002b4 is .gnu.hash\n" "\t0x00000000004002b8 - 0x0000000000400408 is .dynsym\n" "\t0x0000000000400408 - 0x00000000004004b8 is .dynstr\n" "\t0x00000000004004b8 - 0x00000000004004d4 is .gnu.version\n" "\t0x00000000004004d8 - 0x0000000000400518 is .gnu.version_r\n" "\t0x0000000000400518 - 0x0000000000400530 is .rela.dyn\n" "\t0x0000000000400530 - 0x0000000000400620 is .rela.plt\n" "\t0x0000000000400620 - 0x000000000040063a is .init\n" "\t0x0000000000400640 - 0x00000000004006f0 is .plt\n" "\t0x00000000004006f0 - 0x0000000000400d92 is .text\n" "\t0x0000000000400d94 - 0x0000000000400d9d is .fini\n" "\t0x0000000000400da0 - 0x0000000000400e30 is .rodata\n" "\t0x0000000000400e30 - 0x0000000000400e74 is .eh_frame_hdr\n" "\t0x0000000000400e78 - 0x0000000000400fb4 is .eh_frame\n" "\t0x0000000000601e00 - 0x0000000000601e08 is .init_array\n" "\t0x0000000000601e08 - 0x0000000000601e10 is .fini_array\n" "\t0x0000000000601e10 - 0x0000000000601e18 is .jcr\n" "\t0x0000000000601e18 - 0x0000000000601ff8 is .dynamic\n" "\t0x0000000000601ff8 - 0x0000000000602000 is .got\n" "\t0x0000000000602000 - 0x0000000000602068 is .got.plt\n" "\t0x0000000000602068 - 0x0000000000602078 is .data\n" "\t0x0000000000602078 - 0x0000000000602080 is .bss\n" "(gdb) " 2015.05.03 15:55:34 -> "info program\n" 2015.05.03 15:55:34 <- "The program being debugged is not being run.\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "source /tmp/dddungX91\n" 2015.05.03 15:55:34 <- "Line 36 of \"main.c\" starts at address 0x4007ec and ends at 0x4007fd .\n" 2015.05.03 15:55:34 <- "\032\032/home/lash/programming/c/main.c:36:984:beg:0x4007ec\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "info breakpoints\n" 2015.05.03 15:55:34 <- "No breakpoints or watchpoints.\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "# reset\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "info breakpoints\n" 2015.05.03 15:55:34 <- "No breakpoints or watchpoints.\n" "(gdb) " 2015.05.03 15:55:34 -> "display\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "info display\n" 2015.05.03 15:55:34 <- "There are no auto-display expressions now.\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "set environment TERM dumb\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "info files\n" 2015.05.03 15:55:34 <- "Symbols from \"/home/lash/programming/c/main\".\n" 2015.05.03 15:55:34 <- "Local exec file:\n" "\t`/home/lash/programming/c/main\', file type elf64-x86-64.\n" 2015.05.03 15:55:34 <- "\tEntry point: 0x4006f0\n" "\t0x0000000000400238 - 0x0000000000400254 is .interp\n" "\t0x0000000000400254 - 0x0000000000400274 is .note.ABI-tag\n" "\t0x0000000000400274 - 0x0000000000400298 is .note.gnu.build-id\n" 2015.05.03 15:55:34 <- "\t0x0000000000400298 - 0x00000000004002b4 is .gnu.hash\n" "\t0x00000000004002b8 - 0x0000000000400408 is .dynsym\n" "\t0x0000000000400408 - 0x00000000004004b8 is .dynstr\n" "\t0x00000000004004b8 - 0x00000000004004d4 is .gnu.version\n" "\t0x00000000004004d8 - 0x0000000000400518 is .gnu.version_r\n" "\t0x0000000000400518 - 0x0000000000400530 is .rela.dyn\n" 2015.05.03 15:55:34 <- "\t0x0000000000400530 - 0x0000000000400620 is .rela.plt\n" "\t0x0000000000400620 - 0x000000000040063a is .init\n" "\t0x0000000000400640 - 0x00000000004006f0 is .plt\n" "\t0x00000000004006f0 - 0x0000000000400d92 is .text\n" "\t0x0000000000400d94 - 0x0000000000400d9d is .fini\n" "\t0x0000000000400da0 - 0x0000000000400e30 is .rodata\n" "\t0x0000000000400e30 - 0x0000000000400e74 is .eh_frame_hdr\n" "\t0x0000000000400e78 - 0x0000000000400fb4 is .eh_frame\n" "\t0x0000000000601e00 - 0x0000000000601e08 is .init_array\n" 2015.05.03 15:55:34 <- "\t0x0000000000601e08 - 0x0000000000601e10 is .fini_array\n" "\t0x0000000000601e10 - 0x0000000000601e18 is .jcr\n" "\t0x0000000000601e18 - 0x0000000000601ff8 is .dynamic\n" "\t0x0000000000601ff8 - 0x0000000000602000 is .got\n" "\t0x0000000000602000 - 0x0000000000602068 is .got.plt\n" "\t0x0000000000602068 - 0x0000000000602078 is .data\n" "\t0x0000000000602078 - 0x0000000000602080 is .bss\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "info program\n" 2015.05.03 15:55:34 <- "The program being debugged is not being run.\n" 2015.05.03 15:55:34 <- "(gdb) " # Opening session ".ddd"...done. # Welcome to DDD 3.3.12 "Dale Head" (x86_64-pc-linux-gnu) # Current session is "245db11b3-e814-4e4e-87d9-dc93e3d5c3c7". 2015.05.03 15:55:34 -> "help detach\n" 2015.05.03 15:55:34 <- "Detach a process or file previously attached.\n" "If a process, it is no longer traced, and it continues its execution. If\n" "you were debugging a file, the file is closed and gdb no longer accesses it.\n" "\n" "List of detach subcommands:\n" "\n" "detach checkpoint -- Detach from a checkpoint (experimental)\n" "detach inferiors -- Detach from inferior ID (or list of IDS)\n" "\n" 2015.05.03 15:55:34 <- "Type \"help detach\" followed by detach subcommand name for full documentation.\n" "Type \"apropos word\" to search for commands related to \"word\".\n" "Command name abbreviations are allowed if unambiguous.\n" "(gdb) " 2015.05.03 15:55:34 -> "help run\n" 2015.05.03 15:55:34 <- "Start debugged program. You may specify arguments to give it.\n" "Args may include \"*\", or \"[...]\"; they are expanded using \"sh\".\n" "Input and output redirection with \">\", \"<\", or \">>\" are also allowed.\n" "\n" "With no arguments, uses arguments last specified (with \"run\" or \"set args\").\n" "To cancel previous arguments and run with no arguments,\n" "use \"set args\" without arguments.\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "help step\n" 2015.05.03 15:55:34 <- "Step program until it reaches a different source line.\n" "Usage: step [N]\n" "Argument N means step N times (or till program stops for another reason).\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "help stepi\n" 2015.05.03 15:55:34 <- "Step one instruction exactly.\n" "Usage: stepi [N]\n" "Argument N means step N times (or till program stops for another reason).\n" 2015.05.03 15:55:34 <- "(gdb) " 2015.05.03 15:55:34 -> "help next\n" 2015.05.03 15:55:34 <- "Step program, proceeding through subroutine calls.\n" "Usage: next [N]\n" "Unlike \"step\", if the current source line calls a subroutine,\n" "this command does not enter the subroutine, but instead steps over\n" "the call, in effect treating it as a single source line.\n" "(gdb) " 2015.05.03 15:55:34 -> "help nexti\n" 2015.05.03 15:55:34 <- "Step one instruction, but proceed through subroutine calls.\n" "Usage: nexti [N]\n" "Argument N means step N times (or till program stops for another reason).\n" "(gdb) " 2015.05.03 15:55:34 -> "help until\n" 2015.05.03 15:55:34 <- "Execute until the program reaches a source line greater than the current\n" "or a specified location (same args as break command) within the current frame.\n" "(gdb) " 2015.05.03 15:55:34 -> "help finish\n" 2015.05.03 15:55:34 <- "Execute until selected stack frame returns.\n" "Usage: finish\n" "Upon return, the value returned is printed and put in the value history.\n" "(gdb) " 2015.05.03 15:55:34 -> "help cont\n" 2015.05.03 15:55:34 <- "Continue program being debugged, after signal or breakpoint.\n" "Usage: continue [N]\n" "If proceeding from breakpoint, a number N may be used as an argument,\n" "which means to set the ignore count of that breakpoint to N - 1 (so that\n" "the breakpoint won\'t break until the Nth time it is reached).\n" "\n" "If non-stop mode is enabled, continue only the current thread,\n" "otherwise all the threads in the program are continued. To \n" "continue all stopped threads in non-stop mode, use the -a option.\n" "Specifying -a and an ignore count simultaneously is an error.\n" "(gdb) " 2015.05.03 15:55:34 -> "help signal\n" 2015.05.03 15:55:34 <- "Continue program with the specified signal.\n" "Usage: signal SIGNAL\n" "The SIGNAL argument is processed the same as the handle command.\n" "\n" "An argument of \"0\" means continue the program without sending it a signal.\n" "This is useful in cases where the program stopped because of a signal,\n" "and you want to resume the program while discarding the signal.\n" "(gdb) " 2015.05.03 15:55:35 -> "help kill\n" 2015.05.03 15:55:35 <- "Kill execution of program being debugged.\n" "\n" "List of kill subcommands:\n" "\n" "kill inferiors -- Kill inferior ID (or list of IDs)\n" "\n" "Type \"help kill\" followed by kill subcommand name for full documentation.\n" "Type \"apropos word\" to search for commands related to \"word\".\n" "Command name abbreviations are allowed if unambiguous.\n" "(gdb) " 2015.05.03 15:55:35 -> "help up\n" 2015.05.03 15:55:35 <- "Select and print stack frame that called this one.\n" "An argument says how many frames up to go.\n" "(gdb) " 2015.05.03 15:55:35 -> "help down\n" 2015.05.03 15:55:35 <- "Select and print stack frame called by this one.\n" "An argument says how many frames down to go.\n" "(gdb) " # Getting sources... 2015.05.03 15:55:42 -> "info sources\n" 2015.05.03 15:55:42 <- "Source files for which symbols have been read in:\n" "\n" "/home/lash/programming/c/raytoedge.c, /home/lash/programming/c/main.c\n" "\n" "Source files for which symbols will be read in on demand:\n" "\n" "\n" "(gdb) " # Getting sources...done. # Open Source is an idea whose time has finally come. See http://www.opensource.org/. 2015.05.03 15:55:42 -> "info files\n" 2015.05.03 15:55:42 <- "Symbols from \"/home/lash/programming/c/main\".\n" "Local exec file:\n" "\t`/home/lash/programming/c/main\', file type elf64-x86-64.\n" "\tEntry point: 0x4006f0\n" "\t0x0000000000400238 - 0x0000000000400254 is .interp\n" "\t0x0000000000400254 - 0x0000000000400274 is .note.ABI-tag\n" "\t0x0000000000400274 - 0x0000000000400298 is .note.gnu.build-id\n" "\t0x0000000000400298 - 0x00000000004002b4 is .gnu.hash\n" "\t0x00000000004002b8 - 0x0000000000400408 is .dynsym\n" "\t0x0000000000400408 - 0x00000000004004b8 is .dynstr\n" "\t0x00000000004004b8 - 0x00000000004004d4 is .gnu.version\n" "\t0x00000000004004d8 - 0x0000000000400518 is .gnu.version_r\n" "\t0x0000000000400518 - 0x0000000000400530 is .rela.dyn\n" "\t0x0000000000400530 - 0x0000000000400620 is .rela.plt\n" "\t0x0000000000400620 - 0x000000000040063a is .init\n" "\t0x0000000000400640 - 0x00000000004006f0 is .plt\n" "\t0x00000000004006f0 - 0x0000000000400d92 is .text\n" "\t0x0000000000400d94 - 0x0000000000400d9d is .fini\n" "\t0x0000000000400da0 - 0x0000000000400e30 is .rodata\n" "\t0x0000000000400e30 - 0x0000000000400e74 is .eh_frame_hdr\n" "\t0x0000000000400e78 - 0x0000000000400fb4 is .eh_frame\n" "\t0x0000000000601e00 - 0x0000000000601e08 is .init_array\n" "\t0x0000000000601e08 - 0x0000000000601e10 is .fini_array\n" "\t0x0000000000601e10 - 0x0000000000601e18 is .jcr\n" "\t0x0000000000601e18 - 0x0000000000601ff8 is .dynamic\n" "\t0x0000000000601ff8 - 0x0000000000602000 is .got\n" "\t0x0000000000602000 - 0x0000000000602068 is .got.plt\n" "\t0x0000000000602068 - 0x0000000000602078 is .data\n" "\t0x0000000000602078 - 0x0000000000602080 is .bss\n" "(gdb) " 2015.05.03 15:55:42 -> "info program\n" 2015.05.03 15:55:42 <- "The program being debugged is not being run.\n" "(gdb) " # /home/lash/programming/c/raytoedge.c 2015.05.03 15:55:43 -> "info line raytoedge.c:1\n" 2015.05.03 15:55:43 <- "Line 1 of \"raytoedge.c\" is at address 0x40091e but contains no code.\n" "\032\032/home/lash/programming/c/raytoedge.c:1:0:beg:0x40091e\n" "(gdb) " # Reading file "/home/lash/programming/c/raytoedge.c"... # Reading file "/home/lash/programming/c/raytoedge.c"...done. # File "/home/lash/programming/c/raytoedge.c" 65 lines, 2093 characters 2015.05.03 15:55:43 -> "x /i 0x40091e\n" 2015.05.03 15:55:43 <- " 0x40091e :\tpush %rbp\n" "(gdb) " 2015.05.03 15:55:43 -> "x /i 0x400a1e\n" 2015.05.03 15:55:43 <- " 0x400a1e :\tadc %ebx,-0x58(%rbp)\n" "(gdb) " # Disassembling location 0x40091e to 0x400a1e... 2015.05.03 15:55:43 -> "disassemble 0x40091e,0x400a1e\n" 2015.05.03 15:55:43 <- "Dump of assembler code from 0x40091e to 0x400a1e:\n" " 0x000000000040091e :\tpush %rbp\n" " 0x000000000040091f :\tmov %rsp,%rbp\n" " 0x0000000000400922 :\tpush %rbx\n" " 0x0000000000400923 :\tsub $0x58,%rsp\n" " 0x0000000000400927 :\tmovsd %xmm0,-0x38(%rbp)\n" " 0x000000000040092c :\tmov %edi,-0x3c(%rbp)\n" " 0x000000000040092f :\tmov %esi,-0x40(%rbp)\n" " 0x0000000000400932 :\tmov %edx,-0x44(%rbp)\n" " 0x0000000000400935 :\tmov %ecx,-0x48(%rbp)\n" " 0x0000000000400938 :\tmov %r8,-0x50(%rbp)\n" " 0x000000000040093c :\tmov 0x4ce(%rip),%eax # 0x400e10\n" " 0x0000000000400942 :\tmov %eax,-0x2c(%rbp)\n" " 0x0000000000400945 :\tmov 0x4c5(%rip),%eax # 0x400e10\n" " 0x000000000040094b :\tmov %eax,-0x28(%rbp)\n" " 0x000000000040094e :\tmov 0x4bc(%rip),%eax # 0x400e10\n" " 0x0000000000400954 :\tmov %eax,-0x24(%rbp)\n" " 0x0000000000400957 :\tmovabs $0x3ff921fb54442d18,%rdx\n" " 0x0000000000400961 :\tmov -0x38(%rbp),%rax\n" " 0x0000000000400965 :\tmov %rdx,-0x58(%rbp)\n" " 0x0000000000400969 :\tmovsd -0x58(%rbp),%xmm1\n" " 0x000000000040096e :\tmov %rax,-0x58(%rbp)\n" " 0x0000000000400972 :\tmovsd -0x58(%rbp),%xmm0\n" " 0x0000000000400977 :\tcallq 0x400670 \n" " 0x000000000040097c :\tunpcklpd %xmm0,%xmm0\n" " 0x0000000000400980 :\tcvtpd2ps %xmm0,%xmm3\n" " 0x0000000000400984 :\tmovss %xmm3,-0x20(%rbp)\n" " 0x0000000000400989 :\tmov -0x38(%rbp),%rax\n" " 0x000000000040098d :\tmov %rax,-0x58(%rbp)\n" " 0x0000000000400991 :\tmovsd -0x58(%rbp),%xmm0\n" " 0x0000000000400996 :\tcallq 0x400c80 \n" " 0x000000000040099b :\tmov %eax,-0x1c(%rbp)\n" " 0x000000000040099e :\tmov -0x44(%rbp),%eax\n" " 0x00000000004009a1 :\tneg %eax\n" " 0x00000000004009a3 :\tmov %eax,-0x18(%rbp)\n" " 0x00000000004009a6 :\tmov -0x48(%rbp),%eax\n" " 0x00000000004009a9 :\tneg %eax\n" " 0x00000000004009ab :\tmov %eax,-0x14(%rbp)\n" " 0x00000000004009ae :\tmov -0x1c(%rbp),%eax\n" " 0x00000000004009b1 :\tcmp $0x2,%eax\n" " 0x00000000004009b4 :\tje 0x400a4d \n" " 0x00000000004009ba :\tcmp $0x2,%eax\n" " 0x00000000004009bd :\tjg 0x4009c9 \n" " 0x00000000004009bf :\tcmp $0x1,%eax\n" " 0x00000000004009c2 :\tje 0x4009e0 \n" " 0x00000000004009c4 :\tjmpq 0x400b8d \n" " 0x00000000004009c9 :\tcmp $0x3,%eax\n" " 0x00000000004009cc :\tje 0x400ab4 \n" " 0x00000000004009d2 :\tcmp $0x4,%eax\n" " 0x00000000004009d5 :\tje 0x400b1e \n" " 0x00000000004009db :\tjmpq 0x400b8d \n" " 0x00000000004009e0 :\tmov -0x3c(%rbp),%eax\n" " 0x00000000004009e3 :\tadd %eax,-0x18(%rbp)\n" " 0x00000000004009e6 :\tcvtsi2sdl -0x14(%rbp),%xmm2\n" " 0x00000000004009eb :\tmovsd %xmm2,-0x58(%rbp)\n" " 0x00000000004009f0 :\tmovss -0x20(%rbp),%xmm0\n" " 0x00000000004009f5 :\tcvtps2pd %xmm0,%xmm0\n" " 0x00000000004009f8 :\tcallq 0x4006d0 \n" " 0x00000000004009fd :\tmovsd -0x58(%rbp),%xmm2\n" " 0x0000000000400a02 :\tdivsd %xmm0,%xmm2\n" " 0x0000000000400a06 :\tmovapd %xmm2,%xmm0\n" " 0x0000000000400a0a :\tunpcklpd %xmm0,%xmm0\n" " 0x0000000000400a0e :\tcvtpd2ps %xmm0,%xmm4\n" " 0x0000000000400a12 :\tmovss %xmm4,-0x28(%rbp)\n" " 0x0000000000400a17 :\tcvtsi2sdl -0x18(%rbp),%xmm3\n" " 0x0000000000400a1c :\tmovsd %xmm3,-0x58(%rbp)\n" "End of assembler dump.\n" "(gdb) " # Disassembling location 0x40091e to 0x400a1e...done. # Getting sources... 2015.05.03 15:55:48 -> "info sources\n" 2015.05.03 15:55:48 <- "Source files for which symbols have been read in:\n" "\n" "/home/lash/programming/c/raytoedge.c, /home/lash/programming/c/main.c\n" "\n" "Source files for which symbols will be read in on demand:\n" "\n" "\n" "(gdb) " # Getting sources...done. # Open Source is an idea whose time has finally come. See http://www.opensource.org/. 2015.05.03 15:55:48 -> "info files\n" 2015.05.03 15:55:48 <- "Symbols from \"/home/lash/programming/c/main\".\n" "Local exec file:\n" "\t`/home/lash/programming/c/main\', file type elf64-x86-64.\n" "\tEntry point: 0x4006f0\n" "\t0x0000000000400238 - 0x0000000000400254 is .interp\n" "\t0x0000000000400254 - 0x0000000000400274 is .note.ABI-tag\n" "\t0x0000000000400274 - 0x0000000000400298 is .note.gnu.build-id\n" "\t0x0000000000400298 - 0x00000000004002b4 is .gnu.hash\n" "\t0x00000000004002b8 - 0x0000000000400408 is .dynsym\n" "\t0x0000000000400408 - 0x00000000004004b8 is .dynstr\n" "\t0x00000000004004b8 - 0x00000000004004d4 is .gnu.version\n" "\t0x00000000004004d8 - 0x0000000000400518 is .gnu.version_r\n" "\t0x0000000000400518 - 0x0000000000400530 is .rela.dyn\n" "\t0x0000000000400530 - 0x0000000000400620 is .rela.plt\n" "\t0x0000000000400620 - 0x000000000040063a is .init\n" "\t0x0000000000400640 - 0x00000000004006f0 is .plt\n" "\t0x00000000004006f0 - 0x0000000000400d92 is .text\n" "\t0x0000000000400d94 - 0x0000000000400d9d is .fini\n" "\t0x0000000000400da0 - 0x0000000000400e30 is .rodata\n" "\t0x0000000000400e30 - 0x0000000000400e74 is .eh_frame_hdr\n" "\t0x0000000000400e78 - 0x0000000000400fb4 is .eh_frame\n" "\t0x0000000000601e00 - 0x0000000000601e08 is .init_array\n" "\t0x0000000000601e08 - 0x0000000000601e10 is .fini_array\n" "\t0x0000000000601e10 - 0x0000000000601e18 is .jcr\n" "\t0x0000000000601e18 - 0x0000000000601ff8 is .dynamic\n" "\t0x0000000000601ff8 - 0x0000000000602000 is .got\n" "\t0x0000000000602000 - 0x0000000000602068 is .got.plt\n" "\t0x0000000000602068 - 0x0000000000602078 is .data\n" "\t0x0000000000602078 - 0x0000000000602080 is .bss\n" "(gdb) " 2015.05.03 15:55:48 -> "info program\n" 2015.05.03 15:55:48 <- "The program being debugged is not being run.\n" "(gdb) " # /home/lash/programming/c/main.c 2015.05.03 15:55:49 -> "info source\n" 2015.05.03 15:55:49 <- "Current source file is raytoedge.c\n" "Compilation directory is /home/lash/programming/c\n" "Located in /home/lash/programming/c/raytoedge.c\n" "Contains 65 lines.\n" "Source language is c.\n" "Compiled with DWARF 2 debugging format.\n" "Does not include preprocessor macro info.\n" "(gdb) " 2015.05.03 15:55:49 -> "info line main.c:1\n" 2015.05.03 15:55:49 <- "Line 1 of \"main.c\" is at address 0x4007dd
but contains no code.\n" "\032\032/home/lash/programming/c/main.c:1:0:beg:0x4007dd\n" "(gdb) " # Reading file "/home/lash/programming/c/main.c"... # Reading file "/home/lash/programming/c/main.c"...done. # File "/home/lash/programming/c/main.c" 51 lines, 1520 characters 2015.05.03 15:55:49 -> "x /i 0x4007dd\n" 2015.05.03 15:55:49 <- " 0x4007dd
:\tpush %rbp\n" "(gdb) " 2015.05.03 15:55:49 -> "x /i 0x4008dd\n" 2015.05.03 15:55:49 <- " 0x4008dd :\tpop %rax\n" "(gdb) " # Disassembling location 0x4007dd to 0x4008dd... 2015.05.03 15:55:49 -> "disassemble 0x4007dd,0x4008dd\n" 2015.05.03 15:55:49 <- "Dump of assembler code from 0x4007dd to 0x4008dd:\n" " 0x00000000004007dd :\tpush %rbp\n" " 0x00000000004007de :\tmov %rsp,%rbp\n" " 0x00000000004007e1 :\tsub $0x50,%rsp\n" " 0x00000000004007e5 :\tmov %edi,-0x34(%rbp)\n" " 0x00000000004007e8 :\tmov %rsi,-0x40(%rbp)\n" " 0x00000000004007ec :\tmov $0x0,%edi\n" " 0x00000000004007f1 :\tcallq 0x4006c0 \n" " 0x00000000004007f6 :\tmov %eax,%edi\n" " 0x00000000004007f8 :\tcallq 0x4006a0 \n" " 0x00000000004007fd :\tmov -0x40(%rbp),%rax\n" " 0x0000000000400801 :\tadd $0x8,%rax\n" " 0x0000000000400805 :\tmov (%rax),%rax\n" " 0x0000000000400808 :\tmov %rax,%rdi\n" " 0x000000000040080b :\tcallq 0x400650 \n" " 0x0000000000400810 :\tcvttsd2si %xmm0,%eax\n" " 0x0000000000400814 :\tmov %eax,-0x28(%rbp)\n" " 0x0000000000400817 :\tmov -0x40(%rbp),%rax\n" " 0x000000000040081b :\tadd $0x10,%rax\n" " 0x000000000040081f :\tmov (%rax),%rax\n" " 0x0000000000400822 :\tmov %rax,%rdi\n" " 0x0000000000400825 :\tcallq 0x400650 \n" " 0x000000000040082a :\tcvttsd2si %xmm0,%eax\n" " 0x000000000040082e :\tmov %eax,-0x24(%rbp)\n" " 0x0000000000400831 :\tcallq 0x4006e0 \n" " 0x0000000000400836 :\tcvtsi2sd %eax,%xmm0\n" " 0x000000000040083a :\tmovsd 0x5a6(%rip),%xmm1 # 0x400de8\n" " 0x0000000000400842 :\tdivsd %xmm1,%xmm0\n" " 0x0000000000400846 :\tmovsd 0x5a2(%rip),%xmm1 # 0x400df0\n" " 0x000000000040084e :\tmulsd %xmm1,%xmm0\n" " 0x0000000000400852 :\tmovsd %xmm0,-0x20(%rbp)\n" " 0x0000000000400857 :\tcmpl $0x3,-0x34(%rbp)\n" " 0x000000000040085b :\tjle 0x40087d \n" " 0x000000000040085d :\tmov -0x40(%rbp),%rax\n" " 0x0000000000400861 :\tadd $0x18,%rax\n" " 0x0000000000400865 :\tmov (%rax),%rax\n" " 0x0000000000400868 :\tmov %rax,%rdi\n" " 0x000000000040086b :\tcallq 0x400650 \n" " 0x0000000000400870 :\tmovsd %xmm0,-0x48(%rbp)\n" " 0x0000000000400875 :\tmov -0x48(%rbp),%rax\n" " 0x0000000000400879 :\tmov %rax,-0x20(%rbp)\n" " 0x000000000040087d :\tlea -0x10(%rbp),%rsi\n" " 0x0000000000400881 :\tmov -0x24(%rbp),%ecx\n" " 0x0000000000400884 :\tmov -0x28(%rbp),%edx\n" " 0x0000000000400887 :\tmov -0x20(%rbp),%rax\n" " 0x000000000040088b :\tmov %rsi,%r8\n" " 0x000000000040088e :\tmov $0x37d,%esi\n" " 0x0000000000400893 :\tmov $0x780,%edi\n" " 0x0000000000400898 :\tmov %rax,-0x48(%rbp)\n" " 0x000000000040089c :\tmovsd -0x48(%rbp),%xmm0\n" " 0x00000000004008a1 :\tcallq 0x40091e \n" " 0x00000000004008a6 :\tmov %rax,-0x18(%rbp)\n" " 0x00000000004008aa :\tmovsd -0x20(%rbp),%xmm1\n" " 0x00000000004008af :\tmovsd 0x541(%rip),%xmm0 # 0x400df8\n" " 0x00000000004008b7 :\tmulsd %xmm1,%xmm0\n" " 0x00000000004008bb :\tmovsd 0x53d(%rip),%xmm1 # 0x400e00\n" " 0x00000000004008c3 :\tdivsd %xmm1,%xmm0\n" " 0x00000000004008c7 :\tmovapd %xmm0,%xmm1\n" " 0x00000000004008cb :\tmov -0x18(%rbp),%rax\n" " 0x00000000004008cf :\tmovsd (%rax),%xmm2\n" " 0x00000000004008d3 :\tmovsd 0x52d(%rip),%xmm0 # 0x400e08\n" " 0x00000000004008db :\taddsd %xmm2,%xmm0\n" "End of assembler dump.\n" "(gdb) " # Disassembling location 0x4007dd to 0x4008dd...done. 2015.05.03 15:56:09 -> "set environment TERM dumb\n" 2015.05.03 15:56:09 <- "(gdb) " 2015.05.03 15:56:09 -> "run 830 296 3,5\n" 2015.05.03 15:56:09 <- "Starting program: /home/lash/programming/c/main 830 296 3,5\n" 2015.05.03 15:56:09 <- "xsrc-830.00, ysrc-829.00 for d171.89 (xdst830, ydst296, xscn1920, yscn893)\n" "\n" 2015.05.03 15:56:09 <- "[Inferior 1 (process 6472) exited normally]\n" "(gdb) " 2015.05.03 15:56:09 -> "info breakpoints\n" 2015.05.03 15:56:09 <- "No breakpoints or watchpoints.\n" 2015.05.03 15:56:09 <- "(gdb) " # Getting sources... 2015.05.03 15:56:53 -> "info sources\n" 2015.05.03 15:56:53 <- "Source files for which symbols have been read in:\n" "\n" "/home/lash/programming/c/raytoedge.c, /home/lash/programming/c/main.c\n" "\n" "Source files for which symbols will be read in on demand:\n" "\n" "\n" "(gdb) " # Getting sources...done. # Open Source is an idea whose time has finally come. See http://www.opensource.org/. 2015.05.03 15:56:53 -> "info files\n" 2015.05.03 15:56:53 <- "Symbols from \"/home/lash/programming/c/main\".\n" "Local exec file:\n" "\t`/home/lash/programming/c/main\', file type elf64-x86-64.\n" "\tEntry point: 0x4006f0\n" "\t0x0000000000400238 - 0x0000000000400254 is .interp\n" "\t0x0000000000400254 - 0x0000000000400274 is .note.ABI-tag\n" "\t0x0000000000400274 - 0x0000000000400298 is .note.gnu.build-id\n" "\t0x0000000000400298 - 0x00000000004002b4 is .gnu.hash\n" "\t0x00000000004002b8 - 0x0000000000400408 is .dynsym\n" "\t0x0000000000400408 - 0x00000000004004b8 is .dynstr\n" "\t0x00000000004004b8 - 0x00000000004004d4 is .gnu.version\n" "\t0x00000000004004d8 - 0x0000000000400518 is .gnu.version_r\n" "\t0x0000000000400518 - 0x0000000000400530 is .rela.dyn\n" "\t0x0000000000400530 - 0x0000000000400620 is .rela.plt\n" "\t0x0000000000400620 - 0x000000000040063a is .init\n" "\t0x0000000000400640 - 0x00000000004006f0 is .plt\n" "\t0x00000000004006f0 - 0x0000000000400d92 is .text\n" "\t0x0000000000400d94 - 0x0000000000400d9d is .fini\n" "\t0x0000000000400da0 - 0x0000000000400e30 is .rodata\n" "\t0x0000000000400e30 - 0x0000000000400e74 is .eh_frame_hdr\n" "\t0x0000000000400e78 - 0x0000000000400fb4 is .eh_frame\n" "\t0x0000000000601e00 - 0x0000000000601e08 is .init_array\n" "\t0x0000000000601e08 - 0x0000000000601e10 is .fini_array\n" "\t0x0000000000601e10 - 0x0000000000601e18 is .jcr\n" "\t0x0000000000601e18 - 0x0000000000601ff8 is .dynamic\n" "\t0x0000000000601ff8 - 0x0000000000602000 is .got\n" "\t0x0000000000602000 - 0x0000000000602068 is .got.plt\n" "\t0x0000000000602068 - 0x0000000000602078 is .data\n" "\t0x0000000000602078 - 0x0000000000602080 is .bss\n" "\t0x00007ffff7dda1c8 - 0x00007ffff7dda1ec is .note.gnu.build-id in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7dda1f0 - 0x00007ffff7dda2ac is .hash in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7dda2b0 - 0x00007ffff7dda38c is .gnu.hash in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7dda390 - 0x00007ffff7dda630 is .dynsym in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7dda630 - 0x00007ffff7dda7c4 is .dynstr in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7dda7c4 - 0x00007ffff7dda7fc is .gnu.version in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7dda800 - 0x00007ffff7dda8a4 is .gnu.version_d in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7dda8a8 - 0x00007ffff7dda9e0 is .rela.dyn in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7dda9e0 - 0x00007ffff7ddaa70 is .rela.plt in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7ddaa70 - 0x00007ffff7ddaae0 is .plt in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7ddaae0 - 0x00007ffff7df54e0 is .text in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7df54e0 - 0x00007ffff7df97e0 is .rodata in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7df97e0 - 0x00007ffff7df9e1c is .eh_frame_hdr in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7df9e20 - 0x00007ffff7dfc178 is .eh_frame in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7ffcc00 - 0x00007ffff7ffce6c is .data.rel.ro in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7ffce70 - 0x00007ffff7ffcfe0 is .dynamic in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7ffcfe0 - 0x00007ffff7ffcff8 is .got in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7ffd000 - 0x00007ffff7ffd048 is .got.plt in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7ffd060 - 0x00007ffff7ffdfe4 is .data in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7ffe000 - 0x00007ffff7ffe1c8 is .bss in /lib64/ld-linux-x86-64.so.2\n" "\t0x00007ffff7ad4238 - 0x00007ffff7ad425c is .note.gnu.build-id in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad425c - 0x00007ffff7ad427c is .note.ABI-tag in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad4280 - 0x00007ffff7ad574c is .gnu.hash in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad5750 - 0x00007ffff7ad7f10 is .dynsym in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad7f10 - 0x00007ffff7ad8be4 is .dynstr in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad8be4 - 0x00007ffff7ad8f34 is .gnu.version in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad8f38 - 0x00007ffff7ad8fdc is .gnu.version_d in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad8fe0 - 0x00007ffff7ad9010 is .gnu.version_r in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad9010 - 0x00007ffff7ad9130 is .rela.dyn in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad9130 - 0x00007ffff7ad9400 is .rela.plt in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad94" 2015.05.03 15:56:53 <- "00 - 0x00007ffff7ad941a is .init in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad9420 - 0x00007ffff7ad9610 is .plt in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7ad9610 - 0x00007ffff7b481b6 is .text in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7b481b8 - 0x00007ffff7b481c1 is .fini in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7b481e0 - 0x00007ffff7bd0064 is .rodata in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7bd0070 - 0x00007ffff7bd008c is .interp in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7bd008c - 0x00007ffff7bd12f8 is .eh_frame_hdr in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7bd12f8 - 0x00007ffff7bd709c is .eh_frame in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7bd70a0 - 0x00007ffff7bd842c is .hash in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7dd8d90 - 0x00007ffff7dd8d98 is .init_array in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7dd8d98 - 0x00007ffff7dd8da0 is .fini_array in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7dd8da0 - 0x00007ffff7dd8da8 is .jcr in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7dd8da8 - 0x00007ffff7dd8fb8 is .dynamic in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7dd8fb8 - 0x00007ffff7dd9000 is .got in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7dd9000 - 0x00007ffff7dd9108 is .got.plt in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7dd9108 - 0x00007ffff7dd911c is .data in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff7dd9120 - 0x00007ffff7dd9168 is .bss in /lib/x86_64-linux-gnu/libm.so.6\n" "\t0x00007ffff770f270 - 0x00007ffff770f294 is .note.gnu.build-id in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff770f294 - 0x00007ffff770f2b4 is .note.ABI-tag in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff770f2b8 - 0x00007ffff7712d24 is .gnu.hash in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7712d28 - 0x00007ffff771fd78 is .dynsym in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff771fd78 - 0x00007ffff772564e is .dynstr in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff772564e - 0x00007ffff77267aa is .gnu.version in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff77267b0 - 0x00007ffff7726adc is .gnu.version_d in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7726ae0 - 0x00007ffff7726b10 is .gnu.version_r in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7726b10 - 0x00007ffff772e2b0 is .rela.dyn in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff772e2b0 - 0x00007ffff772e3d0 is .rela.plt in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff772e3d0 - 0x00007ffff772e4a0 is .plt in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff772e4a0 - 0x00007ffff7873583 is .text in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7873590 - 0x00007ffff7874f8d is __libc_freeres_fn in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7874f90 - 0x00007ffff7875212 is __libc_thread_freeres_fn in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7875220 - 0x00007ffff7896f30 is .rodata in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7896f30 - 0x00007ffff7896f4c is .interp in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7896f4c - 0x00007ffff789d650 is .eh_frame_hdr in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff789d650 - 0x00007ffff78c59a4 is .eh_frame in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff78c59a4 - 0x00007ffff78c5d6d is .gcc_except_table in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff78c5d70 - 0x00007ffff78c9014 is .hash in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7ac9740 - 0x00007ffff7ac9750 is .tdata in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7ac9750 - 0x00007ffff7ac97f0 is .tbss in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7ac9750 - 0x00007ffff7ac9760 is .init_array in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7ac9760 - 0x00007ffff7ac9850 is __libc_subfreeres in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7ac9850 - 0x00007ffff7ac9858 is __libc_atexit in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7ac9858 - 0x00007ffff7ac9878 is __libc_thread_subfreeres in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7ac9880 - 0x00007ffff7accba0 is .data.rel.ro in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7accba0 - 0x00007ffff7accd80 is .dynamic in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7accd80 - 0x00007ffff7accff8 is .got in /lib/x86_64-linux-gnu/libc.so" 2015.05.03 15:56:53 <- ".6\n" "\t0x00007ffff7acd000 - 0x00007ffff7acd078 is .got.plt in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7acd080 - 0x00007ffff7ace8a0 is .data in /lib/x86_64-linux-gnu/libc.so.6\n" "\t0x00007ffff7ace8a0 - 0x00007ffff7ad32c0 is .bss in /lib/x86_64-linux-gnu/libc.so.6\n" "(gdb) " 2015.05.03 15:56:53 -> "info program\n" 2015.05.03 15:56:53 <- "The program being debugged is not being run.\n" "(gdb) " # /home/lash/programming/c/raytoedge.c # /home/lash/programming/c/raytoedge.c # /home/lash/programming/c/raytoedge.c 2015.05.03 15:56:55 -> "info line raytoedge.c:1\n" 2015.05.03 15:56:55 <- "Line 1 of \"raytoedge.c\" is at address 0x40091e but contains no code.\n" "\032\032/home/lash/programming/c/raytoedge.c:1:0:beg:0x40091e\n" "(gdb) " # Reading file "/home/lash/programming/c/raytoedge.c"... # Reading file "/home/lash/programming/c/raytoedge.c"...done. # File "/home/lash/programming/c/raytoedge.c" 65 lines, 2093 characters 2015.05.03 15:56:57 -> "output r_mod\n" 2015.05.03 15:56:57 <- "No symbol \"r_mod\" in current context.\n" "(gdb) " 2015.05.03 15:57:00 -> "break raytoedge.c:50\n" 2015.05.03 15:57:00 <- "Breakpoint 1 at 0x400c75: file raytoedge.c, line 50.\n" "(gdb) " 2015.05.03 15:57:00 -> "info breakpoints\n" 2015.05.03 15:57:00 <- "Num Type Disp Enb Address What\n" "1 breakpoint keep y 0x0000000000400c75 in getedge at raytoedge.c:50\n" "(gdb) " 2015.05.03 15:57:01 -> "set environment TERM dumb\n" 2015.05.03 15:57:01 <- "(gdb) " 2015.05.03 15:57:01 -> "run\n" 2015.05.03 15:57:01 <- "Starting program: /home/lash/programming/c/main 830 296 3,5\n" 2015.05.03 15:57:01 <- "\n" 2015.05.03 15:57:01 <- "Breakpoint 1, getedge (r=3, x_max=1920, y_max=893, x=830, y=296, buf=0x7fffffffdfc0) at raytoedge.c:50\n" "\032\032/home/lash/programming/c/raytoedge.c:50:1119:beg:0x400c75\n" 2015.05.03 15:57:01 <- "(gdb) " 2015.05.03 15:57:01 -> "info breakpoints\n" 2015.05.03 15:57:01 <- "Num Type Disp Enb Address What\n" 2015.05.03 15:57:01 <- "1 breakpoint keep y 0x0000000000400c75 in getedge at raytoedge.c:50\n" "\tbreakpoint already hit 1 time\n" 2015.05.03 15:57:01 <- "(gdb) " 2015.05.03 15:57:01 -> "x /i 0x400c75\n" 2015.05.03 15:57:01 <- "=> 0x400c75 :\tmov -0x50(%rbp),%rax\n" 2015.05.03 15:57:01 <- "(gdb) " # Disassembling location 0x400c75 to 0x400d75... 2015.05.03 15:57:01 -> "disassemble 0x400c75,0x400d75\n" 2015.05.03 15:57:01 <- "Dump of assembler code from 0x400c75 to 0x400d75:\n" "=> 0x0000000000400c75 :\tmov -0x50(%rbp),%rax\n" " 0x0000000000400c79 :\tadd $0x58,%rsp\n" " 0x0000000000400c7d :\tpop %rbx\n" " 0x0000000000400c7e :\tpop %rbp\n" " 0x0000000000400c7f :\tretq \n" " 0x0000000000400c80 :\tpush %rbp\n" " 0x0000000000400c81 :\tmov %rsp,%rbp\n" " 0x0000000000400c84 :\tmovsd %xmm0,-0x18(%rbp)\n" " 0x0000000000400c89 :\tmov 0x191(%rip),%eax # 0x400e20\n" " 0x0000000000400c8f :\tmov %eax,-0x4(%rbp)\n" " 0x0000000000400c92 :\tmovsd 0x17e(%rip),%xmm0 # 0x400e18\n" " 0x0000000000400c9a :\tucomisd -0x18(%rbp),%xmm0\n" " 0x0000000000400c9f :\tjbe 0x400ca8 \n" " 0x0000000000400ca1 :\tmov $0x1,%eax\n" " 0x0000000000400ca6 :\tjmp 0x400d11 \n" " 0x0000000000400ca8 :\tmovsd -0x18(%rbp),%xmm0\n" " 0x0000000000400cad :\tucomisd 0x163(%rip),%xmm0 # 0x400e18\n" " 0x0000000000400cb5 :\tjb 0x400ccd \n" " 0x0000000000400cb7 :\tmovsd 0x169(%rip),%xmm0 # 0x400e28\n" " 0x0000000000400cbf :\tucomisd -0x18(%rbp),%xmm0\n" " 0x0000000000400cc4 :\tjbe 0x400ccd \n" " 0x0000000000400cc6 :\tmov $0x2,%eax\n" " 0x0000000000400ccb :\tjmp 0x400d11 \n" " 0x0000000000400ccd :\tmovsd -0x18(%rbp),%xmm0\n" " 0x0000000000400cd2 :\tucomisd 0x14e(%rip),%xmm0 # 0x400e28\n" " 0x0000000000400cda :\tjb 0x400cf2 \n" " 0x0000000000400cdc :\tmovss -0x4(%rbp),%xmm0\n" " 0x0000000000400ce1 :\tcvtps2pd %xmm0,%xmm0\n" " 0x0000000000400ce4 :\tucomisd -0x18(%rbp),%xmm0\n" " 0x0000000000400ce9 :\tjbe 0x400cf2 \n" " 0x0000000000400ceb :\tmov $0x3,%eax\n" " 0x0000000000400cf0 :\tjmp 0x400d11 \n" " 0x0000000000400cf2 :\tmovss -0x4(%rbp),%xmm0\n" " 0x0000000000400cf7 :\tcvtps2pd %xmm0,%xmm0\n" " 0x0000000000400cfa :\tmovsd -0x18(%rbp),%xmm1\n" " 0x0000000000400cff :\tucomisd %xmm0,%xmm1\n" " 0x0000000000400d03 :\tjb 0x400d0c \n" " 0x0000000000400d05 :\tmov $0x4,%eax\n" 2015.05.03 15:57:01 <- " 0x0000000000400d0a :\tjmp 0x400d11 \n" " 0x0000000000400d0c :\tmov $0x0,%eax\n" " 0x0000000000400d11 :\tpop %rbp\n" " 0x0000000000400d12 :\tretq \n" " 0x0000000000400d13:\tnopw %cs:0x0(%rax,%rax,1)\n" " 0x0000000000400d1d:\tnopl (%rax)\n" " 0x0000000000400d20 <__libc_csu_init+0>:\tpush %r15\n" " 0x0000000000400d22 <__libc_csu_init+2>:\tmov %edi,%r15d\n" " 0x0000000000400d25 <__libc_csu_init+5>:\tpush %r14\n" " 0x0000000000400d27 <__libc_csu_init+7>:\tmov %rsi,%r14\n" " 0x0000000000400d2a <__libc_csu_init+10>:\tpush %r13\n" " 0x0000000000400d2c <__libc_csu_init+12>:\tmov %rdx,%r13\n" " 0x0000000000400d2f <__libc_csu_init+15>:\tpush %r12\n" " 0x0000000000400d31 <__libc_csu_init+17>:\tlea 0x2010c8(%rip),%r12 # 0x601e00\n" " 0x0000000000400d38 <__libc_csu_init+24>:\tpush %rbp\n" " 0x0000000000400d39 <__libc_csu_init+25>:\tlea 0x2010c8(%rip),%rbp # 0x601e08\n" " 0x0000000000400d40 <__libc_csu_init+32>:\tpush %rbx\n" 2015.05.03 15:57:01 <- " 0x0000000000400d41 <__libc_csu_init+33>:\tsub %r12,%rbp\n" " 0x0000000000400d44 <__libc_csu_init+36>:\txor %ebx,%ebx\n" " 0x0000000000400d46 <__libc_csu_init+38>:\tsar $0x3,%rbp\n" " 0x0000000000400d4a <__libc_csu_init+42>:\tsub $0x8,%rsp\n" " 0x0000000000400d4e <__libc_csu_init+46>:\tcallq 0x400620 <_init>\n" " 0x0000000000400d53 <__libc_csu_init+51>:\ttest %rbp,%rbp\n" " 0x0000000000400d56 <__libc_csu_init+54>:\tje 0x400d76 <__libc_csu_init+86>\n" " 0x0000000000400d58 <__libc_csu_init+56>:\tnopl 0x0(%rax,%rax,1)\n" 2015.05.03 15:57:01 <- " 0x0000000000400d60 <__libc_csu_init+64>:\tmov %r13,%rdx\n" " 0x0000000000400d63 <__libc_csu_init+67>:\tmov %r14,%rsi\n" " 0x0000000000400d66 <__libc_csu_init+70>:\tmov %r15d,%edi\n" " 0x0000000000400d69 <__libc_csu_init+73>:\tcallq *(%r12,%rbx,8)\n" " 0x0000000000400d6d <__libc_csu_init+77>:\tadd $0x1,%rbx\n" " 0x0000000000400d71 <__libc_csu_init+81>:\tcmp %rbp,%rbx\n" 2015.05.03 15:57:01 <- " 0x0000000000400d74 <__libc_csu_init+84>:\tjne 0x400d60 <__libc_csu_init+64>\n" "End of assembler dump.\n" "(gdb) " # Disassembling location 0x400c75 to 0x400d75...done. 2015.05.03 15:57:09 -> "frame\n" 2015.05.03 15:57:09 <- "#0 getedge (r=3, x_max=1920, y_max=893, x=830, y=296, buf=0x7fffffffdfc0) at raytoedge.c:50\n" "\032\032/home/lash/programming/c/raytoedge.c:50:1119:beg:0x400c75\n" "(gdb) " 2015.05.03 15:57:09 -> "display buf\n" 2015.05.03 15:57:09 <- "1: buf = (double *) 0x7fffffffdfc0\n" "(gdb) " # Creating display... # Creating display...done. 2015.05.03 15:57:09 -> "output &buf\n" # Display 1: buf (enabled, scope getedge) 2015.05.03 15:57:09 <- "(double **) 0x7fffffffdf20(gdb) " # Display 1: buf (enabled, scope getedge, address 0x7fffffffdf20) 2015.05.03 15:57:13 -> "frame\n" 2015.05.03 15:57:13 <- "#0 getedge (r=3, x_max=1920, y_max=893, x=830, y=296, buf=0x7fffffffdfc0) at raytoedge.c:50\n" "\032\032/home/lash/programming/c/raytoedge.c:50:1119:beg:0x400c75\n" "(gdb) " 2015.05.03 15:57:13 -> "display *buf\n" 2015.05.03 15:57:13 <- "2: *buf = -829,99999982807674\n" "(gdb) " # Creating display... # Creating display...done. 2015.05.03 15:57:13 -> "output &(*buf)\n" # Display 2: *buf (enabled, scope getedge) 2015.05.03 15:57:13 <- "(double *) 0x7fffffffdfc0(gdb) " # Display 2: *buf (enabled, scope getedge, address 0x7fffffffdfc0) 2015.05.03 15:57:16 -> "frame\n" 2015.05.03 15:57:16 <- "#0 getedge (r=3, x_max=1920, y_max=893, x=830, y=296, buf=0x7fffffffdfc0) at raytoedge.c:50\n" "\032\032/home/lash/programming/c/raytoedge.c:50:1119:beg:0x400c75\n" "(gdb) " 2015.05.03 15:57:16 -> "display *buf+1\n" 2015.05.03 15:57:16 <- "3: *buf+1 = -828,99999982807674\n" "(gdb) " # Creating display... # Creating display...done. 2015.05.03 15:57:16 -> "output &(*buf+1)\n" # Display 3: *buf+1 (enabled, scope getedge) 2015.05.03 15:57:16 <- "Attempt to take address of value not located in memory.\n" "(gdb) " # In display 1: buf (double-click to dereference) # In display 1: buf (double-click to dereference) 2015.05.03 15:57:18 -> "frame\n" 2015.05.03 15:57:18 <- "#0 getedge (r=3, x_max=1920, y_max=893, x=830, y=296, buf=0x7fffffffdfc0) at raytoedge.c:50\n" "\032\032/home/lash/programming/c/raytoedge.c:50:1119:beg:0x400c75\n" "(gdb) " 2015.05.03 15:57:18 -> "display *buf\n" # Display 1: buf (enabled, scope getedge, address 0x7fffffffdf20) 2015.05.03 15:57:18 <- "4: *buf = -829,99999982807674\n" "(gdb) " # Creating display... # Creating display...done. 2015.05.03 15:57:18 -> "output &(*buf)\n" # Display 4: *buf (enabled, scope getedge) 2015.05.03 15:57:18 <- "(double *) 0x7fffffffdfc0(gdb) " # Suppressing display 4: *buf because it is an alias of display 2: *buf # In display 1: buf (double-click to dereference) # In display 1: buf (double-click to dereference) # Display 1: buf (enabled, scope getedge, address 0x7fffffffdf20) # Display 1: buf (enabled, scope getedge, address 0x7fffffffdf20) 2015.05.03 15:57:21 -> "frame\n" 2015.05.03 15:57:21 <- "#0 getedge (r=3, x_max=1920, y_max=893, x=830, y=296, buf=0x7fffffffdfc0) at raytoedge.c:50\n" "\032\032/home/lash/programming/c/raytoedge.c:50:1119:beg:0x400c75\n" "(gdb) " 2015.05.03 15:57:21 -> "undisplay 1\n" 2015.05.03 15:57:21 <- "(gdb) " 2015.05.03 15:57:21 -> "output &(*buf)\n" 2015.05.03 15:57:21 <- "(double *) 0x7fffffffdfc0(gdb) " 2015.05.03 15:57:21 -> "output &(*buf+1)\n" # Displays 2 and 4 (2 displays) 2015.05.03 15:57:21 <- "Attempt to take address of value not located in memory.\n" "(gdb) " 2015.05.03 15:57:21 -> "output &(*buf)\n" 2015.05.03 15:57:21 <- "(double *) 0x7fffffffdfc0" 2015.05.03 15:57:21 <- "(gdb) " 2015.05.03 15:57:24 -> "output distance_to_x\n" 2015.05.03 15:57:24 <- "-830(gdb) " 2015.05.03 15:57:28 -> "frame\n" 2015.05.03 15:57:28 <- "#0 getedge (r=3, x_max=1920, y_max=893, x=830, y=296, buf=0x7fffffffdfc0) at raytoedge.c:50\n" "\032\032/home/lash/programming/c/raytoedge.c:50:1119:beg:0x400c75\n" "(gdb) " 2015.05.03 15:57:28 -> "display distance_to_x\n" 2015.05.03 15:57:28 <- "5: distance_to_x = -830\n" "(gdb) " # Creating display... # Creating display...done. 2015.05.03 15:57:28 -> "output &distance_to_x\n" # Display 5: distance_to_x (enabled, scope getedge) 2015.05.03 15:57:28 <- "(int *) 0x7fffffffdf58(gdb) " # Display 5: distance_to_x (enabled, scope getedge, address 0x7fffffffdf58) # In display 5: distance_to_x (double-click to hide) # Display 2: *buf (enabled, scope getedge, address 0x7fffffffdfc0) # Display 2: *buf (enabled, scope getedge, address 0x7fffffffdfc0) # Display 2: *buf (enabled, scope getedge, address 0x7fffffffdfc0) # Display 3: *buf+1 (enabled, scope getedge) # Display 3: *buf+1 (enabled, scope getedge) # Display 5: distance_to_x (enabled, scope getedge, address 0x7fffffffdf58) # Display 5: distance_to_x (enabled, scope getedge, address 0x7fffffffdf58) 2015.05.03 15:57:36 -> "output distance_to_y\n" 2015.05.03 15:57:36 <- "-296(gdb) " 2015.05.03 15:57:37 -> "frame\n" 2015.05.03 15:57:37 <- "#0 getedge (r=3, x_max=1920, y_max=893, x=830, y=296, buf=0x7fffffffdfc0) at raytoedge.c:50\n" "\032\032/home/lash/programming/c/raytoedge.c:50:1119:beg:0x400c75\n" "(gdb) " 2015.05.03 15:57:37 -> "display distance_to_y\n" 2015.05.03 15:57:37 <- "6: distance_to_y = -296\n" "(gdb) " # Creating display... # Creating display...done. 2015.05.03 15:57:37 -> "output &distance_to_y\n" # Display 6: distance_to_y (enabled, scope getedge) 2015.05.03 15:57:37 <- "(int *) 0x7fffffffdf5c(gdb) " # Display 6: distance_to_y (enabled, scope getedge, address 0x7fffffffdf5c) 2015.05.03 15:57:41 -> "output r_mod\n" 2015.05.03 15:57:41 <- "1,42920363(gdb) " 2015.05.03 15:57:41 -> "output hyp_to_y\n" 2015.05.03 15:57:41 <- "-838,390198(gdb) " 2015.05.03 15:57:41 -> "output hyp_to_x\n" 2015.05.03 15:57:41 <- "-2097,50488(gdb) " 2015.05.03 15:57:42 -> "frame\n" 2015.05.03 15:57:42 <- "#0 getedge (r=3, x_max=1920, y_max=893, x=830, y=296, buf=0x7fffffffdfc0) at raytoedge.c:50\n" "\032\032/home/lash/programming/c/raytoedge.c:50:1119:beg:0x400c75\n" "(gdb) " 2015.05.03 15:57:42 -> "display hyp_to_x\n" 2015.05.03 15:57:42 <- "7: hyp_to_x = -2097,50488\n" "(gdb) " # Creating display... # Creating display...done. 2015.05.03 15:57:42 -> "output &hyp_to_x\n" # Display 7: hyp_to_x (enabled, scope getedge) 2015.05.03 15:57:42 <- "(float *) 0x7fffffffdf48(gdb) " # Display 7: hyp_to_x (enabled, scope getedge, address 0x7fffffffdf48) 2015.05.03 15:57:43 -> "output break\n" 2015.05.03 15:57:43 <- "No symbol \"break\" in current context.\n" "(gdb) " 2015.05.03 15:57:44 -> "frame\n" 2015.05.03 15:57:44 <- "#0 getedge (r=3, x_max=1920, y_max=893, x=830, y=296, buf=0x7fffffffdfc0) at raytoedge.c:50\n" "\032\032/home/lash/programming/c/raytoedge.c:50:1119:beg:0x400c75\n" "(gdb) " 2015.05.03 15:57:44 -> "display hyp_to_y\n" 2015.05.03 15:57:44 <- "8: hyp_to_y = -838,390198\n" "(gdb) " # Creating display... # Creating display...done. 2015.05.03 15:57:44 -> "output &hyp_to_y\n" # Display 8: hyp_to_y (enabled, scope getedge) 2015.05.03 15:57:44 <- "(float *) 0x7fffffffdf44(gdb) " # Display 8: hyp_to_y (enabled, scope getedge, address 0x7fffffffdf44) ! Segmentation fault 2015.05.03 15:58:28 -> "\003" + /bin/sh -c 'gdb -x /tmp/dddK5G9Cg ddd core' GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1 Copyright (C) 2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: . Find the GDB manual and other documentation resources online at: . For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from ddd...(no debugging symbols found)...done. [New LWP 6557] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `ddd ./main'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007f6c6506a0b4 in XtWindowOfObject () from /usr/lib/x86_64-linux-gnu/libXt.so.6 #0 0x00007f6c6506a0b4 in XtWindowOfObject () from /usr/lib/x86_64-linux-gnu/libXt.so.6 #1 0x00007f6c658bcdd8 in ?? () from /usr/lib/x86_64-linux-gnu/libXm.so.4 #2 0x00007f6c65063499 in XtDispatchEvent () from /usr/lib/x86_64-linux-gnu/libXt.so.6 #3 0x000000000041e69f in ?? () #4 0x00000000004cd73d in ?? () #5 0x000000000040dacf in ?? () #6 0x00007f6c63d0dec5 in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6 #7 0x0000000000413df5 in ?? () 2015.05.03 15:58:29 <- "Quit\n" "(gdb) " ! Segmentation fault + /bin/sh -c 'gdb -x /tmp/dddCP0xrv ddd core' GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1 Copyright (C) 2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: . Find the GDB manual and other documentation resources online at: . For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from ddd...(no debugging symbols found)...done. [New LWP 6562] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `ddd ./main'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007f6c6506a0b4 in XtWindowOfObject () from /usr/lib/x86_64-linux-gnu/libXt.so.6 #0 0x00007f6c6506a0b4 in XtWindowOfObject () from /usr/lib/x86_64-linux-gnu/libXt.so.6 #1 0x00007f6c658bcdd8 in ?? () from /usr/lib/x86_64-linux-gnu/libXm.so.4 #2 0x00007f6c65063499 in XtDispatchEvent () from /usr/lib/x86_64-linux-gnu/libXt.so.6 #3 0x000000000041e69f in ?? () #4 0x00000000004cd73d in ?? () #5 0x000000000040dacf in ?? () #6 0x00007f6c63d0dec5 in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6 #7 0x0000000000413df5 in ?? () # Saving options in "/home/lash/.ddd/init"... # Saving options in "/home/lash/.ddd/init"...done. # Deleting session ".ddd"... # Deleting session ".ddd"...done. # Deleting session "245db11b3-e814-4e4e-87d9-dc93e3d5c3c7"... # Current session is [none]. # Deleting session "245db11b3-e814-4e4e-87d9-dc93e3d5c3c7"...done. # Saving history in "/home/lash/.ddd/history"... # Saving history in "/home/lash/.ddd/history"...done. # Thanks for using DDD 3.3.12! (We apologize for the inconvenience.)