<commit_before>/* 
 * Handshake between Pin and Zesto.
 * Copyright, <NAME>, 2011
*/

#ifndef __PIN_ZESTO_H__
#define __PIN_ZESTO_H__

#include "host.h"

typedef struct P2Z_HANDSHAKE {
    unsigned int pc;                    /* Current instruction address */
    unsigned int coreID;                /* CoreID that should execute instruction */
    unsigned int npc;                   /* Fallthrough instruction address */
    unsigned int tpc;                   /* Next address Pin will execute */
    int brtaken;                        /* Taken or Not-Taken for branch instructions */
    struct regs_t ctxt;                 /* Register context */
    unsigned char ins[MD_MAX_ILEN];     /* Instruction bytes */
    bool sleep_thread;                  /* Deactivate core */
    bool resume_thread;                 /* Re-activate core */
    bool flush_pipe;                    /* Flush core pipelie */
    bool real;                          /* Is this a real instruction */
    bool in_critical_section;           /* Thread executing a sequential cut? */

                                        /* Shortcut for <= 4 byte mem reads */
    unsigned char mem_size;             /* size of access */
    unsigned long mem_addr;             /* adress of the access */
    unsigned long mem_val;              /* value to be read */

    unsigned int slice_num;                         /* Execution slice id */
    unsigned long long feeder_slice_length;         /* Slice length as seen by pin */
    unsigned long long slice_weight_times_1000;     /* Slice weight in average */
} P2Z_HANDSHAKE;

typedef void (*ZESTO_WRITE_BYTE_CALLBACK) (unsigned int, unsigned char);

#endif /*__PIN_ZESTO_H__*/<commit_msg>Register repeater options, and give the pintool visiblity for the DDDG analysis flag<commit_after>/* 
 * Handshake between Pin and Zesto.
 * Copyright, <NAME>, 2011
*/

#ifndef __PIN_ZESTO_H__
#define __PIN_ZESTO_H__

#include "host.h"

typedef struct P2Z_HANDSHAKE {
    unsigned int pc;                    /* Current instruction address */
    unsigned int coreID;                /* CoreID that should execute instruction */
    unsigned int npc;                   /* Fallthrough instruction address */
    unsigned int tpc;                   /* Next address Pin will execute */
    int brtaken;                        /* Taken or Not-Taken for branch instructions */
    struct regs_t ctxt;                 /* Register context */
    unsigned char ins[MD_MAX_ILEN];     /* Instruction bytes */
    bool sleep_thread;                  /* Deactivate core */
    bool resume_thread;                 /* Re-activate core */
    bool flush_pipe;                    /* Flush core pipelie */
    bool real;                          /* Is this a real instruction */
    bool in_critical_section;           /* Thread executing a sequential cut? */

                                        /* Shortcut for <= 4 byte mem reads */
    unsigned char mem_size;             /* size of access */
    unsigned long mem_addr;             /* adress of the access */
    unsigned long mem_val;              /* value to be read */

    unsigned int slice_num;                         /* Execution slice id */
    unsigned long long feeder_slice_length;         /* Slice length as seen by pin */
    unsigned long long slice_weight_times_1000;     /* Slice weight in average */
} P2Z_HANDSHAKE;

typedef void (*ZESTO_WRITE_BYTE_CALLBACK) (unsigned int, unsigned char);

extern bool do_dddg_analysis;

#endif /*__PIN_ZESTO_H__*/
{'fraction_non_alphanumeric': 0.07801822323462415, 'fraction_numerical': 0.006264236902050114, 'mean_word_length': 1.7296037296037297, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6446592', 'n_tokens_mistral': 924, 'n_tokens_neox': 869, 'n_words': 316}