mirror of
https://github.com/dlang/dmd.git
synced 2025-04-26 13:10:12 +03:00
compile mscoffobj.d for all
This commit is contained in:
parent
6f8ead9353
commit
676d73055c
3 changed files with 12 additions and 29 deletions
|
@ -266,10 +266,7 @@ struct seg_data
|
|||
Barray!(linnum_data) SDlinnum_data; // array of line number / offset data
|
||||
|
||||
nothrow:
|
||||
version (Windows)
|
||||
int isCode() { return seg_data_isCode(this); }
|
||||
version (OSX)
|
||||
int isCode() { return seg_data_isCode(this); }
|
||||
int isCode() { return seg_data_isCode(this); }
|
||||
}
|
||||
|
||||
extern int seg_data_isCode(const ref seg_data sd) @system;
|
||||
|
|
|
@ -7,7 +7,6 @@ module dmd.backend.mscoff;
|
|||
|
||||
// Online documentation: https://dlang.org/phobos/dmd_backend_mscoff.html
|
||||
|
||||
version(Windows):
|
||||
align (1):
|
||||
|
||||
/***********************************************/
|
||||
|
|
|
@ -51,12 +51,9 @@ nothrow:
|
|||
alias _compare_fp_t = extern(C) nothrow int function(const void*, const void*);
|
||||
extern(C) void qsort(void* base, size_t nmemb, size_t size, _compare_fp_t compar);
|
||||
|
||||
static if (TARGET_WINDOS)
|
||||
{
|
||||
|
||||
extern (C) char* strupr(char*);
|
||||
|
||||
private __gshared Outbuffer *fobjbuf;
|
||||
private extern (D) __gshared Outbuffer *fobjbuf;
|
||||
|
||||
enum DEST_LEN = (IDMAX + IDOHD + 1);
|
||||
char *obj_mangle2(Symbol *s,char *dest);
|
||||
|
@ -98,10 +95,10 @@ IMAGE_SECTION_HEADER* ScnhdrTab() { return cast(IMAGE_SECTION_HEADER *)ScnhdrBuf
|
|||
segidx_t segidx_xdata = UNKNOWN;
|
||||
segidx_t segidx_pdata = UNKNOWN;
|
||||
|
||||
int jumpTableSeg; // segment index for __jump_table
|
||||
extern (D) int jumpTableSeg; // segment index for __jump_table
|
||||
|
||||
Outbuffer *indirectsymbuf2; // indirect symbol table of Symbol*'s
|
||||
int pointersSeg; // segment index for __pointers
|
||||
extern (D) Outbuffer *indirectsymbuf2; // indirect symbol table of Symbol*'s
|
||||
extern (D) int pointersSeg; // segment index for __pointers
|
||||
|
||||
Outbuffer *ptrref_buf; // buffer for pointer references
|
||||
|
||||
|
@ -111,7 +108,7 @@ IMAGE_SECTION_HEADER* ScnhdrTab() { return cast(IMAGE_SECTION_HEADER *)ScnhdrBuf
|
|||
* to be added last to the symbol table.
|
||||
* Obviously, there can be only one.
|
||||
*/
|
||||
IDXSTR extdef;
|
||||
extern (D) IDXSTR extdef;
|
||||
|
||||
// Each compiler segment is a section
|
||||
// Predefined compiler segments CODE,DATA,CDATA,UDATA map to indexes
|
||||
|
@ -132,8 +129,9 @@ public:
|
|||
// already in cgobj.c (should be part of objmod?):
|
||||
// seg_data **SegData;
|
||||
extern Rarray!(seg_data*) SegData;
|
||||
segidx_t seg_tlsseg = UNKNOWN;
|
||||
segidx_t seg_tlsseg_bss = UNKNOWN;
|
||||
|
||||
private extern (D) segidx_t seg_tlsseg = UNKNOWN;
|
||||
private extern (D) segidx_t seg_tlsseg_bss = UNKNOWN;
|
||||
|
||||
}
|
||||
|
||||
|
@ -1088,9 +1086,9 @@ void MsCoffObj_wkext(Symbol *s1,Symbol *s2)
|
|||
* twice for the same file.
|
||||
*/
|
||||
|
||||
void obj_filename(const(char)* modname)
|
||||
void MsCoffObj_filename(const(char)* modname)
|
||||
{
|
||||
//dbg_printf("obj_filename(char *%s)\n",modname);
|
||||
//dbg_printf("MsCoffObj_filename(char *%s)\n",modname);
|
||||
// Not supported by mscoff
|
||||
}
|
||||
|
||||
|
@ -1667,7 +1665,7 @@ static if (0) // NOT_DONE
|
|||
}
|
||||
}
|
||||
|
||||
char *unsstr(uint value)
|
||||
private extern (D) char* unsstr(uint value)
|
||||
{
|
||||
__gshared char[64] buffer;
|
||||
|
||||
|
@ -2494,14 +2492,3 @@ extern (D) private void objflush_pointerRefs()
|
|||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
segidx_t MsCoffObj_seg_pdata() { assert(0); }
|
||||
segidx_t MsCoffObj_seg_xdata() { assert(0); }
|
||||
segidx_t MsCoffObj_seg_pdata_comdat(Symbol *sfunc) { assert(0); }
|
||||
segidx_t MsCoffObj_seg_xdata_comdat(Symbol *sfunc) { assert(0); }
|
||||
segidx_t MsCoffObj_seg_debugS() { assert(0); }
|
||||
segidx_t MsCoffObj_seg_debugS_comdat(Symbol *sfunc) { assert(0); }
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue