Comparing g(char const*) in assumed vs ignored

Files changed (1) hide show
  1. bdlb_variant.t/{2.assume.s → 2.none.s} +75 -40
bdlb_variant.t/{2.assume.s → 2.none.s} RENAMED
@@ -1,70 +1,105 @@
1
- 0000000000405ed0 <g(char const*)>:
2
  0000000000000000: 02 pushq %r14
3
  0000000000000002: 01 pushq %rbx
4
  0000000000000003: 04 subq $88, %rsp
5
  0000000000000007: 03 movq %rsi, %rbx
6
  000000000000000a: 03 movq %rdi, %r14
7
  000000000000000d: 02 xorl %edi, %edi
8
  000000000000000f: 03 testq %rsi, %rsi
9
  0000000000000012: 04 sete %dil
10
- 0000000000000016: 05 movl $5450654, %esi
11
  000000000000001b: 05 movl $2589, %edx
12
  0000000000000020: 05 callq 0x405970 <(anonymous namespace)::aSsErT(bool, char const*, int)>
13
- 0000000000000025: 08 movl $0, 72(%rsp)
14
- 000000000000002d: 07 movq 3581644(%rip), %rax # 7705d0 <BloombergLP::bslma::Default::s_defaultAllocator>
15
  0000000000000034: 03 testq %rax, %rax
16
- 0000000000000037: 02 jne 0x405f0e <g(char const*)+0x3e>
17
- 0000000000000039: 05 callq 0x4f4f90 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()>
18
  000000000000003e: 02 xorl %edi, %edi
19
  0000000000000040: 03 testq %rbx, %rbx
20
  0000000000000043: 04 sete %dil
21
- 0000000000000047: 05 movq %rax, 80(%rsp)
22
- 000000000000004c: 05 movl $5450654, %esi
23
  0000000000000051: 05 movl $2579, %edx
24
  0000000000000056: 05 callq 0x405970 <(anonymous namespace)::aSsErT(bool, char const*, int)>
25
- 000000000000005b: 05 leaq 24(%rsp), %rdi
26
  0000000000000060: 03 movq %rbx, %rsi
27
  0000000000000063: 05 movl $1, %edx
28
  0000000000000068: 05 callq 0x405a70 <ggg(BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<int, bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, TestInt, TestString, TestVoid> >*, char const*, bool)>
29
  000000000000006d: 02 notl %eax
30
  000000000000006f: 03 shrl $31, %eax
31
- 0000000000000072: 05 movl $5450723, %esi
32
  0000000000000077: 02 movl %eax, %edi
33
  0000000000000079: 05 movl $2580, %edx
34
  000000000000007e: 05 callq 0x405970 <(anonymous namespace)::aSsErT(bool, char const*, int)>
35
- 0000000000000083: 04 movl 72(%rsp), %ecx
36
  0000000000000087: 04 movl %ecx, 48(%r14)
37
- 000000000000008b: 07 movq 3581550(%rip), %rax # 7705d0 <BloombergLP::bslma::Default::s_defaultAllocator>
38
  0000000000000092: 03 testq %rax, %rax
39
- 0000000000000095: 02 jne 0x405f70 <g(char const*)+0xa0>
40
- 0000000000000097: 05 callq 0x4f4f90 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()>
41
  000000000000009c: 04 movl 48(%r14), %ecx
42
  00000000000000a0: 04 movq %rax, 56(%r14)
43
  00000000000000a4: 02 testl %ecx, %ecx
44
- 00000000000000a6: 02 je 0x405f99 <g(char const*)+0xc9>
45
- 00000000000000a8: 05 movq %r14, 8(%rsp)
46
- 00000000000000ad: 05 movq %rax, 16(%rsp)
47
- 00000000000000b2: 04 movl 72(%rsp), %edx
48
  00000000000000b6: 02 testl %edx, %edx
