LCOV - code coverage report
Current view: top level - strace_git/linux/i386 - arch_sigreturn.c (source / functions) Hit Total Coverage
Test: strace-4.16.0.69.f1ea-dirty Code Coverage Lines: 6 7 85.7 %
Date: 2017-03-18 00:38:52 Functions: 1 1 100.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1 2 50.0 %

           Branch data     Line data    Source code
       1                 :            : static void
       2                 :          1 : arch_sigreturn(struct tcb *tcp)
       3                 :            : {
       4                 :            :         /*
       5                 :            :          * On i386, sigcontext is followed on stack by struct fpstate
       6                 :            :          * and after it an additional u32 extramask which holds
       7                 :            :          * upper half of the mask.
       8                 :            :          */
       9                 :            :         struct {
      10                 :            :                 uint32_t struct_sigcontext_padding1[20];
      11                 :            :                 uint32_t oldmask;
      12                 :            :                 uint32_t struct_sigcontext_padding2;
      13                 :            :                 uint32_t struct_fpstate_padding[156];
      14                 :            :                 uint32_t extramask;
      15                 :            :         } frame;
      16                 :            : 
      17         [ -  + ]:          1 :         if (umove(tcp, *i386_esp_ptr, &frame) < 0) {
      18                 :          0 :                 tprintf("{mask=%#lx}", (unsigned long) *i386_esp_ptr);
      19                 :            :         } else {
      20                 :          1 :                 uint32_t mask[2] = { frame.oldmask, frame.extramask };
      21                 :          1 :                 tprintsigmask_addr("{mask=", mask);
      22                 :          1 :                 tprints("}");
      23                 :            :         }
      24                 :          1 : }

Generated by: LCOV version 1.12