aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy <51220084+jeremy-rifkin@users.noreply.github.com>2023-01-29 15:46:28 -0500
committerJeremy <51220084+jeremy-rifkin@users.noreply.github.com>2023-01-29 15:46:28 -0500
commit4506b39dfe30d7df69702758f9647c7f8b5c9fd4 (patch)
tree37d64ed60970bbb23672b65c5f93107d85694582
parent8e69ab6b9827cc35958162cfae06a16bb5a19eb8 (diff)
downloadcompiler-explorer-gh-6032.tar.gz
compiler-explorer-gh-6032.zip
Fix testsgh-6032
-rw-r--r--test/cfg-cases/cfg-clang.if-else.json20
-rw-r--r--test/cfg-cases/cfg-clang.loop.json40
-rw-r--r--test/cfg-cases/cfg-clang.single-block.json8
-rw-r--r--test/cfg-cases/cfg-clang.split.json48
-rw-r--r--test/cfg-cases/cfg-clang.symbol-filter.json20
-rw-r--r--test/cfg-cases/cfg-gcc.binary.json40
-rw-r--r--test/cfg-cases/cfg-gcc.if-else.json84
-rw-r--r--test/cfg-cases/cfg-gcc.loop.json92
-rw-r--r--test/cfg-cases/cfg-gcc.single-block.json8
-rw-r--r--test/cfg-cases/cfg-gcc.symbol-filter.json20
-rw-r--r--test/cfg-tests.js10
11 files changed, 113 insertions, 277 deletions
diff --git a/test/cfg-cases/cfg-clang.if-else.json b/test/cfg-cases/cfg-clang.if-else.json
index 0fa15d6df..2e00921e1 100644
--- a/test/cfg-cases/cfg-clang.if-else.json
+++ b/test/cfg-cases/cfg-clang.if-else.json
@@ -204,9 +204,7 @@
"nodes": [
{
"id": "__cxx_global_var_init:",
- "label": "__cxx_global_var_init:\n pushq %rax\n movl std::__ioinit, %edi\n callq std::ios_base::Init::Init()\n movl std::ios_base::Init::~Init(), %edi\n movl std::__ioinit, %esi\n movl $__dso_handle, %edx\n popq %rax\n jmp __cxa_atexit",
- "color": "#99ccff",
- "shape": "box"
+ "label": "__cxx_global_var_init:\n pushq %rax\n movl std::__ioinit, %edi\n callq std::ios_base::Init::Init()\n movl std::ios_base::Init::~Init(), %edi\n movl std::__ioinit, %esi\n movl $__dso_handle, %edx\n popq %rax\n jmp __cxa_atexit"
}
],
"edges": [
@@ -222,21 +220,15 @@
"nodes": [
{
"id": "foo(int, double, float):",
- "label": "foo(int, double, float):\n movl $583, %eax\n movsd .LCPI1_0(%rip), %xmm2\n ucomisd %xmm0, %xmm2\n jbe .LBB1_2",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo(int, double, float):\n movl $583, %eax\n movsd .LCPI1_0(%rip), %xmm2\n ucomisd %xmm0, %xmm2\n jbe .LBB1_2"
},
{
"id": "foo(int, double, float):@14",
- "label": "foo(int, double, float):@14\n leal (%rdi,%rdi,4), %ecx\n xorps %xmm2, %xmm2\n cvtss2sd %xmm1, %xmm2\n cvtsi2sdl %ecx, %xmm3\n mulsd %xmm0, %xmm3\n ucomisd %xmm3, %xmm2\n cvttss2si %xmm1, %eax\n cmoval %ecx, %eax",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo(int, double, float):@14\n leal (%rdi,%rdi,4), %ecx\n xorps %xmm2, %xmm2\n cvtss2sd %xmm1, %xmm2\n cvtsi2sdl %ecx, %xmm3\n mulsd %xmm0, %xmm3\n ucomisd %xmm3, %xmm2\n cvttss2si %xmm1, %eax\n cmoval %ecx, %eax"
},
{
"id": ".LBB1_2:",
- "label": ".LBB1_2:\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".LBB1_2:\n retq"
}
],
"edges": [
@@ -264,9 +256,7 @@
"nodes": [
{
"id": "_GLOBAL__sub_I_example.cpp:",
- "label": "_GLOBAL__sub_I_example.cpp:\n jmp __cxx_global_var_init",
- "color": "#99ccff",
- "shape": "box"
+ "label": "_GLOBAL__sub_I_example.cpp:\n jmp __cxx_global_var_init"
}
],
"edges": [
diff --git a/test/cfg-cases/cfg-clang.loop.json b/test/cfg-cases/cfg-clang.loop.json
index 56da73fc0..8352be55b 100644
--- a/test/cfg-cases/cfg-clang.loop.json
+++ b/test/cfg-cases/cfg-clang.loop.json
@@ -338,9 +338,7 @@
"nodes": [
{
"id": "__cxx_global_var_init:",
- "label": "__cxx_global_var_init:\n pushq %rax\n movl std::__ioinit, %edi\n callq std::ios_base::Init::Init()\n movl std::ios_base::Init::~Init(), %edi\n movl std::__ioinit, %esi\n movl $__dso_handle, %edx\n popq %rax\n jmp __cxa_atexit",
- "color": "#99ccff",
- "shape": "box"
+ "label": "__cxx_global_var_init:\n pushq %rax\n movl std::__ioinit, %edi\n callq std::ios_base::Init::Init()\n movl std::ios_base::Init::~Init(), %edi\n movl std::__ioinit, %esi\n movl $__dso_handle, %edx\n popq %rax\n jmp __cxa_atexit"
}
],
"edges": [
@@ -356,51 +354,35 @@
"nodes": [
{
"id": "foo(int, double, float):",
- "label": "foo(int, double, float):\n movl $583, %eax\n movsd .LCPI1_0(%rip), %xmm2\n ucomisd %xmm0, %xmm2\n jbe .LBB1_6",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo(int, double, float):\n movl $583, %eax\n movsd .LCPI1_0(%rip), %xmm2\n ucomisd %xmm0, %xmm2\n jbe .LBB1_6"
},
{
"id": "foo(int, double, float):@14",
- "label": "foo(int, double, float):@14\n leal (%rdi,%rdi,4), %eax\n xorps %xmm2, %xmm2\n cvtss2sd %xmm1, %xmm2\n cvtsi2sdl %eax, %xmm3\n mulsd %xmm0, %xmm3\n ucomisd %xmm3, %xmm2\n jbe .LBB1_5",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo(int, double, float):@14\n leal (%rdi,%rdi,4), %eax\n xorps %xmm2, %xmm2\n cvtss2sd %xmm1, %xmm2\n cvtsi2sdl %eax, %xmm3\n mulsd %xmm0, %xmm3\n ucomisd %xmm3, %xmm2\n jbe .LBB1_5"
},
{
"id": "foo(int, double, float):@21",
- "label": "foo(int, double, float):@21\n movl %eax, %ecx\n imull %edi, %ecx\n testl %ecx, %ecx\n jle .LBB1_6",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo(int, double, float):@21\n movl %eax, %ecx\n imull %edi, %ecx\n testl %ecx, %ecx\n jle .LBB1_6"
},
{
"id": "foo(int, double, float):@25",
- "label": "foo(int, double, float):@25\n xorl %ecx, %ecx",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo(int, double, float):@25\n xorl %ecx, %ecx"
},
{
"id": ".LBB1_4:",
- "label": ".LBB1_4:\n addl %eax, %eax\n xorps %xmm0, %xmm0\n cvtsi2ssl %eax, %xmm0\n movaps %xmm0, %xmm2\n subss %xmm1, %xmm2\n mulss %xmm0, %xmm2\n cvttss2si %xmm2, %eax\n incl %ecx\n movl %eax, %edx\n imull %edi, %edx\n cmpl %edx, %ecx\n jl .LBB1_4",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".LBB1_4:\n addl %eax, %eax\n xorps %xmm0, %xmm0\n cvtsi2ssl %eax, %xmm0\n movaps %xmm0, %xmm2\n subss %xmm1, %xmm2\n mulss %xmm0, %xmm2\n cvttss2si %xmm2, %eax\n incl %ecx\n movl %eax, %edx\n imull %edi, %edx\n cmpl %edx, %ecx\n jl .LBB1_4"
},
{
"id": ".LBB1_4:@39",
- "label": ".LBB1_4:@39\n jmp .LBB1_6",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".LBB1_4:@39\n jmp .LBB1_6"
},
{
"id": ".LBB1_5:",
- "label": ".LBB1_5:\n cvttss2si %xmm1, %eax",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".LBB1_5:\n cvttss2si %xmm1, %eax"
},
{
"id": ".LBB1_6:",
- "label": ".LBB1_6:\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".LBB1_6:\n retq"
}
],
"edges": [
@@ -476,9 +458,7 @@
"nodes": [
{
"id": "_GLOBAL__sub_I_example.cpp:",
- "label": "_GLOBAL__sub_I_example.cpp:\n jmp __cxx_global_var_init",
- "color": "#99ccff",
- "shape": "box"
+ "label": "_GLOBAL__sub_I_example.cpp:\n jmp __cxx_global_var_init"
}
],
"edges": [
diff --git a/test/cfg-cases/cfg-clang.single-block.json b/test/cfg-cases/cfg-clang.single-block.json
index 8c2337bb7..76b2ca768 100644
--- a/test/cfg-cases/cfg-clang.single-block.json
+++ b/test/cfg-cases/cfg-clang.single-block.json
@@ -100,9 +100,7 @@
"nodes": [
{
"id": "main:",
- "label": "main:\n xorl %eax, %eax\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:\n xorl %eax, %eax\n retq"
}
],
"edges": []
@@ -111,9 +109,7 @@
"nodes": [
{
"id": "_GLOBAL__sub_I_example.cpp:",
- "label": "_GLOBAL__sub_I_example.cpp:\n pushq %rax\n movl std::__ioinit, %edi\n callq std::ios_base::Init::Init()\n movl std::ios_base::Init::~Init(), %edi\n movl std::__ioinit, %esi\n movl $__dso_handle, %edx\n popq %rax\n jmp __cxa_atexit",
- "color": "#99ccff",
- "shape": "box"
+ "label": "_GLOBAL__sub_I_example.cpp:\n pushq %rax\n movl std::__ioinit, %edi\n callq std::ios_base::Init::Init()\n movl std::ios_base::Init::~Init(), %edi\n movl std::__ioinit, %esi\n movl $__dso_handle, %edx\n popq %rax\n jmp __cxa_atexit"
}
],
"edges": [
diff --git a/test/cfg-cases/cfg-clang.split.json b/test/cfg-cases/cfg-clang.split.json
index 0298e01dc..8286cf9c3 100644
--- a/test/cfg-cases/cfg-clang.split.json
+++ b/test/cfg-cases/cfg-clang.split.json
@@ -82,45 +82,31 @@
"nodes": [
{
"id": "remove_space(char const*, char*, unsigned long):",
- "label": "remove_space(char const*, char*, unsigned long):\n testq %rdx, %rdx\n je .LBB0_6",
- "color": "#99ccff",
- "shape": "box"
+ "label": "remove_space(char const*, char*, unsigned long):\n testq %rdx, %rdx\n je .LBB0_6"
},
{
"id": "remove_space(char const*, char*, unsigned long):@3",
- "label": "remove_space(char const*, char*, unsigned long):@3\n xorl %eax, %eax",
- "color": "#99ccff",
- "shape": "box"
+ "label": "remove_space(char const*, char*, unsigned long):@3\n xorl %eax, %eax"
},
- {
- "color": "#99ccff",
- "id": ".LBB0_2:",
- "label": ".LBB0_2:\n movzbl (%rdi,%rax), %ecx\n cmpb $97, %cl\n je .LBB0_5",
- "shape": "box"
+ { "id": ".LBB0_2:",
+ "label": ".LBB0_2:\n movzbl (%rdi,%rax), %ecx\n cmpb $97, %cl\n je .LBB0_5"
+
},
- {
- "color": "#99ccff",
- "id": ".LBB0_2:@8",
- "label": ".LBB0_2:@8\n cmpb $122, %cl\n je .LBB0_5",
- "shape": "box"
+ { "id": ".LBB0_2:@8",
+ "label": ".LBB0_2:@8\n cmpb $122, %cl\n je .LBB0_5"
+
},
- {
- "color": "#99ccff",
- "id": ".LBB0_2:@10",
- "label": ".LBB0_2:@10\n movb %cl, (%rsi)\n addq $1, %rsi",
- "shape": "box"
+ { "id": ".LBB0_2:@10",
+ "label": ".LBB0_2:@10\n movb %cl, (%rsi)\n addq $1, %rsi"
+
},
- {
- "color": "#99ccff",
- "id": ".LBB0_5:",
- "label": ".LBB0_5:\n addq $1, %rax\n cmpq %rax, %rdx\n jne .LBB0_2",
- "shape": "box"
+ { "id": ".LBB0_5:",
+ "label": ".LBB0_5:\n addq $1, %rax\n cmpq %rax, %rdx\n jne .LBB0_2"
+
},
- {
- "color": "#99ccff",
- "id": ".LBB0_6:",
- "label": ".LBB0_6:\n movq %rsi, %rax\n retq",
- "shape": "box"
+ { "id": ".LBB0_6:",
+ "label": ".LBB0_6:\n movq %rsi, %rax\n retq"
+
}
],
"edges": [
diff --git a/test/cfg-cases/cfg-clang.symbol-filter.json b/test/cfg-cases/cfg-clang.symbol-filter.json
index ab7f3acd7..50f405600 100644
--- a/test/cfg-cases/cfg-clang.symbol-filter.json
+++ b/test/cfg-cases/cfg-clang.symbol-filter.json
@@ -86,9 +86,7 @@
"nodes": [
{
"id": "foo(int, int):",
- "label": "foo(int, int):\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo(int, int):\n retq"
}
],
"edges": []
@@ -97,9 +95,7 @@
"nodes": [
{
"id": "foo3(int, int):",
- "label": "foo3(int, int):\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo3(int, int):\n retq"
}
],
"edges": []
@@ -108,9 +104,7 @@
"nodes": [
{
"id": "foo5(int, int):",
- "label": "foo5(int, int):\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo5(int, int):\n retq"
}
],
"edges": []
@@ -119,9 +113,7 @@
"nodes": [
{
"id": "foo6::<impl something for rust>::foo:",
- "label": "foo6::<impl something for rust>::foo:\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo6::<impl something for rust>::foo:\n retq"
}
],
"edges": []
@@ -130,9 +122,7 @@
"nodes": [
{
"id": "type metadata accessor for [Swift.Int]:",
- "label": "type metadata accessor for [Swift.Int]:\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "type metadata accessor for [Swift.Int]:\n retq"
}
],
"edges": []
diff --git a/test/cfg-cases/cfg-gcc.binary.json b/test/cfg-cases/cfg-gcc.binary.json
index 3f6f176f1..ba6ca5a22 100644
--- a/test/cfg-cases/cfg-gcc.binary.json
+++ b/test/cfg-cases/cfg-gcc.binary.json
@@ -144,35 +144,25 @@
}
],
"nodes": [
- {
- "color": "#99ccff",
- "id": "main:",
- "label": "main:\n test edi,edi\n js 4003ea <main+0x1a>",
- "shape": "box"
+ { "id": "main:",
+ "label": "main:\n test edi,edi\n js 4003ea <main+0x1a>"
+
},
- {
- "color": "#99ccff",
- "id": "main:@3",
- "label": "main:@3\n add edi,0x1\n xor eax,eax\n xor edx,edx\n nop DWORD PTR [rax+rax*1+0x0]\n add eax,edx\n add edx,0x1\n cmp edx,edi\n jne 4003e0 <main+0x10>",
- "shape": "box"
+ { "id": "main:@3",
+ "label": "main:@3\n add edi,0x1\n xor eax,eax\n xor edx,edx\n nop DWORD PTR [rax+rax*1+0x0]\n add eax,edx\n add edx,0x1\n cmp edx,edi\n jne 4003e0 <main+0x10>"
+
},
- {
- "color": "#99ccff",
- "id": "main:@11",
- "label": "main:@11\n ret ",
- "shape": "box"
+ { "id": "main:@11",
+ "label": "main:@11\n ret "
+
},
- {
- "color": "#99ccff",
- "id": " xor eax,eax",
- "label": " xor eax,eax:\n ret ",
- "shape": "box"
+ { "id": " xor eax,eax",
+ "label": " xor eax,eax:\n ret "
+
},
- {
- "color": "#99ccff",
- "id": " nop DWORD PTR [rax]",
- "label": " nop DWORD PTR [rax]:\n",
- "shape": "box"
+ { "id": " nop DWORD PTR [rax]",
+ "label": " nop DWORD PTR [rax]:\n"
+
}
]
}
diff --git a/test/cfg-cases/cfg-gcc.if-else.json b/test/cfg-cases/cfg-gcc.if-else.json
index 662bc3066..a83390b71 100644
--- a/test/cfg-cases/cfg-gcc.if-else.json
+++ b/test/cfg-cases/cfg-gcc.if-else.json
@@ -797,123 +797,83 @@
"nodes": [
{
"id": "main:",
- "label": "main:\n lea edx, [0+rdi*8]\n test edx, edx\n je .L8",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:\n lea edx, [0+rdi*8]\n test edx, edx\n je .L8"
},
{
"id": "main:@4",
- "label": "main:@4\n add edx, edi\n je .L13",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:@4\n add edx, edi\n je .L13"
},
{
"id": "main:@6",
- "label": "main:@6\n imul eax, edi, 223\n cmp eax, 1\n je .L14",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:@6\n imul eax, edi, 223\n cmp eax, 1\n je .L14"
},
{
"id": "main:@9",
- "label": "main:@9\n xor eax, eax",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:@9\n xor eax, eax"
},
{
"id": ".L1:",
- "label": ".L1:\n rep ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L1:\n rep ret"
},
{
"id": ".L14:",
- "label": ".L14:\n test edi, edi\n jle .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L14:\n test edi, edi\n jle .L1"
},
{
"id": ".L14:@15",
- "label": ".L14:@15\n lea edx, [rdi-1]\n mov esi, edx\n shr esi\n add esi, 1\n cmp edx, 11\n jbe .L10",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L14:@15\n lea edx, [rdi-1]\n mov esi, edx\n shr esi\n add esi, 1\n cmp edx, 11\n jbe .L10"
},
{
"id": ".L14:@21",
- "label": ".L14:@21\n mov DWORD PTR [rsp-12], edi\n pxor xmm3, xmm3\n movd xmm7, DWORD PTR [rsp-12]\n mov ecx, esi\n xor edx, edx\n movdqa xmm2, XMMWORD PTR .LC0[rip]\n shr ecx, 2\n pshufd xmm4, xmm7, 0\n movdqa xmm6, XMMWORD PTR .LC1[rip]\n movdqa xmm5, xmm4\n psrlq xmm5, 32",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L14:@21\n mov DWORD PTR [rsp-12], edi\n pxor xmm3, xmm3\n movd xmm7, DWORD PTR [rsp-12]\n mov ecx, esi\n xor edx, edx\n movdqa xmm2, XMMWORD PTR .LC0[rip]\n shr ecx, 2\n pshufd xmm4, xmm7, 0\n movdqa xmm6, XMMWORD PTR .LC1[rip]\n movdqa xmm5, xmm4\n psrlq xmm5, 32"
},
{
"id": ".L5:",
- "label": ".L5:\n movdqa xmm0, xmm2\n add edx, 1\n movdqa xmm1, xmm2\n cmp ecx, edx\n paddd xmm2, xmm6\n pmuludq xmm0, xmm4\n pshufd xmm0, xmm0, 8\n psrlq xmm1, 32\n pmuludq xmm1, xmm5\n pshufd xmm1, xmm1, 8\n punpckldq xmm0, xmm1\n paddd xmm3, xmm0\n ja .L5",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L5:\n movdqa xmm0, xmm2\n add edx, 1\n movdqa xmm1, xmm2\n cmp ecx, edx\n paddd xmm2, xmm6\n pmuludq xmm0, xmm4\n pshufd xmm0, xmm0, 8\n psrlq xmm1, 32\n pmuludq xmm1, xmm5\n pshufd xmm1, xmm1, 8\n punpckldq xmm0, xmm1\n paddd xmm3, xmm0\n ja .L5"
},
{
"id": ".L5:@46",
- "label": ".L5:@46\n movdqa xmm0, xmm3\n mov r8d, esi\n and r8d, -4\n psrldq xmm0, 8\n paddd xmm3, xmm0\n movdqa xmm0, xmm3\n psrldq xmm0, 4\n paddd xmm3, xmm0\n movd edx, xmm3\n add eax, edx\n lea edx, [r8+r8]\n cmp esi, r8d\n lea ecx, [rdx+1]\n je .L15",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L5:@46\n movdqa xmm0, xmm3\n mov r8d, esi\n and r8d, -4\n psrldq xmm0, 8\n paddd xmm3, xmm0\n movdqa xmm0, xmm3\n psrldq xmm0, 4\n paddd xmm3, xmm0\n movd edx, xmm3\n add eax, edx\n lea edx, [r8+r8]\n cmp esi, r8d\n lea ecx, [rdx+1]\n je .L15"
},
{
"id": ".L4:",
- "label": ".L4:\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+3]\n cmp edi, ecx\n jl .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L4:\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+3]\n cmp edi, ecx\n jl .L1"
},
{
"id": ".L4:@66",
- "label": ".L4:@66\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+5]\n cmp edi, ecx\n jl .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L4:@66\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+5]\n cmp edi, ecx\n jl .L1"
},
{
"id": ".L4:@71",
- "label": ".L4:@71\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+7]\n cmp edi, ecx\n jl .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L4:@71\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+7]\n cmp edi, ecx\n jl .L1"
},
{
"id": ".L4:@76",
- "label": ".L4:@76\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+9]\n cmp edi, ecx\n jl .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L4:@76\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+9]\n cmp edi, ecx\n jl .L1"
},
{
"id": ".L4:@81",
- "label": ".L4:@81\n imul ecx, edi\n add edx, 11\n add eax, ecx\n cmp edi, edx\n jl .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L4:@81\n imul ecx, edi\n add edx, 11\n add eax, ecx\n cmp edi, edx\n jl .L1"
},
{
"id": ".L4:@86",
- "label": ".L4:@86\n imul edi, edx\n add eax, edi\n ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L4:@86\n imul edi, edx\n add eax, edi\n ret"
},
{
"id": ".L13:",
- "label": ".L13:\n imul edx, edi\n imul eax, edx, 78\n ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L13:\n imul edx, edi\n imul eax, edx, 78\n ret"
},
{
"id": ".L8:",
- "label": ".L8:\n mov eax, 78\n ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L8:\n mov eax, 78\n ret"
},
{
"id": ".L15:",
- "label": ".L15:\n ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L15:\n ret"
},
{
"id": ".L10:",
- "label": ".L10:\n mov ecx, 1\n xor edx, edx\n jmp .L4",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L10:\n mov ecx, 1\n xor edx, edx\n jmp .L4"
}
],
"edges": [
@@ -1085,9 +1045,7 @@
"nodes": [
{
"id": "_GLOBAL__sub_I_main:",
- "label": "_GLOBAL__sub_I_main:\n sub rsp, 8\n mov edi, OFFSET FLAT:std::__ioinit\n call std::ios_base::Init::Init()\n mov edx, OFFSET FLAT:__dso_handle\n mov esi, OFFSET FLAT:std::__ioinit\n mov edi, OFFSET FLAT:std::ios_base::Init::~Init()\n add rsp, 8\n jmp __cxa_atexit",
- "color": "#99ccff",
- "shape": "box"
+ "label": "_GLOBAL__sub_I_main:\n sub rsp, 8\n mov edi, OFFSET FLAT:std::__ioinit\n call std::ios_base::Init::Init()\n mov edx, OFFSET FLAT:__dso_handle\n mov esi, OFFSET FLAT:std::__ioinit\n mov edi, OFFSET FLAT:std::ios_base::Init::~Init()\n add rsp, 8\n jmp __cxa_atexit"
}
],
"edges": [
diff --git a/test/cfg-cases/cfg-gcc.loop.json b/test/cfg-cases/cfg-gcc.loop.json
index ca3b1dc71..eac1c9f76 100644
--- a/test/cfg-cases/cfg-gcc.loop.json
+++ b/test/cfg-cases/cfg-gcc.loop.json
@@ -857,135 +857,91 @@
"nodes": [
{
"id": "main:",
- "label": "main:\n lea edx, [0+rdi*8]\n test edx, edx\n je .L10",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:\n lea edx, [0+rdi*8]\n test edx, edx\n je .L10"
},
{
"id": "main:@4",
- "label": "main:@4\n add edx, edi\n je .L14",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:@4\n add edx, edi\n je .L14"
},
{
"id": "main:@6",
- "label": "main:@6\n imul edx, edi, 223\n mov eax, 1\n cmp edx, eax\n je .L15",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:@6\n imul edx, edi, 223\n mov eax, 1\n cmp edx, eax\n je .L15"
},
{
"id": "main:@10",
- "label": "main:@10\n lea edx, [rdi+rax]\n cmp edi, edx\n jl .L16",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:@10\n lea edx, [rdi+rax]\n cmp edi, edx\n jl .L16"
},
{
"id": "main:@13",
- "label": "main:@13\n imul edi, edx\n imul eax, edi\n ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:@13\n imul edi, edx\n imul eax, edi\n ret"
},
{
"id": ".L14:",
- "label": ".L14:\n imul edx, edi\n imul eax, edx, 78\n ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L14:\n imul edx, edi\n imul eax, edx, 78\n ret"
},
{
"id": ".L15:",
- "label": ".L15:\n test edi, edi\n jle .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L15:\n test edi, edi\n jle .L1"
},
{
"id": ".L15:@23",
- "label": ".L15:@23\n lea edx, [rdi-1]\n mov esi, edx\n shr esi\n add esi, 1\n cmp edx, 11\n jbe .L11",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L15:@23\n lea edx, [rdi-1]\n mov esi, edx\n shr esi\n add esi, 1\n cmp edx, 11\n jbe .L11"
},
{
"id": ".L15:@29",
- "label": ".L15:@29\n mov DWORD PTR [rsp-12], edi\n pxor xmm3, xmm3\n movd xmm7, DWORD PTR [rsp-12]\n mov ecx, esi\n xor edx, edx\n movdqa xmm2, XMMWORD PTR .LC0[rip]\n shr ecx, 2\n pshufd xmm4, xmm7, 0\n movdqa xmm6, XMMWORD PTR .LC1[rip]\n movdqa xmm5, xmm4\n psrlq xmm5, 32",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L15:@29\n mov DWORD PTR [rsp-12], edi\n pxor xmm3, xmm3\n movd xmm7, DWORD PTR [rsp-12]\n mov ecx, esi\n xor edx, edx\n movdqa xmm2, XMMWORD PTR .LC0[rip]\n shr ecx, 2\n pshufd xmm4, xmm7, 0\n movdqa xmm6, XMMWORD PTR .LC1[rip]\n movdqa xmm5, xmm4\n psrlq xmm5, 32"
},
{
"id": ".L6:",
- "label": ".L6:\n movdqa xmm0, xmm2\n add edx, 1\n movdqa xmm1, xmm2\n cmp ecx, edx\n paddd xmm2, xmm6\n pmuludq xmm0, xmm4\n pshufd xmm0, xmm0, 8\n psrlq xmm1, 32\n pmuludq xmm1, xmm5\n pshufd xmm1, xmm1, 8\n punpckldq xmm0, xmm1\n paddd xmm3, xmm0\n ja .L6",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L6:\n movdqa xmm0, xmm2\n add edx, 1\n movdqa xmm1, xmm2\n cmp ecx, edx\n paddd xmm2, xmm6\n pmuludq xmm0, xmm4\n pshufd xmm0, xmm0, 8\n psrlq xmm1, 32\n pmuludq xmm1, xmm5\n pshufd xmm1, xmm1, 8\n punpckldq xmm0, xmm1\n paddd xmm3, xmm0\n ja .L6"
},
{
"id": ".L6:@54",
- "label": ".L6:@54\n movdqa xmm0, xmm3\n mov r8d, esi\n and r8d, -4\n psrldq xmm0, 8\n paddd xmm3, xmm0\n movdqa xmm0, xmm3\n psrldq xmm0, 4\n paddd xmm3, xmm0\n movd edx, xmm3\n add eax, edx\n lea edx, [r8+r8]\n cmp esi, r8d\n lea ecx, [rdx+1]\n je .L17",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L6:@54\n movdqa xmm0, xmm3\n mov r8d, esi\n and r8d, -4\n psrldq xmm0, 8\n paddd xmm3, xmm0\n movdqa xmm0, xmm3\n psrldq xmm0, 4\n paddd xmm3, xmm0\n movd edx, xmm3\n add eax, edx\n lea edx, [r8+r8]\n cmp esi, r8d\n lea ecx, [rdx+1]\n je .L17"
},
{
"id": ".L5:",
- "label": ".L5:\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+3]\n cmp edi, ecx\n jl .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L5:\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+3]\n cmp edi, ecx\n jl .L1"
},
{
"id": ".L5:@74",
- "label": ".L5:@74\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+5]\n cmp edi, ecx\n jl .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L5:@74\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+5]\n cmp edi, ecx\n jl .L1"
},
{
"id": ".L5:@79",
- "label": ".L5:@79\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+7]\n cmp edi, ecx\n jl .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L5:@79\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+7]\n cmp edi, ecx\n jl .L1"
},
{
"id": ".L5:@84",
- "label": ".L5:@84\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+9]\n cmp edi, ecx\n jl .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L5:@84\n imul ecx, edi\n add eax, ecx\n lea ecx, [rdx+9]\n cmp edi, ecx\n jl .L1"
},
{
"id": ".L5:@89",
- "label": ".L5:@89\n imul ecx, edi\n add edx, 11\n add eax, ecx\n cmp edi, edx\n jl .L1",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L5:@89\n imul ecx, edi\n add edx, 11\n add eax, ecx\n cmp edi, edx\n jl .L1"
},
{
"id": ".L5:@94",
- "label": ".L5:@94\n imul edx, edi\n add eax, edx\n ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L5:@94\n imul edx, edi\n add eax, edx\n ret"
},
{
"id": ".L10:",
- "label": ".L10:\n mov eax, 78",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L10:\n mov eax, 78"
},
{
"id": ".L1:",
- "label": ".L1:\n rep ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L1:\n rep ret"
},
{
"id": ".L16:",
- "label": ".L16:\n mov rax, QWORD PTR [rsi]\n movsx eax, BYTE PTR [rax]\n ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L16:\n mov rax, QWORD PTR [rsi]\n movsx eax, BYTE PTR [rax]\n ret"
},
{
"id": ".L17:",
- "label": ".L17:\n ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L17:\n ret"
},
{
"id": ".L11:",
- "label": ".L11:\n mov ecx, 1\n xor edx, edx\n jmp .L5",
- "color": "#99ccff",
- "shape": "box"
+ "label": ".L11:\n mov ecx, 1\n xor edx, edx\n jmp .L5"
}
],
"edges": [
@@ -1169,9 +1125,7 @@
"nodes": [
{
"id": "_GLOBAL__sub_I_main:",
- "label": "_GLOBAL__sub_I_main:\n sub rsp, 8\n mov edi, OFFSET FLAT:std::__ioinit\n call std::ios_base::Init::Init()\n mov edx, OFFSET FLAT:__dso_handle\n mov esi, OFFSET FLAT:std::__ioinit\n mov edi, OFFSET FLAT:std::ios_base::Init::~Init()\n add rsp, 8\n jmp __cxa_atexit",
- "color": "#99ccff",
- "shape": "box"
+ "label": "_GLOBAL__sub_I_main:\n sub rsp, 8\n mov edi, OFFSET FLAT:std::__ioinit\n call std::ios_base::Init::Init()\n mov edx, OFFSET FLAT:__dso_handle\n mov esi, OFFSET FLAT:std::__ioinit\n mov edi, OFFSET FLAT:std::ios_base::Init::~Init()\n add rsp, 8\n jmp __cxa_atexit"
}
],
"edges": [
diff --git a/test/cfg-cases/cfg-gcc.single-block.json b/test/cfg-cases/cfg-gcc.single-block.json
index de7c2c76b..84744bb84 100644
--- a/test/cfg-cases/cfg-gcc.single-block.json
+++ b/test/cfg-cases/cfg-gcc.single-block.json
@@ -88,9 +88,7 @@
"nodes": [
{
"id": "main:",
- "label": "main:\n xor eax, eax\n ret",
- "color": "#99ccff",
- "shape": "box"
+ "label": "main:\n xor eax, eax\n ret"
}
],
"edges": []
@@ -99,9 +97,7 @@
"nodes": [
{
"id": "_GLOBAL__sub_I_main:",
- "label": "_GLOBAL__sub_I_main:\n sub rsp, 8\n mov edi, OFFSET FLAT:std::__ioinit\n call std::ios_base::Init::Init()\n mov edx, OFFSET FLAT:__dso_handle\n mov esi, OFFSET FLAT:std::__ioinit\n mov edi, OFFSET FLAT:std::ios_base::Init::~Init()\n add rsp, 8\n jmp __cxa_atexit",
- "color": "#99ccff",
- "shape": "box"
+ "label": "_GLOBAL__sub_I_main:\n sub rsp, 8\n mov edi, OFFSET FLAT:std::__ioinit\n call std::ios_base::Init::Init()\n mov edx, OFFSET FLAT:__dso_handle\n mov esi, OFFSET FLAT:std::__ioinit\n mov edi, OFFSET FLAT:std::ios_base::Init::~Init()\n add rsp, 8\n jmp __cxa_atexit"
}
],
"edges": [
diff --git a/test/cfg-cases/cfg-gcc.symbol-filter.json b/test/cfg-cases/cfg-gcc.symbol-filter.json
index 108f6794d..5a19d9dd5 100644
--- a/test/cfg-cases/cfg-gcc.symbol-filter.json
+++ b/test/cfg-cases/cfg-gcc.symbol-filter.json
@@ -86,9 +86,7 @@
"nodes": [
{
"id": "foo(int, int):",
- "label": "foo(int, int):\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo(int, int):\n retq"
}
],
"edges": []
@@ -97,9 +95,7 @@
"nodes": [
{
"id": "foo3(int, int):",
- "label": "foo3(int, int):\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo3(int, int):\n retq"
}
],
"edges": []
@@ -108,9 +104,7 @@
"nodes": [
{
"id": "foo5(int, int):",
- "label": "foo5(int, int):\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo5(int, int):\n retq"
}
],
"edges": []
@@ -119,9 +113,7 @@
"nodes": [
{
"id": "foo6::<impl something for rust>::foo:",
- "label": "foo6::<impl something for rust>::foo:\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "foo6::<impl something for rust>::foo:\n retq"
}
],
"edges": []
@@ -130,9 +122,7 @@
"nodes": [
{
"id": "type metadata accessor for [Swift.Int]:",
- "label": "type metadata accessor for [Swift.Int]:\n retq",
- "color": "#99ccff",
- "shape": "box"
+ "label": "type metadata accessor for [Swift.Int]:\n retq"
}
],
"edges": []
diff --git a/test/cfg-tests.js b/test/cfg-tests.js
index 15366ebbc..fdeec6159 100644
--- a/test/cfg-tests.js
+++ b/test/cfg-tests.js
@@ -22,13 +22,19 @@
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
// POSSIBILITY OF SUCH DAMAGE.
-import * as cfg from '../lib/cfg';
+import * as cfg from '../lib/cfg/cfg';
import {fs, path, resolvePathFromTestRoot} from './utils';
async function DoCfgTest(cfgArg, filename) {
const contents = await fs.readJson(filename, 'utf8');
- const structure = cfg.generateStructure('', cfgArg, contents.asm);
+ const structure = cfg.generateStructure(
+ {
+ compilerType: '',
+ version: cfgArg,
+ },
+ contents.asm,
+ );
structure.should.deep.equal(contents.cfg);
}