49
- 00000000000000b8: 02 je 0x405f99 <g(char const*)+0xc9>
50
- 00000000000000ba: 05 leaq 24(%rsp), %rdi
51
- 00000000000000bf: 05 leaq 8(%rsp), %rsi
52
- 00000000000000c4: 05 callq 0x4cf850 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<int, bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, TestInt, TestString, TestVoid> >::doApply<BloombergLP::bdlb::Variant_CopyConstructVisitor&>(BloombergLP::bdlb::Variant_CopyConstructVisitor&, int) const>
53
- 00000000000000c9: 05 leaq 24(%rsp), %rdi
54
- 00000000000000ce: 05 callq 0x4c6370 <BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<int, bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, TestInt, TestString, TestVoid> >::reset()>
55
- 00000000000000d3: 03 movq %r14, %rax
56
- 00000000000000d6: 04 addq $88, %rsp
57
- 00000000000000da: 01 popq %rbx
58
- 00000000000000db: 02 popq %r14
59
- 00000000000000dd: 01 retq
60
- 00000000000000de: 03 movq %rax, %rdi
61
- 00000000000000e1: 05 callq 0x4cb900 <__clang_call_terminate>
62
- 00000000000000e6: 03 movq %rax, %rbx
63
- 00000000000000e9: 05 leaq 24(%rsp), %rdi
64
- 00000000000000ee: 05 callq 0x4c6370 <BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<int, bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, TestInt, TestString, TestVoid> >::reset()>
65
- 00000000000000f3: 03 movq %rbx, %rdi
66
- 00000000000000f6: 05 callq 0x403f90 <_Unwind_Resume@plt>
67
- 00000000000000fb: 03 movq %rax, %rdi
68
- 00000000000000fe: 05 callq 0x4cb900 <__clang_call_terminate>
69
- 0000000000000103: 10 nopw %cs:(%rax,%rax)
70
- 000000000000010d: 03 nopl (%rax)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ 0000000000406190 <g(char const*)>:
2
  0000000000000000: 02 pushq %r14
3
  0000000000000002: 01 pushq %rbx
4
  0000000000000003: 04 subq $88, %rsp
5
  0000000000000007: 03 movq %rsi, %rbx
6
  000000000000000a: 03 movq %rdi, %r14
7
  000000000000000d: 02 xorl %edi, %edi
8
  000000000000000f: 03 testq %rsi, %rsi
9
  0000000000000012: 04 sete %dil
10
+ 0000000000000016: 05 movl $5402046, %esi
11
  000000000000001b: 05 movl $2589, %edx
12
  0000000000000020: 05 callq 0x405970 <(anonymous namespace)::aSsErT(bool, char const*, int)>
13
+ 0000000000000025: 08 movl $0, 56(%rsp)
14
+ 000000000000002d: 07 movq 3531788(%rip), %rax # 7645d0 <BloombergLP::bslma::Default::s_defaultAllocator>
15
  0000000000000034: 03 testq %rax, %rax
16
+ 0000000000000037: 02 jne 0x4061ce <g(char const*)+0x3e>
17
+ 0000000000000039: 05 callq 0x4ed7c0 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()>
18
  000000000000003e: 02 xorl %edi, %edi
19
  0000000000000040: 03 testq %rbx, %rbx
20
  0000000000000043: 04 sete %dil
21
+ 0000000000000047: 05 movq %rax, 64(%rsp)
22
+ 000000000000004c: 05 movl $5402046, %esi
23
  0000000000000051: 05 movl $2579, %edx
24
  0000000000000056: 05 callq 0x405970 <(anonymous namespace)::aSsErT(bool, char const*, int)>
25
+ 000000000000005b: 05 leaq 8(%rsp), %rdi
26
  0000000000000060: 03 movq %rbx, %rsi
27
  0000000000000063: 05 movl $1, %edx
28
  0000000000000068: 05 callq 0x405a70 <ggg(BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<int, bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, TestInt, TestString, TestVoid> >*, char const*, bool)>
29
  000000000000006d: 02 notl %eax
30
  000000000000006f: 03 shrl $31, %eax
31
+ 0000000000000072: 05 movl $5402115, %esi
32
  0000000000000077: 02 movl %eax, %edi
33
  0000000000000079: 05 movl $2580, %edx
34
  000000000000007e: 05 callq 0x405970 <(anonymous namespace)::aSsErT(bool, char const*, int)>
35
+ 0000000000000083: 04 movl 56(%rsp), %ecx
36
  0000000000000087: 04 movl %ecx, 48(%r14)
37
+ 000000000000008b: 07 movq 3531694(%rip), %rax # 7645d0 <BloombergLP::bslma::Default::s_defaultAllocator>
38
  0000000000000092: 03 testq %rax, %rax
39
+ 0000000000000095: 02 jne 0x406230 <g(char const*)+0xa0>
40
+ 0000000000000097: 05 callq 0x4ed7c0 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()>
41
  000000000000009c: 04 movl 48(%r14), %ecx
42
  00000000000000a0: 04 movq %rax, 56(%r14)
43
  00000000000000a4: 02 testl %ecx, %ecx
44
+ 00000000000000a6: 02 je 0x406259 <g(char const*)+0xc9>
45
+ 00000000000000a8: 05 movq %r14, 72(%rsp)
46
+ 00000000000000ad: 05 movq %rax, 80(%rsp)
47
+ 00000000000000b2: 04 movl 56(%rsp), %edx
48
  00000000000000b6: 02 testl %edx, %edx
