mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
Put data with relocations in the same sections as data without relocations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79351 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
daf4f0ca61
commit
a9e8334877
@ -51,5 +51,11 @@ void XCoreTargetObjectFile::Initialize(MCContext &Ctx, const TargetMachine &TM){
|
||||
MCSectionXCore::Create(".cp.rodata", MCSectionELF::SHT_PROGBITS,
|
||||
MCSectionELF::SHF_ALLOC |
|
||||
MCSectionXCore::SHF_CP_SECTION,
|
||||
SectionKind::getReadOnly(), false, getContext());
|
||||
SectionKind::getReadOnlyWithRel(), false,
|
||||
getContext());
|
||||
|
||||
// Dynamic linking is not supported. Data with relocations is placed in the
|
||||
// same section as data without relocations.
|
||||
DataRelSection = DataRelLocalSection = DataSection;
|
||||
DataRelROSection = DataRelROLocalSection = ReadOnlySection;
|
||||
}
|
||||
|
@ -22,6 +22,43 @@ entry:
|
||||
ret i32* @G3
|
||||
}
|
||||
|
||||
define i32 **@addr_G4() {
|
||||
entry:
|
||||
; CHECK: addr_G4:
|
||||
; CHECK: ldaw r0, dp[G4]
|
||||
ret i32** @G4
|
||||
}
|
||||
|
||||
define i32 **@addr_G5() {
|
||||
entry:
|
||||
; CHECK: addr_G5:
|
||||
; CHECK: ldaw r11, cp[G5]
|
||||
; CHECK: mov r0, r11
|
||||
ret i32** @G5
|
||||
}
|
||||
|
||||
define i32 **@addr_G6() {
|
||||
entry:
|
||||
; CHECK: addr_G6:
|
||||
; CHECK: ldaw r0, dp[G6]
|
||||
ret i32** @G6
|
||||
}
|
||||
|
||||
define i32 **@addr_G7() {
|
||||
entry:
|
||||
; CHECK: addr_G7:
|
||||
; CHECK: ldaw r11, cp[G7]
|
||||
; CHECK: mov r0, r11
|
||||
ret i32** @G7
|
||||
}
|
||||
|
||||
define i32 *@addr_G8() {
|
||||
entry:
|
||||
; CHECK: addr_G8:
|
||||
; CHECK: ldaw r0, dp[G8]
|
||||
ret i32* @G8
|
||||
}
|
||||
|
||||
@G1 = global i32 4712
|
||||
; CHECK: .section .dp.data,"awd",@progbits
|
||||
; CHECK: G1:
|
||||
@ -34,3 +71,22 @@ entry:
|
||||
; CHECK: .section .cp.rodata,"ac",@progbits
|
||||
; CHECK: G3:
|
||||
|
||||
@G4 = global i32* @G1
|
||||
; CHECK: .section .dp.data,"awd",@progbits
|
||||
; CHECK: G4:
|
||||
|
||||
@G5 = constant i32* @G1
|
||||
; CHECK: .section .cp.rodata,"ac",@progbits
|
||||
; CHECK: G5:
|
||||
|
||||
@G6 = global i32* @G8
|
||||
; CHECK: .section .dp.data,"awd",@progbits
|
||||
; CHECK: G6:
|
||||
|
||||
@G7 = constant i32* @G8
|
||||
; CHECK: .section .cp.rodata,"ac",@progbits
|
||||
; CHECK: G7:
|
||||
|
||||
@G8 = internal global i32 9312
|
||||
; CHECK: .section .dp.data,"awd",@progbits
|
||||
; CHECK: G8:
|
||||
|
Loading…
Reference in New Issue
Block a user