1; RUN: llvm-ml %s /Fo - | llvm-readobj --section-headers - | FileCheck %s 2 3t1 SEGMENT BYTE 4t1 ENDS 5; CHECK-LABEL: Name: t1 6; CHECK-NOT: } 7; CHECK: IMAGE_SCN_ALIGN_1BYTES 8 9t2 SEGMENT WORD 10t2 ENDS 11; CHECK-LABEL: Name: t2 12; CHECK-NOT: } 13; CHECK: IMAGE_SCN_ALIGN_2BYTES 14 15t3 SEGMENT DWORD 16t3 ENDS 17; CHECK-LABEL: Name: t3 18; CHECK-NOT: } 19; CHECK: IMAGE_SCN_ALIGN_4BYTES 20 21t4 SEGMENT PARA 22t4 ENDS 23; CHECK-LABEL: Name: t4 24; CHECK-NOT: } 25; CHECK: IMAGE_SCN_ALIGN_16BYTES 26 27t5 SEGMENT PAGE 28t5 ENDS 29; CHECK-LABEL: Name: t5 30; CHECK-NOT: } 31; CHECK: IMAGE_SCN_ALIGN_256BYTES 32 33; Default alignment (should match PARA) 34t6 SEGMENT 35t6 ENDS 36; CHECK-LABEL: Name: t6 37; CHECK-NOT: } 38; CHECK: IMAGE_SCN_ALIGN_16BYTES 39 40; Unnamed alignment 41t7 SEGMENT ALIGN(32) 42t7 ENDS 43; CHECK-LABEL: Name: t7 44; CHECK-NOT: } 45; CHECK: IMAGE_SCN_ALIGN_32BYTES 46 47t8 SEGMENT ALIAS('t8_alias') 48t8 ENDS 49; CHECK-LABEL: Name: t8_alias 50 51t9 SEGMENT 'DATA' 52t9 ENDS 53; CHECK-LABEL: Name: t9 54; CHECK-NOT: } 55; CHECK-DAG: IMAGE_SCN_CNT_INITIALIZED_DATA 56; CHECK-DAG: IMAGE_SCN_MEM_READ 57; CHECK-DAG: IMAGE_SCN_MEM_WRITE 58; CHECK: } 59 60t10 SEGMENT 'CODE' 61t10 ENDS 62; CHECK-LABEL: Name: t10 63; CHECK-NOT: } 64; CHECK-NOT: IMAGE_SCN_MEM_WRITE 65; CHECK-DAG: IMAGE_SCN_CNT_CODE 66; CHECK-DAG: IMAGE_SCN_MEM_EXECUTE 67; CHECK-DAG: IMAGE_SCN_MEM_READ 68; CHECK-NOT: IMAGE_SCN_MEM_WRITE 69; CHECK: } 70 71t11 SEGMENT 'CONST' 72t11 ENDS 73; CHECK-LABEL: Name: t11 74; CHECK-NOT: } 75; CHECK-DAG: IMAGE_SCN_CNT_INITIALIZED_DATA 76; CHECK-DAG: IMAGE_SCN_MEM_READ 77; CHECK-DAG: IMAGE_SCN_MEM_WRITE 78; CHECK: } 79 80t12 SEGMENT 'STACK' 81t12 ENDS 82; CHECK-LABEL: Name: t12 83; CHECK-NOT: } 84; CHECK-DAG: IMAGE_SCN_CNT_INITIALIZED_DATA 85; CHECK-DAG: IMAGE_SCN_MEM_READ 86; CHECK-DAG: IMAGE_SCN_MEM_WRITE 87; CHECK: } 88 89t13 SEGMENT 'DOESNTEXIST' 90t13 ENDS 91; CHECK-LABEL: Name: t13 92; CHECK-NOT: } 93; CHECK-DAG: IMAGE_SCN_CNT_INITIALIZED_DATA 94; CHECK-DAG: IMAGE_SCN_MEM_READ 95; CHECK-DAG: IMAGE_SCN_MEM_WRITE 96; CHECK: } 97 98t14 SEGMENT READONLY 'CONST' 99t14 ENDS 100; CHECK-LABEL: Name: t14 101; CHECK-NOT: } 102; CHECK-NOT: IMAGE_SCN_MEM_WRITE 103; CHECK-DAG: IMAGE_SCN_CNT_INITIALIZED_DATA 104; CHECK-DAG: IMAGE_SCN_MEM_READ 105; CHECK-NOT: IMAGE_SCN_MEM_WRITE 106; CHECK: } 107 108t15 SEGMENT WRITE 109t15 ENDS 110; CHECK-LABEL: Name: t15 111; CHECK-NOT: } 112; CHECK-NOT: IMAGE_SCN_MEM_READ 113; CHECK-DAG: IMAGE_SCN_CNT_INITIALIZED_DATA 114; CHECK-DAG: IMAGE_SCN_MEM_WRITE 115; CHECK-NOT: IMAGE_SCN_MEM_READ 116; CHECK: } 117 118t16 SEGMENT SHARED NOPAGE NOCACHE INFO READ WRITE EXECUTE DISCARD 119t16 ENDS 120; CHECK-LABEL: Name: t16 121; CHECK-NOT: } 122; CHECK-DAG: IMAGE_SCN_LNK_INFO 123; CHECK-DAG: IMAGE_SCN_MEM_READ 124; CHECK-DAG: IMAGE_SCN_MEM_WRITE 125; CHECK-DAG: IMAGE_SCN_MEM_EXECUTE 126; CHECK-DAG: IMAGE_SCN_MEM_SHARED 127; CHECK-DAG: IMAGE_SCN_MEM_NOT_PAGED 128; CHECK-DAG: IMAGE_SCN_MEM_NOT_CACHED 129; CHECK-DAG: IMAGE_SCN_MEM_DISCARDABLE 130; CHECK: } 131 132_TEXT SEGMENT 133_TEXT ENDS 134; CHECK-LABEL: Name: .text 135; CHECK-NOT: } 136; CHECK-NOT: IMAGE_SCN_MEM_WRITE 137; CHECK-DAG: IMAGE_SCN_CNT_CODE 138; CHECK-DAG: IMAGE_SCN_MEM_EXECUTE 139; CHECK-DAG: IMAGE_SCN_MEM_READ 140; CHECK-NOT: IMAGE_SCN_MEM_WRITE 141; CHECK: } 142 143END 144