49
+ 00000000000000b8: 02 je 0x406259 <g(char const*)+0xc9>
50
+ 00000000000000ba: 05 leaq 8(%rsp), %rdi
51
+ 00000000000000bf: 05 leaq 72(%rsp), %rsi
52
+ 00000000000000c4: 05 callq 0x4cdca0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<int, bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, TestInt, TestString, TestVoid> >::doApply<BloombergLP::bdlb::Variant_CopyConstructVisitor&>(BloombergLP::bdlb::Variant_CopyConstructVisitor&, int) const>
53
+ 00000000000000c9: 04 movl 56(%rsp), %eax
54
+ 00000000000000cd: 03 cmpl $4, %eax
55
+ 00000000000000d0: 02 je 0x406281 <g(char const*)+0xf1>
56
+ 00000000000000d2: 03 cmpl $2, %eax
57
+ 00000000000000d5: 02 jne 0x406299 <g(char const*)+0x109>
58
+ 00000000000000d7: 06 cmpq $23, 40(%rsp)
59
+ 00000000000000dd: 02 je 0x406299 <g(char const*)+0x109>
60
+ 00000000000000df: 05 movq 8(%rsp), %rsi
61
+ 00000000000000e4: 05 movq 48(%rsp), %rdi
62
+ 00000000000000e9: 03 movq (%rdi), %rax
63
+ 00000000000000ec: 03 callq *24(%rax)
64
+ 00000000000000ef: 02 jmp 0x406299 <g(char const*)+0x109>
65
+ 00000000000000f1: 06 cmpq $23, 40(%rsp)
66
+ 00000000000000f7: 02 je 0x406299 <g(char const*)+0x109>
67
+ 00000000000000f9: 05 movq 8(%rsp), %rsi
68
+ 00000000000000fe: 05 movq 48(%rsp), %rdi
69
+ 0000000000000103: 03 movq (%rdi), %rax
70
+ 0000000000000106: 03 callq *24(%rax)
71
+ 0000000000000109: 03 movq %r14, %rax
72
+ 000000000000010c: 04 addq $88, %rsp
73
+ 0000000000000110: 01 popq %rbx
74
+ 0000000000000111: 02 popq %r14
75
+ 0000000000000113: 01 retq
76
+ 0000000000000114: 03 movq %rax, %rdi
77
+ 0000000000000117: 05 callq 0x4c9940 <__clang_call_terminate>
78
+ 000000000000011c: 03 movq %rax, %rdi
79
+ 000000000000011f: 05 callq 0x4c9940 <__clang_call_terminate>
80
+ 0000000000000124: 03 movq %rax, %rbx
81
+ 0000000000000127: 04 movl 56(%rsp), %eax
82
+ 000000000000012b: 03 cmpl $4, %eax
83
+ 000000000000012e: 02 je 0x4062df <g(char const*)+0x14f>
84
+ 0000000000000130: 03 cmpl $2, %eax
85
+ 0000000000000133: 02 jne 0x4062f7 <g(char const*)+0x167>
86
+ 0000000000000135: 06 cmpq $23, 40(%rsp)
87
+ 000000000000013b: 02 je 0x4062f7 <g(char const*)+0x167>
88
+ 000000000000013d: 05 movq 8(%rsp), %rsi
89
+ 0000000000000142: 05 movq 48(%rsp), %rdi
90
+ 0000000000000147: 03 movq (%rdi), %rax
91
+ 000000000000014a: 03 callq *24(%rax)
92
+ 000000000000014d: 02 jmp 0x4062f7 <g(char const*)+0x167>
93
+ 000000000000014f: 06 cmpq $23, 40(%rsp)
94
+ 0000000000000155: 02 je 0x4062f7 <g(char const*)+0x167>
95
+ 0000000000000157: 05 movq 8(%rsp), %rsi
96
+ 000000000000015c: 05 movq 48(%rsp), %rdi
97
+ 0000000000000161: 03 movq (%rdi), %rax
98
+ 0000000000000164: 03 callq *24(%rax)
99
+ 0000000000000167: 03 movq %rbx, %rdi
100
+ 000000000000016a: 05 callq 0x403f90 <_Unwind_Resume@plt>
101
+ 000000000000016f: 03 movq %rax, %rdi
102
+ 0000000000000172: 05 callq 0x4c9940 <__clang_call_terminate>
103
+ 0000000000000177: 03 movq %rax, %rdi
104
+ 000000000000017a: 05 callq 0x4c9940 <__clang_call_terminate>
105
+ 000000000000017f: 01 nop