Skip to content

Commit 46fb5ea

Browse files
authored
Merge branch 'master' into ipa_end_user_doc
2 parents bdf1391 + 62fa97e commit 46fb5ea

File tree

6 files changed

+66
-1
lines changed

6 files changed

+66
-1
lines changed

.github/workflows/containers.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,24 @@
11
name: Containers
22

33
on:
4+
# We want to run the CI when anything is pushed to master.
5+
# Since master is a protected branch this only happens when a PR is merged.
6+
# This is a double check in case the PR was stale and had some issues.
47
push:
8+
branches:
9+
- master
510
pull_request:
611
workflow_dispatch:
712
schedule:
813
- cron: '0 0 * * 0' # weekly
914

15+
# We want to cancel previous runs for a given PR or branch / ref if another CI
16+
# run is requested.
17+
# See: https://docs.github.com/en/actions/using-jobs/using-concurrency
18+
concurrency:
19+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
20+
cancel-in-progress: true
21+
1022
jobs:
1123

1224
Image:

.github/workflows/test.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,24 @@
11
name: Test
22

33
on:
4+
# We want to run the CI when anything is pushed to master.
5+
# Since master is a protected branch this only happens when a PR is merged.
6+
# This is a double check in case the PR was stale and had some issues.
47
push:
8+
branches:
9+
- master
510
pull_request:
611
workflow_dispatch:
712
schedule:
813
- cron: '0 0 * * *' # daily
914

15+
# We want to cancel previous runs for a given PR or branch / ref if another CI
16+
# run is requested.
17+
# See: https://docs.github.com/en/actions/using-jobs/using-concurrency
18+
concurrency:
19+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
20+
cancel-in-progress: true
21+
1022
env:
1123
# default compiler for all non-compatibility tests
1224
MATRIX_EVAL: "CC=gcc-11 && CXX=g++-11"

README.developers.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1326,13 +1326,51 @@ Code included in VTR by subtrees should *not be modified within the VTR source t
13261326
Instead changes should be made in the relevant up-stream repository, and then synced into the VTR tree.
13271327

13281328
## Updating an existing Subtree
1329+
1330+
The following are instructions on how to pull in external changes from an
1331+
existing subtree. Which instructions to follow depend on if you are changing
1332+
the external ref or not.
1333+
1334+
### External Ref Does Not Change
1335+
1336+
These instructions are for if the subtree is tracking a ref of a repo which has
1337+
changes we want to pull in. For example, if the subtree is tracking main/master.
1338+
13291339
1. From the VTR root run: `./dev/external_subtrees.py $SUBTREE_NAME`, where `$SUBTREE_NAME` is the name of an existing subtree.
13301340

13311341
For example to update the `libtatum` subtree:
13321342
```shell
13331343
./dev/external_subtrees.py --update libtatum -m "commit message describing why component is being updated"
13341344
```
13351345

1346+
### External Ref Changes
1347+
1348+
These instructions are for if you want to change the ref that a subtree is
1349+
tracking. For example, if you want to change the version of a subtree (which
1350+
exists on a different branch).
1351+
1352+
1. Update `./dev/subtree_config.xml` with the new external ref.
1353+
1354+
2. Run `git log <internal_path>` and take note of any local changes to the
1355+
subtree. It is bad practice to have local changes to subtrees you cannot
1356+
modify; however, some changes must be made to allow the library to work in
1357+
VTR. The next step will clear all these changes, and they may be important
1358+
and need to be recreated.
1359+
1360+
3. Delete the subtree folder (the internal path) entirely and commit it to git.
1361+
The issue is that changing the external ref basically creates a new subtree,
1362+
so the regular way of updating the subtree does not work. You need to
1363+
completely wipe all of the code from the old subtree. NOTE: This will remove
1364+
all changes locally made to the subtree.
1365+
1366+
4. Run `./dev/external_subtrees.py --update $SUBTREE_NAME`. This will pull in
1367+
the most recent version of the subtree, squash the changes, and raise a
1368+
commit.
1369+
1370+
5. Recreate the local changes from step 2 above, such that the library builds
1371+
without issue; preferrably in a concise way such that the library can be
1372+
easily updated in the future.
1373+
13361374
## Adding a new Subtree
13371375

13381376
To add a new external subtree to VTR do the following:

libs/librrgraph/src/base/rr_graph_storage.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -401,11 +401,13 @@ class t_rr_graph_storage {
401401

402402
/** @brief Get the source node for the specified edge. */
403403
RRNodeId edge_src_node(const RREdgeId& edge) const {
404+
VTR_ASSERT_DEBUG(edge.is_valid());
404405
return edge_src_node_[edge];
405406
}
406407

407408
/** @brief Get the destination node for the specified edge. */
408409
RRNodeId edge_sink_node(const RREdgeId& edge) const {
410+
VTR_ASSERT_DEBUG(edge.is_valid());
409411
return edge_dest_node_[edge];
410412
}
411413

vpr/src/pack/re_cluster_util.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ void remove_mol_from_cluster(const t_pack_molecule* molecule,
7676
* (is updated if this function is called during packing, especially intra_lb_routing data member).
7777
* @param router_data: returns the intra logic block router data.
7878
* @param temp_cluster_pr: returns the partition region of the new cluster.
79+
* @param temp_cluster_noc_grp_id returns the NoC group ID of the new cluster
7980
*/
8081
bool start_new_cluster_for_mol(t_pack_molecule* molecule,
8182
const t_logical_block_type_ptr& type,

vpr/src/route/connection_router.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -372,7 +372,7 @@ void ConnectionRouter<Heap>::timing_driven_expand_cheapest(t_heap* cheapest,
372372
VTR_LOGV_DEBUG(router_debug_, " Better cost to %d\n", inode);
373373
VTR_LOGV_DEBUG(router_debug_, " New total cost: %g\n", new_total_cost);
374374
VTR_LOGV_DEBUG(router_debug_, " New back cost: %g\n", new_back_cost);
375-
VTR_LOGV_DEBUG(router_debug_, " Setting path costs for associated node %d (from %d edge %zu)\n",
375+
VTR_LOGV_DEBUG(router_debug_ && (rr_nodes_.node_type(RRNodeId(cheapest->index)) != t_rr_type::SOURCE), " Setting path costs for associated node %d (from %d edge %zu)\n",
376376
cheapest->index,
377377
static_cast<size_t>(rr_graph_->edge_src_node(cheapest->prev_edge())),
378378
static_cast<size_t>(cheapest->prev_edge()));

0 commit comments

Comments
 (0)