[lld] r353751 - Convert CRLF. NFC.

Rui Ueyama via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 11 13:38:21 PST 2019


Author: ruiu
Date: Mon Feb 11 13:38:20 2019
New Revision: 353751

URL: http://llvm.org/viewvc/llvm-project?rev=353751&view=rev
Log:
Convert CRLF. NFC.

Modified:
    lld/trunk/test/COFF/crt-dyn-initializer-order.test
    lld/trunk/test/COFF/precomp-link.test
    lld/trunk/test/COFF/s_udt.s
    lld/trunk/test/ELF/Inputs/print-icf.s

Modified: lld/trunk/test/COFF/crt-dyn-initializer-order.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/COFF/crt-dyn-initializer-order.test?rev=353751&r1=353750&r2=353751&view=diff
==============================================================================
--- lld/trunk/test/COFF/crt-dyn-initializer-order.test (original)
+++ lld/trunk/test/COFF/crt-dyn-initializer-order.test Mon Feb 11 13:38:20 2019
@@ -1,100 +1,100 @@
-# // a.cpp
-# #include <iostream>
-# #include <vector>
-# 
-# template <int Magic> struct TemplatedObject {
-#   static std::vector<TemplatedObject<Magic> *> Instances;
-#   TemplatedObject() { Instances.push_back(this); }
-# };
-# 
-# using Object = TemplatedObject<0>;
-# template <> std::vector<Object *> Object::Instances{};
-# Object idle{};
-# 
-# int main() {
-#   if (Object::Instances.size() == 0)
-#     std::cout << "It's broken" << std::endl;
-#   else
-#     std::cout << "It works!" << std::endl;
-#   return 0;
-# }
-# // using `clang-cl /c a.cpp | lld-link a.obj` works
-# // using `cl /c a.cpp | lld-link a.obj` fails without lld/COFF/Writer.cpp/Writer::sortSectionChunks()
-
-# RUN: yaml2obj %s > %t.obj
-# RUN: yaml2obj %S/Inputs/crt-dyn-initializer-order_1.yaml > %t1.obj
-# RUN: yaml2obj %S/Inputs/crt-dyn-initializer-order_2.yaml > %t2.obj
-
-# CHECK: Name: .CRT
-# CHECK: Characteristics [
-# CHECK-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
-# CHECK-NEXT: IMAGE_SCN_MEM_READ
-# CHECK-NEXT: ]
-# CHECK-NEXT: SectionData (
-
-# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj %t1.obj %t2.obj 
-# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE1
-# CASE1-NEXT: 01020304 55701011 1205
-
-# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj %t2.obj %t1.obj 
-# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE2
-# CASE2-NEXT: 01020304 10111255 7005
-
-# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t1.obj %t2.obj %t.obj 
-# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE3
-# CASE3-NEXT: 01557010 11120203 0405
-
-# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t1.obj %t.obj %t2.obj 
-# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE4
-# CASE4-NEXT: 01557002 03041011 1205
-
-# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t2.obj %t1.obj %t.obj 
-# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE5
-# CASE5-NEXT: 01101112 55700203 0405
-
-# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t2.obj %t.obj %t1.obj
-# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE6
-# CASE6-NEXT: 01101112 02030455 7005
-
-# CHECK-NEXT: )
-
---- !COFF
-header:
-  Machine:         IMAGE_FILE_MACHINE_AMD64
-  Characteristics: [  ]
-sections:
-  - Name:            '.CRT$XCA'
-    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
-    Alignment:       1
-    SectionData:     01
-  - Name:            '.CRT$XCU'
-    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
-    Alignment:       1
-    SectionData:     02
-  - Name:            '.CRT$XCU'
-    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_LNK_COMDAT ]
-    Alignment:       1
-    SectionData:     03
-  - Name:            '.CRT$XCU'
-    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
-    Alignment:       1
-    SectionData:     04
-  - Name:            '.CRT$XCZ'
-    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
-    Alignment:       1
-    SectionData:     05
-symbols:
-  - Name:            '.CRT$XCU'
-    Value:           0
-    SectionNumber:   3
-    SimpleType:      IMAGE_SYM_TYPE_NULL
-    ComplexType:     IMAGE_SYM_DTYPE_NULL
-    StorageClass:    IMAGE_SYM_CLASS_STATIC
-    SectionDefinition:
-      Length:          1
-      NumberOfRelocations: 0
-      NumberOfLinenumbers: 0
-      CheckSum:        1
-      Number:          2
-      Selection:       IMAGE_COMDAT_SELECT_ASSOCIATIVE
-...
+# // a.cpp
+# #include <iostream>
+# #include <vector>
+#
+# template <int Magic> struct TemplatedObject {
+#   static std::vector<TemplatedObject<Magic> *> Instances;
+#   TemplatedObject() { Instances.push_back(this); }
+# };
+#
+# using Object = TemplatedObject<0>;
+# template <> std::vector<Object *> Object::Instances{};
+# Object idle{};
+#
+# int main() {
+#   if (Object::Instances.size() == 0)
+#     std::cout << "It's broken" << std::endl;
+#   else
+#     std::cout << "It works!" << std::endl;
+#   return 0;
+# }
+# // using `clang-cl /c a.cpp | lld-link a.obj` works
+# // using `cl /c a.cpp | lld-link a.obj` fails without lld/COFF/Writer.cpp/Writer::sortSectionChunks()
+
+# RUN: yaml2obj %s > %t.obj
+# RUN: yaml2obj %S/Inputs/crt-dyn-initializer-order_1.yaml > %t1.obj
+# RUN: yaml2obj %S/Inputs/crt-dyn-initializer-order_2.yaml > %t2.obj
+
+# CHECK: Name: .CRT
+# CHECK: Characteristics [
+# CHECK-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
+# CHECK-NEXT: IMAGE_SCN_MEM_READ
+# CHECK-NEXT: ]
+# CHECK-NEXT: SectionData (
+
+# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj %t1.obj %t2.obj
+# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE1
+# CASE1-NEXT: 01020304 55701011 1205
+
+# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj %t2.obj %t1.obj
+# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE2
+# CASE2-NEXT: 01020304 10111255 7005
+
+# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t1.obj %t2.obj %t.obj
+# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE3
+# CASE3-NEXT: 01557010 11120203 0405
+
+# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t1.obj %t.obj %t2.obj
+# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE4
+# CASE4-NEXT: 01557002 03041011 1205
+
+# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t2.obj %t1.obj %t.obj
+# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE5
+# CASE5-NEXT: 01101112 55700203 0405
+
+# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t2.obj %t.obj %t1.obj
+# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck %s --check-prefixes CHECK,CASE6
+# CASE6-NEXT: 01101112 02030455 7005
+
+# CHECK-NEXT: )
+
+--- !COFF
+header:
+  Machine:         IMAGE_FILE_MACHINE_AMD64
+  Characteristics: [  ]
+sections:
+  - Name:            '.CRT$XCA'
+    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
+    Alignment:       1
+    SectionData:     01
+  - Name:            '.CRT$XCU'
+    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
+    Alignment:       1
+    SectionData:     02
+  - Name:            '.CRT$XCU'
+    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_LNK_COMDAT ]
+    Alignment:       1
+    SectionData:     03
+  - Name:            '.CRT$XCU'
+    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
+    Alignment:       1
+    SectionData:     04
+  - Name:            '.CRT$XCZ'
+    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
+    Alignment:       1
+    SectionData:     05
+symbols:
+  - Name:            '.CRT$XCU'
+    Value:           0
+    SectionNumber:   3
+    SimpleType:      IMAGE_SYM_TYPE_NULL
+    ComplexType:     IMAGE_SYM_DTYPE_NULL
+    StorageClass:    IMAGE_SYM_CLASS_STATIC
+    SectionDefinition:
+      Length:          1
+      NumberOfRelocations: 0
+      NumberOfLinenumbers: 0
+      CheckSum:        1
+      Number:          2
+      Selection:       IMAGE_COMDAT_SELECT_ASSOCIATIVE
+...

