diff options
| author | Meador Inge <meadori@codesourcery.com> | 2015-03-11 15:34:44 +0000 |
|---|---|---|
| committer | Meador Inge <meadori@codesourcery.com> | 2015-03-11 15:34:44 +0000 |
| commit | 2ce1ea86d0b30436110972f5d5f0814094027a97 (patch) | |
| tree | 4a795824f4201eb13f4939704b175a62e535a8b5 /lld/test/LinkerScript/memory-valid.test | |
| parent | c04b6f242ca4a16165bea8043c2cdc19407cf240 (diff) | |
| download | bcm5719-llvm-2ce1ea86d0b30436110972f5d5f0814094027a97.tar.gz bcm5719-llvm-2ce1ea86d0b30436110972f5d5f0814094027a97.zip | |
LinkerScript: Add parsing of the MEMORY command
This patch implements parsing of the GNU ld MEMORY command [1].
The command and the memory block definitions are parsed as
specified (including the slightly strange "o" and "l" keywords).
Evaluation will be added at a later point in time.
[1] https://sourceware.org/binutils/docs-2.25/ld/MEMORY.html
llvm-svn: 231928
Diffstat (limited to 'lld/test/LinkerScript/memory-valid.test')
| -rw-r--r-- | lld/test/LinkerScript/memory-valid.test | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/lld/test/LinkerScript/memory-valid.test b/lld/test/LinkerScript/memory-valid.test new file mode 100644 index 00000000000..7a0e906c5fb --- /dev/null +++ b/lld/test/LinkerScript/memory-valid.test @@ -0,0 +1,56 @@ +/* + RUN: linker-script-test %s | FileCheck %s +*/ + +MEMORY +{ + ram (rwx) : ORIGIN = 0x20000000, LENGTH = 96K + rom (rx) : org = 0x0, len = 256K + boot : o = 0x1000000, l = 0x5f00 +} + +/* +CHECK: kw_memory: MEMORY +CHECK: l_brace: { +CHECK: identifier: ram +CHECK: l_paren: ( +CHECK: identifier: rwx +CHECK: r_paren: ) +CHECK: colon: : +CHECK: kw_origin: ORIGIN +CHECK: equal: = +CHECK: number: 0x20000000 +CHECK: comma: , +CHECK: kw_length: LENGTH +CHECK: equal: = +CHECK: number: 96K +CHECK: identifier: rom +CHECK: l_paren: ( +CHECK: identifier: rx +CHECK: r_paren: ) +CHECK: colon: : +CHECK: kw_origin: org +CHECK: equal: = +CHECK: number: 0x0 +CHECK: comma: , +CHECK: kw_length: len +CHECK: equal: = +CHECK: number: 256K +CHECK: identifier: boot +CHECK: colon: : +CHECK: kw_origin: o +CHECK: equal: = +CHECK: number: 0x1000000 +CHECK: comma: , +CHECK: kw_length: l +CHECK: equal: = +CHECK: number: 0x5f00 +CHECK: r_brace: } +CHECK: eof: +CHECK: MEMORY +CHECK: { +CHECK: ram (rwx) : ORIGIN = 536870912, LENGTH = 98304 +CHECK: rom (rx) : ORIGIN = 0, LENGTH = 262144 +CHECK: boot : ORIGIN = 16777216, LENGTH = 24320 +CHECK: } +*/ |

