Skip to content

Commit c1e84d3

Browse files
clazissartemiy-volkov
authored andcommitted
Got the cc1!
1 parent 2b19913 commit c1e84d3

File tree

3 files changed

+44
-6
lines changed

3 files changed

+44
-6
lines changed

gcc/config.gcc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1350,7 +1350,7 @@ arc-*-linux* | arc[eb]*-*linux*)
13501350
gcc_cv_initfini_array=yes
13511351
;;
13521352
arc64-*-elf*)
1353-
tm_file="arc64/elf.h ${tm_file}"
1353+
tm_file="dbxelf.h elfos.h newlib-stdint.h arc64/elf.h ${tm_file}"
13541354
;;
13551355
arm-wrs-vxworks7*)
13561356
# We only support VxWorks 7 now on ARM, post SR600. Pre SR600

gcc/config/arc64/arc64.c

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ arc64_prepare_move_operands (rtx op0, rtx op1, machine_mode mode)
168168

169169
/* Split a mov with long immediate instruction into smaller, size
170170
friendly instructions. */
171-
171+
#if 0
172172
bool
173173
arc64_split_mov_const (rtx *operands)
174174
{
@@ -320,6 +320,7 @@ arc64_expand_call (rtx result, rtx mem, bool sibcall)
320320

321321
emit_call_insn (call);
322322
}
323+
#endif
323324

324325
/* Return nonzero if this function is known to have a null epilogue.
325326
This allows the optimizer to omit jumps to jumps if no stack
@@ -334,7 +335,7 @@ arc64_can_use_return_insn_p (void)
334335
/* This is how to output a definition of an internal numbered label where
335336
PREFIX is the class of label and NUM is the number within the class. */
336337

337-
static void arc_internal_label (FILE *stream, const char *prefix, unsigned long labelno)
338+
static void arc64_internal_label (FILE *stream, const char *prefix, unsigned long labelno)
338339
{
339340
default_internal_label (stream, prefix, labelno);
340341
}
@@ -357,8 +358,8 @@ static void arc_internal_label (FILE *stream, const char *prefix, unsigned long
357358
#undef TARGET_CAN_ELIMINATE
358359
#define TARGET_CAN_ELIMINATE arc64_can_eliminate
359360

360-
#undef TARGET_LEGITIMATE_ADDRESS_P
361-
#define TARGET_LEGITIMATE_ADDRESS_P arc64_legitimate_address_p
361+
//#undef TARGET_LEGITIMATE_ADDRESS_P
362+
//#define TARGET_LEGITIMATE_ADDRESS_P arc64_legitimate_address_p
362363

363364
#undef TARGET_LEGITIMATE_CONSTANT_P
364365
#define TARGET_LEGITIMATE_CONSTANT_P arc64_legitimate_constant_p
@@ -368,4 +369,4 @@ static void arc_internal_label (FILE *stream, const char *prefix, unsigned long
368369

369370
struct gcc_target targetm = TARGET_INITIALIZER;
370371

371-
#include "gt-arc64.h"
372+
//#include "gt-arc64.h"

gcc/config/arc64/arc64.h

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -429,4 +429,41 @@ do { \
429429
} \
430430
while (0)
431431

432+
#define ASM_OUTPUT_ALIGN(FILE,LOG) \
433+
do { \
434+
if ((LOG) != 0) fprintf (FILE, "\t.align %d\n", 1 << (LOG)); \
435+
} while (0)
436+
437+
#define CASE_VECTOR_MODE Pmode
438+
439+
/* Output to assembler file text saying following lines
440+
may contain character constants, extra white space, comments, etc. */
441+
#undef ASM_APP_ON
442+
#define ASM_APP_ON ""
443+
444+
/* Output to assembler file text saying following lines
445+
no longer contain unusual constructs. */
446+
#undef ASM_APP_OFF
447+
#define ASM_APP_OFF ""
448+
449+
/* All the work done in PROFILE_HOOK, but still required. */
450+
#undef FUNCTION_PROFILER
451+
#define FUNCTION_PROFILER(STREAM, LABELNO) do { } while (0)
452+
453+
#define NO_PROFILE_COUNTERS 1
454+
455+
/* ASM_OUTPUT_ALIGNED_DECL_LOCAL (STREAM, DECL, NAME, SIZE, ALIGNMENT)
456+
Define this macro when you need to see the variable's decl in order to
457+
chose what to output. */
458+
#define ASM_OUTPUT_ALIGNED_DECL_LOCAL(STREAM, DECL, NAME, SIZE, ALIGN) \
459+
do { \
460+
ASM_OUTPUT_ALIGN (STREAM, floor_log2 ((ALIGN) / BITS_PER_UNIT)); \
461+
ASM_OUTPUT_TYPE_DIRECTIVE (STREAM, NAME, "object"); \
462+
ASM_OUTPUT_SIZE_DIRECTIVE (STREAM, NAME, SIZE); \
463+
ASM_OUTPUT_LABEL (STREAM, NAME); \
464+
} while (0);
465+
466+
/* Globalizing directive for a label. */
467+
#define GLOBAL_ASM_OP "\t.global\t"
468+
432469
#endif /* GCC_ARC64_H */

0 commit comments

Comments
 (0)