Modified: lld/trunk/test/COFF/precomp-link.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/COFF/precomp-link.test?rev=353751&r1=353750&r2=353751&view=diff
==============================================================================
--- lld/trunk/test/COFF/precomp-link.test (original)
+++ lld/trunk/test/COFF/precomp-link.test Mon Feb 11 13:38:20 2019
@@ -1,42 +1,42 @@
-RUN: lld-link %S/Inputs/precomp-a.obj %S/Inputs/precomp-b.obj %S/Inputs/precomp.obj /nodefaultlib /entry:main /debug /pdb:%t.pdb /out:%t.exe /opt:ref /opt:icf
-RUN: llvm-pdbutil dump -types %t.pdb | FileCheck %s
-
-RUN: lld-link %S/Inputs/precomp.obj %S/Inputs/precomp-a.obj %S/Inputs/precomp-b.obj /nodefaultlib /entry:main /debug /pdb:%t.pdb /out:%t.exe /opt:ref /opt:icf
-RUN: llvm-pdbutil dump -types %t.pdb | FileCheck %s
-
-RUN: lld-link %S/Inputs/precomp-a.obj %S/Inputs/precomp-invalid.obj %S/Inputs/precomp.obj /nodefaultlib /entry:main /debug /pdb:%t.pdb /out:%t.exe /opt:ref /opt:icf 2>&1 | FileCheck %s -check-prefix FAILURE
-
-RUN: not lld-link %S/Inputs/precomp-a.obj %S/Inputs/precomp-b.obj /nodefaultlib /entry:main /debug /pdb:%t.pdb /out:%t.exe /opt:ref /opt:icf 2>&1 | FileCheck %s -check-prefix FAILURE-MISSING-PRECOMPOBJ
-
-FAILURE: warning: Cannot use debug info for 'precomp-invalid.obj' [LNK4099]
-FAILURE-NEXT: failed to load reference '{{.*}}precomp.obj': The signature does not match; the file(s) might be out of date.
-
-FAILURE-MISSING-PRECOMPOBJ: warning: Cannot use debug info for 'precomp-a.obj' [LNK4099]
-FAILURE-MISSING-PRECOMPOBJ-NEXT: failed to load reference '{{.*}}precomp.obj': The path to this file must be provided on the command-line
-
-CHECK: Types (TPI Stream)
-CHECK-NOT: LF_PRECOMP
-CHECK-NOT: LF_ENDPRECOMP
-
-// precomp.h
-#pragma once
-int Function(char A);
-
-// precomp.cpp
-#include "precomp.h"
-
-// a.cpp
-#include "precomp.h"
-int main(void) {
-  Function('a');
-  return 0;
-}
-
-// b.cpp
-#include "precomp.h"
-int Function(char a) {
-  return (int)a;
-}
-
-// cl.exe precomp.cpp /Z7 /Ycprecomp.h /c
-// cl.exe a.cpp b.cpp /Z7 /Yuprecomp.h /c
+RUN: lld-link %S/Inputs/precomp-a.obj %S/Inputs/precomp-b.obj %S/Inputs/precomp.obj /nodefaultlib /entry:main /debug /pdb:%t.pdb /out:%t.exe /opt:ref /opt:icf
+RUN: llvm-pdbutil dump -types %t.pdb | FileCheck %s
+
+RUN: lld-link %S/Inputs/precomp.obj %S/Inputs/precomp-a.obj %S/Inputs/precomp-b.obj /nodefaultlib /entry:main /debug /pdb:%t.pdb /out:%t.exe /opt:ref /opt:icf
+RUN: llvm-pdbutil dump -types %t.pdb | FileCheck %s
+
+RUN: lld-link %S/Inputs/precomp-a.obj %S/Inputs/precomp-invalid.obj %S/Inputs/precomp.obj /nodefaultlib /entry:main /debug /pdb:%t.pdb /out:%t.exe /opt:ref /opt:icf 2>&1 | FileCheck %s -check-prefix FAILURE
+
+RUN: not lld-link %S/Inputs/precomp-a.obj %S/Inputs/precomp-b.obj /nodefaultlib /entry:main /debug /pdb:%t.pdb /out:%t.exe /opt:ref /opt:icf 2>&1 | FileCheck %s -check-prefix FAILURE-MISSING-PRECOMPOBJ
+
+FAILURE: warning: Cannot use debug info for 'precomp-invalid.obj' [LNK4099]
+FAILURE-NEXT: failed to load reference '{{.*}}precomp.obj': The signature does not match; the file(s) might be out of date.
+
+FAILURE-MISSING-PRECOMPOBJ: warning: Cannot use debug info for 'precomp-a.obj' [LNK4099]
+FAILURE-MISSING-PRECOMPOBJ-NEXT: failed to load reference '{{.*}}precomp.obj': The path to this file must be provided on the command-line
+
+CHECK: Types (TPI Stream)
+CHECK-NOT: LF_PRECOMP
+CHECK-NOT: LF_ENDPRECOMP
+
+// precomp.h
+#pragma once
+int Function(char A);
+
+// precomp.cpp
+#include "precomp.h"
+
+// a.cpp
+#include "precomp.h"
+int main(void) {
+  Function('a');
+  return 0;
+}
+
+// b.cpp
+#include "precomp.h"
+int Function(char a) {
+  return (int)a;
+}
+
+// cl.exe precomp.cpp /Z7 /Ycprecomp.h /c
+// cl.exe a.cpp b.cpp /Z7 /Yuprecomp.h /c

