Adam Schefter says the Bills are not done moving up in the draft in search of their franchise QB. (0:28)

The Cincinnati Bengals have agreed to a trade with the Buffalo Bills for left tackle Cordy Glenn, a source told ESPN's Josina Anderson.

As part of the trade, the Bengals and Bills agreed to swap first-round picks, with Buffalo receiving the No. 12 overall selection and Cincinnati receiving No. 21 overall, a source confirmed to ESPN. The Bengals also get the Bills' fifth-round pick (No. 158) and the Bills get the Bengals' sixth-round pick (187th).

The Bills now own the 12th and 22nd selections in the first round, as well as two second-round picks (Nos. 53 and 56) and two third-round picks (Nos. 65 and 96).

After agreeing to a trade Friday to send quarterback Tyrod Taylor to the Cleveland Browns for the No. 65 pick, the Bills become more likely to trade up in April's draft to select a quarterback. Nathan Peterman, the team's fifth-round pick in 2017, will be the only quarterback on the roster once Taylor is officially traded.

Using a conventional draft trade value chart, the Bills could package the Bengals' first-round pick and the No. 22 selection (acquired last year from Kansas City) to move as high as No. 4. Adding one or more of their second- or third-round picks to the deal could push Buffalo higher in the order.

Previously, Buffalo's two first-round picks (Nos. 21 and 22) were worth only enough to move to No. 7 under a conventional draft trade value chart.

The Bengals have struggled at tackle since longtime veteran Andrew Whitworth signed with the Los Angeles Rams in free agency last year and have been noncommittal about picking up the fifth-year option of 2015 first-round pick Cedric Ogbuehi. Right tackle Jake Fisher, the team's 2015 second-round pick, ended his 2017 season early due to a heart condition but will be ready to play next season.

Without Glenn, the Bills are expected to start 2017 second-round pick Dion Dawkins at left tackle. Dawkins started 11 games last season as a rookie in place of Glenn.

Cordy Glenn will fill a void for the Bengals at left tackle, created when Andrew Whitworth left to sign with the Rams last offseason. Timothy T. Ludwig/USA TODAY Sports

The Bills will save $4.85 million of Glenn's $14.45 million cap number in 2018, as long as the trade is executed before Glenn is due a $2 million roster bonus on Sunday. The move also clears Glenn's cap numbers of $12.45 million in 2019 and $12.7 million in 2020 for Buffalo.

The Bengals will inherit the final three seasons of Glenn's deal, including his $9.25 million base salary and $2 million roster bonus due next week. Of his base salary, $1.5 million is already fully guaranteed and another $6.5 million will become fully guaranteed on Friday. The Bengals will also have Glenn under contract for non-guaranteed base salaries of $7.25 million (2018) and $7.5 million (2019), as well as $2 million roster bonuses each season.

Glenn, 28, had been the Bills' starting left tackle since being selected in the second round of the 2012 draft.

Last summer, Glenn missed a significant portion of training camp and the preseason because of a lingering foot and ankle injury.

The injury limited Glenn to five starts through the first nine weeks of last season before he was unable to play in the Bills' next five games. Buffalo placed Glenn on injured reserve in Week 15.

"Somewhat of a frustrating year overall," Bills coach Sean McDermott said in December, adding Glenn would undergo surgery on his foot in hopes of returning to health this offseason.

The Bills signed Glenn to a five-year, $65 million extension after assigning him the franchise tag during the 2016 offseason. He missed two games because of an ankle injury and three games because of a back injury in 2016.

ESPN's Katherine Terrell and Mike Rodak contributed to this report.