Deleted Added
full compact
dt_link.c (285009) dt_link.c (300618)
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE

--- 236 unchanged lines hidden (view full) ---

245 /*
246 * Add 4 bytes to hit the low half of this 64-bit
247 * big-endian address.
248 */
249 rel->r_offset = s->dofs_offset +
250 dofr[j].dofr_offset + 4;
251 rel->r_info = ELF32_R_INFO(count + dep->de_global,
252 R_PPC_REL32);
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE

--- 236 unchanged lines hidden (view full) ---

245 /*
246 * Add 4 bytes to hit the low half of this 64-bit
247 * big-endian address.
248 */
249 rel->r_offset = s->dofs_offset +
250 dofr[j].dofr_offset + 4;
251 rel->r_info = ELF32_R_INFO(count + dep->de_global,
252 R_PPC_REL32);
253#elif defined(__riscv__)
254/* XXX */
255printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__);
253#elif defined(__sparc)
254 /*
255 * Add 4 bytes to hit the low half of this 64-bit
256 * big-endian address.
257 */
258 rel->r_offset = s->dofs_offset +
259 dofr[j].dofr_offset + 4;
260 rel->r_info = ELF32_R_INFO(count + dep->de_global,

--- 174 unchanged lines hidden (view full) ---

435/* XXX */
436#elif defined(__mips__)
437/* XXX */
438#elif defined(__powerpc__)
439 rel->r_offset = s->dofs_offset +
440 dofr[j].dofr_offset;
441 rel->r_info = ELF64_R_INFO(count + dep->de_global,
442 R_PPC64_REL64);
256#elif defined(__sparc)
257 /*
258 * Add 4 bytes to hit the low half of this 64-bit
259 * big-endian address.
260 */
261 rel->r_offset = s->dofs_offset +
262 dofr[j].dofr_offset + 4;
263 rel->r_info = ELF32_R_INFO(count + dep->de_global,

--- 174 unchanged lines hidden (view full) ---

438/* XXX */
439#elif defined(__mips__)
440/* XXX */
441#elif defined(__powerpc__)
442 rel->r_offset = s->dofs_offset +
443 dofr[j].dofr_offset;
444 rel->r_info = ELF64_R_INFO(count + dep->de_global,
445 R_PPC64_REL64);
446#elif defined(__riscv__)
447/* XXX */
443#elif defined(__i386) || defined(__amd64)
444 rel->r_offset = s->dofs_offset +
445 dofr[j].dofr_offset;
446#ifdef illumos
447 rel->r_info = ELF64_R_INFO(count + dep->de_global,
448 R_AMD64_64);
449#else
450 rel->r_info = ELF64_R_INFO(count + dep->de_global,

--- 479 unchanged lines hidden (view full) ---

930 if (DT_IS_BL(ip[0]))
931 ip[0] = DT_OP_NOP;
932 else
933 ip[0] = DT_OP_BLR;
934 }
935
936 return (0);
937}
448#elif defined(__i386) || defined(__amd64)
449 rel->r_offset = s->dofs_offset +
450 dofr[j].dofr_offset;
451#ifdef illumos
452 rel->r_info = ELF64_R_INFO(count + dep->de_global,
453 R_AMD64_64);
454#else
455 rel->r_info = ELF64_R_INFO(count + dep->de_global,

--- 479 unchanged lines hidden (view full) ---

935 if (DT_IS_BL(ip[0]))
936 ip[0] = DT_OP_NOP;
937 else
938 ip[0] = DT_OP_BLR;
939 }
940
941 return (0);
942}
938
943#elif defined(__riscv__)
944/* XXX */
945static int
946dt_modtext(dtrace_hdl_t *dtp, char *p, int isenabled, GElf_Rela *rela,
947 uint32_t *off)
948{
949printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__);
950 return (0);
951}
939#elif defined(__sparc)
940
941#define DT_OP_RET 0x81c7e008
942#define DT_OP_NOP 0x01000000
943#define DT_OP_CALL 0x40000000
944#define DT_OP_CLR_O0 0x90102000
945
946#define DT_IS_MOV_O7(inst) (((inst) & 0xffffe000) == 0x9e100000)

--- 1021 unchanged lines hidden ---
952#elif defined(__sparc)
953
954#define DT_OP_RET 0x81c7e008
955#define DT_OP_NOP 0x01000000
956#define DT_OP_CALL 0x40000000
957#define DT_OP_CLR_O0 0x90102000
958
959#define DT_IS_MOV_O7(inst) (((inst) & 0xffffe000) == 0x9e100000)

--- 1021 unchanged lines hidden ---