1 // Note that most of the section names used here aren't legal as operands 2 // to either .section or .xdata/.xreal/.xstring (quoted strings aren't in 3 // general), but since generic code accepts them for .section we also test 4 // this here for our target specific directives. This could be viewed as a 5 // shortcut of a pair of .section/.secalias for each of them. 6 7 .section .xdata1, "a", @progbits 8 .section ".xdata2", "a", @progbits 9 .section ",xdata3", "a", @progbits 10 .section ".xdata,4", "a", @progbits 11 .section "\".xdata5\"", "a", @progbits 12 13 .section ".xreal\\1", "a", @progbits 14 .section ".xreal+2", "a", @progbits 15 .section ".xreal(3)", "a", @progbits 16 .section ".xreal[4]", "a", @progbits 17 18 .section ".xstr<1>", "a", @progbits 19 .section ".xstr{2}", "a", @progbits 20 21 .text 22 23 .xdata1 .xdata1, 1 24 .xdata2 ".xdata2", 2 25 .xdata4 ",xdata3", 3 26 .xdata8 ".xdata,4", 4 27 .xdata16 "\".xdata5\"", @iplt(_start) 28 29 .xdata2.ua ".xdata2", 2 30 .xdata4.ua ",xdata3", 3 31 .xdata8.ua ".xdata,4", 4 32 .xdata16.ua "\".xdata5\"", @iplt(_start) 33 34 .xreal4 ".xreal\\1", 1 35 .xreal8 ".xreal+2", 2 36 .xreal10 ".xreal(3)", 3 37 .xreal16 ".xreal[4]", 4 38 39 .xreal4.ua ".xreal\\1", 1 40 .xreal8.ua ".xreal+2", 2 41 .xreal10.ua ".xreal(3)", 3 42 .xreal16.ua ".xreal[4]", 4 43 44 .xstring ".xstr<1>", "abc" 45 .xstringz ".xstr{2}", "xyz" 46