Modified: lld/trunk/test/COFF/s_udt.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/COFF/s_udt.s?rev=353751&r1=353750&r2=353751&view=diff
==============================================================================
--- lld/trunk/test/COFF/s_udt.s (original)
+++ lld/trunk/test/COFF/s_udt.s Mon Feb 11 13:38:20 2019
@@ -27,450 +27,450 @@
 # CHECK-NEXT: ============================================================
 # CHECK:      {{.*}} | S_GPROC32 [size = 44] `main`
 # CHECK-NEXT:          parent = 0, end = 252, addr = 0001:0000, code size = 52
-# CHECK-NEXT:          type = `0x1002 (int (int, char**))`, debug start = 0, debug end = 0, flags = none
+# CHECK-NEXT:          type = `0x1002 (int (int, char**))`, debug start = 0, debug end = 0, flags = none
 # CHECK-NOT:  {{.*}} | S_END
 # CHECK:      {{.*}} | S_UDT [size = 28] `main::LocalTypedef`
 # CHECK-NEXT:          original type = 0x1004
-# CHECK:      {{.*}} | S_END [size = 4]
-
-# source code to re-generate:
-# clang-cl /Z7 /GS- /GR- /c foo.cpp
-#
-# struct Struct {
-#   int x;
-# };
-# 
-# using IntTypedef = int;
-# using StructTypedef = Struct;
-# Struct S;
-# StructTypedef SS;
-# IntTypedef I;
-# 
-# int main(int argc, char **argv) {
-#   using LocalTypedef = Struct*;
-#   LocalTypedef SPtr;
-#   return I + S.x + SS.x + SPtr->x;
+# CHECK:      {{.*}} | S_END [size = 4]
+
+# source code to re-generate:
+# clang-cl /Z7 /GS- /GR- /c foo.cpp
+#
+# struct Struct {
+#   int x;
+# };
+#
+# using IntTypedef = int;
+# using StructTypedef = Struct;
+# Struct S;
+# StructTypedef SS;
+# IntTypedef I;
+#
+# int main(int argc, char **argv) {
+#   using LocalTypedef = Struct*;
+#   LocalTypedef SPtr;
+#   return I + S.x + SS.x + SPtr->x;
 # }
 
