- Git-submodule reference
- Git Tools | Submodules
- Git Submodules: Adding, Using, Removing, Updating
- Remove a Git Submodule
- Update Git submodule to latest commit on origin
- Git update submodules recursively
| #!/usr/bin/python3 | |
| import urllib.request | |
| from urllib.error import URLError | |
| from string import whitespace | |
| # Fetch a wordlist | |
| try: | |
| data = urllib.request.urlopen("https://raw.githubusercontent.com/colematt/english-words/master/words_alpha.txt") | |
| wordlist = list(word.decode("utf-8").lower().rstrip(whitespace) for word in data.readlines()) |
See the following:
| C Standard | __STDC__ |
__STDC_VERSION__ |
|---|---|---|
| C89 | 1 | #undef |
| //===- MyPass.cpp - Example pass ----------------*- C++ -*-===// | |
| #define DEBUG_TYPE "mypass" | |
| #include "llvm/IR/Function.h" | |
| #include "llvm/IR/Module.h" | |
| #include "llvm/Pass.h" | |
| #include "llvm/ADT/Statistic.h" | |
| #include "llvm/Support/Casting.h" | |
| #include "llvm/Support/raw_ostream.h" |
There is a known problem of using Intel® SDE on Linux* systems that prevents the use of ptrace attach via the sysctl /proc/sys/kernel/yama/ptrace_scope. In this case Pin is not able to use its default (parent) injection mode. (SDE does not need to run as root.)
The following commands disable yama on the system until the next reboot. Add to the init scripts to make permanent.
This command is recommended by the Intel SDE installation guide, but doesn't work on after Ubuntu 14.04 because the directory doesn't exist:
This post describes how to add a custom attribute to LLVM and Clang. Why would you want to do such a thing?
- You have semantic information of which the front-end is aware, but the back-end discards in the Intermediate Representation (IR), and an existing attribute can't be used to retain this information. Adding the attribute using the front-end analysis preserves the information into the back-end generated IR.
- You've considered using the GCC/LLVM
annotateattribute to hold arbitrary strings, but you also need to add a parameter (or more!) to that annotation.
The Clang Internals Manual discusses how to do this, but not with the detail you might like to see. Its description is high-level, and only lists one file that needs to be modified. Tracking down all of the other files that must be changed is left as a frustrating exercise to the reader.
Did you get this error message?
We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy. Not enough random bytes available. Please do some other work to give the OS a chance to collect more entropy! (Need 210 more bytes)
How much entropy do I actually have?
cat /proc/sys/kernel/random/entropy_avail| CC=/usr/bin/clang | |
| CFLAGS=-g -Wall | |
| %.bc:%.c | |
| $(CC) -c -emit-llvm $^ -o $@ | |
| %.ll:%.c | |
| $(CC) -S -emit-llvm $^ -o $@ | |
| factorial: factorial.c main.c |
| #!/bin/bash | |
| # This file is for cloning assignments made in GitHub Classroom into the | |
| # present working directory. | |
| # USAGE | |
| # This script accepts the following command line arguments: | |
| # $1 - the name of the github classroom (e.g. "bucs220") | |
| # $2 - the assignment's prefix before the username MINUS a trailing hyphen (e.g. "F17-A1") | |
| # $3 - the name of the file with a list of repository owners (either individual users or groups). |
| #!/usr/bin/python3 | |
| import random | |
| import functools | |
| import timeit | |
| # Construct a large list of integers with few repeats expected | |
| random.seed() | |
| randints = [random.randint(0,100000000) for _ in range(1000000)] |