-	.text
-	.def	 @feat.00;
-	.scl	3;
-	.type	0;
-	.endef
-	.globl	@feat.00
-.set @feat.00, 0
-	.intel_syntax noprefix
-	.def	 main;
-	.scl	2;
-	.type	32;
-	.endef
-	.globl	main                    # -- Begin function main
-	.p2align	4, 0x90
-main:                                   # @main
-.Lfunc_begin0:
-	.cv_func_id 0
-	.cv_file	1 "D:\\src\\llvmbuild\\cl\\Debug\\x64\\foo.cpp" "2B62298EE3EEF94E1D81FDFE18BD46A6" 1
-	.cv_loc	0 1 12 0                # foo.cpp:12:0
-.seh_proc main
-# %bb.0:                                # %entry
-	sub	rsp, 32
-	.seh_stackalloc 32
-	.seh_endprologue
-	mov	dword ptr [rsp + 28], 0
-	mov	qword ptr [rsp + 16], rdx
-	mov	dword ptr [rsp + 12], ecx
-.Ltmp0:
-	.cv_loc	0 1 15 0                # foo.cpp:15:0
-	mov	ecx, dword ptr [rip + "?I@@3HA"]
-	add	ecx, dword ptr [rip + "?S@@3UStruct@@A"]
-	add	ecx, dword ptr [rip + "?SS@@3UStruct@@A"]
-	mov	rdx, qword ptr [rsp]
-	add	ecx, dword ptr [rdx]
-	mov	eax, ecx
-	add	rsp, 32
-	ret
-.Ltmp1:
-.Lfunc_end0:
-	.seh_handlerdata
-	.text
-	.seh_endproc
-                                        # -- End function
-	.bss
-	.globl	"?S@@3UStruct@@A"       # @"?S@@3UStruct@@A"
-	.p2align	2
-"?S@@3UStruct@@A":
-	.zero	4
-
-	.globl	"?SS@@3UStruct@@A"      # @"?SS@@3UStruct@@A"
-	.p2align	2
-"?SS@@3UStruct@@A":
-	.zero	4
-
-	.globl	"?I@@3HA"               # @"?I@@3HA"
-	.p2align	2
-"?I@@3HA":
-	.long	0                       # 0x0
-
-	.section	.drectve,"yn"
-	.ascii	" /DEFAULTLIB:libcmt.lib"
-	.ascii	" /DEFAULTLIB:oldnames.lib"
-	.section	.debug$S,"dr"
-	.p2align	2
-	.long	4                       # Debug section magic
-	.long	241
-	.long	.Ltmp3-.Ltmp2           # Subsection size
-.Ltmp2:
-	.short	.Ltmp5-.Ltmp4           # Record length
-.Ltmp4:
-	.short	4412                    # Record kind: S_COMPILE3
-	.long	1                       # Flags and language
-	.short	208                     # CPUType
-	.short	8                       # Frontend version
-	.short	0
-	.short	0
-	.short	0
-	.short	8000                    # Backend version
-	.short	0
-	.short	0
-	.short	0
-	.asciz	"clang version 8.0.0 "  # Null-terminated compiler version string
-.Ltmp5:
-.Ltmp3:
-	.p2align	2
-	.long	241                     # Symbol subsection for main
-	.long	.Ltmp7-.Ltmp6           # Subsection size
-.Ltmp6:
-	.short	.Ltmp9-.Ltmp8           # Record length
-.Ltmp8:
-	.short	4423                    # Record kind: S_GPROC32_ID
-	.long	0                       # PtrParent
-	.long	0                       # PtrEnd
-	.long	0                       # PtrNext
-	.long	.Lfunc_end0-main        # Code size
-	.long	0                       # Offset after prologue
-	.long	0                       # Offset before epilogue
-	.long	4099                    # Function type index
-	.secrel32	main            # Function section relative address
-	.secidx	main                    # Function section index
-	.byte	0                       # Flags
-	.asciz	"main"                  # Function name
-.Ltmp9:
-	.short	.Ltmp11-.Ltmp10         # Record length
-.Ltmp10:
-	.short	4114                    # Record kind: S_FRAMEPROC
-	.long	32                      # FrameSize
-	.long	0                       # Padding
-	.long	0                       # Offset of padding
-	.long	0                       # Bytes of callee saved registers
-	.long	0                       # Exception handler offset
-	.short	0                       # Exception handler section
-	.long	81920                   # Flags (defines frame register)
-.Ltmp11:
-	.short	.Ltmp13-.Ltmp12         # Record length
-.Ltmp12:
-	.short	4414                    # Record kind: S_LOCAL
-	.long	116                     # TypeIndex
-	.short	1                       # Flags
-	.asciz	"argc"
-.Ltmp13:
-	.cv_def_range	 .Ltmp0 .Ltmp1, "B\021\f\000\000\000"
-	.short	.Ltmp15-.Ltmp14         # Record length
-.Ltmp14:
-	.short	4414                    # Record kind: S_LOCAL
-	.long	4096                    # TypeIndex
-	.short	1                       # Flags
-	.asciz	"argv"
-.Ltmp15:
-	.cv_def_range	 .Ltmp0 .Ltmp1, "B\021\020\000\000\000"
-	.short	.Ltmp17-.Ltmp16         # Record length
-.Ltmp16:
-	.short	4414                    # Record kind: S_LOCAL
-	.long	4101                    # TypeIndex
-	.short	0                       # Flags
-	.asciz	"SPtr"
-.Ltmp17:
-	.cv_def_range	 .Ltmp0 .Ltmp1, "B\021\000\000\000\000"
-	.short	.Ltmp19-.Ltmp18         # Record length
-.Ltmp18:
-	.short	4360                    # Record kind: S_UDT
-	.long	4101                    # Type
-	.asciz	"main::LocalTypedef"
-.Ltmp19:
-	.short	2                       # Record length
-	.short	4431                    # Record kind: S_PROC_ID_END
-.Ltmp7:
-	.p2align	2
-	.cv_linetable	0, main, .Lfunc_end0
-	.long	241                     # Symbol subsection for globals
-	.long	.Ltmp21-.Ltmp20         # Subsection size
-.Ltmp20:
-	.short	.Ltmp23-.Ltmp22         # Record length
-.Ltmp22:
-	.short	4365                    # Record kind: S_GDATA32
-	.long	4103                    # Type
-	.secrel32	"?S@@3UStruct@@A" # DataOffset
-	.secidx	"?S@@3UStruct@@A"       # Segment
-	.asciz	"S"                     # Name
-.Ltmp23:
-	.short	.Ltmp25-.Ltmp24         # Record length
-.Ltmp24:
-	.short	4365                    # Record kind: S_GDATA32
-	.long	4100                    # Type
-	.secrel32	"?SS@@3UStruct@@A" # DataOffset
-	.secidx	"?SS@@3UStruct@@A"      # Segment
-	.asciz	"SS"                    # Name
-.Ltmp25:
-	.short	.Ltmp27-.Ltmp26         # Record length
-.Ltmp26:
-	.short	4365                    # Record kind: S_GDATA32
-	.long	116                     # Type
-	.secrel32	"?I@@3HA"       # DataOffset
-	.secidx	"?I@@3HA"               # Segment
-	.asciz	"I"                     # Name
-.Ltmp27:
-.Ltmp21:
-	.p2align	2
-	.long	241
-	.long	.Ltmp29-.Ltmp28         # Subsection size
-.Ltmp28:
-	.short	.Ltmp31-.Ltmp30         # Record length
-.Ltmp30:
-	.short	4360                    # Record kind: S_UDT
-	.long	4103                    # Type
-	.asciz	"Struct"
-.Ltmp31:
-	.short	.Ltmp33-.Ltmp32         # Record length
-.Ltmp32:
-	.short	4360                    # Record kind: S_UDT
-	.long	4100                    # Type
-	.asciz	"StructTypedef"
-.Ltmp33:
-	.short	.Ltmp35-.Ltmp34         # Record length
-.Ltmp34:
-	.short	4360                    # Record kind: S_UDT
-	.long	116                     # Type
-	.asciz	"IntTypedef"
-.Ltmp35:
-.Ltmp29:
-	.p2align	2
-	.cv_filechecksums               # File index to string table offset subsection
-	.cv_stringtable                 # String table
-	.long	241
-	.long	.Ltmp37-.Ltmp36         # Subsection size
-.Ltmp36:
-	.short	6                       # Record length
-	.short	4428                    # Record kind: S_BUILDINFO
-	.long	4108                    # LF_BUILDINFO index
-.Ltmp37:
-	.p2align	2
-	.section	.debug$T,"dr"
-	.p2align	2
-	.long	4                       # Debug section magic
-	# Pointer (0x1000) {
-	#   TypeLeafKind: LF_POINTER (0x1002)
-	#   PointeeType: char* (0x670)
-	#   PtrType: Near64 (0xC)
-	#   PtrMode: Pointer (0x0)
-	#   IsFlat: 0
-	#   IsConst: 0
-	#   IsVolatile: 0
-	#   IsUnaligned: 0
-	#   IsRestrict: 0
-	#   IsThisPtr&: 0
-	#   IsThisPtr&&: 0
-	#   SizeOf: 8
-	# }
-	.byte	0x0a, 0x00, 0x02, 0x10
-	.byte	0x70, 0x06, 0x00, 0x00
-	.byte	0x0c, 0x00, 0x01, 0x00
-	# ArgList (0x1001) {
-	#   TypeLeafKind: LF_ARGLIST (0x1201)
-	#   NumArgs: 2
-	#   Arguments [
-	#     ArgType: int (0x74)
-	#     ArgType: char** (0x1000)
-	#   ]
-	# }
-	.byte	0x0e, 0x00, 0x01, 0x12
-	.byte	0x02, 0x00, 0x00, 0x00
-	.byte	0x74, 0x00, 0x00, 0x00
-	.byte	0x00, 0x10, 0x00, 0x00
-	# Procedure (0x1002) {
-	#   TypeLeafKind: LF_PROCEDURE (0x1008)
-	#   ReturnType: int (0x74)
-	#   CallingConvention: NearC (0x0)
-	#   FunctionOptions [ (0x0)
-	#   ]
-	#   NumParameters: 2
-	#   ArgListType: (int, char**) (0x1001)
-	# }
-	.byte	0x0e, 0x00, 0x08, 0x10
-	.byte	0x74, 0x00, 0x00, 0x00
-	.byte	0x00, 0x00, 0x02, 0x00
-	.byte	0x01, 0x10, 0x00, 0x00
-	# FuncId (0x1003) {
-	#   TypeLeafKind: LF_FUNC_ID (0x1601)
-	#   ParentScope: 0x0
-	#   FunctionType: int (int, char**) (0x1002)
-	#   Name: main
-	# }
-	.byte	0x12, 0x00, 0x01, 0x16
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x02, 0x10, 0x00, 0x00
-	.byte	0x6d, 0x61, 0x69, 0x6e
-	.byte	0x00, 0xf3, 0xf2, 0xf1
-	# Struct (0x1004) {
-	#   TypeLeafKind: LF_STRUCTURE (0x1505)
-	#   MemberCount: 0
-	#   Properties [ (0x280)
-	#     ForwardReference (0x80)
-	#     HasUniqueName (0x200)
-	#   ]
-	#   FieldList: 0x0
-	#   DerivedFrom: 0x0
-	#   VShape: 0x0
-	#   SizeOf: 0
-	#   Name: Struct
-	#   LinkageName: .?AUStruct@@
-	# }
-	.byte	0x2a, 0x00, 0x05, 0x15
-	.byte	0x00, 0x00, 0x80, 0x02
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x00, 0x00, 0x53, 0x74
-	.byte	0x72, 0x75, 0x63, 0x74
-	.byte	0x00, 0x2e, 0x3f, 0x41
-	.byte	0x55, 0x53, 0x74, 0x72
-	.byte	0x75, 0x63, 0x74, 0x40
-	.byte	0x40, 0x00, 0xf2, 0xf1
-	# Pointer (0x1005) {
-	#   TypeLeafKind: LF_POINTER (0x1002)
-	#   PointeeType: Struct (0x1004)
-	#   PtrType: Near64 (0xC)
-	#   PtrMode: Pointer (0x0)
-	#   IsFlat: 0
-	#   IsConst: 0
-	#   IsVolatile: 0
-	#   IsUnaligned: 0
-	#   IsRestrict: 0
-	#   IsThisPtr&: 0
-	#   IsThisPtr&&: 0
-	#   SizeOf: 8
-	# }
-	.byte	0x0a, 0x00, 0x02, 0x10
-	.byte	0x04, 0x10, 0x00, 0x00
-	.byte	0x0c, 0x00, 0x01, 0x00
-	# FieldList (0x1006) {
-	#   TypeLeafKind: LF_FIELDLIST (0x1203)
-	#   DataMember {
-	#     TypeLeafKind: LF_MEMBER (0x150D)
-	#     AccessSpecifier: Public (0x3)
-	#     Type: int (0x74)
-	#     FieldOffset: 0x0
-	#     Name: x
-	#   }
-	# }
-	.byte	0x0e, 0x00, 0x03, 0x12
-	.byte	0x0d, 0x15, 0x03, 0x00
-	.byte	0x74, 0x00, 0x00, 0x00
-	.byte	0x00, 0x00, 0x78, 0x00
-	# Struct (0x1007) {
-	#   TypeLeafKind: LF_STRUCTURE (0x1505)
-	#   MemberCount: 1
-	#   Properties [ (0x200)
-	#     HasUniqueName (0x200)
-	#   ]
-	#   FieldList: <field list> (0x1006)
-	#   DerivedFrom: 0x0
-	#   VShape: 0x0
-	#   SizeOf: 4
-	#   Name: Struct
-	#   LinkageName: .?AUStruct@@
-	# }
-	.byte	0x2a, 0x00, 0x05, 0x15
-	.byte	0x01, 0x00, 0x00, 0x02
-	.byte	0x06, 0x10, 0x00, 0x00
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x04, 0x00, 0x53, 0x74
-	.byte	0x72, 0x75, 0x63, 0x74
-	.byte	0x00, 0x2e, 0x3f, 0x41
-	.byte	0x55, 0x53, 0x74, 0x72
-	.byte	0x75, 0x63, 0x74, 0x40
-	.byte	0x40, 0x00, 0xf2, 0xf1
-	# StringId (0x1008) {
-	#   TypeLeafKind: LF_STRING_ID (0x1605)
-	#   Id: 0x0
-	#   StringData: D:\src\llvmbuild\cl\Debug\x64\foo.cpp
-	# }
-	.byte	0x2e, 0x00, 0x05, 0x16
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x44, 0x3a, 0x5c, 0x73
-	.byte	0x72, 0x63, 0x5c, 0x6c
-	.byte	0x6c, 0x76, 0x6d, 0x62
-	.byte	0x75, 0x69, 0x6c, 0x64
-	.byte	0x5c, 0x63, 0x6c, 0x5c
-	.byte	0x44, 0x65, 0x62, 0x75
-	.byte	0x67, 0x5c, 0x78, 0x36
-	.byte	0x34, 0x5c, 0x66, 0x6f
-	.byte	0x6f, 0x2e, 0x63, 0x70
-	.byte	0x70, 0x00, 0xf2, 0xf1
-	# UdtSourceLine (0x1009) {
-	#   TypeLeafKind: LF_UDT_SRC_LINE (0x1606)
-	#   UDT: Struct (0x1007)
-	#   SourceFile: D:\src\llvmbuild\cl\Debug\x64\foo.cpp (0x1008)
-	#   LineNumber: 1
-	# }
-	.byte	0x0e, 0x00, 0x06, 0x16
-	.byte	0x07, 0x10, 0x00, 0x00
-	.byte	0x08, 0x10, 0x00, 0x00
-	.byte	0x01, 0x00, 0x00, 0x00
-	# StringId (0x100A) {
-	#   TypeLeafKind: LF_STRING_ID (0x1605)
-	#   Id: 0x0
-	#   StringData: D:\\src\\llvmbuild\\cl\\Debug\\x64
-	# }
-	.byte	0x2a, 0x00, 0x05, 0x16
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x44, 0x3a, 0x5c, 0x5c
-	.byte	0x73, 0x72, 0x63, 0x5c
-	.byte	0x5c, 0x6c, 0x6c, 0x76
-	.byte	0x6d, 0x62, 0x75, 0x69
-	.byte	0x6c, 0x64, 0x5c, 0x5c
-	.byte	0x63, 0x6c, 0x5c, 0x5c
-	.byte	0x44, 0x65, 0x62, 0x75
-	.byte	0x67, 0x5c, 0x5c, 0x78
-	.byte	0x36, 0x34, 0x00, 0xf1
-	# StringId (0x100B) {
-	#   TypeLeafKind: LF_STRING_ID (0x1605)
-	#   Id: 0x0
-	#   StringData: foo.cpp
-	# }
-	.byte	0x0e, 0x00, 0x05, 0x16
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x66, 0x6f, 0x6f, 0x2e
-	.byte	0x63, 0x70, 0x70, 0x00
-	# BuildInfo (0x100C) {
-	#   TypeLeafKind: LF_BUILDINFO (0x1603)
-	#   NumArgs: 5
-	#   Arguments [
-	#     ArgType: D:\\src\\llvmbuild\\cl\\Debug\\x64 (0x100A)
-	#     ArgType: 0x0
-	#     ArgType: foo.cpp (0x100B)
-	#     ArgType: 0x0
-	#     ArgType: 0x0
-	#   ]
-	# }
-	.byte	0x1a, 0x00, 0x03, 0x16
-	.byte	0x05, 0x00, 0x0a, 0x10
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x00, 0x00, 0x0b, 0x10
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x00, 0x00, 0x00, 0x00
-	.byte	0x00, 0x00, 0xf2, 0xf1
-
-	.addrsig
-	.addrsig_sym "?S@@3UStruct@@A"
-	.addrsig_sym "?SS@@3UStruct@@A"
-	.addrsig_sym "?I@@3HA"
+	.text
+	.def	 @feat.00;
+	.scl	3;
+	.type	0;
+	.endef
+	.globl	@feat.00
+.set @feat.00, 0
+	.intel_syntax noprefix
+	.def	 main;
+	.scl	2;
+	.type	32;
+	.endef
+	.globl	main                    # -- Begin function main
+	.p2align	4, 0x90
+main:                                   # @main
+.Lfunc_begin0:
+	.cv_func_id 0
+	.cv_file	1 "D:\\src\\llvmbuild\\cl\\Debug\\x64\\foo.cpp" "2B62298EE3EEF94E1D81FDFE18BD46A6" 1
+	.cv_loc	0 1 12 0                # foo.cpp:12:0
+.seh_proc main
+# %bb.0:                                # %entry
+	sub	rsp, 32
+	.seh_stackalloc 32
+	.seh_endprologue
+	mov	dword ptr [rsp + 28], 0
+	mov	qword ptr [rsp + 16], rdx
+	mov	dword ptr [rsp + 12], ecx
+.Ltmp0:
+	.cv_loc	0 1 15 0                # foo.cpp:15:0
+	mov	ecx, dword ptr [rip + "?I@@3HA"]
+	add	ecx, dword ptr [rip + "?S@@3UStruct@@A"]
+	add	ecx, dword ptr [rip + "?SS@@3UStruct@@A"]
+	mov	rdx, qword ptr [rsp]
+	add	ecx, dword ptr [rdx]
+	mov	eax, ecx
+	add	rsp, 32
+	ret
+.Ltmp1:
+.Lfunc_end0:
+	.seh_handlerdata
+	.text
+	.seh_endproc
+                                        # -- End function
+	.bss
+	.globl	"?S@@3UStruct@@A"       # @"?S@@3UStruct@@A"
+	.p2align	2
+"?S@@3UStruct@@A":
+	.zero	4
+
+	.globl	"?SS@@3UStruct@@A"      # @"?SS@@3UStruct@@A"
+	.p2align	2
+"?SS@@3UStruct@@A":
+	.zero	4
+
+	.globl	"?I@@3HA"               # @"?I@@3HA"
+	.p2align	2
+"?I@@3HA":
+	.long	0                       # 0x0
+
+	.section	.drectve,"yn"
+	.ascii	" /DEFAULTLIB:libcmt.lib"
+	.ascii	" /DEFAULTLIB:oldnames.lib"
+	.section	.debug$S,"dr"
+	.p2align	2
+	.long	4                       # Debug section magic
+	.long	241
+	.long	.Ltmp3-.Ltmp2           # Subsection size
+.Ltmp2:
+	.short	.Ltmp5-.Ltmp4           # Record length
+.Ltmp4:
+	.short	4412                    # Record kind: S_COMPILE3
+	.long	1                       # Flags and language
+	.short	208                     # CPUType
+	.short	8                       # Frontend version
+	.short	0
+	.short	0
+	.short	0
+	.short	8000                    # Backend version
+	.short	0
+	.short	0
+	.short	0
+	.asciz	"clang version 8.0.0 "  # Null-terminated compiler version string
+.Ltmp5:
+.Ltmp3:
+	.p2align	2
+	.long	241                     # Symbol subsection for main
+	.long	.Ltmp7-.Ltmp6           # Subsection size
+.Ltmp6:
+	.short	.Ltmp9-.Ltmp8           # Record length
+.Ltmp8:
+	.short	4423                    # Record kind: S_GPROC32_ID
+	.long	0                       # PtrParent
+	.long	0                       # PtrEnd
+	.long	0                       # PtrNext
+	.long	.Lfunc_end0-main        # Code size
+	.long	0                       # Offset after prologue
+	.long	0                       # Offset before epilogue
+	.long	4099                    # Function type index
+	.secrel32	main            # Function section relative address
+	.secidx	main                    # Function section index
+	.byte	0                       # Flags
+	.asciz	"main"                  # Function name
+.Ltmp9:
+	.short	.Ltmp11-.Ltmp10         # Record length
+.Ltmp10:
+	.short	4114                    # Record kind: S_FRAMEPROC
+	.long	32                      # FrameSize
+	.long	0                       # Padding
+	.long	0                       # Offset of padding
+	.long	0                       # Bytes of callee saved registers
+	.long	0                       # Exception handler offset
+	.short	0                       # Exception handler section
+	.long	81920                   # Flags (defines frame register)
+.Ltmp11:
+	.short	.Ltmp13-.Ltmp12         # Record length
+.Ltmp12:
+	.short	4414                    # Record kind: S_LOCAL
+	.long	116                     # TypeIndex
+	.short	1                       # Flags
+	.asciz	"argc"
+.Ltmp13:
+	.cv_def_range	 .Ltmp0 .Ltmp1, "B\021\f\000\000\000"
+	.short	.Ltmp15-.Ltmp14         # Record length
+.Ltmp14:
+	.short	4414                    # Record kind: S_LOCAL
+	.long	4096                    # TypeIndex
+	.short	1                       # Flags
+	.asciz	"argv"
+.Ltmp15:
+	.cv_def_range	 .Ltmp0 .Ltmp1, "B\021\020\000\000\000"
+	.short	.Ltmp17-.Ltmp16         # Record length
+.Ltmp16:
+	.short	4414                    # Record kind: S_LOCAL
+	.long	4101                    # TypeIndex
+	.short	0                       # Flags
+	.asciz	"SPtr"
+.Ltmp17:
+	.cv_def_range	 .Ltmp0 .Ltmp1, "B\021\000\000\000\000"
+	.short	.Ltmp19-.Ltmp18         # Record length
+.Ltmp18:
+	.short	4360                    # Record kind: S_UDT
+	.long	4101                    # Type
+	.asciz	"main::LocalTypedef"
+.Ltmp19:
+	.short	2                       # Record length
+	.short	4431                    # Record kind: S_PROC_ID_END
+.Ltmp7:
+	.p2align	2
+	.cv_linetable	0, main, .Lfunc_end0
+	.long	241                     # Symbol subsection for globals
+	.long	.Ltmp21-.Ltmp20         # Subsection size
+.Ltmp20:
+	.short	.Ltmp23-.Ltmp22         # Record length
+.Ltmp22:
+	.short	4365                    # Record kind: S_GDATA32
+	.long	4103                    # Type
+	.secrel32	"?S@@3UStruct@@A" # DataOffset
+	.secidx	"?S@@3UStruct@@A"       # Segment
+	.asciz	"S"                     # Name
+.Ltmp23:
+	.short	.Ltmp25-.Ltmp24         # Record length
+.Ltmp24:
+	.short	4365                    # Record kind: S_GDATA32
+	.long	4100                    # Type
+	.secrel32	"?SS@@3UStruct@@A" # DataOffset
+	.secidx	"?SS@@3UStruct@@A"      # Segment
+	.asciz	"SS"                    # Name
+.Ltmp25:
+	.short	.Ltmp27-.Ltmp26         # Record length
+.Ltmp26:
+	.short	4365                    # Record kind: S_GDATA32
+	.long	116                     # Type
+	.secrel32	"?I@@3HA"       # DataOffset
+	.secidx	"?I@@3HA"               # Segment
+	.asciz	"I"                     # Name
+.Ltmp27:
+.Ltmp21:
+	.p2align	2
+	.long	241
+	.long	.Ltmp29-.Ltmp28         # Subsection size
+.Ltmp28:
+	.short	.Ltmp31-.Ltmp30         # Record length
+.Ltmp30:
+	.short	4360                    # Record kind: S_UDT
+	.long	4103                    # Type
+	.asciz	"Struct"
+.Ltmp31:
+	.short	.Ltmp33-.Ltmp32         # Record length
+.Ltmp32:
+	.short	4360                    # Record kind: S_UDT
+	.long	4100                    # Type
+	.asciz	"StructTypedef"
+.Ltmp33:
+	.short	.Ltmp35-.Ltmp34         # Record length
+.Ltmp34:
+	.short	4360                    # Record kind: S_UDT
+	.long	116                     # Type
+	.asciz	"IntTypedef"
+.Ltmp35:
+.Ltmp29:
+	.p2align	2
+	.cv_filechecksums               # File index to string table offset subsection
+	.cv_stringtable                 # String table
+	.long	241
+	.long	.Ltmp37-.Ltmp36         # Subsection size
+.Ltmp36:
+	.short	6                       # Record length
+	.short	4428                    # Record kind: S_BUILDINFO
+	.long	4108                    # LF_BUILDINFO index
+.Ltmp37:
+	.p2align	2
+	.section	.debug$T,"dr"
+	.p2align	2
+	.long	4                       # Debug section magic
+	# Pointer (0x1000) {
+	#   TypeLeafKind: LF_POINTER (0x1002)
+	#   PointeeType: char* (0x670)
+	#   PtrType: Near64 (0xC)
+	#   PtrMode: Pointer (0x0)
+	#   IsFlat: 0
+	#   IsConst: 0
+	#   IsVolatile: 0
+	#   IsUnaligned: 0
+	#   IsRestrict: 0
+	#   IsThisPtr&: 0
+	#   IsThisPtr&&: 0
+	#   SizeOf: 8
+	# }
+	.byte	0x0a, 0x00, 0x02, 0x10
+	.byte	0x70, 0x06, 0x00, 0x00
+	.byte	0x0c, 0x00, 0x01, 0x00
+	# ArgList (0x1001) {
+	#   TypeLeafKind: LF_ARGLIST (0x1201)
+	#   NumArgs: 2
+	#   Arguments [
+	#     ArgType: int (0x74)
+	#     ArgType: char** (0x1000)
+	#   ]
+	# }
+	.byte	0x0e, 0x00, 0x01, 0x12
+	.byte	0x02, 0x00, 0x00, 0x00
+	.byte	0x74, 0x00, 0x00, 0x00
+	.byte	0x00, 0x10, 0x00, 0x00
+	# Procedure (0x1002) {
+	#   TypeLeafKind: LF_PROCEDURE (0x1008)
+	#   ReturnType: int (0x74)
+	#   CallingConvention: NearC (0x0)
+	#   FunctionOptions [ (0x0)
+	#   ]
+	#   NumParameters: 2
+	#   ArgListType: (int, char**) (0x1001)
+	# }
+	.byte	0x0e, 0x00, 0x08, 0x10
+	.byte	0x74, 0x00, 0x00, 0x00
+	.byte	0x00, 0x00, 0x02, 0x00
+	.byte	0x01, 0x10, 0x00, 0x00
+	# FuncId (0x1003) {
+	#   TypeLeafKind: LF_FUNC_ID (0x1601)
+	#   ParentScope: 0x0
+	#   FunctionType: int (int, char**) (0x1002)
+	#   Name: main
+	# }
+	.byte	0x12, 0x00, 0x01, 0x16
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x02, 0x10, 0x00, 0x00
+	.byte	0x6d, 0x61, 0x69, 0x6e
+	.byte	0x00, 0xf3, 0xf2, 0xf1
+	# Struct (0x1004) {
+	#   TypeLeafKind: LF_STRUCTURE (0x1505)
+	#   MemberCount: 0
+	#   Properties [ (0x280)
+	#     ForwardReference (0x80)
+	#     HasUniqueName (0x200)
+	#   ]
+	#   FieldList: 0x0
+	#   DerivedFrom: 0x0
+	#   VShape: 0x0
+	#   SizeOf: 0
+	#   Name: Struct
+	#   LinkageName: .?AUStruct@@
+	# }
+	.byte	0x2a, 0x00, 0x05, 0x15
+	.byte	0x00, 0x00, 0x80, 0x02
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x00, 0x00, 0x53, 0x74
+	.byte	0x72, 0x75, 0x63, 0x74
+	.byte	0x00, 0x2e, 0x3f, 0x41
+	.byte	0x55, 0x53, 0x74, 0x72
+	.byte	0x75, 0x63, 0x74, 0x40
+	.byte	0x40, 0x00, 0xf2, 0xf1
+	# Pointer (0x1005) {
+	#   TypeLeafKind: LF_POINTER (0x1002)
+	#   PointeeType: Struct (0x1004)
+	#   PtrType: Near64 (0xC)
+	#   PtrMode: Pointer (0x0)
+	#   IsFlat: 0
+	#   IsConst: 0
+	#   IsVolatile: 0
+	#   IsUnaligned: 0
+	#   IsRestrict: 0
+	#   IsThisPtr&: 0
+	#   IsThisPtr&&: 0
+	#   SizeOf: 8
+	# }
+	.byte	0x0a, 0x00, 0x02, 0x10
+	.byte	0x04, 0x10, 0x00, 0x00
+	.byte	0x0c, 0x00, 0x01, 0x00
+	# FieldList (0x1006) {
+	#   TypeLeafKind: LF_FIELDLIST (0x1203)
+	#   DataMember {
+	#     TypeLeafKind: LF_MEMBER (0x150D)
+	#     AccessSpecifier: Public (0x3)
+	#     Type: int (0x74)
+	#     FieldOffset: 0x0
+	#     Name: x
+	#   }
+	# }
+	.byte	0x0e, 0x00, 0x03, 0x12
+	.byte	0x0d, 0x15, 0x03, 0x00
+	.byte	0x74, 0x00, 0x00, 0x00
+	.byte	0x00, 0x00, 0x78, 0x00
+	# Struct (0x1007) {
+	#   TypeLeafKind: LF_STRUCTURE (0x1505)
+	#   MemberCount: 1
+	#   Properties [ (0x200)
+	#     HasUniqueName (0x200)
+	#   ]
+	#   FieldList: <field list> (0x1006)
+	#   DerivedFrom: 0x0
+	#   VShape: 0x0
+	#   SizeOf: 4
+	#   Name: Struct
+	#   LinkageName: .?AUStruct@@
+	# }
+	.byte	0x2a, 0x00, 0x05, 0x15
+	.byte	0x01, 0x00, 0x00, 0x02
+	.byte	0x06, 0x10, 0x00, 0x00
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x04, 0x00, 0x53, 0x74
+	.byte	0x72, 0x75, 0x63, 0x74
+	.byte	0x00, 0x2e, 0x3f, 0x41
+	.byte	0x55, 0x53, 0x74, 0x72
+	.byte	0x75, 0x63, 0x74, 0x40
+	.byte	0x40, 0x00, 0xf2, 0xf1
+	# StringId (0x1008) {
+	#   TypeLeafKind: LF_STRING_ID (0x1605)
+	#   Id: 0x0
+	#   StringData: D:\src\llvmbuild\cl\Debug\x64\foo.cpp
+	# }
+	.byte	0x2e, 0x00, 0x05, 0x16
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x44, 0x3a, 0x5c, 0x73
+	.byte	0x72, 0x63, 0x5c, 0x6c
+	.byte	0x6c, 0x76, 0x6d, 0x62
+	.byte	0x75, 0x69, 0x6c, 0x64
+	.byte	0x5c, 0x63, 0x6c, 0x5c
+	.byte	0x44, 0x65, 0x62, 0x75
+	.byte	0x67, 0x5c, 0x78, 0x36
+	.byte	0x34, 0x5c, 0x66, 0x6f
+	.byte	0x6f, 0x2e, 0x63, 0x70
+	.byte	0x70, 0x00, 0xf2, 0xf1
+	# UdtSourceLine (0x1009) {
+	#   TypeLeafKind: LF_UDT_SRC_LINE (0x1606)
+	#   UDT: Struct (0x1007)
+	#   SourceFile: D:\src\llvmbuild\cl\Debug\x64\foo.cpp (0x1008)
+	#   LineNumber: 1
+	# }
+	.byte	0x0e, 0x00, 0x06, 0x16
+	.byte	0x07, 0x10, 0x00, 0x00
+	.byte	0x08, 0x10, 0x00, 0x00
+	.byte	0x01, 0x00, 0x00, 0x00
+	# StringId (0x100A) {
+	#   TypeLeafKind: LF_STRING_ID (0x1605)
+	#   Id: 0x0
+	#   StringData: D:\\src\\llvmbuild\\cl\\Debug\\x64
+	# }
+	.byte	0x2a, 0x00, 0x05, 0x16
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x44, 0x3a, 0x5c, 0x5c
+	.byte	0x73, 0x72, 0x63, 0x5c
+	.byte	0x5c, 0x6c, 0x6c, 0x76
+	.byte	0x6d, 0x62, 0x75, 0x69
+	.byte	0x6c, 0x64, 0x5c, 0x5c
+	.byte	0x63, 0x6c, 0x5c, 0x5c
+	.byte	0x44, 0x65, 0x62, 0x75
+	.byte	0x67, 0x5c, 0x5c, 0x78
+	.byte	0x36, 0x34, 0x00, 0xf1
+	# StringId (0x100B) {
+	#   TypeLeafKind: LF_STRING_ID (0x1605)
+	#   Id: 0x0
+	#   StringData: foo.cpp
+	# }
+	.byte	0x0e, 0x00, 0x05, 0x16
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x66, 0x6f, 0x6f, 0x2e
+	.byte	0x63, 0x70, 0x70, 0x00
+	# BuildInfo (0x100C) {
+	#   TypeLeafKind: LF_BUILDINFO (0x1603)
+	#   NumArgs: 5
+	#   Arguments [
+	#     ArgType: D:\\src\\llvmbuild\\cl\\Debug\\x64 (0x100A)
+	#     ArgType: 0x0
+	#     ArgType: foo.cpp (0x100B)
+	#     ArgType: 0x0
+	#     ArgType: 0x0
+	#   ]
+	# }
+	.byte	0x1a, 0x00, 0x03, 0x16
+	.byte	0x05, 0x00, 0x0a, 0x10
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x00, 0x00, 0x0b, 0x10
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x00, 0x00, 0x00, 0x00
+	.byte	0x00, 0x00, 0xf2, 0xf1
+
+	.addrsig
+	.addrsig_sym "?S@@3UStruct@@A"
+	.addrsig_sym "?SS@@3UStruct@@A"
+	.addrsig_sym "?I@@3HA"

Modified: lld/trunk/test/ELF/Inputs/print-icf.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/Inputs/print-icf.s?rev=353751&r1=353750&r2=353751&view=diff
==============================================================================
--- lld/trunk/test/ELF/Inputs/print-icf.s (original)
+++ lld/trunk/test/ELF/Inputs/print-icf.s Mon Feb 11 13:38:20 2019
@@ -1,9 +1,9 @@
-.section .text.f6, "ax"
-f6:
-  mov $60, %rax
-  mov $42, %rdi
-  syscall
-
-  .section .text.f7, "ax"
-f7:
-  mov $0, %rax
+.section .text.f6, "ax"
+f6:
+  mov $60, %rax
+  mov $42, %rdi
+  syscall
+
+  .section .text.f7, "ax"
+f7:
+  mov $0, %rax




More information about the llvm-commits mailing list